□鐘鳴川 湛慧苗
世界各國的相關研究機構和企業(yè)都在致力于主動控制式膠囊內窺鏡的研究[1],該技術方案有望應用于消化道內窺鏡臨床檢測領域,改變傳統(tǒng)推挽式內窺鏡檢測過程痛苦和被動式膠囊內窺鏡耗時低效的現(xiàn)狀[2],推進主動控制式膠囊內窺鏡檢測的市場化,服務于醫(yī)療機構并造福于廣大患者[3]。通過比較各種驅動方式,采用外部磁場驅動膠囊內窺鏡機器人的驅動源是較好驅動方式。
通過對外磁場驅動控制裝置的動力模型原理的分析可知[4],外部線圈的移動可以通過磁場來拖動體內磁體膠囊的運動,即膠囊的運動可以反映在線圈的運動上,所以只要所受控制的線圈按照既定的軌跡運動即可。由于實驗條件的限制,故采用軟件仿真。軟件系統(tǒng)分為四個模塊,其中包括按鍵控制模塊(五個控制鍵),控制處理模塊(AT89C51芯片),受控模塊(三個步進電機),顯示模塊(AMPIRE128×64)。而其中的受控模塊步進電機又分為電機正轉、電機反轉、電機加速,電機減速的幾部分組成,其主程序框圖如圖1所示。
當控制程序選擇M1電機運動時,這時有勵磁數(shù)字信號送入U2后(如圖2所示),通過控制對步進電機的各相繞組按合適的時序通電,就能使步進電機步進轉動[5]。

圖1 主程序結構框圖

圖2 步進電機及其驅動芯片
各個電機勵磁信號如下:
uchar step_s[]={0x02,0x06,0x04,0x0c,0x08,0x09,0x01,0x03};//1相2相勵磁
uchar step_l[]={0x09,0x08,0x0c,0x04,0x06,0x02,0x03,0x01};//順時針
uchar step3_s[]={0x1f,0x3f,0x2f,0x6f,0x4f,0xcf,0x8f,0x9f};//電機2,3的勵磁
uchar step3_l[]={0x9f,0x8f,0xcf,0x4f,0x6f,0x2f,0x3f,0x1f};
對于步進電機的速度調節(jié)則采用了延時函數(shù),調節(jié)轉速只要調節(jié)x的值即可,液晶顯示上面則用了Display函數(shù),只要控制顯示的具體位置即可,具體控制如下:
void speed(uint x0,uint y0,uchar num0)
{switch(num0)
{case 0:x=50; Display(x0,0+2+2,y0*8,1); break;
case 1:x=100;Display(x0,0+2+2,y0*8,2);break;
case 2:x=200;Display(x0,0+2+2,y0*8,3);break;
case 3:x=500;Display(x0,0+2+2,y0*8,4);break;
……
}}
線圈和電機的總控制部分,利用AT89C51芯片的P2、P3口作為信號的輸入端,輸入信號由五個觸點開關控制。
整個控制裝置的組合構成如下:線圈1和電機M1的開閉,當線圈一閉合時,電機M1的運動才是有效的;線圈2和電機M2的開閉,當線圈二閉合時,電機M2的運動才是有效的;線圈3和電機M3的開閉,當線圈三閉合時,電機M3的運動才是有效的。
由于三個電機的控制方式基本相同,唯一的不同就是在實際應用中,他們控制線圈運動的方向不一樣,步進電機的控制按鍵如圖3所示。

圖3 總控制開關
步進電機(M1為例說明)的觸發(fā)和按鍵顯示觸發(fā),主要是通過以圖3所示的五個開關來控制,當開關斷開時則是key0==0,當開關導通時則是key0==1,采用了if{ …… }的判斷語句。三個電機的控制語句大致一樣,采用了以下函數(shù)進行選擇void stepmotor(){//ClearScreen(0);//清屏motor1();motor2();motor3();}電機M2、M3控制程序類似于電機M1的控制程序,只是觸發(fā)控制的按鍵不同。控制電機M1按鍵KEY1的控制流程如圖4所示。

圖4 單一按鍵控制流程圖
控制電路的顯示部分,利用AT89C51芯片的P0口和P3口作為信號的輸入端,通過顯示屏來顯示開始/停止。當有KEY1按鍵選擇步進電機M1閉合時,顯示屏上面顯示“RUN:ON”,當有KEY1按鍵斷開時,顯示屏上面顯示“RUN:OFF”,當觸發(fā)點觸開關正轉/反轉時,顯示屏上面顯示“STA:Z”,再次點觸這個開關時,顯示屏上面顯示“STA:F”,當觸發(fā)點觸開關加速/減速,顯示屏上面顯示“SPD:1”、“SPD:2”、“SPD:3”、“SPD:4”四個檔位的速度切換。通過對按鍵的控制,來控制電機的運作,再在顯示屏上面顯示,直觀而有效。
電機M1的控制部分,利用AT89C51芯片的P1口中的P1.0、P1.1、P1.2、P1.3作為信號的輸入端,通過輸出的信號來控制電機的轉速和方向,如圖5所示。

圖5 電機控制圖
用已經(jīng)編寫好的C語言程序(見附錄程序A)在keil.uvision2仿真軟件里面建立新的工程,加載(.c)文件名到Keil仿真軟件里面打開,打開options for target選項,點擊Output選項中的“create HEX File”生成(.hex)文件,點擊Target選項,把其中的“Xtal(MHZ)”改成12.0,然后點擊Keil軟件里面的編譯,即可生成(.hex)文件,在PROTUES仿真軟件里面雙擊AT89C51芯片,即可彈出選項,將生成的(.hex)文件寫入到芯片AT89C51里面,在PROTUES仿真軟件里面點擊開始,即可看見預想的結果。
在現(xiàn)今高速發(fā)展的社會實情下,人們對自身的健康日益關注,腸胃道健康問題已成為關注的焦點之一,膠囊內窺鏡不僅涉及到許多新領域、新技術、新知識,而且將這些領域的科技成果應用在膠囊內窺鏡上,必將產(chǎn)生巨大的經(jīng)濟和社會效應。本文提出了一種由外磁場驅動控制的裝置來控制膠囊在人體腸道中的運動,通過實驗仿真軟件的驗證,證明此外磁場驅動控制裝置確實有效而可靠。