Running a servo motor at 0-1/3 speed - Page 1
Forum section: electronics / projects

author: Simon
author_rank: Unknown
timestamp: June 28, 2024, 11:08:45 am
content: I'm looking at running a servo motor up to 1000 rpm rather than 3000 rpm. I can see that this will make the motor much harder to control for the driver as the lower back EMF and reactance at the lower drive frequency will mean that much more current can flow and so fewer PWM steps will be available in the drive.Is this advisable? OK, I know it is not, but how bad is it. How much trouble have I just gone looking for?Thinking about the advice I read in some driver manuals to put an inductor in series with each phase to limit current peaks at low currents or just to bulk up a low inductance motor I thought why not do the same but overdo the inductors a bit.Well it takes 1mH in series with each phase (21A) to get the motor running at 1000 rpm (83Hz) to have the same current flow that it would have at 3000 rpm (250 Hz), simulation attached - 5 pole motor, 6.8V/krpm.Is it a good idea to even try this?. With a Single 330µH (16A) I could be making a DC/DC converter to lower the voltage from 48V to 24V making the controllers life much easier.

author: Doctorandus_P
author_rank: Super Contributor
timestamp: June 30, 2024, 04:56:41 pm
content: Those industrial servo motors (not talking hobby / RC servo's here I guess) are designed to be controllable down to standstill. So the only thing you'd have to do is to simply limit the signal input to the motor controller to 1/3 of it's maximum. There is no need to mess with the power side of the whole system.Another option is to use a mechanical transmission on the motor shaft. This lets you increase the available torque by (roughly) a factor of three, or it lets you select a cheaper / smaller motor to get the same torque on the output shaft.

author: Ground_Loop
author_rank: Frequent Contributor
timestamp: July 01, 2024, 12:44:26 am
content: If you are using typical industrial servos and drives, they are designed for positioning, so zero speed is fine. I had a project to drive a material reel at about 10 revolutions per hour. Used a 100:1 gear box, and very low speed command. It worked fine.

author: Simon
author_rank: Unknown
timestamp: July 01, 2024, 07:43:38 am
content: Well I was just thinking of the overall working of the machine. We are not fitting a gear box as it turns out they are quite expensive. But of course all motors are made to work up to 3000 rpm as that is the standard speed all things gravitate to. My requirement is that the motor will be used from 0-1000 rpm (maybe as low as 800 rpm tops) with control over torque.Messing about with the simulation I see that it takes much less than 1/3 the voltage (PWM duty) to achieve the same current. Or maybe my motor modelling is out. The motor spec gives the phase to phase inductance an resistance. I would assume that I halve those to model a single phase.

author: Doctorandus_P
author_rank: Super Contributor
timestamp: July 01, 2024, 09:33:52 am
content: What sort of experience do you have with such motors?The simplest: Applied voltage translates to motor speed, and the motor will only draw as much current as is needed to get enough torque to get to that speed. High startup currents are due to high torque for accelerating the motor inertia. I don't know what you are attempting to simulate, but it's probably simply not relevant.You are making it much to difficult for yourself. The servo controller has everything in it to control the motor over it's complete operating range, and it really does not matter whether you are using the full 0 to 3000rpm range or only 0 to 1000 rpm.If you are using a 0 to 10V input signal for the motor controller, you can add a voltage divider on that input so the servo input does not get above 3.33V, but that is all that is needed. If you are controlling the motor via modbus or another protocol it is also likely that you can program maximum rpm directly into the motor controller. So read it's manual. These things tend to have 100+ settings you can tweak.

author: Simon
author_rank: Unknown
timestamp: July 02, 2024, 05:36:51 pm
content: Not a lot to be honest. I have done one project so far where I wrote my own CAN Open master so that I could control 2 motors. Unfortunately the manual for the motors was not the clearest.

author: H.O
author_rank: Frequent Contributor
timestamp: July 03, 2024, 05:33:30 am
content: As have been said, you should have zero issues controling the motor velocity down to zero.One thing to keep in mind though, power is speed x torque so if you're never running your 3000rpm rated motor faster than 1000rpm you're wasting 2/3 of its potential power or, put another way, you have a motor with way more power than you actually need.

author: Simon
author_rank: Unknown
timestamp: July 03, 2024, 06:37:15 am
content: I think the concern will be more about the current control as we need precise torque. Yes we are wasting the motor power. Apparently it is cheaper than buying a gearbox.

author: moffy
author_rank: Super Contributor
timestamp: July 03, 2024, 10:47:02 am
content: If you go for a step down converter from 48V to 24V, what would be the maximum load it would have to supply across all your motors? Will that be more cost effective or convenient than using individual inductors?

author: Doctorandus_P
author_rank: Super Contributor
timestamp: July 03, 2024, 11:44:25 am
content: Again: NO. There is no need at all to put a buck converter in front of the motor, as long as the motor controller is rated for the input voltage (with some decent extra margin). A buck converter is an inherent part of most motor controllers, as it is formed by the FET's of the H bridge (or triple half H) and the inductance of the motor windings themselves.Motor braking is done by changing the commutation and running the motor as a dynamo, and this can (and will) feed energy back into the power supply. It's common for motor controllers to have a brake resistor and this is used to bleed off excessive voltage on the big smoothing capacitors of the power supply when the motor is braking.

author: moffy
author_rank: Super Contributor
timestamp: July 03, 2024, 12:08:31 pm
content: Quote from: Doctorandus_P on July 03, 2024, 11:44:25 amYeah, I am pretty aware of regenerative braking and brake resistors having worked on diesel electric locomotives for a number of years as well as designing testing and building the test beds for 500kW traction motors the question is really for the OP, sometimes it comes down to a matter of preference.

author: Simon
author_rank: Unknown
timestamp: July 03, 2024, 07:44:19 pm
content: Quote from: Doctorandus_P on July 03, 2024, 11:44:25 amYou are missing how the whole control system works. I know that the driver has a 16 bit PWM, so the voltage can be controlled in steps of about 1.6 mV on our 53V supply. Torque will be proportional to the phase angle between the stator field and the rotor position. As there are 2^16 steps and the maximum angle is 90 degrees that is 16'384 steps. I guess that gives plenty of control.Yes the motor driver and motor form a buck converter, but if I was having issues as I pointed out above I can gain more by using one smaller inductor on the supply input as a power converter than by putting 3 inductors each 3 times the value and having to handle more current on each phase.

author: thm_w
author_rank: Super Contributor
timestamp: July 04, 2024, 12:25:31 am
content: "If I was having issues" As mentioned if the motor and drive are spec'ed appropriately and from reputable companies, then there are no issues.What is the model number of the drive and motor?You could always dial down the voltage of the 48V supply a bit, assuming it has an adjustment, if you think that might extend its life.

author: Simon
author_rank: Unknown
timestamp: July 05, 2024, 06:46:49 pm
content: Well we will hopefully test next week. Dialing down the voltage is not an option without adding more circuitry. we already have a 48V supply or will use a 48V battery

author: IanB
author_rank: Super Contributor
timestamp: July 05, 2024, 06:56:04 pm
content: Quote from: Simon on July 05, 2024, 06:46:49 pmThere seems to be a missing link here, as you are not answering the questions shared by all the previous posters.A servo comes with two matched components: the physical motor, and the "drive", which is the control unit that runs the motor. These are normally designed and purchased as a pair which work together. You do not apply power to the motor, you apply power to the drive, and the drive makes the motor do what you ask it to do.The drive will have a specification, such as its input power requirements, and its control input arrangements. Broadly speaking, you give the drive the required voltage, and you give the control input the required speed, and the drive does the rest.Since you are talking about somehow modifying the drive/motor combination by adding things or changing things, this is causing confusion. Why can't you just trust the drive to do its job?

author: Simon
author_rank: Unknown
timestamp: July 06, 2024, 07:12:44 am
content: Well we have a fixed 48V, can't change that. The motors are typically wound for 48V and 3000 rpm but will do as much as 4000 or 5000 rpm unloaded. Some sales people expressed concern at running the motor that slow but I think these people either do not know what they are on about or are thinking of motors with hall sensors rather than encoders. One "electronics engineer" from one supplier of driver said that they recommended a minimum of 1000rpm over the number of poles, until I pointed out that the motor has an encoder. His driver shares the encoder inputs with the high speed digital inputs while it has dedicated hall sensor inputs so I guess they tend to default to hall sensor motors.As for a matched pair well no. They don't get made that stringent that they have to be carefully matched. Providing the controller can do the current and it is set up for that motor it will be fine. From what everyone here says the low speed problem is just not a thing and to be fair I have not had a problem running the motor at low speeds as part of a ramp up to full speed in other projects. This is a problem that has been blown out of proportion by non technical sales people.

author: IanB
author_rank: Super Contributor
timestamp: July 06, 2024, 07:27:50 am
content: Ah, right, well maybe "compatible" is a better word than "matched".I do feel that buying motor and drive as a pair from a vendor that will provide a warranty that the combination of motor and drive will do what you want is a safer option than buying motor and drive separately. But maybe the world is not that ideal.

author: Simon
author_rank: Unknown
timestamp: July 06, 2024, 07:43:17 am
content: No the world is not ideal and the salesman of the motor with his drive said he was not sure about low speed operation but also declares himself as more mechanical (that's what they all say when they have no idea because people think that mechanics is simpler than it is).We have 3 components to replace, a motor, a drive and a gearbox. We need to put the overall package together. The company making the cheaper drive and with a better reputation don't do a motor of the power we need to avoid using a gear box and it seems that motors are cheaper than gear boxes to the point that we can afford 3x the power of motor.As for compatibility that is the wonder of modern drives that use CAN open or their own system. You tell the drive the speed constant / Kv, the torque constant and the number of poles and away you go. At that point all motors are the same, providing the feedback is there and suitable. At low speed a pulse every cycle may well be a challenge as that is one bit of feedback in one whole cycle of generating a sine wave with PWM that is the right voltage and at the right phase angle. Put a 2500 step encoder that will produce 10'000 edges per revolution and this make the drives job a breeze.

author: Doctorandus_P
author_rank: Super Contributor
timestamp: July 06, 2024, 03:51:27 pm
content: Do I understand this correctly?You have a motor that is too big, and with the high power supply voltage you do not have enough resolution to control the motor at a low speed or low torque, and therefore you want to lower the power supply voltage to get more resolution.

author: Postal2
author_rank: Frequent Contributor
timestamp: July 06, 2024, 05:10:50 pm
content: Quote from: Simon on July 06, 2024, 07:12:44 amYes.

author: Simon
author_rank: Unknown
timestamp: July 07, 2024, 04:11:24 pm
content: Quote from: Doctorandus_P on July 06, 2024, 03:51:27 pmThere is no problem as of yet as no testing has been done yet.

author: Infraviolet
author_rank: Super Contributor
timestamp: July 07, 2024, 11:25:45 pm
content: " Torque will be proportional to the phase angle between the stator field and the rotor position "If the underlying technology is a 3 phase brushless motor of some form, you'll find that torque can also be varied by changing the amount of current flowing, as well as adjusting the relative angles between the rotor's position and the angle of the field the current in the stator is making.You've described this thing as a servo, which implies it comes integrated with the motor, feedback sensor (encoder of some sort) and control logic all together. In that case its own datasheet should tell you everything about the commands to run it, how much torque it can supply... If the controller it comes with is reasonably capable I'd be very surprised if it couldn't run right down to a very low speed indeed, like something so slow you start to really see cogging-like jumps as it turns. The exception would be if there is reliance on sensorles measurement (measuring induced voltages in the undriven coil of the motor so as to work out which location it is rushing past as a consequence of the current in the other two), but that would be a very strange choice for a servo, the whole idea of a servo afterall is being able to command it to go to particular positions.I've you've just bought the motor and feedback sensor, and it doesn't come with integrated control logic, you'd either look for an appropriate controller device, or design your own. I've been designing, for a much smaller 3 phase BLDC style motor, recently such a controller board and the overall principle for operation in a servo-like mode is quite simple.Each phase of the motor is given a PWM signal between 0% and 100% (0 to 256 in my case), you use a microcontroller running logic of the form:Apwm = beta*1.14*(sin((float)angle*PI/180.0)*127.5+25.5*sin((float)3*angle*PI/180.0))+127.5;Bpwm = beta*1.14*(sin((float)(angle+120)*PI/180.0)*127.5+25.5*sin((float)3*(angle+120)*PI/180.0))+127.5;Cpwm = beta*1.14*(sin((float)(angle+240)*PI/180.0)*127.5+25.5*sin((float)3*(angle+240)*PI/180.0))+127.5;The added extra term (+25.5...)gives you SVM (space vector modulation) which lets you get the absolute maximum from a given supply voltage, but this can be neglected and just the first term used if you never need to put power in to the motor near to the maximum your driver can supply.You vary "beta" to change the (approximate, beta isn't linear with it, but it is monotonic, you can calibrate for it in a finished system, or use current measurement of total current drawn for further feedback) level of torque. Beta is always in the 0 to 1 range. If beta is particularly low then even the phase getting the maximum current at a given time gets only a very quick burst of power to it (during which that leg of the motor is connected to the supply voltage, and the current flowing rises with a slope proportional to supply-voltage/motor_inductance), then the half-brdge which powers that phase conducts between the motor's leg and ground instead and the current recirculates, buck-converter principles.Then the angle (here in degrees, 0 to 360, and it is an electrical angle, not shaft angle, so you have multiple electric rotations per shaft angle deending on your motor's pole pair count) you set as you move, you control the speed by having your software increment of decrement this angle as fast as you want.With that working you can then use feedback to know where the rotor is, vary that beta value, if you need to, to reduce the current when not much is needed for the torque demanded by a load (when the rotor angle is lagging the stator field by a "fair bit" (amount to be determined by testing and encoder precision) less than 90 degrees) and increase it whenever torque demand rises (rotor angle lags stator by a "fair bit" more than 90 elec degrees), and even compensate for skipped "steps" if they occur.This principle can work at any speed you like, and any level of torque, up to the maximum torque the motor can give at the highest level of current it is rated not to overheat at*. Yours sounds like a big industrial 3 phase motor? So you'd need much fancier half-bridge circuits than I used, but the "beta" and "angle" PWM method would still work.*ofcourse, using a high power motor won't help your "we want a high powered motor at slow speed rather than a low powered one with a gearbox" situation if this maximum current, independent of maximum power, can't give you enough shaft torque. A motor at maximum power is going to be both drawing the maximum current, but also using power to overcome back-emf voltage caused by running at high speed, at lower speeds you cannot draw maximum power without drawing more than maximum current, which via I^2 R heating would damage the motor, given "enough" (seconds, minutes, hours... depends on the motor, how hot the surrounding environment is, how much you over-current by...) time even though the motor was well below maximum power. If the higher power motor's maximum current rating, multiplied by its torque per current value (for cheap motors that is 8.3/kV with the kV rating in rpm/V and the torque-per-amp in Nm/A ), won't give you enough torque, you'll need a gearbox nonetheless.

author: Simon
author_rank: Unknown
timestamp: July 10, 2024, 08:36:05 am
content: Thank you for the detailed reply. I believe I understand how the drive operates in principle. I am talking about 21 and 29A motors here or 750/1000W at 48V. Motors are primarily current/torque machines. If you look at Maxon motors you find that the voltage is a bit of a information only thing. We have run their motors at higher voltages to get the speed up based on their own recommendations. A lower power motor with gearbox from the same supplier is looking like it will cost more than the 750W motor on it's own running at up to 1000 rpm rather than 3000 rpm.I would expect that the controller is first generating a PWM that creates enough "voltage" to put the desired current through the stator to produce the torque required. This would basically be a holding torque. Then you move the stator field along ahead of the rotor. I don't know how good my little LT spice model is but just advancing the driving angle on the rotor position (the back emf voltage) the current stays about the same as the back EMF makes up the voltage difference caused by the phase angle difference. I guess there is an amount of current to be added to account for the motor friction.The concerns that seem to have come from the "mechanically minded" reps seems to be on the basis of using hall sensors rather than an encoder that in our case gives 2000 edges per electrical cycle rather than just 6. I can see how any motor driver trying to produce a sinusoidal drive will struggle at low speed without good feedback on the current position. Sensor less drive is definitely not an option, our application is traction so we could be spending time at quite low speeds.

author: IanB
author_rank: Super Contributor
timestamp: July 10, 2024, 03:16:49 pm
content: I would have imagined that for a "servo" application requiring precise position control, then the encoder would be essential.For precise speed control, I still imagine the encoder would provide better results than the Hall sensor. Is the encoder more expensive or unavailable or something?

author: Simon
author_rank: Unknown
timestamp: July 10, 2024, 03:47:32 pm
content: No we have a motor with an encoder and hall sensors. I don't know what the "mechanically minded" sales people are fannying about at. Now I have the electronics engineer of one of them telling me that even with the encoder it needs hall sensorsSo I just spent £50 in RS485 dev boards so that I can connect our motors differential hall sensors to the single ended inputs of the motor driver, and I'll tell him we wasted that much when he comes in to show me it running and we discover that hall sensors are not needed.

author: H.O
author_rank: Frequent Contributor
timestamp: July 10, 2024, 08:45:23 pm
content: I'd say that, generally speaking, itdoesneed the hall sensors for commutation and the encoder for position feedback. Some encoders have commutation "tracks" on them basically replacing the hall sensors andsomedrives can run sensorless using wake & shake at start up to determine the commutation angle.

author: thm_w
author_rank: Super Contributor
timestamp: July 10, 2024, 09:11:54 pm
content: All commercial servo motors I've seen have both hall sensors and encoder. Its definitely not needed, you can do without the hall sensing, but just makes life a lot simpler. Hall sensors are incredibly cheap and reliable.I made my own differential/se boards but they should be somewhat commonly availablehttps://cnc4pc.com/c46-differential-ended-converter.htmlAgain, still no mention of model numbers of the motor driver though to know what it is capable of.

author: Postal2
author_rank: Frequent Contributor
timestamp: July 10, 2024, 11:57:07 pm
content: Quote from: H.O on July 10, 2024, 08:45:23 pmHere is:https://www.allegromicro.com/en/products/sense/switches-and-latches/dual-hall-effect-latches/a1230

author: Simon
author_rank: Unknown
timestamp: July 11, 2024, 06:39:05 am
content: I suspect that what I call hall sensors are in fact just different tracks in the encoder disk to give 1 pulse per phase per electrical cycle as they too are +/- 400mV.

author: Simon
author_rank: Unknown
timestamp: July 11, 2024, 07:35:34 am
content: Quote from: thm_w on July 10, 2024, 09:11:54 pmIt was just a case of getting something quick, I'm going to knock my own up for the future along with some other adapter boards I had already done some work on.The driver I am looking at is an escon2 from Maxon, the motor is a delta line 80SV-48VDC, knock yourself out.When I used a delta-line controller on a similar motor it did a calibration at start up. The motor was moved backwards and forwards by a small amount. I don't know if it was "searching" for the "hall" sensor pulse or simply getting the rotor to line up with the stator field.

author: Postal2
author_rank: Frequent Contributor
timestamp: July 11, 2024, 07:51:22 am
content: Quote from: Simon on July 11, 2024, 07:35:34 amShouldn't do that. What if it's a shredder and you put your finger in it?

author: Simon
author_rank: Unknown
timestamp: July 11, 2024, 11:04:10 am
content: Quote from: Postal2 on July 11, 2024, 07:51:22 amYou should never put your finger in a shredder, particularly when you have just turned it on. By start up I mean when the motor driver DS402 states were changed through 3 different levels from completely disabled to getting ready to power up and move if asked to.

author: Postal2
author_rank: Frequent Contributor
timestamp: July 11, 2024, 11:41:37 am
content: Well, if the "Tesla" also twitches when turned on, then fine.

author: thm_w
author_rank: Super Contributor
timestamp: July 11, 2024, 10:25:53 pm
content: It is crazy the power density that is available now, says board is 20g and has 1800W motor capacity. And yeah it supports brushless mode and absolute encoder only FOC, so definitely no actual requirement for hall sensors.It is derated above 25C, -0.5A/C but I'm sure you've looked at that. Otherwise its well within spec.https://www.maxongroup.com/medias/sys_master/root/9255271268382/ESCON2-Feature-Comparison-Chart-En.pdfhttps://www.maxongroup.com/medias/sys_master/root/9255271399454/ESCON2-Module-60-30-Hardware-Reference-En.pdf

author: Simon
author_rank: Unknown
timestamp: July 12, 2024, 06:34:25 am
content: Well This guy, I've dealt with him before. I suspect that he knows more about the CAN Open programming than the actual electronics.

author: Simon
author_rank: Unknown
timestamp: July 12, 2024, 08:13:53 am
content: And yes it is one compact unit, but there are tradeoffs. The Delta-Line controller does 40A and is not much bigger but has more stuff and does not require a board to plug into and the CAN bus is isolated which maxon see no need for. On balance I went with this one as either way I have to put it in a box so having an on board molex connector that requires a custom loom to another internal connector is not what I wanted. With the maxon PCB mount option I do save space although they always recommend putting low value output chokes which means that the space claim is not as small as it first appears although the inductors do fit under the controller board but still as a two board solution it is still no what it first seems. But this way works for me which is why I am using it as the CAN Open is not available until later which means that I have to design in a whole load of stuff to deal with their IO.Sending Analogue signals, in fact any non isolated signal to a motor drive gives me the hibigeebees. At least with it not having a cable to the main board it's less likely to have weird stuff happen.

author: Simon
author_rank: Unknown
timestamp: July 12, 2024, 11:02:23 am
content: Well it ran just fine.

author: Martinn
author_rank: Frequent Contributor
timestamp: July 20, 2024, 05:48:45 pm
content: Quote from: Simon on July 03, 2024, 07:44:19 pmThis is far less critical than one might think.Some time ago I did a position controller in an FPGA and as the controller rate was pretty high (I think it was 170 kHz), I was afraid that the less than 8 bit voltage resolution (FPGA clock 40 MHz) would lead to problems. It turned out that even with artificially reduced PWM resolution of a few bits the controller worked flawlessly.Viewing this from a signal processing point of view, a chain voltage -> current/torque -> velocity -> position is a triple integrator, or seen as filter gives 20 dB/decade of attenuation, 60 dB total. If you have a PWM frequency of 16 kHz and a position "frequency" of 16 Hz, these are three decades or 3*60 = 180 dB of attentuation. Roughly the same principle as a delta sigma DAC, where you start with a 1 fast bit DAC and filter this down to slower, but much higher resolution signal.For motor control it probably makes sense to keep some reasonable PWM resolution in order not to have excessive current ripple, but for a not too low inductance motor a handful of bits should be enough for that.

author: Simon
author_rank: Unknown
timestamp: July 20, 2024, 07:50:52 pm
content: Well motor drivers are designed to work with hopefully any sensible motor and across as much range as possible. If 16 bit control is available, people will use it.