Wednesday, March 18, 2009

STEPPER MOTOR CONTROLLING

Introduction to Stepper Motors

A stepper motor is a permanent magnet or variable reluctance dc motor that has the following performance characteristics:

1. Rotation in both directions,

2. Precision angular incremental changes,

3. Repetition of accurate motion or velocity profiles,

4. A holding torque at zero speed, and

5. Capability for digital control.

A stepper motor can move in accurate angular increments knows as steps in response to the application of digital pulses to an electric drive circuit from a digital controller. The number and rate of the pulses control the position and speed of the motor shaft. Generally, stepper motors are manufactured with steps per revolution of 12, 24, 72, 144, 180, and 200, resulting in shaft increments of 30, 15, 5, 2.5, 2, and 1.8 degrees per step.

Stepper motors are either bipolar, requiring two power sources or a switchable polarity power source, or unipolar, requiring only one power source. They are powered by dc current sources and require digital circuitry to produce the coil energizing sequences for rotation of the motor. Feedback is not always required for control, but the use of an encoder or other position sensor can ensure accuracy when it is essential. The advantage of operating without feedback is that a closed loop control system is not required. Generally, stepper motors produce less than 1 horsepower(746W) and are therefore frequently used in low-power position control applications.

Theory

Unipolar stepper motor

Fig.1 A unipolar stepper motor

Unipolar stepping motors with 5 or 6 wires are usually wired as shown in the schematic in Figure 1, with a center tap on each of two windings. In use, the center taps of the windings are typically wired to the positive supply, and the two ends of each winding are alternately grounded to reverse the direction of the field provided by that winding. An animated GIF of figure 1.2 is available. The motor cross section shown in Figure 1 is of a 30 degree per step motor -- the difference between these two motor types is not relevant at this level of abstraction. Motor winding number 1 is distributed between the top and bottom stator pole, while motor winding number 2 is distributed between the left and right motor poles. The rotor is a permanent magnet with 6 poles, 3 south and 3 north, arranged around its circumference. For higher angular resolutions, the rotor must have proportionally more poles. The 30 degree per step motor in the figure is one of the most common permanent magnet motor designs, although 15 and 7.5 degree per step motors are widely available. As shown in the figure, the current flowing from the center tap of winding 1 to terminal a causes the top stator pole to be a north pole while the bottom stator pole is a south pole. This attracts the rotor into the position shown. If the power to winding 1 is removed and winding 2 is energized, the rotor will turn 30 degrees, or one step. To rotate the motor continuously, we just apply power to the two windings in sequence. Assuming positive logic, where a 1 means turning on the current through a motor winding, the following two control sequences will spin the motor illustrated in Figure 1 clockwise 24 steps or 4 revolutions:

Winding 1a 1000100010001000100010001
Winding 1b 0010001000100010001000100
Winding 2a 0100010001000100010001000
Winding 2b 0001000100010001000100010
time --->
Winding 1a 1100110011001100110011001
Winding 1b 0011001100110011001100110
Winding 2a 0110011001100110011001100
Winding 2b 1001100110011001100110011
time --->

Note that the two halves of each winding are never energized at the same time. Both sequences shown above will rotate a permanent magnet one step at a time. The top sequence only powers one winding at a time, as illustrated in the figure above; thus, it uses less power. The bottom sequence involves powering two windings at a time and generally produces a torque about 1.4 times greater than the top sequence while using twice as much power.

Bipolar stepper motor

Fig 2. A bipolar stepper motor

Bipolar permanent magnet and hybrid motors are constructed with exactly the same mechanism as is used on unipolar motors, but the two windings are wired more simply, with no center taps. Thus, the motor itself is simpler but the drive circuitry needed to reverse the polarity of each pair of motor poles is more complex. The schematic in Figure 2 shows how such a motor is wired, while the motor cross section shown here is exactly the same as the cross section shown in Figure 1. The drive circuitry for such a motor requires an H-bridge control circuit for each winding. Briefly, an H-bridge allows the polarity of the power applied to each end of each winding to be controlled independently. The control sequences for single stepping such a motor are shown below, using + and - symbols to indicate the polarity of the power applied to each motor terminal:

Terminal 1a +---+---+---+---
Terminal 1b --+---+---+---+-
Terminal 2a -+---+---+---+--
Terminal 2b ---+---+---+---+
time --->

Note that these sequences are identical to those for a unipolar permanent magnet motor, at an abstract level, and that avove the level of the H-bridge power switching electronics, the control systems for the two types of motor can be identical. Note that many full H-bridge driver chips have one control input to enable the output and another to control the direction. Given such bridge chips, one for eachwinding, the following control sequences will spin the motor identically to the control sequences given above:

Enable 1    1111111111111111
Direction 1 1100110011001100
Enable 2 1111111111111111
Direction 2 0110011001100110
time --->

To distinguish a bipolar permanent magnet motor from other 4 wire motors, measure the resistances between the different terminals. It is worth noting that some permanent magnet stepping motors have 4 independent windings, organized as two sets of two. Within each set, if the two windings are wired in series, the result can be used as a high voltage bipolar motor. If they are wired in parallel, the result can be used as a low voltage bipolar motor. If they are wired in series with a center tap, the result can be used as a low voltage unipolar motor.

How Stepper Motors Work

Stepper motors consist of a permanent magnet rotating shaft, called the rotor, and electromagnets on the stationary portion that surrounds the motor, called the stator. Figure 1 illustrates one complete rotation of a stepper motor. At position 1, we can see that the rotor is beginning at the upper electromagnet, which is currently active (has voltage applied to it). To move the rotor clockwise (CW), the upper electromagnet is deactivated and the right electromagnet is activated, causing the rotor to move 90 degrees CW, aligning itself with the active magnet. This process is repeated in the same manner at the south and west electromagnets until we once again reach the starting position.

Figure 1

Figure 1

In the above example, we used a motor with a resolution of 90 degrees or demonstration purposes. In reality, this would not be a very practical motor for most applications. The average stepper motor's resolution -- the amount of degrees rotated per pulse -- is much higher than this. For example, a motor with a resolution of 5 degrees would move its rotor 5 degrees per step, thereby requiring 72 pulses (steps) to complete a full 360 degree rotation.

You may double the resolution of some motors by a process known as "half-stepping". Instead of switching the next electromagnet in the rotation on one at a time, with half stepping you turn on both electromagnets, causing an equal attraction between, thereby doubling the resolution. As you can see in Figure 2, in the first position only the upper electromagnet is active, and the rotor is drawn completely to it. In position 2, both the top and right electromagnets are active, causing the rotor to position itself between the two active poles. Finally, in position 3, the top magnet is deactivated and the rotor is drawn all the way right. This process can then be repeated for the entire rotation.

