Hi All,
I have a difficult problem and this forum seems to be the closest thing I could find for a group of people that might have the expertise I seek. The issue at hand is brushless motors: current, torque, and the relationship between them – the torque constant.
I am attempting to build a system where I can accurately command a brushless motor to produce a desired torque. The motor will be loaded to the extent that very little rotation will actually occur. In order to produce a uniform torque throughout all rotor positions, I implemented an encoder based sinusoidal commutation scheme. My system uses a three phase H-bridge. I am monitoring the current from the power supply with a fluke meter hooked up in series. I have also verified the readings from the meter using a power supply that has a digital display indicating voltage and current, as well as an ADC on my microcontroller, reading the output of a current sensor.
Here is my problem: According to the manufacturer (Anaheim Automation), my motor has a torque constant of 18 oz.-in per amp. Every possible experiment I have conducted results in a torque constant much higher than that. I have calculated values ranging from 30 oz.-in./amp to 100+ oz.-in./amp I have used multiple techniques to measure this, including a digital torque meter and a system of weights. I had an aluminum cylinder machined that is exactly 1 inch in radius, and used that with a cable to lift weights with the motor.
In one experiment, I attached 6 lbs to this cable (which is connected to a 1 inch radius shaft), yielding a torque load of 6 inch-lbs. Multiply this by 16 and we have 96 oz.-in. I then slowly increase the PWM % of my motor driver until the motor begins turning and lifting the weight off the ground. Using any method of current sensing I have available, I measure a DC current of about 830 mA. Therefore, my torque constant would be 96 / 0.830 = 115.6. Obviously something is very wrong here. To make matters worse, when I increase the weight, the torque constant seems to start dropping off. Nowhere near the value of 18 I am looking for, but it definitely does not appear to be a “constant”.
I assume that what I am looking for is average or DC current. However when I try and measure RMS current with the fluke meter, I get results much closer to what I am expecting: in the 30 oz.-in./amp range, and it seems consistent for varying loads.
What is most frustrating about this problem, is that every non-ideal effect I am neglecting only makes the problem worse. Say for instance that a lot of the power coming from the power supply is being wasted across cabling, or maybe the bridge has a shoot-through problem. All of these effects should make my torque constant appear to be lower – not higher. And I highly doubt the manufacturer would vastly underestimate the torque constant of their motor.
I am fairly confident that I am calculating and measuring the torque coming out of the motor properly, so that leaves the current. What I am doing wrong? Either I have made a fundamental error in measuring current, or I have created some sort of machine that produces more power than it consumes.
Any help would be GREATLY appreciated.
I have a difficult problem and this forum seems to be the closest thing I could find for a group of people that might have the expertise I seek. The issue at hand is brushless motors: current, torque, and the relationship between them – the torque constant.
I am attempting to build a system where I can accurately command a brushless motor to produce a desired torque. The motor will be loaded to the extent that very little rotation will actually occur. In order to produce a uniform torque throughout all rotor positions, I implemented an encoder based sinusoidal commutation scheme. My system uses a three phase H-bridge. I am monitoring the current from the power supply with a fluke meter hooked up in series. I have also verified the readings from the meter using a power supply that has a digital display indicating voltage and current, as well as an ADC on my microcontroller, reading the output of a current sensor.
Here is my problem: According to the manufacturer (Anaheim Automation), my motor has a torque constant of 18 oz.-in per amp. Every possible experiment I have conducted results in a torque constant much higher than that. I have calculated values ranging from 30 oz.-in./amp to 100+ oz.-in./amp I have used multiple techniques to measure this, including a digital torque meter and a system of weights. I had an aluminum cylinder machined that is exactly 1 inch in radius, and used that with a cable to lift weights with the motor.
In one experiment, I attached 6 lbs to this cable (which is connected to a 1 inch radius shaft), yielding a torque load of 6 inch-lbs. Multiply this by 16 and we have 96 oz.-in. I then slowly increase the PWM % of my motor driver until the motor begins turning and lifting the weight off the ground. Using any method of current sensing I have available, I measure a DC current of about 830 mA. Therefore, my torque constant would be 96 / 0.830 = 115.6. Obviously something is very wrong here. To make matters worse, when I increase the weight, the torque constant seems to start dropping off. Nowhere near the value of 18 I am looking for, but it definitely does not appear to be a “constant”.
I assume that what I am looking for is average or DC current. However when I try and measure RMS current with the fluke meter, I get results much closer to what I am expecting: in the 30 oz.-in./amp range, and it seems consistent for varying loads.
What is most frustrating about this problem, is that every non-ideal effect I am neglecting only makes the problem worse. Say for instance that a lot of the power coming from the power supply is being wasted across cabling, or maybe the bridge has a shoot-through problem. All of these effects should make my torque constant appear to be lower – not higher. And I highly doubt the manufacturer would vastly underestimate the torque constant of their motor.
I am fairly confident that I am calculating and measuring the torque coming out of the motor properly, so that leaves the current. What I am doing wrong? Either I have made a fundamental error in measuring current, or I have created some sort of machine that produces more power than it consumes.
Any help would be GREATLY appreciated.