Traction therapy system based on multi-embedded processors

Publisher:RainbowDreamerLatest update time:2010-01-28 Source: 微计算机信息 Reading articles on mobile phones Scan QR code
Read articles on your mobile phone anytime, anywhere

0Introduction

In medicine, physical traction is usually used as a conservative treatment method for lumbar spine diseases such as lumbar disc herniation. This traction bed system uses a two-stage bed as a treatment platform, uses embedded processors such as ARM and combines computers to achieve distributed control of the movement of each degree of freedom of the bed, and uses a DC motor to implement external fast and slow traction and fast and slow rotation of the bed at any angle, thereby achieving physical treatment of lumbar spine diseases.

1 System Function and Overall Design

The traction bed uses a two-section bed as a treatment platform. The bed is divided into two sections, front and back, for the patient to lie on. The front section has a fixed belt to fix the patient's upper waist, and is connected to the movable bed head with a traction belt. The traction movement is a translational movement in the front and back directions. The bed head can be pulled forward a certain distance under the drive of the motor, while the patient's waist is fixed, so that the traction belt has a certain force on the lumbar spine. An "S"-shaped tension sensor is installed at the bed head to detect the traction force. The back section of the bed also has a fixed belt to fix the patient's lower waist to the hip bone, and can be driven by the motor to swing in the horizontal plane with the waist as the axis, tilt and lift and rotate in the vertical axis, and rotate to the left and right sides, a total of three degrees of freedom. The traction speed of the front section of the bed is adjustable, and the rotation angle and rotation speed of the back section of the bed can also be set arbitrarily.

The traction bed provides doctors with four degrees of freedom of adjustable physical movement, fully meeting the needs of physical therapy for lumbar spondylosis. In actual treatment, doctors can reasonably use the left and right rotation of the rear bed surface combined with the fast traction function based on slow traction according to the patient's pathological condition to achieve the effect of "spine correction".

The overall design of the traction bed adopts a distributed control system, as shown in Figure 1. The computer, as the host computer, forms a distributed bus network with three embedded controllers (lower computers) through the RS-485 bus to control the movement of the bed. The computer realizes the overall operation control interface of the system. The complex control tasks of the system are decomposed into three parts, which are executed in parallel and in real time by three embedded controllers. Among them, the detection and control of traction movement and traction force are completed by a STC89C52RD+ microcontroller; the angle detection and control of the three rotational movements are processed by Samsong's 32-bit ARM core RISC processor S3C44B0X; the detection and output of various switch quantities such as limit switches on the bed are realized by another STC89C52RD+.

Figure 1 System overall design block diagram

2 System Hardware Design

2.1 Traction control based on STC89C52RD+

Fast and slow traction therapy is to use a DC motor to drive the bed head forward to stretch the fixed belt fixed around the patient's waist, generating a certain traction force on the lumbar spine. The size and speed of the traction force are set by the doctor and maintained for a period of time. During the maintenance period, physical therapy can be performed in conjunction with actions such as bed rotation.

The traction force can be converted into an analog signal by the S-type strain sensor at the head of the bed. The signal size is related to the size of the excitation DC voltage applied to the sensor. The sensor sensitivity is 2mV/V. If the DC excitation voltage is 5V, the maximum signal output by the sensor is 10mV. If the range of the force sensor is 0-200Kg, the corresponding sensor output analog signal is 0-10mV. The signal is amplified 500 times by the instrument amplifier AD623 to 0-5V, and then filtered by the "Л" type inductor and capacitor passive network and input to the 10-bit A/D converter TLC1549. The traction force signal frequency is very low, and the processor samples 20 times per second. A dedicated STC89C52RD+ on-chip hardware timer is used. Every 50ms, the timer interrupt service program is entered to perform an A/D conversion through the SPI serial interface, and the converted data is converted by UART to a 485 signal through the interface chip 74LBC176 and sent to the host computer. After judgment, the host computer issues a control instruction to control the traction motor and the traction process.

STC89C52RD+ is an enhanced 51 single-chip microcomputer produced by STC, with high reliability and strong anti-interference. When doing electromagnetic compatibility test on the controller during product registration, it was found that the power pulse interference test and high-voltage discharge interference test items that AT89C52 could not pass, but STC89C52RD+ could easily pass. This shows the reliability of STC single-chip microcomputer.