Figure 2

Figure 2

There are several types of stepper motors. 4-wire stepper motors contain only two electromagnets, however the operation is more complicated than those with three or four magnets, because the driving circuit must be able to reverse the current after each step. For our purposes, we will be using a 6-wire motor.

Unlike our example motors which rotated 90 degrees per step, real-world motors employ a series of mini-poles on the stator and rotor to increase resolution. Although this may seem to add more complexity to the process of driving the motors, the operation is identical to the simple 90 degree motor we used in our example. An example of a multipole motor can be seen in Figure 3. In position 1, the north pole of the rotor's perminant magnet is aligned with the south pole of the stator's electromagnet. Note that multiple positions are alligned at once. In position 2, the upper electromagnet is deactivated and the next one to its immediate left is activated, causing the rotor to rotate a precise amount of degrees. In this example, after eight steps the sequence repeats.

Figure 3

Figure 3

The specific stepper motor we are using for our experiments (ST-02: 5VDC, 5 degrees per step) has 6 wires coming out of the casing. If we follow Figure 5, the electrical equivalent of the stepper motor, we can see that 3 wires go to each half of the coils, and that the coil windings are connected in pairs. This is true for all four-phase stepper motors.

Figure 5

Figure 5

However, if you do not have an equivalent diagram for the motor you want to use, you can make a resistance chart to decipher the mystery connections. There is a 13 ohm reistance between the center-tap wire and each end lead, and 26 ohms between the two end leads. Wires originating from seperate coils are not connected, and therefore would not read on the ohm meter.

Stepping Modes


There are several stepping modes that you can use to drive the stepper motor.

1. Single Stepping - the simplest mode turns one coil ON at a time. 48 pulses are needed to complete one revolution. Each pulse moves rotor by 7.5 degrees. The following sequence has to be repeated 12 times for motor to complete one revolution.

Pulse
Coil a1
Coil b1
Coil a2
Coil b2
1
ON



2

ON


3


ON

4



ON


2. High Torque Stepping - high power / precision mode turns ON two coils on at a time. 48 pulses are needed to complete one revolution. Each pulse moves rotor by 7.5 degrees.
The following sequence has to be repeated 12 times for motor to complete one revolution.

Pulse
Coil a1
Coil b1
Coil a2
Coil b2
1
ON
ON


2

ON
ON

3


ON
ON
4
ON


ON

3. Half Stepping - stepping is doubled and motor needs 96 pulses to complete one revolution. Each pulse moves rotor by approximately 3.75 degrees. Notice the mix of single stepping mode (lighter green) and high torque mode (darker green).

Pulse
Coil a1
Coil b1
Coil a2
Coil b2
1
ON



2
ON
ON


3

ON


4

ON
ON

5


ON

6


ON
ON
7



ON
8
ON


ON


- single stepping mode, normal strength, quiet

- high torque mode, high strength, slightly louder

Driving Stepper Motors with the L293D

The L293D contains two H-bridges (for more information on H-bridges, click here.) for driving small DC motors. It can also be used to drive stepper motors because stepper motors are, in fact, two(or more) coils being driven in a sequence, backwards and forwards. One L293D can, in theory, drive one bi-polar 2 phase stepper motor, if you supply the correct sequence.

STEPPER CONTROLLER SCHEMATIC

schem1.gif (5116 bytes)


Bipolar Stepper Motor

The L293D chip has 16 pins. Here is how each of the pins should be connected:

Pin 1, 9 Enable pins. Hook them together and you can either keep them high and run the motor all the time, or you can control them with you own controller(e.g. 68HC11).

Pin 3, 6, 11, 14 Here is where you plug in the two coils. To tell which wires correspond to each coil, you can use a mulitmeter to measure the resistance between the wires. The wires correspond to the same coil has a much lower resistance than wires correspond to different coils. (This method only applies to bipolar stepper motors. For unipolar stepper motors, you have to refer to the spec. sheet to tell which wires correspond to each coil.) You can then get one coil hooked up to pin 3,6 and another one hooked up to pin 11, 14.

Pin 4, 5, 12, 13 Gets hooked to ground.

Pin 8 Motor voltage, for the motors we are using, it is 12V.

Pin 16 +5V. It is the power supply of the chip and it's a good idea to keep this power supply separate from your motor power.

Pin 2, 7, 10, 15 Control signals. Here is where you supply the pulse sequence. The following is how you pulse them for a single-cycle (to move the motor in the opposite direction, just reverse the steps. i.e. from step 4 to step1):


Coil 1a

Coil 2a

Coil 1b

Coil 2b

Step 1

High

High

Low

Low

Step 2

Low

High

High

Low

Step 3

Low

Low

High

High

Step 4

High

Low

Low

High

Tuesday, March 17, 2009

PWM Circuit using 555 Timer

A Simple PWM Circuit Based on the 555 Timer

One of the most fundamental problems in robotics is DC motor speed control. The most common method of speed control is PWM or pulse width modulation. Pulse width modulation is the process of switching the power to a device on and off at a given frequency, with varying on and off times. These on and off times are referred to as "duty cycle". The diagram below shows the waveforms of 10%, 50%, and 90% duty cycle signals.

As you can see from the diagram, a 10% duty cycle signal is on for 10% of the wavelength and off for 90%, while a 90% duty cycle signal is on for 90% and off for 10%. These signals are sent to the motor at a high enough frequency that the pulsing has no effect on the motor. The end result of the PWM process is that the overall power sent to the motor can be adjusted from off (0% duty cycle) to full on (100% duty cycle) with good efficiency and stable control.

While many robot builders use a microcontroller to generate the required PWM signals, the 555 PWM circuit explained here will give the novice robot builder an easy to construct circuit, and good understanding of pulse width modulation. It is also useful in a variety of other applications where the PWM setting need only be changed occasionally.

The 555 timer in the PWM circuit is configured as an astable oscillator. This means that once power is applied, the 555 will oscillate without any external trigger. Before the technical explanation of the circuit, let's look at the 555 timer IC itself.

The pinouts for the 8 pin DIP package are as follows:

A block diagram of the 555 timer:

Pin descriptions for the 555

