Design and implementation of a self-controlled bone orthosis based on MSP430

Publisher:创新火箭Latest update time:2010-09-18 Source: 电子技术应用 Reading articles on mobile phones Scan QR code
Read articles on your mobile phone anytime, anywhere

Since Codivilla reported bone lengthening in 1904, limb lengthening has been developed for more than 100 years. The theory of slow bone regeneration by stretching has been formed and continuously improved. At the same time, limb lengthening devices are also developing continuously. At present, the surgical techniques and devices for limb lengthening have gone through three stages of development [1]: (1) bone external fixator technology; (2) intramedullary nail combined with external fixator; (3) fully implantable limb lengthener. Bone external fixator technology uses artificial external force control to achieve the extension of bone orthosis. The control accuracy of extension is low and the operation is difficult. It is easy to cause pin tract infection in clinical application, which is not conducive to bone healing in the extension area. At the same time, carrying an external fixator for a long time will also cause adverse effects on the patient's physiology and psychology. The intramedullary nail combined with external fixator technology has made great progress in stability and extension accuracy, but it still cannot avoid the adverse consequences of external fixators. Fully implantable bone lengtheners have become the development direction of bone lengtheners because of their built-in power generator that can accurately control the extension rate while avoiding pin tract infection problems. At present, the most mature and representative technology is the intramedullary bone dynamic extender (ISKD) developed by ORTHOFIX. It consists of an external monitor and an intramedullary nail similar to a telescopic barrel that is surgically implanted. Its basic principle is to drive the internal distractor to stretch by the patient's joint movement and rotation. However, its disadvantage is that it can only stretch, but cannot retract and pressurize. Once the range of motion is large and exceeds the single stretching length, it cannot retract, which may cause the fracture surface to fail to grow, and there is a great risk of clinical application.

At present, the surgical technology and instruments for limb lengthening in my country are still at the second stage [2], far behind developed countries. In my country's medium- and long-term science and technology development program, the research and development of new medical devices has been listed as a new field to encourage investment and independent innovation. To this end, this paper designs a high-precision, self-controlled bone orthosis with MSP430F169 microcontroller as the core. This bone orthosis not only overcomes the shortcomings of external fixators, but also overcomes the shortcomings of ISKD that cannot be retracted and fixed with pressure. It adopts motor control, which is simple and convenient to operate. Users can control the extension and retraction of the bone orthosis according to their needs. The extension accuracy is high and it has broad application prospects.

1 Overall system design

The system consists of an internal bone orthosis implanted in the medullary cavity of the long bone and an external controller. The external controller is connected to the internal bone orthosis through a biological silicone tube lead, and is mainly composed of MSP430F169 microcontroller, motor drive circuit, power module, signal processing module, keyboard, LCD display system and other related units. The internal bone orthosis realizes its own expansion and contraction through the operation of the precision motor, and the microcontroller realizes precise control of the bone orthosis through the parameter feedback module and signal processing module composed of magnetic sensors. The overall structure block diagram of the system is shown in Figure 1.

To meet the user's requirements for portability, the orthosis system is battery-powered. Therefore, low power consumption is a major indicator of the system. For this reason, the system uses the MSP430 series microcontroller with ultra-low power consumption. The system platform is built on the basis of the MSP430F169 microcontroller, and the low power consumption indicator of the system is well achieved in conjunction with the software interrupt processing mechanism. High-precision control is another major indicator of the system. The bone orthosis must maintain high-precision tension and retraction control. Any error will have adverse effects on the user. The system uses the ZP series sensor to transmit the micromotor operation signal, which is amplified and sent back to the microcontroller for processing to achieve precise control. According to the software design, the system achieves an operation accuracy of 0.1 mm, which is much higher than the existing orthosis.

2 System Hardware Design

2.1 MSP430F169 MCU