2.2 Switching quantity detection and control based on STC89C52RD+

The bed uses a travel switch to limit each movement stroke to prevent the system from losing control and causing excessive traction to injure the patient, or excessive rotation or swinging angles to throw the patient out of the bed. When the travel limit switch is touched, the relay control circuit will directly cut off the power supply of the motor to stop the motor. The controller STC89C52RD+ detects these signals in real time and quickly transmits this information to the host computer through the 485 serial bus. The system software will stop the process and reset the system. The microcontroller locks the system's 23 output switch status in three 74HC377s to ensure reliable status output. Each output is isolated by a photocoupler and amplified by ULN2803, driving the switch of the relay to control the start and stop and combined actions of each motor.

Set up an "urgent retreat" button, which the patient can press when he feels uncomfortable. The system will quickly release the traction and rotate the bed flat. When the patient presses the "urgent retreat" button, the microcontroller detects it and transmits the message to the host computer through the 485 bus. After receiving the message, the system software immediately stops the current traction process and issues a command. The microcontroller then controls the traction motor to reverse and release the traction. If the bed surface is in a rotating tilt state, the control rotates the bed flat. These measures greatly improve the safety and reliability of the traction therapy system, which is a must for a medical device.

A STC89C52RD+ is selected as a dedicated switch quantity detection and control processor. This makes this part of the control program more concise, pure, and easy to implement, ensuring reliable and correct operation of the system. If this part of the task is merged into other controllers, it will increase the difficulty of software programming, the process will be more complicated, and the reliability and safety of the system operation will inevitably be reduced.

2.3 Rotational motion control based on ARM processor S3C44B0X

Medical equipment requires low noise in operation. The system uses a new 220V high-voltage, high-power DC motor with high efficiency and low noise as the actuator of the bed movement to achieve multi-dimensional, multi-axis, and multi-degree-of-freedom movement of the bed mechanical system. The DC motor is controlled by PWM. The PWM drive uses a high-efficiency, high-power VMOS tube amplifier circuit. In the selection of embedded motor control processors, Samsong's 32-bit ARM core RISC processor S3C44B0X is used. The processor has dual serial ports, 5 PWM timers, 8-channel 10-bit ADC, and a maximum main frequency of 66MHz, which is fully capable of motion control requirements.

The rotational motion command sent by the host computer via the 485 bus contains speed parameter and angle parameter data. The three degrees of freedom of rotational motion correspond to the output of a PWM timer respectively. The speed regulation of the rotating motor is adjusted by the PWM duty cycle parameter. The speed control is open-loop. The angle sensor uses a high-precision single-turn potentiometer. The potentiometer is externally connected to a 5V excitation, that is, 0-360 degrees corresponds to 0-5V. In fact, only the 0-30 degree range is used. In this way, the measurement link of the ARM controller, PWM actuator and angle sensor constitutes an angle position closed-loop regulation circuit to achieve the adjustment of the rotation angle.

[page]

Considering the current problem of arrears in the market and in order to better recover funds and protect intellectual property rights, a unique hardware encryption function is designed in combination with the internal resources of S3C44B0X. Usually encryption is achieved by using the computer's calendar and the hard disk serial number in the computer. The computer has strong computing power and the algorithm is easy to implement, but it is often easy to be decrypted. A good method is to use circuit hardware for encryption. First, use the RTC inside S3C44B0X to design a calendar timer for hardware registration time encryption. Second, use the globally unique serial number in DS18B20 as the registration serial number for encryption. DS18B20 is a digital temperature sensor produced by DALAS, but it is not used here to measure temperature, but the globally unique serial number in it is used. It is connected to the ARM processor with only one data line for serial data transmission.

Figure 2 Rotational motion control block diagram

3. Software Design