PIN DESCRIPTION PURPOSE
1 Ground DC Ground
2 Trigger The trigger pin triggers the beginning of the timing sequence. When it goes LOW, it causes the output pin to go HIGH. The trigger is activated when the voltage falls below 1/3 of +V on pin 8.
3 Output The output pin is used to drive external circuitry. It has a "totem pole" configuration, which means that it can source or sink current. The HIGH output is usually about 1.7 volts lower than +V when sourcing current. The output pin can sink up to 200mA of current. The output pin is driven HIGH when the trigger pin is taken LOW. The output pin is driven LOW when the threshold pin is taken HIGH, or the reset pin is taken LOW.
4 Reset The reset pin is used to drive the output LOW, regardless of the state of the circuit. When not used, the reset pin should be tied to +V.
5 Control Voltage The control voltage pin allows the input of external voltages to affect the timing of the 555 chip. When not used, it should be bypassed to ground through an 0.01uF capacitor.
6 Threshold The threshold pin causes the output to be driven LOW when its voltage rises above 2/3 of +V.
7 Discharge The discharge pin shorts to ground when the output pin goes HIGH. This is normally used to discharge the timing capacitor during oscillation.
8 +V DC Power - Apply +3 to +18VDC here.


The schematic diagram for the 555 PWM Circuit:

The reset pin is connected to +V, so it has no effect on the circuit's operation.

When the circuit powers up, the trigger pin is LOW as capacitor C1 is discharged. This begins the oscillator cycle, causing the output to go HIGH.

When the output goes HIGH, capacitor C1 begins to charge through the right side of R1 and diode D2. When the voltage on C1 reaches 2/3 of +V, the threshold (pin 6) is activated, which in turn causes the output (pin 3), and discharge (pin 7) to go LOW.

When the output (pin 3) goes LOW, capacitor C1 starts to discharge through the left side of R1 and D1. When the voltage on C1 falls below 1/3 of +V, the output (pin 3) and discharge (pin 7) pins go HIGH, and the cycle repeats.

Pin 5 is not used for an external voltage input, so it is bypassed to ground with an 0.01uF capacitor.

Note the configuration of R1, D1, and D2. Capacitor C1 charges through one side of R1 and discharges through the other side. The sum of the charge and discharge resistance is always the same, therefore the wavelength of the output signal is constant. Only the duty cycle varies with R1.

The overall frequency of the PWM signal in this circuit is determined by the values of R1 and C1. In the schematic above, this has been set to 144 Hz.

To compute the component values for other frequencies, use the formula:

Frequency = 1.44 / (R1 * C1)

In this circuit, the output pin is used to charge and discharge C1, rather than the discharge pin. This is done because the output pin has a "totem pole" configuration. It can source and sink current, while the discharge pin only sinks current. Note that the output and discharge pins go HIGH and LOW at the same time in the oscillator cycle.

The discharge pin is used to drive the output. In this case, the output is a IRFZ46N MOSFET. The gate of the MOSFET must be pulled high as the discharge pin is open collector only. Being an N channel MOSFET, the IRFZ46N will conduct from drain to source when the gate pin rises above 4 volts or so. It will stop conducting when the gate voltage falls below this voltage. The configuration of the output also serves to invert the signal from the 555 circuit.

There you have it, a simple 555 PWM oscillator! I hope this is helpful and generates more interest in electronics and robotics.

Written by Rick Bickle

Source: EFY

Introduction To Robotics


