19-04-2011, 12:02 PM
[attachment=12368]
FIRE FIGHTING ROBOT SYSTEM
ABSTRACT
This paper describes the design and construction of a small autonomous robot for entry in the 1998 Fire Fighting Robot Competition. At the heart of the system is the 68HC12 microcontroller by Motorola. Program code to control the fire fighting robot is written in 68HC12 native assembly language. The system controls two optically isolated stepper motors for precision movement. Furthermore, the robot performs analog to digital conversion on 6 infrared sensors: 4 for wall proximity detection, one to detect floor markings, and one for candle detection. The 4 proximity sensors utilize heterodyne modulation of the IR signals to reduce the effects of ambient lighting. The extinguishing system is comprised of a large fan salvaged from a toy hovercraft, and a 3.5kHz tone decoder circuit is used to start the robot and gain bonus points.
INTRODUCTION
The annual Fire Fighting Robot Competition sponsored by Trinity College has been an exciting event for several years. Robot hobbyists and professionals of all ages from all parts of the world gather to compete and show off their creations. The goal of the event seems simple: Navigate a model house floorplan, find a lit candle, and extinguish it. As simple as this may sound, it is an intricate process to construct a device which can accomplish such a task. There are a vast number of design options and operating techniques that can be explored.
As the contest’s web page states, a primary purpose of the contest is to "provide an incentive for the robotics community to develop what will be a practical application for a real-world robot". Although the contest is merely a simulation of a real-world scenario, it requires the designers to use practical techniques to create useful designs. The competition serves as an example of what robots can do on a larger scale.
In the first year of competition, there were only a few robots that were able to successfully find and extinguish the candle reliably. The more recent events, however, have yielded a larger number of successful entries. It appears, that the designs are becoming more sound as the robotics community learns which approaches work and which fail. Because of these improvements, the event has a higher level of competition. An entry that strives to perform well must be fast and reliable. This designers of this project aim to accomplish both these tasks.
OVERVIEW OF ROBOT SYSTEM
Figure 1 is a functional block diagram of the robot system. At the heart of the robot is the 68HC12 microcontroller from Motorolla. The microcontroller is responsible for sending signals to and receiving signals from the robot hardware. First, the 68HC12 receives input from the calibration button before each run. This allows the user to align the robot at a specific distance from the desired wall to be followed. Once this has occured, the 68HC12 waits for a logic low from the tone-decoder. Then, the controller outputs to the optoisolators to control the motor driver circuits. The controller also reads values from the IR phototransistors in order to detect walls and search for the candle.
STEPPER MOTORS AND STEPPER DRIVER CIRCUIT
When deciding how to move the robot through the house, the designers realized that precision movement would be necessary in order to avoid touching the walls and receiving penalties. In order to achieve the required precision in movement, it was decided that the robot would utilize stepper motors.
The main benefit of stepper motors is that they are able to turn a specific number of degrees for every step. A four phase stepper motor has four coils that, when energized in a specific sequence, rotate a driving magnetic field which, consequently, rotates a set of permanent magnets. These permanent magnets are attached to a rotor which drives an output shaft. Thus, by pulsing the coils in a certain sequence, a clockwise or counterclockwise movement can be attained.
A change in the coil states (ie. changing from state 2 to state 3 as shown above) results in a single step of the motor shaft. Direction is easily controlled by running through the above sequence either forward or backward. It should also be noted that the coils A and A' are always oppositely charged, as are coils B and B'. By inverting the signals going to coils A and B, the corresponding signals A' and B' can be attained. Thus, only two control lines are required to place the motor into any one of the 4 possible states. Even though this is an important consideration for certain applications, the controller used in this implementation has a sufficient number of lines to control each coil. Furthermore, because two of the coils are always energized at any given time, the rotor is held into place by the two magnetic fields and hence will not easily slip -- even when the motor is not turning. This is another benefit of stepper motors. Figure 2 provides an internal diagram of a typical four phase stepper motor.
The stepper motors used for this project were salvaged from surplus Epson printers. The steppers are designed to provide 1.8 degrees per step (or 200 steps per revolution) and supply a sufficient amount of torque. However, the current requirements of almost any motor are more than a digital output can provide. Because of this requirement, a transistor circuit is needed to drive the motor coils.
The circuit shown in Figure 3 is used to drive the motor coils. Because there are a total of eight motor coils in the robot, eight of these circuits are needed. The circuit functions by receiving a digital input from the microcontroller. This signal is fed to an optoisolator in order to separate the low-voltage, low-current microcontroller from potentially dangerous signals in the motor driver circuit. In other words, the optoisolator allows the 68HC12 to control the motors without any physical connection to the driver circuit. The output side of the optoisolator then drives the base of the TIP112 driver transistor. Just as the stepper motors were, the TIP112 transistors were salvaged from the Epson printers. The TIP112 power transistors are able to supply 50 watts of power, which is more than sufficient to drive the stepper motor coils.
FIRE FIGHTING ROBOT SYSTEM
ABSTRACT
This paper describes the design and construction of a small autonomous robot for entry in the 1998 Fire Fighting Robot Competition. At the heart of the system is the 68HC12 microcontroller by Motorola. Program code to control the fire fighting robot is written in 68HC12 native assembly language. The system controls two optically isolated stepper motors for precision movement. Furthermore, the robot performs analog to digital conversion on 6 infrared sensors: 4 for wall proximity detection, one to detect floor markings, and one for candle detection. The 4 proximity sensors utilize heterodyne modulation of the IR signals to reduce the effects of ambient lighting. The extinguishing system is comprised of a large fan salvaged from a toy hovercraft, and a 3.5kHz tone decoder circuit is used to start the robot and gain bonus points.
INTRODUCTION
The annual Fire Fighting Robot Competition sponsored by Trinity College has been an exciting event for several years. Robot hobbyists and professionals of all ages from all parts of the world gather to compete and show off their creations. The goal of the event seems simple: Navigate a model house floorplan, find a lit candle, and extinguish it. As simple as this may sound, it is an intricate process to construct a device which can accomplish such a task. There are a vast number of design options and operating techniques that can be explored.
As the contest’s web page states, a primary purpose of the contest is to "provide an incentive for the robotics community to develop what will be a practical application for a real-world robot". Although the contest is merely a simulation of a real-world scenario, it requires the designers to use practical techniques to create useful designs. The competition serves as an example of what robots can do on a larger scale.
In the first year of competition, there were only a few robots that were able to successfully find and extinguish the candle reliably. The more recent events, however, have yielded a larger number of successful entries. It appears, that the designs are becoming more sound as the robotics community learns which approaches work and which fail. Because of these improvements, the event has a higher level of competition. An entry that strives to perform well must be fast and reliable. This designers of this project aim to accomplish both these tasks.
OVERVIEW OF ROBOT SYSTEM
Figure 1 is a functional block diagram of the robot system. At the heart of the robot is the 68HC12 microcontroller from Motorolla. The microcontroller is responsible for sending signals to and receiving signals from the robot hardware. First, the 68HC12 receives input from the calibration button before each run. This allows the user to align the robot at a specific distance from the desired wall to be followed. Once this has occured, the 68HC12 waits for a logic low from the tone-decoder. Then, the controller outputs to the optoisolators to control the motor driver circuits. The controller also reads values from the IR phototransistors in order to detect walls and search for the candle.
STEPPER MOTORS AND STEPPER DRIVER CIRCUIT
When deciding how to move the robot through the house, the designers realized that precision movement would be necessary in order to avoid touching the walls and receiving penalties. In order to achieve the required precision in movement, it was decided that the robot would utilize stepper motors.
The main benefit of stepper motors is that they are able to turn a specific number of degrees for every step. A four phase stepper motor has four coils that, when energized in a specific sequence, rotate a driving magnetic field which, consequently, rotates a set of permanent magnets. These permanent magnets are attached to a rotor which drives an output shaft. Thus, by pulsing the coils in a certain sequence, a clockwise or counterclockwise movement can be attained.
A change in the coil states (ie. changing from state 2 to state 3 as shown above) results in a single step of the motor shaft. Direction is easily controlled by running through the above sequence either forward or backward. It should also be noted that the coils A and A' are always oppositely charged, as are coils B and B'. By inverting the signals going to coils A and B, the corresponding signals A' and B' can be attained. Thus, only two control lines are required to place the motor into any one of the 4 possible states. Even though this is an important consideration for certain applications, the controller used in this implementation has a sufficient number of lines to control each coil. Furthermore, because two of the coils are always energized at any given time, the rotor is held into place by the two magnetic fields and hence will not easily slip -- even when the motor is not turning. This is another benefit of stepper motors. Figure 2 provides an internal diagram of a typical four phase stepper motor.
The stepper motors used for this project were salvaged from surplus Epson printers. The steppers are designed to provide 1.8 degrees per step (or 200 steps per revolution) and supply a sufficient amount of torque. However, the current requirements of almost any motor are more than a digital output can provide. Because of this requirement, a transistor circuit is needed to drive the motor coils.
The circuit shown in Figure 3 is used to drive the motor coils. Because there are a total of eight motor coils in the robot, eight of these circuits are needed. The circuit functions by receiving a digital input from the microcontroller. This signal is fed to an optoisolator in order to separate the low-voltage, low-current microcontroller from potentially dangerous signals in the motor driver circuit. In other words, the optoisolator allows the 68HC12 to control the motors without any physical connection to the driver circuit. The output side of the optoisolator then drives the base of the TIP112 driver transistor. Just as the stepper motors were, the TIP112 transistors were salvaged from the Epson printers. The TIP112 power transistors are able to supply 50 watts of power, which is more than sufficient to drive the stepper motor coils.