English Deutsch Français Italiano Español Português 繁體中文 Bahasa Indonesia Tiếng Việt ภาษาไทย
All categories

I have started reading a robotics/micro-controller book, but have not reached the motor or digital to analog sections yet. From what I have read, I know the pins can output 0 to 5 volts, steady or at different pulse rates. Then theres digital to analog circuits, step motors, DC motors, AC motors, and infrared sensors that can read a pattern on the wheel and therefore calculate an angular velocity that can be used as feedback.

From all these tools, what is the typical method for controlling a motor's speed? What is the best motor to use? Should I drive it with pulses (PWM I think) or an anolog signal? Are there pins on some micro-controllers that can directly accept the analog signal from the infrared sensor?

I'm looking for a general explanation from somebody who has experience in building amatuer robots.

For your information, I'm looking to eventually buy A-Wits Technologies C-Stamp.

2007-03-21 19:40:19 · 4 answers · asked by Anonymous in Science & Mathematics Engineering

Good answers. I appreciate the info.

I looked into the continuous rotation motor and its spec sheet and I understand how you can control the direction of rotation using PMW. I don't understand how you can do the same with a DC motor. I'll have to look into that later.

2007-03-23 05:44:28 · update #1

4 answers

Electric multiphase motors are the most efficient. There speed is changed by changing the phase angles or current wave angles. The more in phase the two phases are the higher the voltage and the faster the motor turns. The more out of phase the two phases are the less voltage and the slower the motor turns. A computer or microprocessor controls the phase angles. It basically delays one or both phases. Hybrid car electric motors are controlled this way.

2007-03-21 19:48:27 · answer #1 · answered by know da stuff 4 · 0 0

A typical microcontroller does not have a means to generate an analog output voltage. You would have to add a digital to analog (DAC) chip if you want to drive the motors with analog voltages.

PWM, therefore, is the cheaper way. The square pulses' duty cycle controls the voltage. Optionally you can smooth the square pulses to soften the drive by using RC low pass filters. You will likely need to insert opamps as buffer drivers because the fan out of the microcontroller PWM channels is about only few mA.

For the wheels, DC motors (either brush or commutator type) are sufficient. Stepper and servo are overkilled.

Most microcontrollers have analog to digital (ADC) channels. These ADC channels require a reference voltage which defines the full-scale value, typically 255 (8 bit) or 1023 (10 bit), of the analog voltage measurements. Some microcontroller models provide the ADC reference voltage internally, others require the reference voltage to be supplied externally.

2007-03-21 21:21:31 · answer #2 · answered by sciquest 4 · 0 0

For simple robotics applications, a good bet is to use a continuous-rotation servo motor. The rate of rotation is controlled by pulse-width modulation, which works great since it is driven by digital outputs from the microcontroller. Therefore, no analog-to-digital conversion is needed.

Plus, it's very easy to program the microcontroller for pulse-width modulation control. Here's a link to a continuous-rotation servo that I used in a class project a few months ago:

http://www.parallax.com/detail.asp?product_id=900-00008

2007-03-21 20:27:43 · answer #3 · answered by Imperial 2 · 0 0

you won't be able to administration the value with a microcontroller. This demands a variable frequency force (VFD) which controls the two the frequency and voltage to the motor. those gadgets are quite costly and quite large. Sorry to tell you. TexMav

2016-10-19 07:57:13 · answer #4 · answered by ? 4 · 0 0

fedest.com, questions and answers