An Introduction to Robotics Technology
warsayo writes "The word "robot" originates from the Czech word for forced labor, or serf. It was introduced by playwright Karel Capek, whose fictional robotic inventions were much like Dr. Frankenstein's monster - creatures created by chemical and biological, rather than mechanical, methods. But the current mechanical robots of popular culture are not much different from these fictional biological creations.
Basically a robot consists of:
- A mechanical device, such as a wheeled platform, arm, or other construction, capable of interacting with its environment
- Sensors on or around the device that are able to sense the environment and give useful feedback to the device
- Systems that process sensory input in the context of the device's current situation and instruct the device to perform actions in response to the situation
In the manufacturing field, robot development has focused on engineering robotic arms that perform manufacturing processes. In the space industry, robotics focuses on highly specialized, one-of-kind planetary rovers. Unlike a highly automated manufacturing plant, a planetary rover operating on the dark side of the moon - without radio communication - might run into unexpected situations. At a minimum, a planetary rover must have some source of sensory input, some way of interpreting that input, and a way of modifying its actions to respond to a changing world. Furthermore, the need to sense and adapt to a partially unknown environment requires intelligence (in other words, artificial intelligence).
From military technology and space exploration to the health industry and commerce, the advantages of using robots have been realized to the point that they are becoming a part of our collective experience and every day lives. They often function to relieve us from danger and tedium:
Safety - Robotics have been developed to handle nuclear and radioactive chemicals for many different uses including nuclear weapons, power plants, environmental cleanup, and the processing of certain drugs.
Unpleasantness - Robots perform many tasks that are tedious and unpleasant, but necessary, such as welding or janitorial work.
Repetition and Precision - Assembly line work has been one of the mainstays of the robotics industry. Robots are used extensively in manufacturing and, more glamorously, in space exploration, where minimum maintenance requirements are emphasized.
Mechanical Platforms - The Hardware Base
A robot consists of two main parts - the robot body and some form of artificial intelligence (AI) system. Many different body parts can be called a robot. Articulated arms are used in welding and painting; gantry and conveyor systems move parts in factories; and giant robotic machines move earth deep inside mines. One of the most interesting aspects of robots in general is their behavior, which requires a form of intelligence. The simplest behavior of a robot is locomotion. Typically, wheels are used as the underlying mechanism to make a robot move from one point to the next. Of course, some motive force required to make the wheels turn under command.
Motors
A variety of electric motors provide power to robots, allowing them to move material, parts, tools, or specialized devices with various programmed motions. The efficiency rating of a motor describes how much of the electricity consumed is converted to mechanical energy. Some of the mechanical devices that are currently being used in modern robotics technology include:
DC Motor - Permanent-magnet, direct-current (PMDC) motors require only two leads, and use an arrangement of fixed- and electro-magnets (stator and rotor) and switches. These form a commutator to create motion through a spinning magnetic field.
AC Motor - AC motors cycle the power at the input-leads, to continuously move the field. Given a signal, AC and DC motors perform their action to the best of their ability.
Stepper Motor - Stepper motors are like brushless DC or AC motors. They move the rotor by applying power to different magnets in the motor in sequence (stepped). Steppers are designed for fine control and will not only spin on command, but can spin at any number of steps-per-second (up to their maximum speed).
Servomotors - Servomotors are closed-loop devices. Given a signal, they adjust themselves until they match the signal. Servos are used in radio control airplanes and cars. They are simple DC motors with gearing and a feedback control system.
Driving Mechanisms
Gears and Chains - Gears and chains are mechanical platforms that provide a strong and accurate way to transmit rotary motion from one place to another, possibly changing it along the way. The speed change between two gears depends upon the number of teeth on each gear. When a powered gear goes through a full rotation, it pulls the chain by the number of teeth on that gear.
Pulleys and Belts - Pulleys and belts, two other types of mechanical platforms used in robots, work the same way as gears and chains. Pulleys are wheels with a groove around the edge, and belts are the rubber loops that fit in that groove.
Gearboxes - A gearbox operates on the same principles as the gear and chain, without the chain. Gearboxes require closer tolerances, since instead of using a large loose chain to transfer force and adjust for misalignments, the gears mesh directly with each other. Examples of gearboxes can be found on the transmission in a car, the timing mechanism in a grandfather clock, and the paper-feed of your printer.
Power Supplies
Power supplies are generally provided by two types of battery. Primary batteries are used once and then discarded; secondary batteries operate from a (mostly) reversible chemical reaction and can be recharged several times. Primary batteries have higher density and a lower self-discharge rate. Secondary (rechargeable) batteries have less energy than primary batteries, but can be recharged up to a thousand times depending on their chemistry and environment.
There are literally hundreds of types and styles of batteries available for use in robots. Batteries are categorized by their chemistry and size, and rated by their voltage and capacity. The voltage of a battery is determined by the chemistry of the cell, and the capacity by both the chemistry and size.
The robot platform runs off of two separate battery packs, which share only a ground. This way, the motor may dirty up one power source while the electronics can run off of the other. The electronics and the motors can also operate from different voltages.
Electronic Control
There are two major hardware platforms in a robot. The mechanical platform of unregulated voltages, power and back-EMF spikes, and the electronic platform of clean power and 5-volt signals. These two platforms need to be bridged in order for digital logic to control mechanical systems. The classic component for this is a bridge relay. A control signal generates a magnetic field in the relay's coil that physically closes a switch. MOSFETs, for example, are highly efficient silicon switches, available in many sizes like the transistor that can operate as a solid state relay to control the mechanical systems.
On the other hand, larger sized robots may require a PMDC motor in which the value of the MOSFET's "on" resistance Rds(on) results in great increases in the heat dissipation of the chip, thereby significantly reducing the chip's heat temperature. Junction temperatures within the MOSFET and the coefficients of conduction of the MOSFET package and heat sink are other important characteristics of PMDC motors.
There are two broad families of transistor - bipolar junction transistors (BJT) and field-effect transistors (FET). In BJT devices, a small current flow at the base moderates a much larger current between the emitter and collector. In FET devices, the presence of an electrical field at the gate moderates the flow between the source and drain.
Sensors
Robots react according to a basic temporal measurement, requiring different kinds of sensors. In most systems a sense of time is built in through the circuits and programming. For this to be productive in practice, a robot has to have perceptual hardware and software, which is updated quickly. Regardless of sensor hardware or software, sensing and sensors can be thought of as interacting with external events (in other words, the outside world). The sensor measures some attribute of the world. The term transducer is often used interchangeably with sensor. A transducer is the mechanism, or element, of the sensor that transforms the energy associated with what is being measured into another form of energy. A sensor receives energy and transmits a signal to a display or computer. Sensors use transducers to change the input signal (sound, light, pressure, temperature, etc.) into an analog or digital form capable of being used by a robot.
Logical Sensors - One powerful abstraction of a sensor is a logical sensor, which is a unit of sensing or module that supplies a particular percept. It consists of the signal processing, from the physical sensor, and the software processing needed to extract the percept.
Proprioceptive Sensors - Proprioception is dead reckoning, where the robot measures a signal originating within itself.
Proximity Sensors - A proximity sensor measures the relative distance between the sensor and objects in the environment.
Infrared (IR) Sensors - Another type of active proximity sensor is an infrared sensor. It emits near-infrared energy and measures whether any significant amount of the IR light is returned.
Bump and Feeler Sensors Another popular class of robotic sensing is tactile, or touch-based, done with a bump and feeler sensor. Feelers or whiskers are constructed from sturdy wires. A bump sensor is usually a protruding ring around the robot consisting of two layers.
Microcontroller Systems
Microcontrollers (MCUs) are intelligent electronic devices used inside robots. They deliver functions similar to those performed by a microprocessor (central processing unit, or CPU) inside a personal computer. MCUs are slower and can address less memory than CPUs, but are designed for real-world control problems. One of the major differences between CPUs and MCUs is the number of external components needed to operate them. MCUs can often run with zero external parts, and typically need only an external crystal or oscillator.
There are four basic aspects of a microcontroller - speed, size, memory, and other. Speed is designated in clock cycles, and is usually measured in millions of cycles per second (Megahertz, MHz). The use of the cycles varies in different MCUs, affecting the usable speed of the processor. Size specifies the number of bits of information the MCU can process in one step - the size of its natural cluster of information. MCUs come in 4-, 8-, 16-, and 32-bits, with 8-bit MCUs being the most common size. MCUs count most of their ROM in thousands of bytes (KB) and RAM in single bytes. Many MCUs use the Harvard architecture, in which the program is kept in one section of memory (usually the internal or external SRAM). This in turn allows the processor to access the separate memories more efficiently.
The fourth aspect of microcontrollers, referred to as "other", includes features such as a dedicated input device that often (but not always) has a small LED or LCD display for output. A microcontroller also takes input from the device and controls it by sending signals to different components in the device. Also the program counter keeps track of which command is to be executed by the microcontroller.
R/C Servos - Servomotors, used in radio-controlled models (cars, planes, etc.) are useful in many kinds of smaller robots, because they are compact and quite inexpensive. The servomotors themselves have built-in motor, gearbox, position-feedback mechanisms and controlling electronics. Standard radio control servomotors which are used in model airplanes, cars and boats are useful for making arms, legs and other mechanical appendages which move back and forth rather than rotating in circles.
Animatronic Systems
Animatronic systems are robotic systems which mimic and look like humans. An android is an anthropomorphic robot - in other words, a robot that looks like a human.
Pneumatics Pneumatics is the name for fluid power used in a large number of commercial robots. Pneumatics are also used in a variety of animatronic systems that fall under the category of fluid power. A more well known branch of fluid power is hydraulics. Visit the pneumatics Web site (see Resources later in this article) for additional information.
Open Source Robot Control Software
OROCOS (Open RObot COntrol Software) is an effort to start up an open source robot control software project. Broad discussions are being held about what experiences, code and tools can be re-used from other projects, what open standards should be integrated into the project and what organizational structure is most appropriate for the project. Goals of the OROCOS project are to develop robot control software with the following characteristics:
- Under open source and/or free software license(s),
- As modular as possible,
- Of the highest quality (from both technical and software engineering perspectives),
- Independent of (but compatible with) commercial robot manufacturers,
- For all sorts of robotic devices and computer platforms,
- Localized for all programming languages, and
- Featuring configurable software components for kinematics, dynamics, planning, sensing, control, hardware interfacing, etc.
The project aims to become more than just a copy of existing commercial robot controllers or robot simulation/programming packages. The goal of the OROCOS project is to develop shareable libraries, stand-alone components (sometimes referred to as software agents), and a configurable run-time environment from which to eliminate and control all distributed robotics systems. These types of projects are useful in several ways:
- For re-using code,
- For use as an independent sub-system,
- For copying their organizational structure,
- For learning from the experience of managing an open source project, and
- For designing and developing extensible and reusable software.
Open Source Matrix Libraries
The following are open source matrix libraries that satisfy the above-mentioned requirements. Octave is recommended, since it is GPL-licensed and delivers all required functionality.
GNU Octave - GNU Octave is a high-level language, primarily intended for numerical computations. It provides a convenient command line interface for solving linear and nonlinear problems numerically, and for performing other numerical experiments using a language that is mostly compatible with Matlab. It is easily extensible and customizable via user-defined functions written in Octave's own language, or using dynamically loaded modules written in C++, C, Fortran, or other languages.
GNU Octave is freely distributed software. You may redistribute it and/or modify it under the terms of the GNU General Public License (GPL) as published by the Free Software Foundation. More detailed information about GNU Octave can be found by visiting the Octave Web site (see Resources).
GSL (GNU Scientific Library) - GSL is an ongoing effort to develop a modern extensive and ANSI C library for numerical computing. The GNU Scientific Library (GSL) is a collection of routines for numerical computing. The routines are written from scratch by the GSL team in ANSI C, and are meant to present a modern Applications Programming Interface (API) for C programmers, while allowing wrappers to be written for very high level languages.
GSL is free software. It is distributed under the terms of the GNU General Public License. Visit Red Hat's Web site (see Resources) for more information concerning GSL.
Real time kernels
Real-Time Linux (RTLinux) - RTLinux(TM) is a hard real-time operating system that handles time-critical tasks and runs Linux as its lowest priority execution thread. In RTLinux, the kernel shares one or more processors with standard Linux. This allows the system to run accurately timed applications performing data acquisition, systems control and robotics, while still serving as a standard Linux workstation.
RTLinux.org is the non-commercial RTLinux site for the open source user and developer community. Their sister site, RTLinux.com (see Resources), discusses commercial support and development.
eCos (embedded Configurable operating system) - eCos is an open source real-time operating system for deeply embedded applications. It meets the requirements of the embedded space that Linux cannot yet reach. Linux currently scales upwards from a minimal size of around 500 kilobytes of kernel and 1.5MB of RAM, before taking into consideration application and service requirements. The eCos open source project can be found at their Web site (see Resources).
RTEMS (GPL License) - RTEMS is an open source real-time operating system and environment for C, C++ and Ada95. It is distributed under the terms of the GNU General Public License. Visit the RTEMS site (see Resources) for downloads and more detailed information about RTEMS.
Utilities and Tools
ROBOOP (A robotics object oriented package in C++) - This package is an object-oriented toolbox in C++ for robotics simulation. Technical references and downloads are provided in the Resources.
CORBA - A real-time communications and object request broker software package for embedding distributed software agents. Each independent piece of software registers itself and its capabilities to the ORB, by means of an IDL (Interface Definition Language). Visit their Web site (see Resources) for technical information, downloads, and documentation for CORBA.
TANGO/TACO - This software might be useful for controlling a robotics system with multiple devices and tools. TANGO is an object oriented control system based on CORBA. Device servers can be written in C++ or Java. TACO is object oriented because it treats all (physical and logical) control points in a control system as objects in a distributed environment. All actions are implemented in classes. New classes can be constructed out of existing classes in a hierarchical manner, thereby ensuring a high level of software reuse. Classes can be written in C++, in C (using a methodology called Objects in C), in Python or in LabView (using the G programming language).
TACO was designed to be portable and runs on a large number of platforms (for example, Linux, Solaris, HP-UX, Windows/NT, Windows/95, and OS9). To download the source code and other technical documents visit their web site (see Resources).
Controllers
Task Control Architecture - The Task Control Architecture (TCA) simplifies building task-level control systems for mobile robots. "Task-level" refers to the integration and coordination of perception, planning, and real time control to achieve a given set of goals (tasks). TCA provides a general control framework, and is intended to control a wide variety of robots. TCA provides a high-level machine-independent method for passing messages between distributed machines (including between Lisp and C processes). TCA provides control functions, such as task decomposition, monitoring, and resource management, that are common to many mobile robot applications. The Resources section provides technical references and download information for Task Control Architecture.
EMC (Enhanced Machine Controller) - The EMC software is based on the NIST Real time Control System (RCS) methodology, and is programmed using the NIST RCS Library. The RCS Library eases the porting of controller code to a variety of UNIX and Microsoft platforms, providing a neutral application programming interface (API) to operating system resources such as shared memory, semaphores and timers. The EMC software is written in C and C++, and has been ported to the PC Linux, Windows NT, and Sun Solaris operating systems.
Darwin2K - Darwin2K is a free, open source toolkit for robot simulation and automated design. It features numerous simulation capabilities and an evolutionary algorithm capable of automatically synthesizing and optimizing robot designs to meet task-specific performance objectives.
Languages
RoboML (Robotic Markup Language) - RoboML is used for standardized representation of robotics-related data. It is designed to support communication language between human-robot interface agents, as well as between robot-hosted processes and between interface processes, and to provide a format for archived data used by human-robot interface agents.
ROSSUM - A programming and simulation environment for mobile robots. The Rossum Project is an attempt to help collect, develop, and distribute software for robotics applications. The Rossum Project hopes to extend the same kind of collaboration to the development of robotic software.
XRCL (Extensible Robot Control Language) - XRCL (pronounced zircle) is a relatively simple, modern language and environment designed to allow robotics researchers to share ideas by sharing code. It is an open source project, protected by the GNU Copyleft.
Open System Architecture for Controls within Automation Systems (OSACA) - OSACA is a joint European project that aims to improve the competitiveness of the manufacturers of machine tools and control systems in the world market. The main goal of the project is to specify system architecture for open control systems, which is manufacturer independent.
Author: Darrick Addison (dtadd95@bellatlantic.net)

