In recent years, humanoid robots have been a hot topic in the field of automatic control. When imitating humans to walk, the center of gravity of humanoid robots is often outside the center line, making it difficult for their bodies to maintain a balanced standing posture. Being able to stably achieve bipedal walking is the focus and difficulty of humanoid robot research. Humans need the cooperation of the brain and limbs to coordinate their movements, while robots need the strong support of motion controllers and drive devices, especially motion controllers, which need to be based on high-efficiency chips to collect data, complete calculations and send instructions as quickly as possible. In this design, the robot joints use high-power three-phase brushless DC motors, and the controller uses the TMS320F2812 chip, which is a digital signal processor launched by TI that is optimized for the control field. The device integrates a variety of advanced peripherals, providing a good platform for high-speed and high-precision control of the motor.
1 System Overview
Each leg of the biped robot has five degrees of freedom, which can realize the basic walking function and simplify the control variables as much as possible. The overall structure of the system is shown in Figure 1. L1~L5 correspond to the left leg hip lateral, hip forward, knee forward, ankle forward, and ankle lateral joint motors, respectively, and R1~R5 correspond to the right leg. Considering the cost factor and driving performance, Maxon's EC-max series three-phase brushless DC motors are selected to drive joint activities. Among them, motors No. 1 and No. 5 are EC-max35, and the others are EC-max30. Limited by the installation space, the motion controller of each leg is an independent individual. Each motion controller is coordinated and controlled by the main control computer and can complete the action independently based on the motion command, which is similar to the principle of human reflex arc, reducing the workload of the main control computer and speeding up the reaction speed. The main control computer and the motion controller transmit data through the CAN bus.
When the robot walks on two feet, the main control computer sends instructions such as run and stop to the underlying motion controller according to the motion cycle to complete the monitoring of the walking state and data calculation. A single motion controller consists of two parts: DSP processing and motor control: the DSP processing circuit is responsible for exchanging various types of information with the main control computer and sensors, analyzing the received data and calculating and outputting the control signal of the corresponding joint motor; the motor control circuit drives the corresponding motor according to the control signal to achieve the required speed and angle, and processes the photoelectric encoder signal, and feeds the execution result back to the DSP to form a closed-loop control to ensure the execution accuracy.
The data processor used is TMS320F2812, which has an efficient 32-bit DSP core based on C/C++, which improves the accuracy of calculations; the clock frequency is as high as 150 MHz, which enhances the processing capability of the system; it integrates 128 KB of FLASH memory, 4 KB of boot ROM, math table and 2 KB of OTP ROM, which improves the flexibility of chip application; the two event manager modules provide good control functions for motor and power conversion control; the 16-channel high-performance 12-bit ADC unit provides two sample-and-hold circuits, which can realize dual-channel signal synchronous sampling, suitable for the development needs of the entire motion controller, and its code and instructions are fully compatible with the F24x series, which ensures the continuity of project development and product design.
2 Motor speed regulation principle
The system uses PWM waveform to give the speed information of the brushless DC motor, that is, it uses the change of duty cycle within one cycle of the circuit to achieve the change of the average voltage value to correspond to different speed values of the motor.
In TMS320F2812, PWM can be generated by configuring the period value of the timing period register and the comparison value of the comparison unit. The period value is used to generate the frequency of the PWM wave, and the comparison value is used to generate the pulse width of the PWM wave. Changing the comparison value can change the duty cycle of the PWM wave, and changing the period value can change the frequency of the PWM wave. Taking event manager A as an example, the generation process of a single PWM signal is as follows:
Timer 1 is used as the time base for generating PWM signals. The clock cycle is set by the control register T1CON and the period register T1PR. The parameters of the comparison unit are set by the register COMCONA to generate a triangular wave signal. The comparison value and the comparison output mode are set in the registers CMPR1 and ACTRA respectively. The set comparison value is compared with the triangular wave signal in real time to obtain a PWM signal with a corresponding duty cycle. When the timer counter T1CNT is set to the continuous increase counting mode, an asymmetric PWM waveform is generated. When it is set to the continuous increase and decrease counting mode, a symmetrical PWM waveform can be obtained.
Figure 2 shows the principle of generating a symmetrical PWM waveform: if the PWM output is valid at a high level, the output is low when the current value of the triangle wave is less than the comparison value, and the output is high when the current value of the triangle wave is greater than the comparison value; when the low level is valid, the opposite is true.
If the dead time value is set in register DBTCONx, all PWM output channels of the corresponding event manager use the same dead time value. Due to the addition of the dead time, the width of the high-level pulse of the PWM wave is reduced by a dead time, but the period does not change, so the duty cycle of the high-effective and low-effective PWM waveforms can be calculated using equations (1) and (2) respectively.
By adjusting the duty cycle, the output voltage can be adjusted. This stepless and continuously regulated output voltage can provide speed information. Therefore, the purpose of controlling the speed can be achieved by adjusting the width of the effective level of the PWM signal.
3 Hardware Design
The entire hardware circuit includes DSP chip TMS320F2812, power supply, JTAG simulation interface, communication, RAM, PWM, A/D, I/O expansion, spare port, motor drive and optoelectronic signal processing modules. Its control system structure is shown in Figure 3.
The total power supply of the bipedal robot uses a 24 V DC power supply. In order to meet the needs of DSP and peripheral circuits, the power supply needs to be converted into 5 V, 3.3 V and 1.8 V. First, a DC-DC converter is used to convert 24 V into 5 V, and then the TPS767D318 power conversion chip is selected to convert 5 V into 1.8 V and 3.3 V. This chip is specially designed to provide a regulated power supply for DSP devices. It has dual power outputs, and the maximum output current of each power supply is 1 A. In addition, the voltage drift of the chip is very low, which is 350 mV when the maximum output current is 1 A. Each output also has overheat protection, reset and output voltage monitoring functions, which can meet the system's requirements for power performance.
The system has a special JTAG interface circuit so that the controller can be connected to the computer through the TDS510 emulator. Its simulation signal adopts the JTAG standard IEEEll49.1, uses a dual-row 14-pin socket, and pulls up EMU0 and EMU1 on the DSP to Vcc.
TMS320F2812 integrates the CAN bus control module, so adding the CAN bus transceiver SN65HVD251D to the peripheral circuit can realize the communication function between DSP and CAN bus. In order to ensure the integrity of the signal transmitted on the CAN bus, a 150 Ω resistor is added between the two transmission lines of the CAN bus for impedance matching, which can improve the accuracy of the CAN bus transmission signal.
A RAM memory IS61LV6416-10T with a storage capacity of (64K×16)b is expanded by using area O and area 1 of XINTF. Its data access time is 10 ns, which can meet the needs of high-speed operation. The operating voltage is 3.3 V, which is consistent with the DSP operating voltage, and no level conversion circuit is required.
In addition, the I/O port voltage in the DSP control system is mostly 3.3 V, while the external signal is generally 5 V. Therefore, the external 5 V signal needs to be converted into a 3.3 V signal that meets the requirements of the DSP chip. The system uses the bus driver 74LVX4245 for level conversion.
The motor drive circuit adopts the control method of full-bridge driving three-phase brushless DC motor. Since five motors need to be controlled independently, the system needs to generate PWM by the DSP event manager according to the previous principle, and use its waveform duty cycle to give the speed information. This information is combined with the steering, braking and other signals and converted by the control circuit to adjust the speed of the motor. Here, the three-phase brushless DC motor controller MC33035 is used. When driving the motor, the output signal of MC33035 is applied to the three-phase bridge power circuit MPM3003 to determine the switching frequency of the power switch device and the phase change timing of the converter, so that it can generate the three-phase square wave required for the normal operation of the power supply machine. According to the speed voltage, MC33035 can change the output pulse width of the bottom half-bridge, which is equivalent to changing the average voltage of the supply winding, thereby controlling the speed.
4 Software Design
The key to the motion control system software design is whether the motor can reach the required speed and angle after receiving the motion control command from the main control computer. Taking into account the inevitable errors in the operation of the entire system, a compensation algorithm is specially introduced to realize dual closed-loop PID control of speed and position. The specific control process is shown in Figure 4.
The main control computer issues motion instructions based on the data of gait planning, and generates control parameters such as the rotation direction and angle of each motor in the next motion cycle. After the motion controller receives new data, the PWM control calculates the duty cycle information based on the data and generates the corresponding PWM wave, thereby controlling the rotation of the motor. The signal transmitted back by the motor photoelectric encoder is then converted into information such as joint position and speed. The compensation control uses the PID algorithm to adjust the speed and position errors, calculates the required execution amount, and adjusts the PWM waveform to make the motor reach the specified speed in each motion cycle, and enables the joint motor in motion to overcome the influence of the robot's gravity and external force and maintain the set angle. Figure 5 is the speed tracking curve of the single joint motor monitored at the specified swing angle after the program is run during CCS simulation debugging. Its response time and stability basically meet the requirements of bipedal walking.
5 Conclusion
This paper introduces a brushless DC motor motion control system based on DSP. In the specific implementation of the control scheme, according to the characteristics of the robot leg system, the controller is designed around the DSP processing and motor control circuits respectively, which is convenient for design and debugging and enhances the flexibility and scalability of the system. The motor drive adopts speed and position dual closed-loop control to ensure the operation accuracy. After testing, the system basically meets the requirements of motion control and provides a test platform for bipedal walking planning.
Previous article:Design of Image Acquisition Card Based on TMS320F206 DSP
Next article:Temperature Control System Based on DSP and Digital Temperature Sensor
Recommended ReadingLatest update time:2024-11-16 23:43
- Popular Resources
- Popular amplifiers
- Huawei's Strategic Department Director Gai Gang: The cumulative installed base of open source Euler operating system exceeds 10 million sets
- Analysis of the application of several common contact parts in high-voltage connectors of new energy vehicles
- Wiring harness durability test and contact voltage drop test method
- Sn-doped CuO nanostructure-based ethanol gas sensor for real-time drunk driving detection in vehicles
- Design considerations for automotive battery wiring harness
- Do you know all the various motors commonly used in automotive electronics?
- What are the functions of the Internet of Vehicles? What are the uses and benefits of the Internet of Vehicles?
- Power Inverter - A critical safety system for electric vehicles
- Analysis of the information security mechanism of AUTOSAR, the automotive embedded software framework
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
- 【Video Class】Introduction to Antenna Eigenmode Analysis
- Can't see the downloaded file
- 【AT-START-F425 Review】No.05 FLASH
- Recommend several introductory books on the Internet of Things
- More pyESP32 development board images
- 【Badminton Training Monitor Project】-- Submission of Badminton Training Monitoring Module
- GD32E230-EVAL board unboxing
- 【Chuanglong TL570x-EVM】Review 08 - QT Network Communication-TCP-UDP
- Power supply suggestion collection post, there are rewards!!!
- Share the idea of msp430 ultrasonic ranging