The Electric Wheelchair Control System adopts digital signal processing control chip as the core control chip of the system. It has fast running speed, rich on-chip peripherals and other system resources, powerful interrupt function, flexible and rich instruction set, high-speed computing capability, and internal operation. Its flexibility and low power consumption make it possible to realize complex control algorithms in the software design of the system.
The ultimate goal of the system software design is: to achieve smooth and stable coordinated motion control of the two motors, to realize the human-computer interaction function of the wheelchair controller, to have complete fault protection functions, and to communicate with the PC, so that the wheelchair can be This allows very smooth and comfortable running performance under road conditions.
System software design scheme:
1. The control algorithm of voltage negative feedback, current cut-off negative feedback and current positive feedback compensation is adopted to realize the coordinated motion control of two DC motors.
2. The output signals X and Y of the joystick are combined into the given signals of the left and right motors after passing through the S curve and the given generators of the left and right motors. Take the voltage at both ends of the motor and the resistance voltage sampled by the current as the feedback signal. To prevent the motor current from being too large when the Electric Wheelchair Control is started or blocked, a voltage closed-loop speed regulation system with current cut-off negative feedback is adopted. The current positive feedback compensation link is to compensate for the speed drop caused by the armature resistance to improve the mechanical characteristics of the system. When the wheelchair is running on a relatively poor road condition, the left and right sides of the wheelchair may be different under the same setting. At this time, when the user wants to move forward, the wheelchair may turn due to the different load of the left and right motors. The "current positive feedback compensation when load is unbalanced" link is designed to overcome this situation. The setting of the S curve makes the wheelchair very smooth and comfortable when starting and braking, ensuring safety. The speed setting generator load compensation arbitrator is the core command of the coordinated control of the two motors. They ensure the free running of the wheelchair.
3. When the joystick is not in the center position, in order to prevent the user from turning on the wheelchair suddenly and causing safety hazards, after the power-on system is initialized, the joystick will be checked whether it is in the center position. If the joystick is in the center position, the program will continue to Execute down to show that the joystick is not in the center position. If the user releases the joystick to the center position within ten seconds, the whistle will end, and the program will continue to execute, otherwise the program will enter an endless loop and the user will not be able to drive the wheelchair. The solution is: turn off the power, release the joystick to the center position, and power on again.
Main functional modules of the system:
1. Sampling subroutine.
2. Battery power detection subroutine.
4. Speed curve to stator program.
5. Speed key processing subroutine.
6. Speed key whistle subroutine.
7. Display module.
1.1. The sampling subroutine is mainly to sample the output of the joystick, the voltage across the motor, the motor current, and the battery voltage.
2.1. The battery power detection subroutine converts the sampled battery voltage into a voltage value that can be read by the user and displayed on the display. When the battery voltage is low,
The display also shows that the battery voltage is low and gives a reminder of charging. If the wheelchair is running at this time, the controller will alarm the tube and lock the brake after one minute.
When the wheelchair is starting and braking, the load current is large, and the voltage value obtained by sampling at this time is much smaller than normal, which is obviously not the true battery voltage
Value, which requires filtering of the sampled value.
3.1. The whistle subroutine is mainly for other programs to call when the user needs to be warned by a buzzer. The whistle timer can control the buzzer.
The length of the device time.
4.1. The acceleration curve to the stator program is to make the wheelchair smooth, stable and safe when starting and braking. The acceleration to the stator program with S curve is designed.
5.1. The speed key processing subroutine is used to receive and process the signal from the acceleration key, so that the maximum speed of the wheelchair can be changed according to the state of the acceleration and deceleration keys.
The speed of the wheelchair is divided into five gears, and each gear corresponds to a maximum speed of the wheelchair.
6.1. The speed key buzzer subroutine is used when the user presses the acceleration and deceleration key, the buzzer will emit a short beep to indicate that the key is valid.
The buzzer does not sound when the speed gear is the first or fifth gear.
7.1. The display module is mainly used to display the battery voltage value, the speed gear value, the relevant working mode of the wheelchair, and the fault alarm display.
Interrupt structure of system software
1. Mainly use external interrupt and timer period interrupt;
The main tasks completed by the external interrupt are: fault detection and protection of the power tube, and the timer cycle interrupt mainly completes the coordinated control of the two motors.
Control, sampling, overcurrent protection, speed key processing, etc.
2. The timer cycle interrupt program needs to judge the position of the joystick and the running state of the wheelchair. When the center of the joystick and the wheelchair is stationary, the wheelchair can be sealed. The current participates in the control in three ways. First, the current cut-off negative feedback link plays a role of current limiting protection. Second, the current positive feedback compensation link plays a role in improving the mechanical characteristics of the motor. Third, load imbalance compensation, which plays a role in coordinating the balance of two motors.