Calculation of Torque and RPM

Calculation of Torque and RPM



Displacement and Velocity

We all know what velocity is, but how do you design a robot to go at a defined velocity? Of course you can put a really fast motor on your robot and hope that it will go fast enough. But if you can calculate it you can design it to go your required speed without doubt, and leave the rest of the motor force for torque.
So how to do this? For an example, suppose you have a wheeled robot that you want to run over old people with. You know from experiments that old people can run at 3 feet per second. So what motor rpm do you need, and what diameter should your wheels be, so they cant get away or hide their medicine?


Conceptually, every time your wheel rotates an entire revolution, your robot travels the distance equal to the circumference of the wheel. So multiply the circumference by the number of rotations per minute, and you then get the distance your robot travels in a minute.

Robot Wheel Circumference wrt Speed

Velocity = circumference * rpm
Velocity = diameter * pi * rpm OR Velocity = 2 * radius * pi * rpm

For example, if your motor has a rotation speed (under load) of 100rpm (determined by looking up the motor specifications) and you want to travel at 3 feet per second, calculate:

3 ft/s = diameter * pi * 100rpm
3 ft/s = diameter * pi * 1.67rps (rotations per second)
diameter = 3 ft/s / (3.14 * 1.67 rps)
diameter = 0.57 ft, or 6.89"


