How come my BTS7960 DC Motor Driver using PWM has efficiency of only 50%?
Well, there are many possible reasons. Perhaps we can do some research to find out the reason.
1. I would suggest to wire up a test rig for testing the motor driver with a DC motor, as shown below.
a. The OP's BTS7971 driver has been replaced by the newer model BTN7971B. They have very similar characteristics and operation. So I have taken the liberty to test the newer driver. I think the OP can compare and contrast the two devices and modify my suggested test accordingly.
2. Now I am going to test the motor driver, measuring the voltage across the motor coil and the current passing through it.
3. The OP might have initialized his clamp meter with "VFC"
I googled to find that "VFC" introduces a low pass filter for AC measurements - cutting off above 400 Hz.
VFC might be good for AC measurement of mains frequency of 50Hz/60Hz.
However, if the OP is measuring at V/I values at PWM frequency 400Hz or above, signals should be much attenuated by the VFC low pass filter.
4. PWM Module for inputting to DC Motor Driver BTN7971b
The time has come to use my cheappy US$2 PWM module to test the motor driver. I will first try randomly, a couple of frequencies and duty cycles, to get a feeling how the OP get so low a 50% efficiency. See Refs 3, 4 for more details on how I use the cheapy toy.
BTW, I am also going to use my cheapy, US$300 scope to measure the motor coil voltage and current. This morning I read a EESE Q&A about accuracy between using a scope and a DMM. This Q&A every well refreshes my memory of using a scope. Perhaps the OP and other newbie readers might also find it educational.
Differences between oscilloscope, multimeter, and power supply voltage readings - EESE, Asked 4 days ago, Active yesterday, Viewed 2k times
5. BTN7971b Dual Half Bridge Module Wiring Explanation
I started learning motor driver with L293 and L293D (with flyback diode) which consists of 4 half bridges. So I learned how to use one half bridge to dirve one DC motor in one direction, then use two half bridge to form one full bridge to driver in two directions (still one coil), then all four coils as two full bridges to drive a bipolar stepper motor with two coils. Later I learned how to use L298N with two full bridges to drive two DC motors or one bipolar stepper motor. Going step by step, from half bridge, to one full bridge, to two full bridges, everything makes sense to me.
However, when first using this dual BTN7971b module with two BTN7971b, each forming one full bridge with two half bridges, I found it confused, because the datasheet is very brief, assuming not to be used by newbies. So I think it is useful for me ninja and newbies alike to go back to the past 1970's to learn L293, L297, L298 etc which have detailed explanation and often with example app schematics and wiring diagrams I think knowing basic principle is very important, especially for the OP which is driving motors with huge (well, over 10A) current and power, which might be fatal, when things go wrong.
That is why, I have read basic things again, before doing the wiring part of this PWM motor efficiency test. I have included the basic wiring articles in the three L293D references (Refs 6 ~8) below. The tutorial by MakerPro is very newbie friendly and highly recommended.
6. PWM Sigal Waveform
Now I will be using this PWM signal to test the motor driver PWM efficiency.
7. The OP's power connecting wire and motor driver module getting too hot problem
The OP says the motor driver and connecting wires are getting "very hot". If the connecting wires are hot, the OP might have used wires too thin, and he might consider changing to a heavy duty wire. For me below 1A testing, I start with 500mA, using MIZU AWG #26 wires paralleled, or AWG #22 wires. If I find wires getting hot, I just parallel one more wire, and not bother checking out the AWG vs max current chart.
One the motor driver getting "too hot" problem, we need to do two things: (a) use a temperature sensor to measure the temperature at the IC or heat sink plate, (b) check the datasheet to see if it is within operation limit.
If it is really "too hot", we can do a couple of things, including: (a) use a bigger heat sink, (b) parallel more drivers to share current load. (Ref 11), (c) check if motor driver is a fake/counterfeit guy, and replace it with a real one.
AWG Wire Gauge and Current Limits
(AWG#26 ~= 2A, #22 ~= 7A, #16 ~= 20A) - Power Stream, 2019oct18
To measure the working temperature, I am using an industrial grade sensor (Ref 10) as shown in the following photo:
a. BTN7971B datasheet specifies operating characteristics over a range up to 150°C, and most important of all is that the IC has a built in temperature sensor and automatic thermal shut down/protection. So there is no worry that the IC will meltdown. In other words, talking about worries of "very hot", or using heat sink etc, is just amateurish. So I won't talk about it any more, or my reputation would be damaged, though I will use my cheapy CNY16, industrial grade, 0.1°C accuracy sensor to measure the IC heat sink temperature for the OP to compare and contrast, and his peace of mind.
8. Draft proposal on how to find the efficiency of a PWM motor driver
8.1 I have been hearing for years that the classic dual NPN BJT full H-bridge L298N motor driver module is energy inefficient, because of the energy loss of high Vce(sat) junctions of the H-bridge.
8.2 Now I am going to check out the energy efficiency of BJN7971B, a P/N-channel power MOSFET half bridge motor driver. Below is the draft testing plan.
/ to continue, ...
(1) UNI-T UT210E Pro Mini Digital Clamp Meter, Auto Ranging TRMS Backlit VFC NCV Meter, AC/DC Current Voltage Frequency Resistance Capacitance Diode Tester
(2) UT210E Mini Cloamp Meters Operation Manual 2018may Rev.2 - UNI-T
(3) PWM Sig Gen Module, 1Hz-150kHz, Frequency, Duty Cycle, Adjustable - US$2
(4) How can Rpi4B python UART talk to XY PWM Signal Generators? - Asked 1 year, 5 months ago, Viewed 605 times
(5) Differences between oscilloscope, multimeter, and power supply voltage readings - EESE, Asked 4 days ago, Active yesterday, Viewed 2k times
(6) L293D and PWM speed control [Solved] Asked today Active today Viewed 41 times
(7) L293x Quadruple Half-H (Bridge) Drivers - TI
(8) All You Need to Know About L293D (Theory, features and specifications) - MakerPro 2018aug13
(9) How to control DC motor speed by motor driver with PWM input? - EESE, Asked 8 months ago Active today Viewed 902 times
(10) Precision Digial Temperature Sensor with Back Light LCD Display - TaoBao CNY16
(11) Anything wrong with connecting L298Ns in parallel? Asked 15 days ago Active 10 days ago Viewed 150 times
(12) AWG Wire Gauge and Current Limits
(AWG#26 ~= 2A, #22 ~= 7A, #16 ~= 20A) - Power Stream, 2019oct18
Appendix A - UNI-T UT210E Pro Mini Digital Clamp Meter