基于AVR單片機的核磁共振儀床體檢測系統(tǒng)
關鍵詞:AVR單片機;檢測系統(tǒng);電機控制;
1 引言
近年來隨著醫(yī)學技術的快速發(fā)展,核磁共振儀已經(jīng)在大中型醫(yī)院中被廣泛的應用。目前,在核磁共振儀的生產(chǎn)過程中,床體部分要與磁體一起搬入電磁屏蔽室組裝后才能進行檢測,這對人員和物資都是很大的浪費。針對這種狀況,本文設計出了一套核磁共振儀床體部分的運動控制與檢測系統(tǒng),它能夠?qū)Υ搀w部分獨立進行檢測,而不必將全部系統(tǒng)在屏蔽室安裝后檢測,從而降低了核磁共振儀床體部分的生產(chǎn)和檢測成本,縮短了生產(chǎn)周期。
本設計以通用醫(yī)療集團的Ovation5型核磁共振儀的床體為對象,對驅(qū)動床體做橫向運動的直流步進電機和驅(qū)動床體做縱向運動的直流伺服電機的精確控制問題進行較為深入的分析和研究。系統(tǒng)主要采用了ATMEL公司的Atmega128單片機和ALTRA公司的EPM240T100型CPLD芯片作為主控制部分,實現(xiàn)了對床體縱向和橫向運動的精確控制和檢測。主控電路采用了全數(shù)字控制方式和抗干擾設計,具有很高的抗干擾性能。
2 檢測系統(tǒng)的硬件設計
2.1 系統(tǒng)硬件結(jié)構(gòu)
本檢測系統(tǒng)主要由主控制板、顯示部分、按鍵開關、傳感器、串行通信和電機控制部分構(gòu)成。床體的運動分為橫向運動和縱向運動兩種狀態(tài),分別由直流步進電機和直流伺服電機實現(xiàn)。本系統(tǒng)的硬件結(jié)構(gòu)如圖1所示。
圖1 系統(tǒng)硬件結(jié)構(gòu)示意圖
從圖1可以看出,電機的邏輯控制由主控制板實現(xiàn)。系統(tǒng)經(jīng)過初始化之后,當開關或按鍵發(fā)出通斷信號給主控制板時,由單片機判斷床體當前的狀態(tài),如果床體沒有處于極限位置,則單片機向相應的電機發(fā)出驅(qū)動信號,驅(qū)動床體向相應的方向運動,否則床體停止運動。橫向運動采用開環(huán)控制,運動位置由單片機發(fā)出的脈沖個數(shù)決定??v向運動采用閉環(huán)控制,由連接在直流伺服電機上的編碼器反饋位置信號給主控制板。
2.2 主控制板硬件設計
主控制板主要由AVR單片機、CPLD、濾波電路、電平轉(zhuǎn)換電路和串口通信電路等構(gòu)成。AVR單片機主要實現(xiàn)控制功能,CPLD主要實現(xiàn)I/O口擴展、邏輯判斷和對輸入、輸出信號的編碼解碼功能。
本系統(tǒng)采用的AVR Atmega128單片機是一種高性能、低功耗的8位微處理器,采用先進的 RISC 結(jié)構(gòu),133 條指令大多數(shù)可以在一個時鐘周期內(nèi)完成,滿足了本系統(tǒng)對執(zhí)行速度的要求。它具有非易失性的程序和數(shù)據(jù)存儲器,128K 字節(jié)的系統(tǒng)內(nèi)可編程Flash。由于本系統(tǒng)在對縱向距離的增減,橫向距離的增減,鍵盤掃描等程序設計均需要使用定時器。而此單片機分別提供了兩個具有獨立的預分頻器和比較器功能的8 位定時器/ 計數(shù)器,以及兩個具有預分頻器、比較功能和捕捉功能的16 位定時器/ 計數(shù)器。它具有兩路8 位PWM和6路分辨率可編程(2 到16 位)的PWM輸出比較調(diào)制器。它具有獨立片內(nèi)振蕩器的可編程看門狗定時器,能夠有效防止程序跑飛。
圖2 主控制板硬件框圖
主控制板硬件框圖如圖2所示,系統(tǒng)初始化后,當有運動按鍵信號輸入單片機時,單片機將輸出相應的縱向或橫向控制信號。單片機接收經(jīng)過濾波后的縱向電機編碼器的信號,由內(nèi)部程序計算當前的橫向和縱向位置,并將當前的位置信息輸出到CPLD,由CPLD驅(qū)動顯示部分,顯示當前的橫向和縱向位置。在壽命測試模式下,縱向顯示部分也同時可以顯示壽命測試計數(shù)。本系統(tǒng)具有串行通信功能,能夠通過串行接口與PC機或其他設備通信。
3 控制系統(tǒng)的軟件設計
主控制板首先接收來自用戶的操作信號,然后根據(jù)這些信號的狀態(tài),通過AVR單片機和CPLD內(nèi)部程序?qū)崿F(xiàn)對電機的控制和顯示功能。在本檢測系統(tǒng)中,由于需要控制和顯示的信息很多,并且關聯(lián)性很強,因此需要對單片機進行復雜的編程才能實現(xiàn)各個功能。對本系統(tǒng)而言,AVR單片機固化程序的質(zhì)量,直接影響到了整個系統(tǒng)的運行穩(wěn)定性和控制精度,因此AVR單片機固化程序的編程技術就成為系統(tǒng)控制的關鍵,這同時也是本系統(tǒng)的設計重點之一。通過分析床體的設計要求和實際運行情況,設計開發(fā)出一套床體運動測試程序,使得測試系統(tǒng)能夠?qū)Υ搀w實際運行中所有的運動狀態(tài)、運動精度和運動壽命進行測試。
3.1 電機控制策略
本系統(tǒng)對步進電機采用了開環(huán)控制,對直流伺服電機采用了閉環(huán)控制。
3.1.1 步進電機的控制
直流步進電機由主控制板發(fā)出脈沖驅(qū)動信號給直流步進電機驅(qū)動器,從而驅(qū)動步進電機動作。電機的轉(zhuǎn)動角度和位置由主控制板發(fā)出的脈沖個數(shù)決定。單片機是通過控制向驅(qū)動器輸出脈沖的數(shù)量,經(jīng)過計算后判斷當前床體橫向位置。橫向位置通過數(shù)碼管顯示在用戶界面上。由于步進電機具有誤差不累積的特性,所以通過這種開環(huán)的控制方式能夠?qū)崿F(xiàn)步進電機的精確控制。
3.1.2 伺服電機的控制
直流伺服電機是由單片機發(fā)出的PWM驅(qū)動信號經(jīng)過放大后驅(qū)動電機動作。通過接在電機上的編碼器的反饋信號和前后極限位置傳感器判斷床體當前的縱向位置,實現(xiàn)了直流伺服電機的閉環(huán)控制。控制電機驅(qū)動信號,就可以實現(xiàn)電機的起/停、正/反轉(zhuǎn)和加/減速功能,從而實現(xiàn)床體的簡單運動、復雜運動和指定運動狀態(tài)。伺服電機的驅(qū)動是由主控制板發(fā)出控制信號,由驅(qū)動電路驅(qū)動直流伺服電機動作,配以脈沖發(fā)生器(編碼器)測量電機的轉(zhuǎn)角,經(jīng)濾波后反饋給單片機,從而構(gòu)成了電機的閉環(huán)控制系統(tǒng),實現(xiàn)了對直流伺服電機的精確控制。
3.2 AVR單片機固化程序
AVR單片機固化程序采用ICC語言編寫,并使用模塊化的設計方法,分為主程序、鍵盤掃描模塊、顯示模塊、運動控制模塊、橫向運動測試模塊、縱向運動測試模塊和壽命測試模塊。模塊化設計使軟件更加靈活,便于調(diào)用和移植,并且在錯誤發(fā)生的時候,可以很快的找到錯誤,極大的提高了系統(tǒng)的可靠性和穩(wěn)定性。
3.2.1 主程序
主程序要完成系統(tǒng)的初始化,中斷設置,全局變量設置和看門狗設置等。在初始化結(jié)束后,系統(tǒng)進入主查詢循環(huán)過程,判斷當前進行的操作,并進入相應的功能模塊。系統(tǒng)程序中采用了狀態(tài)位的方式,實現(xiàn)主程序和各個功能模塊,以及各個功能模塊之間的運動狀態(tài)的通信,保證了在各個功能模塊之間切換時,系統(tǒng)的安全和穩(wěn)定性。系統(tǒng)主程序的流程圖如圖3所示。
圖3 主程序流程圖
圖4 鍵盤掃描模塊程序流程圖
3.2.2 鍵盤掃描模塊
由于對系統(tǒng)響應速度要求不高,所以鍵盤掃描采用了查詢的方式。鍵盤掃描模塊程序流程圖如圖4所示,縱向運動的優(yōu)先級大于橫向運動的優(yōu)先級,當縱向按鍵和橫向按鍵同時按下時,床體將會縱向運動,橫向運動按鍵被屏蔽。
3.2.3 壽命測試模塊
壽命測試部分是本系統(tǒng)中結(jié)構(gòu)最復雜,涉及變量最多的一個功能模塊,并且同時存在系統(tǒng)狀態(tài)位和壽命測試狀態(tài)位變量,所以各個功能模塊之間的狀態(tài)通信也比其他功能模塊復雜。在這個模塊中,主要實現(xiàn)了床體自動進行復雜運動的功能,并且能夠?qū)Ω鞣N預先設定的循環(huán)運動計數(shù),從而實現(xiàn)對床體的壽命測試。
圖5 壽命測試模塊
3.3 CPLD固化程序
CPLD固化程序采用VHDL語言編寫。主要功能為:
① 驅(qū)動“縱向位置”數(shù)碼管顯示當前縱向位置或壽命測試計數(shù);
② 對極限位置傳感器的差分信號解碼后,輸出給MCU;
③ 接收橫向位置信號,并驅(qū)動“橫向位置”數(shù)碼管,顯示橫向位置;
④ 驅(qū)動極限位置指示LED;
4 結(jié)論
通過在核磁共振儀的床體上進行的實際應用,證明本系統(tǒng)能夠完全實現(xiàn)對床體的控制功能,并且滿足對床體各種測試的要求,具有較高的穩(wěn)定可靠性。本系統(tǒng)能夠獨立對核磁共振儀的床體進行檢測,大大降低了生產(chǎn)成本,縮短了生沒產(chǎn)周期,具有較高的應用價值。
參 考 文 獻
[1]王曉明.電動機的單片機控制[M].北京:北京航空航天大學出版社.2002.
[2]馬潮.高檔8位單片機ATmega128原理與開發(fā)應用指南(上)[M].北京:北京航空航天大學出版社.2004.
[3]周立功,夏宇聞等.單片機與CPLD綜合應用技術[M].北京:北京航空航天大學出版社.2003.
[4]王向周,任月慧,鄭戍華等.基于MB90F549單片機的直流伺服電機調(diào)速系統(tǒng)[J].電測與儀表.2003,40(450):59-61,21
伺服電機相關文章:伺服電機工作原理
評論