The MSP430F169[3] microcontroller is a 16-bit microcontroller with ultra-low power consumption and powerful functions produced by Texas Instruments. It adopts the "von Neumann" structure, and the RAM, ROM and all peripheral modules are located in the same address space, with a maximum addressing address of 62 KB; it has a powerful interrupt function, 48 I/O pins, and each I/O port corresponds to multiple registers such as input, output, function selection, interrupt, etc. Before operating the same I/O port, select the function to be implemented to realize the multiplexing of the function port and the general I/O port, which greatly enhances the function and flexibility of the port; the MSP430F series of ultra-microcontrollers have built-in flash memory. When running under 1 MHz clock conditions, the operating current is only 0.1 to 280 μA depending on the working mode; at the same time, it has good simulation development technology, and is equipped with a JTAG simulation interface and a high-level language compiler.

2.2 Orthopedic system

2.2.1 Orthotic machinery

The mechanical structure of the orthosis is shown in FIG2 . In the figure, the left end (1) and the right end (11) are respectively connected to the external components by screws. The left end (1) is connected to the motor (3), the motor bracket (4) and the outer sleeve (7) by interference fit, and is the left end component. The right end (11) is connected to the inner sleeve (8) by threads, and is the right end component. There is a guide key (6) between the inner sleeve and the outer sleeve, which can limit the circumferential rotational movement between the inner sleeve and the outer sleeve, and realize free movement in the length direction and within the stroke range (100 mm). The sliding between the left end component and the right end component in the length direction is realized by the motor. The motor output is reduced by the reducer, and the output shaft of the motor reducer drives the central screw (9) to rotate through the motor thin key, and then the central screw pushes the inner sleeve fixed circumferentially by the guide key forward through the thread, thereby realizing the extension and retraction of the entire system. The precise control of the motor is the core of the entire orthosis system.

2.2.2 Motor drive

The maximum voltage that the precision motor inside the orthosis can withstand is 6 V, and its driving voltage is about 4 V. For every 1 V drop in voltage, the motor speed drops by 2,800 r/m. Therefore, the motor drive circuit not only requires a large driving capability, but also its output needs to have high stability.

This design uses the motor-specific control chip LG9110[4] as the motor drive circuit. This chip is a 2-channel push-pull power amplifier special integrated circuit device designed specifically for controlling and driving motors. It integrates discrete circuits into a single IC, eliminating the need for any peripheral devices, reducing application costs and improving overall reliability. LG9110 has good anti-interference ability and large current driving ability. The two output terminals can directly drive the forward and reverse motion of the motor. The motor drive circuit is shown in Figure 3. Pin 6 of LG9110 is connected to the forward signal, pin 7 is connected to the reverse signal, and pins 1 and 4 are connected to a precision motor.

2.2.3 Parameter Feedback

This design requires precise control of the orthosis while maintaining the low power consumption of the system. Therefore, a ZP series zero-power magnetic sensor is installed inside the orthosis. This sensor is a new type of sensor that does not require an external power supply when working and uses a double-pole alternating triggering mode. The turntable is installed on the motor shaft, and a small magnet is fixed on the turntable. When the turntable rotates and the small magnet passes directly under the magnetic sensor, the magnetic sensor generates an electrical signal, which is transmitted to the peripheral circuit through the wire, and the amplitude of the electrical signal has nothing to do with the speed of change of the magnetic field.

2.2.4 Signal Processing

The output signal current of the ZP series sensor is very small. After the signal is amplified at the post-stage, the output pulse signal is shaped by 74HC14 and sent to the microcontroller for counting. The 16-bit timer A with timing/capture function of MSP430F169 is used to count the pulses. The external pin signal is used as the input clock source of timer A. The working mode of timer A is the count-up to CCR0 mode.

2.3 Keyboard Display

In order to reduce system power consumption and the number of I/O ports occupied by the microcontroller, the keyboard module is designed as a 3×3 key matrix keyboard, which is processed in an interrupt mode, with P2.0~P2.2 as row lines and P2.5~P2.7 as column lines. As long as the key is pressed, an interrupt will be triggered and the keyboard processing program will be entered to achieve the functions of setting the initial displacement, target displacement, controlling the forward and reverse rotation of the micromotor of the bone orthosis, and reading and saving data.