Robot Wheel Diameter vs Torque


You probably noticed that the larger the diameter of the wheel, or higher the rpm, the faster your robot will go. But this isn't entirely true in that there is another factor involved. If your robot requires more torque than it can give, it will go slower than you calculated. Heavier robots will go slower. Now what you need to do is compare the motor torque, your robot acceleration, and wheel diameter. These three attributes will have to be balanced to achieve proper torque.


Motor Torque and Force


High force is required to push other robots around, or to go up hills and rough terrain, or have high acceleration. As calculatable with statics, just by knowing your wheel diameter and motor torque, you can determine the force your robot is capable of.

Motor Torque and Force Free Body Diagram

Torque = Distance * Force
Distance = Wheel Radius
Force = Torque / Wheel Radius


Acceleration


But you also want to be concerned with acceleration. For a typical robot on flat terrain, you probably want acceleration to be about half to a third of your velocity. So if your robot velocity is 3 ft/s, you want your acceleration to be around 1.5 ft/s^2. This means it would take 2 seconds (3 / 1.5 = 2) to reach maximum speed.
Remember that:

Force = Mass * Acceleration

There is one other factor to consider when choosing acceleration. If your robot is going up inclines or through rough terrain, you will need a higher acceleration due to countering gravity. If say your robot was going straight up a wall, you would require an additional 9.81 m/s^2 (32 ft/s^2) acceleration to counteract. A typical 20 degree incline (as shown) would require 11 ft/s^2.

Motor Torque and Gravity FBD

How do you calculate how much additional acceleration you would need for a specific incline?

acceleration for inclines = 32 ft/s^2 * sin((angle_of_incline * pi) / 180)

You must add this acceleration to what you already require for movement on flat terrain.

Calculating Wheel Diameter


So now what robot wheel diameter should you use? Going back to an earlier equation,

velocity = diameter * pi * rps
OR
diameter = velocity / (pi * rps)

3 ft/s / (pi * 2/s) = wheel diameter = .48 feet = 5.73"

You are finished! You use motor B, with a wheel diameter of 5.73", and never again will your robot fail at plowing over the neighborhood cat.

Although the above equations are intended for robot wheels, they will also work for any other robot part. If you were say designing a robot arm, instead of using diameter use robot arm length. Then you can calculate how fast the arm will move with a certain weight being carried, for example.

Momentum


Ever notice how heavier things are harder to push than lighter things? This is because of momentum. Knowing your robot's momentum is very important if you want high acceleration for your robot. If your robot is heavy, it will take forever for a weak motor to get it to go fast. How do you determine the momentum of your robot? Just multiply the mass times the velocity. Lower momentum is better for mobility and higher energy efficiency. Higher momentum is better for beating up other robots . . . and people.


Source: Society Of Robots

Basic Electronics Components

Basic Electronic Components

This section is dedicated to components that can be used in robotics, There is such a variety of components such that I cannot cover them all, So here are just a few of the various components that I have used, For those that are not familiar with components I hope this will help you when you build your bots.

Capacitors


Definition:
From the more technical point of view, capacitors store energy in the form of an electric field. A simple capacitor consists of two conductive plates separated by an insulating "dielectric". Even more technical, capacitance is directly proportional to the surface area of these plates and inversely proportional to the separation between them.

From a more practical perspective, I tend to think of capacitors in one of two ways depending on the application. In situations where the ability to store energy is being directly exploited, such as power supply decoupling and RC timing circuits, it is useful to think of a capacitor as it is described above. As a low capacity and inefficient rechargeable cell.

In applications where a capacitor is interacting with an AC signal it can be more useful to think of a capacitor as a device which passes AC signals of frequencies proportional to the capacitance value while impeding DC signals.

The capacity of a capacitor is measured in Farads, abbreviated with a capital F. The Farad is actually a very large unit so most common capacitor values are stated in picofarads (pF), nano Farads (nF) or micro Farads (µF).



Disc Ceramic: While they are limited to quite small values, disc ceramics boast small and solid construction with comparatively high voltage ratings. They range from 1pF to 0.47µF and are not polarised. This type can often be used to replace a polyester capacitor of the same value



Radial Electrolytic: Used for all values above 0.1µF. Electrolytics have lower accuracy and temperature stability than most other types and are almost always polarised. It's usually best to only use an electrolytic when no other type can be used, or for all values over 100µF. Cheap electrolytics are usually made from plastic and rubber and therefore melt easily during soldering.

Axial Electrolytic: The same as other electrolytics but the leads emerge from each end, rather than the same end as in the radial types.



Polyester "Green Caps":
Ranging from 0.01µF to 5µF polyester capacitors have similar properties to disc ceramics with some larger values and a slightly larger construction. They are not polarised.

MKT Polyester: A variation of polyester capacitors used where price matters less than performance. High temperature stability and accuracy land MKT capacitors in higher end audio circuits and power supplies. They range from 1nF to about 10µF. (values over 1µF are quite expensive) MKTs are not polarised.



Tantalum: Tantalum capacitors pack a large capacity into a relatively small and tough package compared to electrolytics, but pay for this in voltage ratings. The device pictured above is 100µF (like the electrolytic next to it) but is rated at 3.6V, compared to 16V. They are often polarised and range from 0.1µF to 100µF.




Polyester Film - This capacitor uses a thin polyester film as a dielectric. Not as high a tolerance as polypropylene, but cheap, temperature stable, readily available, widely used. Tolerance is approx 5% to 10%. Can be quite large depending on capacity or rated voltage and so may not be suitable for all applications.

