Projects > Help and Feedback

what kind of motor do i have/need?

(1/2) > >>

scoopthepoop:
So i am trying to get a better understanding of motor control circuits.

My confusion is around hall sensors and brushless motors. I am in the process of building the stroboscope so that i can get a better understanding of using the arduino for motor control, but my end project is going to need a larger motor than the xbox drive motor. I am using a brushless motor  (http://www.maxxprod.com/mpi/mpi-26.html) from himax, the ha2025 to be specific. What i am trying to figure out is what can i do to know if a motor has hall sensors built in? Also, lets say this motor doesn't have hall sensors, can i add them?

Since this is an rc airplane engine that is typically controlled by a speed controller is there a way to minic the speed controller with the arduino?

In the end a circuit that can tell me how many revolutions the motor has made would give me benefits in other areas.

Any info that anyone can provide would be greatly appreciated.

ElectroNick:

--- Quote from: scoopthepoop on December 08, 2011, 10:54:46 PM --- I am using a brushless motor  (http://www.maxxprod.com/mpi/mpi-26.html) from himax, the ha2025 to be specific. What i am trying to figure out is what can i do to know if a motor has hall sensors built in?
--- End quote ---
The manual makes no mentioning of the Hall sensor and you can be quite sure if the manufacturer had built them in, they would not be shy about mentioning it, so no sensors. They even go as far as to say this:

--- Quote ---Himax Brushless motors require brushless sensorless (emphasis mine) speed controls. Failure to use a brushless sensorless electronic speed control (ESC) can result in damage to the motor and/or ESC.
--- End quote ---

In fact, since these are RC aviation - targeted motors, the Hall sensors would not even be required as you would not care so much if you are getting 18,990 RPMs or 19,000 - the controller increases the frequency with which the windings are commutated and expects that eventually  the prop will catch on. It's very different from a BLDC motor for a DVD burner that has to burn that dot in a very precise spot else the data would get lost. Additionally, just one Hall-effect sensor (they often have 3 per motor) creates 12 ticks per revolution in a 12-pole motor. At 10,000RPM that's 2000 interrupts/ADC polls each second. It's doable but if you don't need it, why make your MCU work so hard? It may be busy with other things like reading the accelerometer etc.


--- Quote from: scoopthepoop on December 08, 2011, 10:54:46 PM ---Also, lets say this motor doesn't have hall sensors, can i add them?

--- End quote ---
For an RC plane, there is really no need. You'll get all precision in RPMs a human can possibly handle (given our pathetic ~200ms reaction speed  ;) ) from just adjusting the commutation frequency.

Now, if we are talking about a computer-controlled robotic plane or a quad-copter, then it's a different story. An MCU can actually get a lot of things done during one single rotation at 10,000RPMs and therefore it can (in theory at least) make use of some of the rotation data a rotor-coupled sensor can provide. But I still have a feeling that open-loop (frequency) RPM control will be enough even for a robotic plane/copter.


--- Quote from: scoopthepoop on December 08, 2011, 10:54:46 PM ---Since this is an rc airplane engine that is typically controlled by a speed controller is there a way to minic the speed controller with the arduino?

--- End quote ---
This is exactly what we are doing with the RPM potentiometer in the stroboscope project. It adjusts the delay in switching the steps and hence the time it takes for one complete commutation cycle, which in itself is 1/6th of one full rotation on a BLDC designed like most DVD spindle motors. This line in the Arduino code is also controlling the  commutation frequency (Line 22 in the sketch):

--- Code: ---const int motorDelay=5; // together with pot controls the RPM
--- End code ---
The smaller the delay the quicker the motor will turn. That is, until the frequency reaches a threshold where it starts switching too quick for the rotor to respond  and it starts skipping steps and eventually either stops or  jerks in a quasi-random  fashion  :( (not a pretty sight)

Maxxprod recommends Castle Creations controllers. I've browsed through their site and read a few User Manuals. Honestly, I'm not too sure if they do actually use feedback in their controllers. Some of their features suggest that they do  (Electronic Timing Advance) and some might suggest otherwise (Auto Calibrating Throttle) but, again, I'm not too sure. Maybe we can get Castle Creations to respond here and clarify.

I'm very sure if feedback is used, it's not Hall-effect sensors, it should be reading the EMF-induced voltage on one of the windings during the step in the cycle in which that winding is not energized.  On the other hand, they have 1000s of RPMs to play with, at that speed such precise RPM control may not even be required.


--- Quote from: scoopthepoop on December 08, 2011, 10:54:46 PM ---In the end a circuit that can tell me how many revolutions the motor has made would give me benefits in other areas.

--- End quote ---
With this particular motor you'd have to abandon my simplified BLDC driving scheme  :'( and go for a more traditional 6-input driver that would require 6 transistors, the same amount of Arduino outputs and a slightly different commutation scheme. That way you can let your windings have three states: HIGH, LOW and OFF and the latter will then be used for the EMF feedback measurements.

I'm hoping to find time to play with with sensorless controllers myself and I actually have to admit - I've gotten into this BLDC project out of, well, yes, a desire to make use of my enormous supply of DVD spindle motors  :D,  but also I harbor a hope of turning one of these motors into a flight-worthy one and see it fly on a plane or (if I could get enough power from it) a quad-copter. I've tried playing with upgrading these spindle motors (here is a post about a failed attempt) and will continue until I get a working motor and a working controller! 

scoopthepoop:
Great stuff. I am starting to learn. We just need a bigger hammer :)

I actually don't know if I actually need such fine RPM control. I am actually not using this motor for flight, it was just something that I had in the house from my RC airplanes and I figured it was small enough and it would likely produce the amount of torque I need. If anyone knows of a good brushless motor that might work for me, I am all ears and would love to buy more motors. I don't as of yet want to get into the exact application for this motor control but I think I can describe closely what I am trying to do.

I am looking to build a motor controller that can be controlled by a program. I want that program to turn on the motor at a specific time of the day, rotate at a set RPM for a duration (number of rotations would actually be better instead of a duration), then turn off and repeat this cycle at a set schedule. The timer I don't have issues with, that is the circuit I think I get. It's the motor control. I have 2 eventual motor setups, one will have a gearbox that could have a decent amount of torque applied to it, and the other will have a gearbox with very little need for torque. The motor RPMs would likely be in the 2000 range, but I can gear to match any RPM that this circuit can produce consistently (the gearbox hasn't been built yet). I am looking to use brushless for a few reasons. 1. They are more efficient then a comparable brushed to where I could get a longer life from batteries. 2. They are quieter. 3. They last longer.

Thanks.

ElectroNick:

--- Quote ---I am looking to use brushless for a few reasons. 1. They are more efficient then a comparable brushed to where I could get a longer life from batteries. 2. They are quieter. 3. They last longer.
--- End quote ---
I'm with you on that. In fact, after playing a bit with BLDC motors it's really hard to look back at brushed DC of which I have A TON in my robots and I really hate dealing with brushes! One of the most common (maybe the most) failures is breaking of a brush and also metal shavings created by the constant friction inside a brushed motor. So, if this is an unattended device, I would absolutely go with BLDC instead of brushed even though it's a bit more involved to properly drive one.

I fired off a quick eBay search for "brushed DC motor" just to get a feel of what's there. I've never bought a BLDC motor before - my supply of DVD spindles is good for a few years of experimentation :) . But I've got to tell you - the amount of motors on offer is dazzling to say the least.

Vast majority of what comes up is for  RC flying but I think you may be able to adapt to your application if you can have a gearbox. It sounds like you need an outrunner motor (the one where the permanent magnet shroud rotates around fixed windings core) and it looks like it may be the ones specifically targeted to helicopters that you're looking for (larger diameter shroud, higher torque, slower RPMs).

As far as rotation counts and digital control though, I know if may sound like a sloppy solution but, looking at designs of most of those motors, I would say that the easiest way to implement it would be to literally stick a Hall-effect sensor into one of the ventilation holes and use some epoxy (or epoxy putty to better control glue run-off) to permanently hold it there right next to the rotating  magnet. Regardless of how the ESC control of the motor itself is designed, if you're just looking for counting rotations, Hall-effect sensors produce digital output that's ready to be used immediately by your microcontroller at any RPMs. Any kind of EMF feedback might be  unreliable on slow RPMs (not much of an EMF produced) and it's not a digital signal, you'll have to condition it first to be usable by the MCU. No big deal but still a few extra components.

After looking at all those cute little motors I'm very tempted to buy one just to play with it ... Should work with the stroboscope circuit without any modification. Tempting... :P

ElectroNick:
Speaking of various BLDC motors: that's the size I like!  ;)

http://www.youtube.com/watch?v=PXI5d0Aws0Y

Navigation

[0] Message Index

[#] Next page

Go to full version