Bone orthosis needs to provide rich interactive information for users. This design uses HG1286413 monochrome dot matrix graphic LCD as the user's interactive interface, which can display up to 4 rows and 8 columns of 32 characters. P3.0~P3.7 are used as the data lines of the LCD, P5.4~5.7 are used as the LCD enable, internal command register/display memory selection control and read/write mode control bits, and P5.3 is the control bit of the reset signal. The LCD display screen displays operation prompts, working status, battery undervoltage alarm and other information for users.

2.4 Power Module

The motor has a great impact on the power supply when it is working normally. In order not to affect the normal operation of the microcontroller, the system uses dual power supplies, powered by a 5 V/4.8 Ah lithium battery. One group is converted into 3.3 V by AMS1117 to power the microcontroller and peripheral circuits; the other group is powered by the motor after voltage isolation through the extremely low ripple DC/CD module B0505S-1W.

The driving voltage of LG9110 should not be lower than 4 V, otherwise the motor cannot work properly. For this purpose, a voltage detection circuit is designed. The voltage of the reverse input terminal P2.4 of the comparator A inside the MSP430F169 is taken from the voltage divider resistor, and the same-direction input terminal is the reference voltage, which uses the internal voltage VCC/2, that is, 1.65 V. When the battery voltage is lower than the set value of 4 V, the comparator A interrupt is triggered, the program enters the low-voltage service program, and the field data is saved in the information memory A and B, and the user is prompted to charge the battery. When the voltage changes between 4 V and 5.0 V, the circuit will not cause malfunction.

3 System Software Design

3.1 Main Program

In order to reduce the burden on the CPU and reduce the power consumption of the circuit, all system functions are implemented using interrupts. After the main program performs some necessary initialization work, it enters a low-power dead loop state and waits for interrupts. Once an interrupt occurs, the CPU wakes up from the low-power mode and processes the interrupt. After the interrupt ends, it returns to the low-power dead loop again. The flow chart of the main program is shown in Figure 4.

3.2 Motor Control

The speed regulation function of the orthosis is realized by outputting PWM square wave through the timer B of MSP430F169[5]. By changing the values ​​in the capture/compare registers CCR1 and CCR2, the duty cycle of the two PWM square wave signals (P4.1 and P4.2) generated by timer B can be changed. By changing the value in the capture/compare register CCR0, the period of the PWM square wave signal can be changed, thereby achieving the purpose of changing the speed of the micromotor. When P4.1 outputs a PWM signal, the orthosis runs forward; when P4.2 outputs a PWM signal, the orthosis runs in the reverse direction; when both P4.1 and P4.2 output signals or neither of them outputs signals, the orthosis stops running.

The displacement of the orthosis is determined by the number of pulses recorded by timer A. The speed of the micromotor is 8 000 r/m. After the speed reduction of the reducer by 4 096:1, the output speed is 1.95 r/m, so the speed of the center screw is also 1.95 r/m, and the thread lead of the center screw is 0.5 mm. Therefore, the running speed of the inner sleeve relative to the outer sleeve is 0.975 mm/min, and the running speed of the entire orthosis is 0.975 mm/min. Through calculation, it can be seen that for every 0.1 mm of the orthosis, the micromotor runs 819.2 revolutions, and 4 small magnets are fixed on the code disk, and the counter records 3 277 pulses. The user selects the current running displacement through the keyboard, and the program sets the CCR0 value to achieve precise control of the running displacement of the orthosis. The flow chart of the motor control program is shown in Figure 5.

This paper introduces the design and implementation of a new type of high-precision self-controlled bone orthosis. The bone orthosis is placed in the medullary cavity of long bones to avoid the high complications of external fixation devices. It can be used as an internal fixator and has a distraction effect. It can achieve a long-term, continuous and stable distraction effect after a single distraction. The limb distraction surgery is less invasive, and the surgical operation and postoperative care are simple. The performance is safe and reliable, the operation is simple, stable and practical, and it does not bother the patient's daily life. In actual application, the effect is significantly better than traditional bone orthosis, and it has very high practical value.

Reference address:Design and implementation of a self-controlled bone orthosis based on MSP430

Previous article:A Microprocessor Hardware Design of Digital Oscilloscope
Next article:Design and application of 32-channel remote signaling unit based on ATmega128

Recommended ReadingLatest update time:2024-11-16 16:29