Philips Marking SchemeEIA Class II Capacitor Codes


Transistors

Definition:
For most practical purposes, (though likely few technical ones) bipolar transistors are electrically activated amplifying switches. Allow a certain current to flow into one lead (called the "base") and a proportionally larger current will flow through the remaining two leads. (from the "collector" to the emitter") Limit this current and use it to drive a load (LED, relay... etc) and you've got an electronic switch. This basic concept is good enough for most applications, assuming you can figure out which lead is which.

Transistor Types:
There are two different types of bipolar transistor, the NPN and PNP. The schematic symbols for each are below. Note that the NPN transistor has an arrow pointing out the emitter, which the PNP has an arrow pointing in.







Resistors


Definition:
As the name implies, a resistor imposes a resistance (often called impedance) on current flow. I'm sure most people reading this will have, at some stage, encountered the dangers of excess current and the damage it can do to. Thus, the resistors most common use is to limit current to safe levels. Cheap insurance....

Value Identification:
The value of a resistor is identified by a series of at least 4 colored bands. This because on components as small as 0.25W resistors a printed value would be very difficult to read and very easy to rub off.

The code itself is quite simple; The first two bands represent the two (or three) most significant figures of the resistors value, the next band is the multiplier or number of zeros, and the last band is the tolerance. (how far off the stated value the part could actually be) The color code is given below.

Resistor Color Chart (IEC)
This resistor is quite obviously 120KΩ.


The gold and silver multipliers will make the value smaller. The color code "Brown-Green -Gold equals 15 x 0.1, or 1.5Ω.

Tolerance is better described as accuracy. If you have a 1KΩ resistor with ±5% tolerance, you could have a resistor with a value anywhere between 950Ω and 1050Ω. (50Ω is 5% of 1000Ω) I've never seen a 10% tolerance resistor myself, and would probably decline to use it in most cases. If you can afford an extra 5c per piece, 1% tolerance resistors are a good rule of thumb. (in my opinion anyway)

Occasionally you will find resistors marked in a different fashion. A resistor with a single black band is a "0Ω" resistor or an expensive wire link. Some high power resistors (over 1W) may have their value printed on them explicitly or in numeric IEC code.which is the same as above but it uses numbers, not colors. This is quite rare.

Ohm's Law:
Below is something a surprising number of electronic enthusiasts do not understand, or use. Yes, it's Ohms Law again. Basic, but somewhat fundamental to electronics....


Ohms Law and Formulas


Using ohms law, we can quickly calculate the required resistance to obtain a specific maximum current at a certain voltage. Say you have an high intensity LED, one of those cool electric blue ones, and you want to get the best light show you can without toasting the LED.

Somewhere on the complicated looking piece of paper often supplied with high performance LEDs will be a maximum forward current rating, usually along the lines of 40mA. To find the resistor needed, simply divide the supply voltage (which can be anything up to the LEDs breakdown voltage) by the maximum forward current. At 13.8V, (in a car) a 345Ω resistor is required. A good idea would be to take this up to the more readily available 390Ω rather than 330Ω. (which would result in more than 40mA) From ohms law again, we can find that 390Ω will allow 35.4mA to flow.

Of course, ohms law is not limited to LEDs. It can be used in any situation where two of the three variables are known. As voltage is almost always known, I mostly use ohms law to determine resistor values.

Variable resistors



Variable resistors have a dial, knob, or screw that allows you to change their resistance. The value of a variable resistor is given as it's highest resistance value. For example, a 500 ohm variable resistor can have a resistance of anywhere between 0 ohms and 500 ohms. A variable resistor may also be called a potentiometer (pot for short).

LDR's Photoresistors




Photoresistors, as their name suggests, are resistors whose resistance is a function of the amount of light falling on them. Their resistance is very high when no light is present (up to millions of Ohms), and significantly lower when they are illuminated (hundreds of Ohms). These are also often called Light-dependent Resistors (LDRs) and Cadmium-Sulfide (CDS) cells.

Voltage regulators

Voltage Regulator IC's have various uses, but are usually used for feeding 5V to anything which uses digital logic. Voltage regulators can be easily bought as an IC so you do not need to make one on your own . . . unless of course you have crazy power or
voltage requirements - such as for robots with ray guns for eyes.
Some examples below are the LM323 5amp can, LM350T, LM 723 Dip, LM7805 To3.




IR Detectors


The Sharp IR Range Finder is probably the most powerful sensor available to the everyday robot hobbyist. It is extremely effective, easy to use, very affordable ($10-$20), very small, good range (inches to meters), and has low power consumption.

How it Works
The Sharp IR Range Finder works by the process of triangulation. A pulse of light (wavelength range of 850nm +/-70nm) is emitted and then reflected back (or not reflected at all). When the light returns it comes back at an angle that is dependent on the distance of the reflecting object. Triangulation works by detecting this reflected beam angle - by knowing the angle, distance can then be determined.
Sharp IR Range Finder Triangulation
The IR range finder reciever has a special precision lens that transmits the reflected light onto an enclosed linear CCD array based on the triangulation angle. The CCD array then determines the angle and causes the rangefinder to then give a corresponding *analog value to be read by your microcontroller. Additional to this, the Sharp IR Range Finder circuitry applies a modulated frequency to the emitted IR beam. This ranging method is almost immune to interference from ambient light, and offers amazing indifference to the color of the object being detected. In other words, the sensor is capable of detecting a black wall in full sunlight with almost zero noise.

Also here in the photo are other IR LEDS, and detectors and emitters, Including a QTI line follower sensor mid right.

IC's Intergrated circuits

http://www.kpsec.freeuk.com/gates.htm#not

LED Displays

LED displays are packages of many LEDs arranged in a pattern, the most familiar pattern being the 7-segment displays for showing numbers (digits 0-9). The pictures below illustrate some of the popular designs:

Example: LED Circuit symbol: LED circuit symbol

Function

LEDs emit light when an electric current passes through them.

Connecting and soldering

LED connections LEDs must be connected the correct way round, the diagram may be labeled a or + for anode and k or - for cathode (yes, it really is k, not c, for cathode!). The cathode is the short lead and there may be a slight flat on the body of round LEDs. If you can see inside the LED the cathode is the larger electrode (but this is not an official identification method).

LEDs can be damaged by heat when soldering, but the risk is small unless you are very slow. No special precautions are needed for soldering most LEDs.

Testing an LED

Testing an LED

Never connect an LED directly to a battery or power supply!
It will be destroyed almost instantly because too much current will pass through and burn it out.

LEDs must have a resistor in series to limit the current to a safe value, for quick testing purposes a 1kohm resistor is suitable for most LEDs if your supply voltage is 12V or less. Remember to connect the LED the correct way round!



Colors of LEDs

LED colours LEDs are available in red, orange, amber, yellow, green, blue and white. Blue and white LEDs are much more expensive than the other colors.

The color of an LED is determined by the semiconductor material, not by the coloring of the 'package' (the plastic body). LEDs of all colors are available in uncolored packages which may be diffused (milky) or clear (often described as 'water clear'). The colored packages are also available as diffused (the standard type) or transparent.

Tri-color LEDs

Tri-colour LED The most popular type of tri-color LED has a red and a green LED combined in one package with three leads. They are called tri-color because mixed red and green light appears to be yellow and this is produced when both the red and green LEDs are on.

The diagram shows the construction of a tri-color LED. Note the different lengths of the three leads. The center lead (k) is the common cathode for both LEDs, the outer leads (a1 and a2) are the anodes to the LEDs allowing each one to be lit separately, or both together to give the third color.

Bi-color LEDs

A bi-color LED has two LEDs wired in 'inverse parallel' (one forwards, one backwards) combined in one package with two leads. Only one of the LEDs can be lit at one time and they are less useful than the tri-color LEDs described above.





LED's come in a variety of sizes, 3mm,5mm,10mm,20mm and a vast range of lumins [brightness].

Relays

A relay is an electrically operated switch. Current flowing through the coil of the relay creates a magnetic field which attracts a lever and changes the switch contacts. The coil current can be on or off so relays have two switch positions and they are double throw (changeover) switches.

Relays allow one circuit to switch a second circuit which can be completely separate from the first. For example a low voltage battery circuit can use a relay to switch a 230V AC mains circuit. There is no electrical connection inside the relay between the two circuits, the link is magnetic and mechanical.

The coil of a relay passes a relatively large current, typically 30mA for a 12V relay, but it can be as much as 100mA for relays designed to operate from lower voltages. Most ICs (chips) cannot provide this current and a transistor is usually used to amplify the small IC current to the larger value required for the relay coil. The maximum output current for the popular 555 timer IC is 200mA so these devices can supply relay coils directly without amplification.

Relays are usually SPDT or DPDT but they can have many more sets of switch contacts, for example relays with 4 sets of changeover contacts are readily available. For further information about switch contacts and the terms used to describe them please see the page on switches

Most relays are designed for PCB mounting but you can solder wires directly to the pins providing you take care to avoid melting the plastic case of the relay.

The supplier's catalogue should show you the relay's connections. The coil will be obvious and it may be connected either way round. Relay coils produce brief high voltage 'spikes' when they are switched off and this can destroy transistors and ICs in the circuit. To prevent damage you must connect a protection diode across the relay coil.

The animated picture shows a working relay with its coil and switch contacts. You can see a lever on the left being attracted by magnetism when the coil is switched on. This lever moves the switch contacts. There is one set of contacts (SPDT) in the foreground and another behind them, making the relay DPDT.

working relay

Relay showing coil and switch contacts



Protection diode for a relay

Protection diodes for relays

Signal diodes are also used with relays to protect transistors and integrated circuits from the brief high voltage produced when the relay coil is switched off. The diagram shows how a protection diode is connected across the relay coil, note that the diode is connected 'backwards' so that it will normally NOT conduct. Conduction only occurs when the relay coil is switched off, at this moment current tries to continue flowing through the coil and it is harmlessly diverted through the diode. Without the diode no current could flow and the coil would produce a damaging high voltage 'spike' in its attempt to keep the current flowing.



Bridge rectifiers



There are several ways of connecting diodes to make a rectifier to convert AC to DC. The bridge rectifier is one of them and it is available in special packages containing the four diodes required. Bridge rectifiers are rated by their maximum current and maximum reverse voltage. They have four leads or terminals: the two DC outputs are labeled + and -, the two AC inputs are labeled ~.


Bridge Rectifier photograph © Rapid Electronics Bridge Rectifier photograph © Rapid Electronics Bridge Rectifier photograph © Rapid Electronics Bridge Rectifier photograph © Rapid Electronics Bridge Rectifier photograph © Rapid Electronics





Operation of a Bridge Rectifier

Bridge rectifier












Example: Diodes Circuit symbol: Diode circuit symbol

Function

Diode characteristic Diodes allow electricity to flow in only one direction. The arrow of the circuit symbol shows the direction in which the current can flow. Diodes are the electrical version of a valve and early diodes were actually called valves.

Forward Voltage Drop

Electricity uses up a little energy pushing its way through the diode, rather like a person pushing through a door with a spring. This means that there is a small voltage across a conducting diode, it is called the forward voltage drop and is about 0.7V for all normal diodes which are made from silicon. The forward voltage drop of a diode is almost constant whatever the current passing through the diode so they have a very steep characteristic (current-voltage graph).

Reverse Voltage

When a reverse voltage is applied a perfect diode does not conduct, but all real diodes leak a very tiny current of a few µA or less. This can be ignored in most circuits because it will be very much smaller than the current flowing in the forward direction. However, all diodes have a maximum reverse voltage (usually 50V or more) and if this is exceeded the diode will fail and pass a large current in the reverse direction, this is called breakdown.

Signal diodes (small current)

Signal diodes are used to process information (electrical signals) in circuits, so they are only required to pass small currents of up to 100mA.

General purpose signal diodes such as the 1N4148 are made from silicon and have a forward voltage drop of 0.7V.

Germanium diodes such as the OA90 have a lower forward voltage drop of 0.2V and this makes them suitable to use in radio circuits as detectors which extract the audio signal from the weak radio signal.

For general use, where the size of the forward voltage drop is less important, silicon diodes are better because they are less easily damaged by heat when soldering, they have a lower resistance when conducting, and they have very low leakage currents when a reverse voltage is applied.



Zener diodes


Example: Zener diode Circuit symbol: Zener diode circuit symbol
a = anode, k = cathode

Zener diode circuit Zener diodes are used to maintain a fixed voltage. They are designed to 'breakdown' in a reliable and non-destructive way so that they can be used in reverse to maintain a fixed voltage across their terminals. The diagram shows how they are connected, with a resistor in series to limit the current.

Zener diodes can be distinguished from ordinary diodes by their code and breakdown voltage which are printed on them. Zener diode codes begin BZX... or BZY... Their breakdown voltage is printed with V in place of a decimal point, so 4V7 means 4.7V for example.

Zener diodes are rated by their breakdown voltage and maximum power:

  • The minimum voltage available is 2.7V.
  • Power ratings of 400mW and 1.3W are common.

I hope this helps with selecting your components for your project.