The system control tasks and algorithms are distributed in each embedded controller and the host computer software according to the secondary topology. The STC89C52RD+ microcontroller is programmed in assembly language, which is highly efficient and reliable. S3C44B0X is an ARM7 core, and is mixedly programmed in C language and assembly language. The host computer software is developed using the powerful DELPHI6.0 Windows application development tool, and the program code is written in Object Pascal language. This makes the software more flexible, reliable and efficient in controlling the bed, with a simple and friendly interface, easy operation and high reliability. Some new technologies were used in the development process, the most important of which is control technology, especially in serial communication, which greatly improves the reliability of serial communication and ensures the reliability of the system. The overall block diagram of its software structure and function is shown in Figure 3.

3.1 Communication Protocol

The control and coordination of the upper computer for traction motion, rotation motion and switch quantity action is transmitted to each embedded processor for execution through data communication with a certain protocol. The communication command is formulated according to the asynchronous serial data communication format, including the header, the lower computer address, the command data and the terminator. The header and terminator are used for data synchronization. The command and data convey parameter settings and control information.

The host computer actively sends out inquiry commands through the 485 bus to obtain data and perform control. The embedded controllers of each slave computer are usually in a passive receiving state. When confirming that the query address is itself, it uploads data or executes commands. In practice, it is found that due to channel problems, the first and last characters sent often have errors, resulting in certain bit errors. This will affect the reliability of the system. In order to solve this problem, a few more irrelevant bytes "0xFF" are sent before the header is sent and after the end character is sent. Experiments have shown that the bit error rate is greatly reduced.

3.2 Serial communication implementation based on Spcomm control

There are two common methods for implementing serial communication with Delphi: first, use controls. Such as Mscomm and Spcomm controls. Second, use API functions to call other serial communication programs in Delphi. The advantage of using the API method is that it is suitable for writing relatively complex low-level communication programs, but the disadvantage is that writing serial communication programs is relatively complex. This system uses Spcomm. It is a third-party Delphi serial control developed by Small-Pig Team. The control has a wealth of properties and events closely related to serial communication, provides various operations on the serial port, and is simple to program, highly versatile, and portable. It has become a widely used serial communication development control in Delphi software development. The Spcomm serial communication control is multi-threaded. Receiving and sending data are completed in two threads respectively. The receiving thread is responsible for triggering the OnReceiveData event when receiving data. The WriteCommData() function writes the data to be sent to the output buffer, and the sending thread completes the data sending in the background. Before receiving and sending data, the serial port needs to be initialized. Use StartComm to open the serial port, and use StopComm to close the serial port when exiting the program.

4 Conclusion

Medical equipment products, especially physiotherapy equipment, directly act on the patient's body, so reliability is the first priority and no mistakes can be made. Therefore, the optimal design of the system is the key. Distributing the control tasks and algorithms in different embedded processors and running them in parallel can make the program of each processor clear and concise, and facilitate the control of the host computer. This system has been delivered to the manufacturer (Henan Tengyuan Medical Equipment Co., Ltd.) for production, and has been put into treatment in many hospitals, reflecting good results and generating economic benefits of about one million yuan. It has been appraised and reviewed by the expert meeting as a scientific and technological achievement of Henan Province.


Innovation: In complex embedded systems, multiple embedded processors are used in conjunction with host computers to parallelly share the system's complex tasks and algorithms, achieving rare reliability for the development of medical equipment.

References:

[1]. Jiang Shen, Chen Shouxian, Wang Zijian, Sun Dun. Embedded temperature and humidity real-time monitoring system based on S3C44B0X [J]. Microcomputer Information, 2006, 6-2: 207-208.

[2]. Ma Pengge. A physical therapy instrument for traction treatment of cervical, spinal and lumbar vertebrae [J]. Electronic Engineer, 2004, 05

[3]. Li Yanrong Panxiang. Principles and Applications of Embedded μCLinux System Based on S3C44B0X [M]. Beijing: Tsinghua University Press, 2005.

[4]. Tian Ze. Embedded System Development and Application Tutorial [M]. Beijing: Beijing University of Aeronautics and Astronautics Press, 2005.

Reference address:Traction therapy system based on multi-embedded processors

Previous article:A brief discussion on the electrical design of large medical equipment
Next article:A hardware and software platform that can meet both high-end and low-end blood pressure monitor design

Latest Medical Electronics 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号