At present, the development of robots has become an important standard for measuring the scientific and technological strength of various countries. The design of robots in developed countries such as Europe, the United States, and Japan has become increasingly mature, with a wide variety and powerful functions. China has also invested a lot of manpower and financial resources in the research and development of robots, attaches great importance to the teaching of robots, and takes robots as a practical training and practice course in primary schools, middle schools, and universities. It has vigorously carried out various student competitions at the national, provincial, and municipal levels, which has greatly promoted the popularization of robots in China and laid a solid foundation for the research of robots.
The design of competition robots has become a scene of flourishing. In terms of structure, there are humanoid robots, wheeled robots, foot robots, and crawler robots; in terms of completing tasks, there are service robots, fire-fighting robots, dust removal robots, and scenic spot robots. For different tasks, they have their own characteristics. The main performance indicators of dust removal competition robots are the coverage rate of dust removal area and the time to complete. This paper uses the 16-bit microprocessor MSP430F5418 microcontroller to design a wheeled robot. The robot's obstacle avoidance and movement are controlled by four DC motors to complete the competition tasks.
1 Overall structure
Since the tasks completed by the dust removal competition robot are relatively simple and there are strict regulations on its size, the design of the robot should be as simple and practical as possible to avoid unnecessary redundant design. To this end, this paper adopts a modular approach to design the dust removal competition robot, which can flexibly add modules and improve the system according to actual needs to complete the specified tasks; the system is mainly composed of the main control board, power management module, infrared ranging module, electronic compass and motor control board, etc., and its system structure is shown in Figure 1.
The main controller uses the 16-bit microcontroller MSP430F5418, which is widely used due to its high computing speed, rich peripheral interfaces and low price. It is responsible for processing the data collected by the sensor and controlling the movement of the motor based on the effective information obtained. The power management module is mainly responsible for providing independent and stable power for each module in the entire system; the infrared ranging sensor is responsible for collecting obstacle information in the environment to provide a basis for the robot's obstacle avoidance; the electronic compass obtains angle information to control the robot's steering; the motor driver board is responsible for driving and controlling the DC motor.
2 System Implementation
The system mainly consists of the main control board, power management module, infrared ranging module, electronic compass and motor control board. The infrared ranging and electronic compass modules are the key to the system implementation.
2.1 Infrared ranging sensor
The infrared sensor is mainly responsible for measuring the distance between the robot and the obstacle. In order to reliably obtain the site and environmental information, the location deployment of the infrared ranging sensor is very critical. The top view and side view of the deployment of 7 sensors are shown in Figure 2 and Figure 3 respectively.
The left end of Figure 2 is the head of the dust removal robot. The robot head is equipped with infrared sensors 1, 2, and 3, which are placed at 45°, 90°, and 135° respectively, to detect obstacles in front of and on both sides of the robot head. Since the platform height of the dust removal competition robot venue is relatively low, in order to be able to detect the periphery of the platform, sensors 1, 2, and 3 are installed at a lower position. Infrared sensors 4 and 5 on both sides of the robot are used to ensure that the entire body of the robot is in a wide area when entering the room to turn. If only infrared sensors 1 or 3 are used to judge the blank area in front, the robot may turn too early and hit the wall. Infrared sensor 7 is installed at a 45° tilt. When the robot is running on the platform, it can sense the road conditions by detecting the sudden change in the height of the platform edge. Infrared sensor 6 is used to obtain information behind the robot as auxiliary information. [page]
2.2 Electronic compass
The electronic compass is a key component in the design of the dust removal robot. The processing of angle information is directly related to whether the robot's steering can be accurately controlled. The design structure of the electronic compass is shown in Figure 4.
As a new generation of magnetic sensor, HMC1022 has the advantages of high sensitivity (<0.1°), fast response time (<1μs), high output frequency (1 000 Hz), small size and solid-state packaging. In the circuit, IRF7105 provides set/reset pulses for HMC1022 magnetoresistive chip. HMC1022 magnetoresistive sensor generates two differential analog signals according to the applied direction of the geomagnetic field. After differential amplification by two AD620 amplifier circuits, two analog voltages AD0 and AD1 are obtained. After 10-bit high-precision A/D conversion by microcontroller LPC938, digital signal is obtained. After digital filtering, the angle value of the robot is calculated and finally transmitted to MSP430F5418 main controller through UART serial port. UART serial port protocol consists of start word (0x24), angle value high 8 bits, angle value low 8 bits, and end synchronization word (0x55).
3 Software Design
Software is the soul of the robot system. The quality of the software is directly related to whether the robot can work stably. The design of the dust removal competition software should fully consider the specific environment of the venue and adopt effective path planning. The venue model of the Jiangsu Provincial Robot Competition Dust Removal Competition is shown in Figure 5.
[page]
3.1 Path Planning
In order to maximize the robot's traversal area, its running path should be reasonably planned. To this end, the site is divided into 4 rooms as shown in the figure, and the robot's running path is 1->2->3->4->3->1. The process of the robot's running strategy is shown in Figure 6.
The operation process of the robot can be divided into 6 steps:
1) The robot performs a return traversal in Room 1, starting from the starting point and moving forward to the left in the figure. When it encounters a baffle, it returns 180°, and repeats this process until the black line at the door of Room 2 is detected. This ensures that the traversal area of Room 1 reaches the maximum.
2) After the robot enters Room 2, it runs one circle counterclockwise with the cylindrical obstacle as the center to reach the maximum traversal area.
3) When the robot comes out of Room 2 and enters Room 3, since Room 4 is a protruding platform, it can directly run along the edge of Room 4 and the slope and enter Room 4. The remaining area of Room 3 can be traversed when returning.
4) Since Room 4 is a platform and more than one-third of the area of the platform must be traversed for the traversal area of Room 4 to be effective, the robot traverses twice on the platform. First, the robot traverses the outer circle on the platform along the wall and the edge of the platform, and then when it encounters the corresponding wall and platform edge for the second time, it retreats appropriately and traverses the inner circle to achieve a larger traversal area.
5) After the robot comes down from the platform and enters room 3 again, it can traverse the remaining area in step 3 according to the information of walls and obstacles.
6) Use the wall-walking strategy to return to the starting point safely.
3.2 Angle control
The electronic compass provides angle information for the operation of the robot. In actual applications, the dust removal robot has three large angles of 45°, 90°, and 180°. The electronic compass module outputs angle information of 0° to 360°. Considering the uncertainty of the direction of the competition venue, relative angles are usually used instead of absolute values. That is, the current angle value is obtained, and then the angle to be turned is preset. The collected angle information is queried and compared. When the preset angle is reached or exceeded, the turning work is stopped and the next task is entered. During the debugging process, it was found that the robot would spin continuously during the turning process. After analysis and research, it was found that the main reason was the jitter of information acquisition and the influence of the environment. For this reason, the specific preset angle was expanded to a range. In general, the principle of the robot turning a certain angle is shown in Figure 7. Expanding the specific preset angle into a range introduces a new problem. This is caused by the sudden change from 360° to 0° in the preset angle range, that is, passing through the critical point of 360° (0°). The schematic diagram of the preset angle crossing the critical angle is shown in Figure 8.
[page]
The process of angle control is divided into the following four steps. The flowchart of the control algorithm is shown in Figure 9.
1) Loop to obtain the starting angle information. When the absolute difference between the two obtained information is less than 5°, a stable starting angle value start_angle is obtained.
2) According to the current angle value start_angle and the angle value to be rotated, the preset angle value set_value is calculated.
In order to avoid the preset angle value being missed when obtaining, the preset angle value can be increased by 5° to obtain the preset angle range angle_little-angle_big. When angle_little
a) The current angle value result is within the preset angle range.
b) When the robot's starting position start_angle is in area ② in Figure 7, and the current position result is in area ③ in Figure 7.
c) When the robot's starting position start_angle is in area ③ in Figure 7, and the current position result>angle_little and result
a) The current angle value result is within the preset angle range.
b) When the robot's starting position start_angle is in area ② in Figure 7, and the current position result
c) When the robot's starting position start_angle is in area ③ in Figure 7, and the current position result is in area ② in Figure 7.
4) When angle_little
a) The current angle value result is within the preset angle range of area ① or area ② in Figure 8.
b) When the robot's starting position start_angle is in area ③ in Figure 8, and result>angle_big and result
a) The current angle value result is within the preset angle range of area ① or area ② in Figure 8.
b) When the robot's starting position start_angle is in area ③ in Figure 8, and result
4 Conclusion
The control strategy is used to control the robot's turning angle, and the reliability and stability have been greatly improved, and the success rate can reach 100%, which can fully meet the requirements of the competition. The dust removal competition robot designed on this basis has the characteristics of low cost and high reliability. In the dust removal competition of the 4th Jiangsu Provincial Robot Competition, the dust removal area coverage rate reached more than 80%, and won the first prize.
Previous article:Design principle of LED outline display controller based on single chip microcomputer
Next article:Design of temperature control system based on MSP430 microcontroller
Recommended ReadingLatest update time:2024-11-16 21:48
- Popular Resources
- Popular amplifiers
Professor at Beihang University, dedicated to promoting microcontrollers and embedded systems for over 20 years.
- Innolux's intelligent steer-by-wire solution makes cars smarter and safer
- 8051 MCU - Parity Check
- How to efficiently balance the sensitivity of tactile sensing interfaces
- What should I do if the servo motor shakes? What causes the servo motor to shake quickly?
- 【Brushless Motor】Analysis of three-phase BLDC motor and sharing of two popular development boards
- Midea Industrial Technology's subsidiaries Clou Electronics and Hekang New Energy jointly appeared at the Munich Battery Energy Storage Exhibition and Solar Energy Exhibition
- Guoxin Sichen | Application of ferroelectric memory PB85RS2MC in power battery management, with a capacity of 2M
- Analysis of common faults of frequency converter
- In a head-on competition with Qualcomm, what kind of cockpit products has Intel come up with?
- Dalian Rongke's all-vanadium liquid flow battery energy storage equipment industrialization project has entered the sprint stage before production
- Allegro MicroSystems Introduces Advanced Magnetic and Inductive Position Sensing Solutions at Electronica 2024
- Car key in the left hand, liveness detection radar in the right hand, UWB is imperative for cars!
- After a decade of rapid development, domestic CIS has entered the market
- Aegis Dagger Battery + Thor EM-i Super Hybrid, Geely New Energy has thrown out two "king bombs"
- A brief discussion on functional safety - fault, error, and failure
- In the smart car 2.0 cycle, these core industry chains are facing major opportunities!
- The United States and Japan are developing new batteries. CATL faces challenges? How should China's new energy battery industry respond?
- Murata launches high-precision 6-axis inertial sensor for automobiles
- Ford patents pre-charge alarm to help save costs and respond to emergencies
- New real-time microcontroller system from Texas Instruments enables smarter processing in automotive and industrial applications
- Is this understanding of variable types correct?
- DE1SOC transfers the available memory address in demo2_axi_app in BMP
- Share a cost-effective headset
- Program file does not exist problem occurs in ON Semiconductor IDE
- New Year's work
- Application of indoor navigation and positioning system in the IoT ecosystem
- Share MSP430 control LED and water lamp programming examples
- Precision control techniques and methods for PCB board milling
- MSP430FR6989IPZR Mixed-Signal Microprocessor MCU
- Can anyone help me see how to write the transfer function of the following type of op amp circuit?