Designed mobile platform is composed of the following components:
Selected chassis is a Lynxmotion A4WD1 four-wheel body, 30 cm long and wide. The platform is shown in figure 1.
Fig. 1. Designed robotic platform based on A4WD1 chassis.
Power is supplied by two LiPo batteries connected in parallel with the nominal voltage level 14.8 V and single battery capacity 5000mAh, which is sufficient for several hours of continuous operation. Once the robot runs out of energy, batteries can be replaced without restarting the control unit.
The main robot control unit is Pandaboard. Pandboard is a low-power low-cost single board computer based on the OMAP4430 dual core processor. Platform gives access to many of the powerful features of the multimedia processor while maintaining low cost. This will allow the user to develop software and use available peripherals in many configurations. The major components available on the PandaBoard, which can be used in the robot, are as follows:
The device runs Linux kernel with either popular distribution. The most basic task of the Pandaboard is to control the motor drivers – the RoboClaws
The RoboClaw 2×15 Amp is an extremely efficient, versatile, dual channel synchronous regenerative motor controller. It supports dual quadrature encoders and can supply two brushed DC motors with 15 amps per channel continuous and 30 amp peak. With support for dual quadrature decoding it get greater control over speed and velocity is automatically maintains speed even if load increases. RoboClaw uses PID calculations with feed forward in combination with external quadrature encoders to make an accurate control solution. RoboClaw is easy to control with several built in modes. It can be controlled from a standard RC receiver/transmitter, serial device, microcontroller or an analog source, such as a potentiometer based joystick.
To control the speed of motor RoboClaw uses pulse width modulation (PWM). Pulse width modulation is a method of adjusting the current or voltage signals, which consists of changing the pulse width of constant amplitude, used in amplifiers, switching power supplies and systems control the operation of electric motors. PWM powers the system directly or through a low pass filter which smoothes the voltage waveform or current.
Because the Pandaboard and the RoboClaw works with different logic levels, a converter is required. For this purpose KAmodLVC logic level converter has been used. KAmod-LVC module is an 8-bit bi-directional converted voltage levels. The converter can be used to connect two digital systems operating with different voltages (like 1.8V and 5.0V in this case).
The basic orientation sensors embedded in the robot includes a gyroscope, accelerometer and magnetometer. The sensor can be used to determine the position of the robot in two planes. The diagram of components connections and relations is presented in Fig 2. The alignment of the components in the chassis is shown in Fig 3.
Fig. 2. The block diagram of the robot components.
Fig. 3. Internal design of the robot components.
The central point of control and communication is the Pandaboard. This board has several communication interfaces which are to control the robot effectors and to collect information from the sensors. Communication bus between Pandaboard and motor controller was realized using RS232 interface. For the purpose of control only lines RxD and TxD are used. There is no hardware flow control, because communication with the Pandaboard and RoboClaw is realized in inquiry respond method and it is always initiated by the Pandaboard. Therefore, if the control program waits for data from the controller it is not necessary to control rate. The data rate of this link is set to 38400bps.
The orientation sensor uses serial I2C bus. To communicate with this bus the system uses duplex line Serial Data Line (SDA) and one-way line Serial Clock Line (SCL). Both lines are pull-up to power line so it is easy to detect transmissions collision using hardware. In robotic system this bus combines simplicity and functionality in one at a low investment of hardware and software to give the desired effect.
Robot communication with the surrounding environment is based on the built-in wireless card: Pandaboard WiFi. Each robot has its own unique MAC address so it is possible to communicate with the selected robot even if a group of robots is working in the same network.
Robot design provides an easy way for extending the range of sensors or effectors. It has been tested with ultrasonic sensors, laser rangefinders, cameras and Microsoft Kinect sensor. Further extensions are possible using various interfaces: USB, COM, I2C or SPI.
To determine the exact position of the robot can use the Global Positioning System (GPS) receiver or the more accurate indoor marker-based Hagisonic Stargazer system. Stargazer uses markers placed on the ceiling and on the basis of their positions it can determine the location of the robot with high accuracy. Another localization technique uses Hokuyo laser scanner and particle filter algorithm.
Twenty units have been built in the course of the project for testing and further development purposes. The cost of all parts for a single unit does not exceed 900 USD, which is a very low price for the capabilities. The robot can develop speed of 3 m/s, it can put itself into vertical position by climbing a wall. It includes an on-board computer with 2-core CPU, running ordinary Linux OS and providing large variety of extension ports. It meets all defined requirements for testing the planned applications.