MSP430 Learning Notes (3) Clock Module
1. The clock module consists of a high-speed crystal oscillator, a low-frequency crystal oscillator, a digitally controlled oscillator DCO, a frequency-locked loop FLL, and an enhanced version of the frequency-locked loop FLL+. 2. The clock module generates three output results: ACLK (auxiliary clock), MCLK (main syst
[Microcontroller]
MSP430 Learning Notes (3) Clock Module
Introduction to MSP430 Series MCU
1. Development of MSP430 microcontroller   The MSP430 series is a 16-bit, ultra-low power hybrid microcontroller with a streamlined instruction set. It was launched in 1996. It has become a shining star among many microcontroller series due to its extremely low power consumption, rich on-chip peripherals and conveni
[Microcontroller]
Design of Networked Video Monitoring System Based on MSP430
With the rapid development of embedded systems, in many fields, microcontroller-centered application systems are gradually replacing computer-centered applications. Therefore, for the study of network application systems, more and more researchers have shifted their research focus to embedded systems. Based on this
[Microcontroller]
Design of Networked Video Monitoring System Based on MSP430
MSP430F249—SPI Master-Slave Communication
1. The host sends a read /****************************************************************** **                                                        **  File : SPI.c     | Master Send |                                     **  Version : 1.0      ** Description: SPI Master Send and Receive                            
[Microcontroller]
My experience with the ADC12 module - msp430f5529
I've been having a lot of trouble with AD lately, but today I finally had a breakthrough. I finally got this part of the program done.       The AD part mainly configures the clock, reference source, sampling channel, sampling mode, storage and sample-and-hold of the ADC12 module.       I'll take it one part at a ti
[Microcontroller]
My experience with the ADC12 module - msp430f5529
MSP430 and DS1302 1602 display
#include typedef unsigned char uchar; typedef unsigned int  uint; /**************宏定义***************/ #define DataDir  P4DIR #define DataPort  P4OUT     #define Busy  0x80 #define CtrlDir     P3DIR #define CLR_RS P3OUT&=~BIT0;    //RS = P3.0  #define SET_RS P3OUT|=BIT0;  #define CLR_RW P3OUT&=~BIT1; //RW = P3
[Microcontroller]
A beginner's learning process of MSP430 microcontroller
       I got this board many days ago, and I installed IAR for msp430 for a long time. First, after taking the teacher's installation package, I installed an XP virtual machine. It took a long time to install. To be precise, I partitioned it several times, used various partitioning tools, and restarted the virtual mach
[Microcontroller]
MSP430 clock setting and application summary
********************************Based on MSP430F1612******************************* In the MSP430 microcontroller, one clock cycle = the inverse of the MCLK crystal oscillator. If the MCLK is 8MHz, then one clock cycle is 1/8us. One machine cycle = one clock cycle, that is, 430 each action can complete a basic ope
[Microcontroller]
Latest Microcontroller Articles
  • Download from the Internet--ARM Getting Started Notes
    A brief introduction: From today on, the ARM notebook of the rookie is open, and it can be regarded as a place to store these notes. Why publish it? Maybe you are interested in it. In fact, the reason for these notes is ...
  • Learn ARM development(22)
    Turning off and on interrupts Interrupts are an efficient dialogue mechanism, but sometimes you don't want to interrupt the program while it is running. For example, when you are printing something, the program suddenly interrupts and another ...
  • Learn ARM development(21)
    First, declare the task pointer, because it will be used later. Task pointer volatile TASK_TCB* volatile g_pCurrentTask = NULL;volatile TASK_TCB* vol ...
  • Learn ARM development(20)
    With the previous Tick interrupt, the basic task switching conditions are ready. However, this "easterly" is also difficult to understand. Only through continuous practice can we understand it. ...
  • Learn ARM development(19)
    After many days of hard work, I finally got the interrupt working. But in order to allow RTOS to use timer interrupts, what kind of interrupts can be implemented in S3C44B0? There are two methods in S3C44B0. ...
  • Learn ARM development(14)
  • Learn ARM development(15)
  • Learn ARM development(16)
  • Learn ARM development(17)
Change More Related Popular Components
Guess you like

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号