Application Research of Mobile Robot Based on S3C44B0X

Publisher:Delightful789Latest update time:2011-06-02 Reading articles on mobile phones Scan QR code
Read articles on your mobile phone anytime, anywhere
Mobile robots use navigation technology to obtain the current location of the robot, combine sensor technology to detect the surrounding environment (obstacles, etc.) in real time, and plan a feasible path to reach the target point based on the information provided by the environment. Mobile robot technology involves multiple fields such as sensor technology, navigation technology, computer technology, and artificial intelligence, so it places high demands on the control part of the mobile robot, especially the emergence of visual sensors, which require the control system to have not only large storage capacity but also fast processing speed. In the past, mobile robots based on PLC and single-chip microcomputer control could not meet the characteristics of real-time and rapidity.

With the emergence and development of ARM processors and the development of embedded systems, the real-time and rapid requirements of mobile robots can be well met. Now this technology has been effectively applied in many fields. This paper uses a low-power and high-performance 32-bit processor chip S3C44B0X based on the ARM7TDMI core of SAMSUNG as the control core, and uses the Lingyang 16-bit microcontroller SPCE061A as the auxiliary processor to process the obstacle information detected by the sensor, and uses the embedded real-time multi-task operating system µC/OS-II to manage the implementation of the mobile robot's navigation algorithm and the execution of multiple tasks. The experimental results show that the system can realize the obstacle avoidance and navigation functions and can reach the destination smoothly.

2. Hardware Design of Control System

The control system of the mobile robot mainly completes the detection of external obstacles and information transmission, the acquisition of the current position of the robot, path planning, and operation control. The system can be divided into the following five modules by functional modularization: environment detection module; global positioning module; program download module, motor drive module and power management module. The relationship between each module is shown in Figure 1.

Figure 1 Control system hardware diagram

2.1 Environmental Detection Module

During the obstacle avoidance and path planning process, the mobile robot must detect the information of surrounding obstacles in real time and measure the distance of obstacles. Currently, there are infrared, ultrasonic, laser and visual (CDD) sensors. Laser sensors are greatly affected by the environment and are relatively expensive. Visual sensors (CCD) require large chip storage capacity and fast processing speed, which makes them difficult to use. Based on this, this article installs a set of infrared sensors and ultrasonic sensors in front, left and right of the mobile robot to measure the distance of obstacles in three directions. The use of multiple sensors can avoid the blind spots of single sensor measurement.

The infrared sensor consists of a transmitter and a receiver. The 3-way transmitter port of this sensor is connected to the 3-way I/O port of the Lingyang MCU SPCE061A, and the 3-way receiver port is connected to the other 3 ports of the MCU. When the MCU I/O output is high, the transmitter port emits infrared light, and the light wave encounters an obstacle and is reflected by the receiver, generating a current with a relative light intensity that is input into the MCU through A/D conversion, and the distance of the obstacle is calculated based on the voltage. The working principle of the ultrasonic sensor is basically the same as that of the infrared sensor. The sound wave encounters an obstacle and is returned by the receiver, and the distance of the obstacle is calculated based on the time difference.

The detection module can measure obstacles within a distance of 0 to 2 meters with a small measurement error. It uses the 16-bit Lingyang microcontroller SPCE061A to quickly process obstacle information. Once an obstacle is detected, it communicates with the S3C44B0X through the bus interface and transmits data.

2.2 Global Positioning Module

The determination of the current position of the robot is crucial, providing essential information for the robot's path planning. Currently, the positioning sensors include the global positioning system (GPS), rotary potentiometer, photoelectric encoder, magnetic compass, electronic compass, accelerometer, etc. In view of the use environment, this module uses a combination of photoelectric encoders and electronic compasses produced by Changchun First Optical Co., Ltd. to determine the current coordinate point of the robot¹. The photoelectric encoder converts the angular displacement of the axis into an electrical pulse signal through photoelectric conversion, which is output to the counter T1 of S3C44B0X through the amplification circuit, and the pulses collected at a specific time are stored. The pulse signal is proportional to the number of turns of the wheel, so the actual distance of the robot can be calculated. The electronic compass uses Honeywell's low-cost HMR3100 planar electronic compass, which has an HMC1022 two-axis magnetic sensor inside. The angle measurement accuracy can reach 5 degrees. The electronic compass can determine the absolute direction of the robot relative to the North Pole, and can accurately measure the deviation between the robot's movement direction and the theoretical direction, thereby correcting the robot's movement trajectory.

2.3 Program download module and motor drive module

The program download module mainly completes the download of startup programs and application programs. This system provides two download methods, serial port download and parallel port download. Serial port download communicates with PC through RS232 serial port line connecting COM1 on the board, and parallel port download completes the communication between PC and S3C44B0 through parallel port line connecting JTAG debugging interface.

