馬斌仁 范祖清
摘? 要:血液輻照機用于對血液或血液制品進行輻照??刂葡到y(tǒng)通過RS232通訊編寫VB控制程序,采用計算機、PLC和交流伺服系統(tǒng)進行閉環(huán)控制,提高運動和輻照精度。介紹了控制系統(tǒng)硬件電路、伺服控制系統(tǒng)和PLC控制程序及計算機控制程序的設(shè)計與開發(fā),具有較強的實用性。
關(guān)鍵詞:硬件電路;伺服控制;PLC;控制程序
中圖分類號:R197.39? ? ? ?文獻標志碼:A? ? ? ? ?文章編號:2095-2945(2019)11-0043-03
Abstract: Blood irradiator is used to irradiate blood or blood products. The VB control program is compiled by RS232 communication, and the closed-loop control is carried out by computer, PLC and AC servo system to improve the motion and irradiation accuracy. This paper introduces the design and development of hardware circuit, servo control system, PLC control program and computer control program of the control system, which has strong practicability.
Keywords: hardware circuit; servo control; PLC; control program
1 研究背景
血液輻照機根據(jù)輸血相關(guān)性移植物抗宿主病的預(yù)防機理,利用鈷-60或銫-137放射源,通過控制其γ射線劑量,對血液或血液制品進行輻照,并有效滅活血液中具有免疫活性的T淋巴細胞,從而消除TA-GVHD的發(fā)生,讓輸血更安全。
它的工作原理為將需要輻照的血液或血液制品放入樣品容器內(nèi),樣品容器作旋轉(zhuǎn)運動。輻照時上位機發(fā)出輻照命令,屏蔽鼓旋轉(zhuǎn)機構(gòu)將樣品容器旋轉(zhuǎn)到輻照位置,放射源對血液或血液制品進行照射。在照射過程中,樣品容器作旋轉(zhuǎn)運動,放射源作上下運動。主要包括放射源組件上下往復(fù)直線運動和屏蔽鼓繞中心軸旋轉(zhuǎn)運動及樣品容器繞中心軸旋轉(zhuǎn)運動。
單位原血液輻照機采用計算機、PCI控制卡(I/O控制和
脈沖輸出)和步進電機及驅(qū)動器進行開環(huán)控制,現(xiàn)采用觸摸屏、PLC和PCI控制卡(I/O控制)及交流伺服系統(tǒng)進行閉環(huán)控制。該控制系統(tǒng)為兩級控制,計算機是上位機,既可操作又可顯示;PLC作下位機,作信號檢測和執(zhí)行具體操作。交流伺服電機作為運動執(zhí)行電機,其運行平穩(wěn),性能可靠穩(wěn)定,從而提高血液輻照機運動到位精度和輻照精度。
2 硬件電路設(shè)計
控制系統(tǒng)硬件由計算機、觸摸屏、邏輯可編程控制器PLC(CPU、脈沖I/O模塊和輸入輸出模塊)、自主研發(fā)的PCI I/O控制卡及伺服電機驅(qū)動器、伺服電機和接近開關(guān)、開關(guān)等組成。
計算機功能:讀取PCI控制卡8255的A和B口輸入高低電平;通過RS232通訊對PLC的IR和DM區(qū)、計數(shù)器等進行讀寫操作;輻照控制和運動控制;系統(tǒng)參數(shù)設(shè)置與存儲等。
觸摸屏功能:系統(tǒng)參數(shù)和狀態(tài)顯示;參數(shù)設(shè)置;發(fā)出操作指令。
PLC(含脈沖I/O模塊)功能:通過RS232接收計算機的讀寫指令,并輸出伺服驅(qū)動器的使能信號(方向、啟停、頻
率);檢測運動部件位置;接收增量編碼信號;輻照控制和運動控制。
伺服電機及驅(qū)動器功能:交流伺服系統(tǒng)采用脈沖與方向控制方式;A/B相差動信號反饋至脈沖I/O模塊;根據(jù)實際情況設(shè)置相關(guān)參數(shù),如電子齒輪比等。
3 伺服控制系統(tǒng)設(shè)計
3.1 規(guī)格型號
根據(jù)樣品容器旋轉(zhuǎn)、源升降和屏蔽鼓旋轉(zhuǎn)的速度和力矩及轉(zhuǎn)動慣量等,選購臺達ASD-B2-0121-B和ASD-B2-0221-B等伺服電機驅(qū)動器和相應(yīng)的交流伺服電機、減速機及相關(guān)接插件。
3.2 伺服運動控制
在血液輻照機運動過程中,PLC輸出模塊輸出伺服電機驅(qū)動器的方向和啟停信號。同時,脈沖I/O模塊輸出驅(qū)動器的脈沖頻率信號。伺服電機內(nèi)的增量編碼器輸出增量編碼信號(OA和/OA、OB和/OB相位差信號)反饋給脈沖I/O模塊計
數(shù)。PLC程序通過PRV指令獲取高速計數(shù)器0、1、2的值并保存在DM區(qū)。計算機通過串口讀取DM區(qū)數(shù)據(jù),經(jīng)邏輯處理換算出運動位置并實時顯示。
3.3 伺服驅(qū)動器設(shè)置
交流伺服系統(tǒng)采用位置控制模式(指令來源為外部脈沖輸入),即脈沖與方向控制方式。另外,根據(jù)需求設(shè)定伺服電機驅(qū)動器其它參數(shù),如控制模式及電子齒輪比和檢出器輸出脈沖數(shù)等。
3.4 運動精度和理論速度計算
樣品容器、源升降和屏蔽鼓的檢出器輸出脈沖每周均設(shè)定為50(最高可達40000),PLC高速計數(shù)器接收到的脈沖數(shù)為:50×4倍頻×機械比×減速機比。按照旋轉(zhuǎn)一圈計算,對應(yīng)的樣品容器旋轉(zhuǎn)理論精度為0.045度/脈沖,源升降為0.0275mm/脈沖(半徑以0.035m計算),屏蔽鼓旋轉(zhuǎn)為0.006度/脈沖。
通過PLC的SPED指令發(fā)10000個脈沖給伺服電機驅(qū)動器,臺達伺服電機旋轉(zhuǎn)一圈。針對血液輻照機三種運動,PLC發(fā)出20K~50K伺服驅(qū)動頻率,則旋轉(zhuǎn)速度為:伺服驅(qū)動頻率/10K×4倍頻×電子齒輪比÷(機械比×減速器比)。若伺服驅(qū)動頻率按20K計算,樣品容器理論速度為10.0r/min,源升降為18.3mm/s,屏蔽鼓為2.0r/min。
4 PLC控制程序設(shè)計
4.1 功能與設(shè)置
歐姆龍邏輯可編程控制器PLC由電源模塊CJ1W-PA202和CPU模塊CJ2M-CPU11、兩個脈沖I/O模塊CJ2M-MD211、兩個輸入模塊CJ1W-ID211及一個輸出模塊CJ1W-OC211組成。
脈沖I/O模塊功能:采集增量編碼信號(A/B相差動信號)和輸出伺服驅(qū)動頻率。
CPU模塊功能:與上位機RS232通訊、邏輯處理和計算。
輸入模塊功能:采集安全聯(lián)鎖信號(網(wǎng)電源中斷、急停等)和設(shè)備狀態(tài)(門關(guān)、源升降和樣品容器零位等)及手動按鍵(樣品容器和屏蔽鼓正反轉(zhuǎn)、源升降)。
輸出模塊功能:輸出使能信號(方向、啟停)和控制信號等。
4.2 輻照控制及流程
通過PLC的PRV指令讀取高速計數(shù)器0、1、2的值,并實時保存在DM區(qū)內(nèi);樣品容器零位,源升降零位及屏蔽鼓裝載位對高速計數(shù)器(A531.00~A531.02)復(fù)位;通過PLC的CPSL指令(有符號長二進制比較)進行比較并形成標志位,控制血液輻照機三種運動的啟停和方向;通過PLC的SPED和@INI指令發(fā)出脈沖頻率至伺服電機驅(qū)動器。
源升降在運動行程內(nèi),可設(shè)置最多六個駐留點(至少兩個),且駐留點時間可調(diào)。因此,通過PLC的++B(BCD碼遞增)和--B(BCD碼遞減)指令,采用BCD間接DM尋址(間址)方式,對放射源升或降進行運動控制。
PLC程序主要完成系統(tǒng)上電初始化和復(fù)位、準備輻照及正在輻照等功能。正在輻照控制流程圖如下:
圖2 輻照控制流程圖
5 計算機控制程序設(shè)計
計算機控制程序使用Visual Basic 6.0開發(fā),采用模塊化設(shè)計,主要完成功能如下:
(1)配置文件:對系統(tǒng)和輻照參數(shù)進行管理。包括:通訊端口設(shè)置、輻照時間設(shè)定、運動速度、源升降駐留點位置和駐留時間的設(shè)置等。
(2)輻照控制和運動控制。通過系統(tǒng)參數(shù)設(shè)置對PLC的DM區(qū)和IR區(qū)寫入相應(yīng)的值;PLC對伺服電機驅(qū)動器進行頻率輸出,對伺服電機的啟停、方向進行控制,實現(xiàn)伺服電機的運動控制和輻照啟動、停止及初始化等。另外,通過讀取PCI I/O控制卡8255的A和B端口高低電平和PLC的IR區(qū)標志位,實現(xiàn)運動狀態(tài)和故障的顯示。另外,讀取PLC的DM區(qū)數(shù)值,通過邏輯處理和換算,利用timer顯示三種運動的速度和位置。
5.1 PCI卡地址采集
接近開關(guān)信號和運動故障信號及開關(guān)信號等經(jīng)光電隔離TLP521-4光耦輸入到上位機PCI控制卡8255可編程并行I/O接口芯片的A、B口??刂瞥绦蛞胐lportio.dll文件和調(diào)用DlPortReadPortUchar函數(shù)對A和B端口輸入的高低電平進行讀取,實現(xiàn)系統(tǒng)狀態(tài)和運動故障采集、顯示。
5.2 PCI IR/DM區(qū)讀寫
程序通過api232.dll動態(tài)鏈接庫文件sio_open函數(shù),與PLC通訊連接成功后,發(fā)至PLC的命令如下:
從指定字開始讀IR字中指定數(shù)目的內(nèi)容,讀格式為:@00RR+起始字+字數(shù)+FCS+結(jié)束符,響應(yīng)格式為:@00RR+結(jié)束代碼+讀出數(shù)據(jù)(1個字)+…+FCS+結(jié)束符;將數(shù)據(jù)寫入IR區(qū),從指定字開始,寫是逐字完成的,寫格式為:@00WR+起始字+寫入數(shù)據(jù)(1個字)+…+FCS+結(jié)束符。計算機對PLC的IR/DM讀寫一樣,僅標題碼為RD或WD。
通過對PLC的IR區(qū)16.00~16.08標志位寫操作,實現(xiàn)啟動輻照和電磁鐵控制、手動控制等。同時,對PLC的IR區(qū)30.00~30.10讀操作,利用timer實現(xiàn)檢測輻照狀態(tài)和手動模式等。
另外,程序通過RS232對PLC DM區(qū)的值進行讀操作,經(jīng)過邏輯運算和處理,顯示輻照時間、源升降當前駐留點和位置以及樣品容器和屏蔽鼓的旋轉(zhuǎn)位置等。同時,按照寫DM區(qū)的命令格式,結(jié)合血液輻照機PLC工作位表,將三種運動的伺服驅(qū)動脈沖、源升降駐留點數(shù)和駐留時間等輻照參數(shù)寫入PLC相應(yīng)的DM區(qū)。
6 結(jié)束語
血液輻照機控制系統(tǒng)為伺服驅(qū)動系統(tǒng)閉環(huán)控制,PLC含脈沖I/O模塊對編碼器反饋信號進行采樣,控制精度由電機軸后端的旋轉(zhuǎn)編碼器保證且驅(qū)動器采用四倍頻技術(shù)。較步進電機其控制精度高且PLC控制時間準確。另外,由于機械裝配和累積誤差等因素,血液輻照機經(jīng)測試,源升降運動精度為0.2mm,屏蔽鼓旋轉(zhuǎn)到位精度為0.3°,輻照時間與預(yù)置值誤差0.2s等技術(shù)指標滿足設(shè)計開發(fā)要求。
交流伺服電機運行平穩(wěn),在額定轉(zhuǎn)速內(nèi),均能恒功率輸出。較步進電機開環(huán)控制,控制性能更穩(wěn)定可靠,克服步進電機失步和電機啟動力矩小等缺點。另外,較步進電機速度響應(yīng)性能,伺服系統(tǒng)的加速性能較好。因此,血液輻照機控制系統(tǒng)的設(shè)計與開發(fā)具有較強的實用性。
參考文獻:
[1]趙茂泰.智能儀表原理及應(yīng)用[M].電子工業(yè)出版社.
[2]曾琦.Visual Basic 6.0編程實例與技巧[M].中國水利水電出版社.
[3]清漢計算機工作室.Visual Basic 6.0數(shù)據(jù)庫開發(fā)實例[M].機械工業(yè)出版社.
[4]廖常初.可編程序控制器的編程方法與工程應(yīng)用[M].重慶大學(xué)出版社.