Motors are like muscles — connect a motor with wheels to a battery and your robot scoots across the floor. Or attach a motor to a lever, and you’ve made a shoulder joint. Or attach a motor to a turntable, and your robot’s head can scan back and forth. Motors are the primary means of articulating a robot. In this month’s Robotics Resources, we’ll examine some of the more common types of motors and how they are used.
Motors for AC or DC
If you’re a scrounger, you probably have a couple of motors laying around you’d like to use in your robot. But some of these motors may be wholly unsuit¬able. Most ‘bots are powered by batter-ies, which means direct current (unless you use a power inverter, but we won’t get into that as it’s not as efficient). Direct current (DC) from batteries and power supplies dominates robotics, so these are the kinds of motors you need to look for. Shelve the alternating current (AC) motor you pulled from that old fan for another project.
DC motors may be the motors of choice. But that doesn’t mean just any DC motor should or can be used in your robot designs. When looking for suitable motors, be sure the ones you use are reversible. Few robotic applications call for just unidirectional (one direction) motors. You must be able to operate the motor in one direction, stop it, and change its direction. Most DC motors are bi-directional, but some design imitations may prevent reversibility.
How can you tell if a motor is reversible? If it doesn’t say, the best and easiest test is to try the motor with a suitable battery or DC power supply. Apply the power leads from the motor to the terminals of the battery or supply. Note the direction of rotation of the motor shaft. Now, reverse the power leads from the motor. The motor shaft should now go the other way.
Continuous Rotation, Stepper, and Brushless Motors
Among the variety of DC motors is a dizzying array of sub-types. Motors that run when you simply apply a DC voltage are continuous rotation and have the most value to robot builders. Internally, most motors of this ilk have a permanent magnet in the casing, and use a meta core that is connected to the motor’s shaft. Around this core are several sets of wires wound in a tight loop. These lead to two brushes — they can also be simple bares wires — that connect to the power source. The motor rotates when the wires (also called coils or windings) are energized. Continuous rotation is made possible due to the geometry of the windings around the core.
Variations on this theme may place the magnet in the core and the wind¬ings around the casing. There are many other designs, and the Internet — as well as any good book on motor design — is full of pictorial discussions of how DC motors operate. There’s no need for me to cover the other approaches here.
Stepper motors are similar to stan-dard DC motors except they are con-structed in such a way that they turn only a degree or so when DC power is applied to a winding. To make the motor turn more, you need to manual¬ly energize the windings in a specific sequence. To enable this, stepper motors have more than two wires; most steppers have between four and eight wires. The number of wires indicates the type of stepper (bipolar or unipolar) and the way the windings are connected internally within the motor.
At one time this was done using mechanical relays, but these days it all happens using electronics. You can build a stepper motor controller circuit out of discrete logic parts, buy a spe-cialized stepper motor chip such as the L297, or program a microcontroller to apply the right pulses to the windings.
Stepper motors are handy when you want to control the angle of move-ment and amount of rotation. You can use stepper motors (like those pulled from old disk drives) in lieu of a stan-dard DC motor, but a more common use is for things like rotating sensor turrets, grippers, or arm mechanisms.
Yet another type of DC motor is the brushless motor. These most often use optics, hall effect sensors, or other technology to switch power to the windings inside the motor. Brushless motors are common when speed control is required, such as the spindle motor of a CD player. They require a controller circuit that senses the precise position of the core at any given time so that the correct windings may be energized. For the most part, brushless DC motors aren’t as useful in amateur robotics, due in part to their complexi¬ty, and also they don’t tend to be as powerful as their continuous rotation and stepper cousins.
R/C Servo Motors
When a motor is connected to a feedback circuit, it’s called a servo motor. The feedback tells the motor how far it’s gone and in what direction. This feedback can be accomplished using a simple potentiometer, a tachometer, an optical encoder, or some other means.
The most common — and inexpen¬sive — servo motor is the R/C servo; R/C stands for radio control, which is the original application of these motors. They are used in model and hobby radio-controlled cars and planes.
R/C servos are in plentiful supply, and cost is reasonable (about $10-$12 for basic units). Though R/C servos are continuous DC motors at heart, they aren’t controlled in the same way. In addition to power leads, you need to provide a control signal to an R/C servo. This signal — varying from one to two milliseconds — controls the direction and angle of the motor. Most robots based on R/C servos use a microcon¬troller to provide this signal. Most any microcontroller is capable of creating the signal and the programming code is simple. Use of R/C servos in robots is so common now that the programming anguage for some microcontrollers ncorporate commands specific to operating the motor. This is the case of the OOPic controller, for example.
There are other forms of servo motors and these are different from the R/C type. If you’re browsing sur¬plus catalogs, you may encounter some large and unreasonably expensive servo motors. They’re a distinct breed from the less expensive R/C type, and are intended for process control, such as factory automation. The typical industrial servo motor is not a complete unit — you cannot simply wire it to a battery and make it work. At a minimum, it needs a control circuit, if not additional components.
While the R/C servo is intended to precisely control angular movement, it’s also possible to retrofit them for continuous rotation. In fact, this is one of the most popular methods of motor-izing a robot. The modification involves partial disassembly of the motor so that the mechanical stops — the things that prevent the motor from turning a full 360 degrees — are removed. In addition, the feedback potentiometer is disengaged and set to its center. In this way, the control signal operates the direction and to some degree the speed of the motor.
Motor Specifications
Motors carry with them numerous specifications. The meaning and purpose of some of the specifications are obvious; others aren’t. Here is a broad and brief overview of some of the more common specifications:
• Operating Voltage All motors are rated by their operating voltage. With small DC hobby motors, the rating is actually a range, usually 1.5 to 12 volts. DC motors for automation usually require 24 to 48 volts. The kinds of motors of most interest to robot builders are the low-voltage variety — those that operate at 1.5 to 12 volts. Most motors can be operated satisfactorily at voltages somewhat higher or lower than that specified. For continuous DC motors, changing the voltage alters the rotation speed.
• Current Draw. This specifies the current, in milliamps or amps, that the motor pulls from the power supply at a given voltage and a given load (motors are designed to perform some work; this is their “load”). Be sure to compare apples to apples. The current draw of a free-running (no load) motor can be quite low, but under load the motor may draw five, 10, even 50 times the current.
• Speed. The rotational speed of a motor is usually given in revolutions per minute (RPM), with most continuous DC motors rotating at between 4,000 to 12,000 RPM. Stepper motors are rated by their maximum steps per second which, when combined with their step angle, can be used to determine revolu¬tions per second or minute. R/C servo motors are rated by their transit time, usually in fractions of a second to cover a 60 degree arc. Except for stepper motors, speed is influenced by voltage.
• Torque. The torque of a motor is the force it exerts upon its load. The higher the torque, the larger the load can be, and the faster the motor will spin under that load. Reduce the torque and the motor slows down, straining under the workload. Torque specifications vary wildly; some are given in old Imperial units of ounce-inches or foot-pounds, while others are force newton-meters or some other standards. When comparing torque specifications that don’t use the same units of measure, you can use an online conversion page, such as at
www.convert-me.com
Motors With and Without Gears
R/C servo motors already incorporate their own internal gearing. The gears reduce the speed of the motor used inside the servo from its usual 7,000 to 10,000 revolutions per minute to roughly 60 RPM. In reducing the speed, the torque of the motor is proportionally increased.
For most robots, the raw speed of a DC motor is far too high, so you usually want some kind of gear reduction. You can create your own gearbox using gears from various sources (bought new or surplus, or pulled out of toys and discarded appliances). But tolerances are tight with gears. Too loose and the gears don’t mesh properly; too tight and the gears bind up, adding a lot of friction.
While you can sometimes add a gearbox to an existing motor, it’s usual-ly easier to simply get a motor with a gearbox already attached. You can find plenty of gear motors on the surplus market of various sizes and styles. Another good source is the Tamiya gear motor kits, available through several online resources such as Pololu (or Tower Hobbies (You build the motor from parts, and most let you select the gear ratio you want.
Adapting a Motor for Your Robot
Simply having a motor and a robot doesn’t mean the two will be happy together. Some types of motors defy being attached to a robot — there are no mounting flanges or screw holes anywhere. The more adaptable motors have at least two holes for securing the thing to a robot.
Sometimes these holes are in the face of the motor (the part where the shaft sticks out). These require screws of a particular length. Some motors use metric threads (example: M3) and others use Imperial threads (example: 4-40). Be sure to use the right type of screws or you’ll mess up the threads in the motor.
Yet other motors have flanges that make mounting easier. This is the case with many stepper motors, which often have a flanged mounting plate with two or four holes. It’s also the case with R/C servos, which are flanged and have two or four eyelets for screws. With some ingenuity and commercially sold brackets (such as those from my small online company, Budget Robotics at you can fit an R/C servo motor just about anywhere. As a last resort, you can always use double-sided foam tape, Velcro, or 3M Dual Lock to secure the motor to your robot.
Next comes attaching a wheel, lever, or other mechanism to the motor shaft, and this is where things often get tricky. I like using R/C motors specifical¬ly because they make it very easy to attach just about anything, including wheels. R/C motors come with an assortment of “horns” — or extras are available for it — in a variety of shapes and sizes. You can drill into the horn so you can adapt it to your particular needs. The horn then securely screws into the output shaft of the motor.
For continuous DC and stepper motors, you need a way to mount something to the shaft. Motor shafts comes in all sizes, lengths, and dimen-sions. Most are made of a hardened metal, so drilling into them is a tough proposition. The most effective designs use setscrews. An example is a setscrew that is part of the hub of a gear. You tighten the setscrew to secure the gear to the shaft.
The diameter of the shaft matters. The hole that fits around it — be it the bore of a wheel or the hub of a gear or sprocket — should be about the same size. If the hole is a little too small, you can usually make things work by drilling it out a little.
28 Temmuz 2007 Cumartesi
Kaydol:
Kayıt Yorumları (Atom)
Cascode stage
or “collector follower”
Jean-Paul Brodier
All microprocessors from the 8051 family have inputs and outputs that are ‘quasi-bidirectional’. This means that when power is first applied, the ports behave as inputs with a logic high level and a weak pull-up.,
Glitch
a relay or some other load such as When driving an optocou-pler or LED, there is a problem
at power on: the NPN transistor in the common emitter connection (Figure 1) causes an undesirable excitation of the load from the moment power is applied until the microprocessor has had the chance to turn the output low. In addition, logic high outputs are seldom able to deliver enough current to drive the transistor into saturation because they have been designed to be active low.
Figure 1. An NPN transistor drives a load.
To solve both of these problems in one hit, we have to make the active level logic low. This can be done in three different ways: use an emitter follower as a buffer stage (Figure 2a), an inverter in a common emitter circuit (Figure 2b) or an inverter/open collector circuit (Figure 2c). The disadvantage of solution 2a is the fact that the voltage to the load is reduced. In the case of a relay with a 5-V coil there is the risk that the resulting voltage is too low. The disadvantage of examples 2b and 2c is that they require more parts.
Collector follower
That leaves the open collector buffer in the form of an IC type 7404. This solution, however, also has a few disadvantages. You do not always need all of the 6 buffers in one IC. Also, the SMD version can only handle 12 V. This is too low and dangerous if we happen to supply the load from an unregulated voltage.
The solution presented here combines in one transistor the advantages of the emitter follower (inactive when power is first applied) and open collector (higher power supply voltage, lower current). This circuit has been known since the valve era by the name cascode (drive via the cathode). The goal was to reduce the Miller-effect of the internal (parasitic) capacitances. Not having the option of reducing the capacitance between the internal electrodes, a lower voltage was used instead. The cas-code circuit is often used in powerful transmitters (tens of kW) to minimise the Miller-effect. This circuit was also used to limit transistor conduction and to keep the dissipation within bounds, which increased the life of bipolar transistors. This was in the IGBT and VMOS era.
The transistor conducts only when the output from the microprocessor is low (refer Figure 3). The base current is limited by resistor R. This current is determined by the current flowing through the load. When the power is switched on, both the base and emitter see the same potential, VCC, so the transistor remains blocked. One thing we have to keep in mind: we may not exceed the current rating of the microprocessor output because it has to cope with all the current flowing in the emitter of the transistor.
In the case of the quite common 80C51, this maximum current is typically 3.2 mA (two LS TTL loads). This is sufficient to drive an LED without overloading the 5-V regulator, or for driving a PNP power stage at the high side (Figure 3b). The parallel Philips PCF88574 I2C interfaces can handle 25 mA. For the Atmel AT89Cx051 as well as for the Philips P89LPC9xx the limit is 20 mA. For the latter type the cascode circuit or ‘collector follower’ is even more interesting when the outputs are configured as open-drain because the nominal voltage is only 3.6 V. In all cases we have to make sure that the maximum dissipation of the
Figure 3. Cascode driver stage with discrete transistor.
package is not exceeded. 24 V is sufficient to energise its are determined by the power
Should this be the case, then the half Watt relay coil, which in PNP (or VMOS) transistor.
number of open collectors turn can drive a load of 16 A at The cascode transistor can be a required will probably justify 230V. ‘digital’ type with integrated resorting to a 7404. For loads driven from the positive base and emitter resistors.A current of around 20 mA at side, the voltage and current lim-
or “collector follower”
Jean-Paul Brodier
All microprocessors from the 8051 family have inputs and outputs that are ‘quasi-bidirectional’. This means that when power is first applied, the ports behave as inputs with a logic high level and a weak pull-up.,
Glitch
a relay or some other load such as When driving an optocou-pler or LED, there is a problem
at power on: the NPN transistor in the common emitter connection (Figure 1) causes an undesirable excitation of the load from the moment power is applied until the microprocessor has had the chance to turn the output low. In addition, logic high outputs are seldom able to deliver enough current to drive the transistor into saturation because they have been designed to be active low.
Figure 1. An NPN transistor drives a load.
To solve both of these problems in one hit, we have to make the active level logic low. This can be done in three different ways: use an emitter follower as a buffer stage (Figure 2a), an inverter in a common emitter circuit (Figure 2b) or an inverter/open collector circuit (Figure 2c). The disadvantage of solution 2a is the fact that the voltage to the load is reduced. In the case of a relay with a 5-V coil there is the risk that the resulting voltage is too low. The disadvantage of examples 2b and 2c is that they require more parts.
Collector follower
That leaves the open collector buffer in the form of an IC type 7404. This solution, however, also has a few disadvantages. You do not always need all of the 6 buffers in one IC. Also, the SMD version can only handle 12 V. This is too low and dangerous if we happen to supply the load from an unregulated voltage.
The solution presented here combines in one transistor the advantages of the emitter follower (inactive when power is first applied) and open collector (higher power supply voltage, lower current). This circuit has been known since the valve era by the name cascode (drive via the cathode). The goal was to reduce the Miller-effect of the internal (parasitic) capacitances. Not having the option of reducing the capacitance between the internal electrodes, a lower voltage was used instead. The cas-code circuit is often used in powerful transmitters (tens of kW) to minimise the Miller-effect. This circuit was also used to limit transistor conduction and to keep the dissipation within bounds, which increased the life of bipolar transistors. This was in the IGBT and VMOS era.
The transistor conducts only when the output from the microprocessor is low (refer Figure 3). The base current is limited by resistor R. This current is determined by the current flowing through the load. When the power is switched on, both the base and emitter see the same potential, VCC, so the transistor remains blocked. One thing we have to keep in mind: we may not exceed the current rating of the microprocessor output because it has to cope with all the current flowing in the emitter of the transistor.
In the case of the quite common 80C51, this maximum current is typically 3.2 mA (two LS TTL loads). This is sufficient to drive an LED without overloading the 5-V regulator, or for driving a PNP power stage at the high side (Figure 3b). The parallel Philips PCF88574 I2C interfaces can handle 25 mA. For the Atmel AT89Cx051 as well as for the Philips P89LPC9xx the limit is 20 mA. For the latter type the cascode circuit or ‘collector follower’ is even more interesting when the outputs are configured as open-drain because the nominal voltage is only 3.6 V. In all cases we have to make sure that the maximum dissipation of the
Figure 3. Cascode driver stage with discrete transistor.
package is not exceeded. 24 V is sufficient to energise its are determined by the power
Should this be the case, then the half Watt relay coil, which in PNP (or VMOS) transistor.
number of open collectors turn can drive a load of 16 A at The cascode transistor can be a required will probably justify 230V. ‘digital’ type with integrated resorting to a 7404. For loads driven from the positive base and emitter resistors.A current of around 20 mA at side, the voltage and current lim-
pot as interrupt generator
In battery-powered, microcontroller driven circuits, as well as with microcontrollers operating in cars, it is desirable to switch the micro into power-down mode once a task has been completed. An interrupt request is then required to wake up the micro. This circuit allows an interrupt to be generated in a simple way using a common potentiometer. In the example circuit, the pot may also copy its spindle position to the ADC. This enables the pot to be used for continuously variable settings (like volume) as well for getting the micro out of its power-down mode.
IC1A is configured as a differentiator with R3 preventing oscillation by keeping the gain down to 10 times. Because the opamp operates off a single-rail supply voltage, an 18k/10k potential divider (R1/R2) is able to create a virtual ground level at +1.75 V. This can be done because the LM358 can handle input levels of up to 3.5 V when supplied at 5.0 volts. IC1A supplies a brief High pulse at a falling input voltage, and a similar Low pulse when the input voltage rises. In order to get a High pulse when the potentiometer spindle is turned cw or ccw, IC1B is set up as an inverter. Next, each opamp output drives the base of a BC547 transistor. The 5 V-to-0 V transitions at both collector outputs are shaped and combined into a usable interrupt pulse by three NOR gates IC2A, IC2B and IC2C.If the potentiometer spindle is turned very slowly, it is possible that the circuit does not respond
That is why an LED has been added that lights briefly when a pulse is generated. Finally, a tip: a 100-pF capacitor may be connected in parallel with R5 for additional suppression of self-oscillation.
IC1A is configured as a differentiator with R3 preventing oscillation by keeping the gain down to 10 times. Because the opamp operates off a single-rail supply voltage, an 18k/10k potential divider (R1/R2) is able to create a virtual ground level at +1.75 V. This can be done because the LM358 can handle input levels of up to 3.5 V when supplied at 5.0 volts. IC1A supplies a brief High pulse at a falling input voltage, and a similar Low pulse when the input voltage rises. In order to get a High pulse when the potentiometer spindle is turned cw or ccw, IC1B is set up as an inverter. Next, each opamp output drives the base of a BC547 transistor. The 5 V-to-0 V transitions at both collector outputs are shaped and combined into a usable interrupt pulse by three NOR gates IC2A, IC2B and IC2C.If the potentiometer spindle is turned very slowly, it is possible that the circuit does not respond
That is why an LED has been added that lights briefly when a pulse is generated. Finally, a tip: a 100-pF capacitor may be connected in parallel with R5 for additional suppression of self-oscillation.
elektor time standart
Elektor Time standard (1988)
Jan Buiting
The Elektor Time Standard and associated Slave Unit were spin-offs of another hugely successful project, the DCF77 Receiver / Locked Frequency Standard. The receiver was published in the January 1988 issue, the Time Standard and Slave display in the next two issues. All units were housed in then very fashionable and (expensive!) Ver-obox two-part ABS enclosures which had also been used for a number of Elektor test instrument designs published between 1984 and 1987. The Time Standard box was designed to process seconds pulses received from the VLF (77.5 kHz) DCF77 time standard transmitter in Mainflingen, Germany, and display time (with atomic accuracy) and date on an LC display. The circuit was based on then extremely popular 8052AH-BASIC microcontroller from Intel, a device, we can safely claim, that made it to fame & glory thanks to Elektor Electron-
ics. The 40-way DIL chip contained a BASIC interpreter capable of executing ‘tokenised’ code from an external EPROM. This, we were told by our resident designer Peter Theunissen, made writing the DCF77 time signal decoding routines ‘a doddle’ using his specially adapted BASIC computer and interpreter. For example, when concerns were raised (by myself) that not all of Europe was in the time zone served by DCF77 (i.e., CET or GMT+1h), a menu option was quickly added to allow users to select between UTC and GMT+1h. As a relative novelty, a ready-made self-adhesive front panel foil with built-in membrane keys was designed into the project. This expensive item had been produced specially for Elektor. However, when the article went into print (using a rather glum page layout and black & white print), there were yet other concerns regarding the range of the DCF77 transmitter. This is officially claimed as “approximately 1,000 km by groundwave propa-
gation”. A quick use of a compass and a map of Europe suggested that the signal would only cover the south-eastern part of the UK, possibly including Greater London. For a couple of months we waited with baited breath for readers’ responses, only to receive two enthusiastic reception reports, one from the East coast of Ireland and another from Riyadh, Saudi Arabia! The latter report came from a reader working at a chemical laboratory. I remember he wrote that DCF77 could be received for a few minutes a day only, synchronising the clock, usually around nightfall despite heavy ‘static’. A huge wire antenna was used (nothing like the 1-inch ferrite rods we used in our lab, which is less than 100 km away from Mainflingen). Although the BASIC program list-
ing for the Time Standard was freely distributed to interested readers (on paper, in an envelope, by snail mail!), only very advanced readers were able to compile the program into tokenised code and burn it into an EPROM. Most other readers had to rely on a ready-programmed 27C64 supplied through our Readers Services. Apart from displaying time and date at atomic accuracy, the Time Standard was also capable of outputting time/date information
in the form of ASCII character strings for other (intelligent) equipment to use, for example, a timer or switching clock. Although sales figures of the PCB and EPROM were in the hundreds, I never heard from anyone actually having enjoyed the wonders of the ASCII output so extensively described in the article. The Slave unit published in March 1988 was connected to the Time Standard via screened (microphone) cable, the idea being that one or more Slave units could be installed on walls in rooms at some distance from the main clock unit. Central timekeeping deluxe for offices, labs, schools and workshops, but at what an expense and design effort! Not too many PCBs were sold for this extension of the Time Standard.
Hiç yorum yok:
Yorum Gönder