The accuracy of the motor drive module has a great impact on the accuracy of the entire system. Considering various factors, this module uses an integrated driver IR2110 based on dual-channel, high-voltage, high-speed gate drive mode. The IR2110 driver chip can convert the input logic signal into a low-impedance output drive signal with the same phase, and can drive two outputs on the same bridge arm. The characteristics of strong driving ability, fast response speed, high operating voltage, and low cost improve the accuracy and reliability of the system. The motor uses an ordinary high-power DC reduction motor and a high-power H-bridge drive circuit. The circuit principle is shown in Figure 3.

Figure 3 Circuit driving principle diagram

In the circuit, IR2110 is used as the pre-driver, and four IRFP250s form an H-bridge driver circuit. When a PWM signal is added to the IN1 terminal and a low level is added to the IN2 terminal, Q2 and Q5 are turned on, Q3 and Q4 are turned off, and the motor is driven to rotate forward; when a PWM signal is added to the IN2 terminal and a low level is added to the IN1 terminal, Q3 and Q4 are turned on, Q2 and Q5 are turned off, and the motor is driven to rotate reversely. The motor speed can be adjusted by adjusting the PWM pulse width. In order to make the motor run smoothly, the frequency of the PWM signal should not be less than 1KHZ.

3 System software implementation

The software part is implemented based on the real-time multitasking operating system µC/OS-II ported to S3C44B0X. It is a priority-based, preemptive real-time kernel with open source code, good portability, scalability, multitasking, etc. It can manage 64 tasks and the application can reach 56 tasks. It mainly completes the functions of task management, time management, semaphore management, memory management, etc.

The robot mainly completes obstacle avoidance detection and information transmission, position acquisition, path planning, and operation control functions. Therefore, the system creates a total of 4 tasks, Task 1: obstacle avoidance detection and information transmission, Task 2: position acquisition, Task 3: path planning, Task 4: motor drive control. The priority of the tasks decreases in turn, and information is transmitted between tasks through the fuel tank. After completing the initialization system, the mobile robot drives the motor to execute Task 4 and move toward the target point along the predetermined path. At the same time, the sensor controlled by the single-chip microcomputer SPCE061A works. When the sensor detects obstacles around, Task 1 enters the ready state. Since Task 1 has a high priority, it seizes the right to use the CPU and completes the processing and transmission of obstacle information. Through the transmission of semaphores, Task 2 enters the ready state and completes the calculation of the current position, providing a basis for path planning. Task 3 starts the navigation algorithm for path planning based on the obstacle information provided by Task 1 and the information position information provided by Task 2. After the new path planning is completed, Task 4 enters the running state, thereby completing the final specified task.

4 Experimental Results

The experiment was conducted indoors, with a site area of ​​12m×12m. A green blanket-like material was attached to the surface of the site to prevent slipping. The path planning used a grid-based navigation algorithm². The robot shape size was 0.8m×0.8m×0.6m, the grid scale was 0.8m×0.8m, the number of rows and columns of the grid was 15, and the total number of grids was 15×15=225. Building blocks and other robots were used as stationary obstacles. The running trajectory of the mobile robot is shown in Figure 4. The light gray box in the figure is an obstacle, and the dark gray box route is the robot's motion trajectory. The starting point and the target point are marked in Figure 4 below. The experimental results show that the robot can avoid obstacles and reach the target point. After multiple experiments, the position error is 0~0.4m, which is feasible.

Figure 4 Schematic diagram of robot movement

5 Conclusion

The innovation of this paper is to control the robot by combining the high-performance ARM chip S3C44B0X as the main controller and the single-chip microcomputer SPCE061A as the auxiliary controller, and introduce the embedded real-time operating system µC/OS-II to complete the implementation of the robot navigation algorithm and the reasonable planning and scheduling of multiple tasks of the robot, as well as to ensure the robot's rapid response to unknown environments and the accuracy of the entire system. Experiments have proved that this method is feasible.

The control system has rich hardware resources. The processing of information obtained by the sensor also uses the high-performance single-chip SPCE061A, which provides a hardware foundation for the use of future visual sensors (CCD). The robot also occupies less hardware of the main controller, which facilitates future system upgrades. More advanced navigation algorithms can also be used to make it more intelligent.

Reference address:Application Research of Mobile Robot Based on S3C44B0X

Previous article:Research on model reference adaptive control of CNC machine tool cutting process
Next article:Fuzzy Intelligent Implementation of Temperature Control System of Heating Furnace

Latest Industrial Control Articles
Change More Related Popular Components

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
circle

About Us Customer Service Contact Information Datasheet Sitemap LatestNews


Room 1530, 15th Floor, Building B, No.18 Zhongguancun Street, Haidian District, Beijing, Postal Code: 100190 China Telephone: 008610 8235 0740

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号