基于嵌入式系統(tǒng)和CAN總線的檢修機(jī)械臂控制系統(tǒng)
蒸汽發(fā)生器(Steam Generator)是核動(dòng)力裝置中一、二回路之間的連接樞紐,也是核動(dòng)力裝置運(yùn)行中發(fā)生故障最多的設(shè)備之一。蒸汽發(fā)生器的故障大多是由于各種腐蝕使傳熱管或管與管板接頭處發(fā)生泄漏,從而影響動(dòng)力裝置的安全運(yùn)行。由于蒸汽發(fā)生器中存在放射性物質(zhì),當(dāng)發(fā)生泄漏時(shí),人不能進(jìn)入其中進(jìn)行維修,這時(shí)就需要機(jī)械臂代替人完成維修工作。機(jī)械臂檢修系統(tǒng)即通過(guò)六自由度機(jī)械臂對(duì)蒸汽發(fā)生器內(nèi)部進(jìn)行檢修和維護(hù)。該機(jī)械臂有六個(gè)關(guān)節(jié),六軸聯(lián)動(dòng);主要用于蒸汽發(fā)生器(SG)一回路側(cè)檢修活動(dòng)。機(jī)械臂的手端裝有適配器,可以攜掛不同的檢修工具,即可根據(jù)需要對(duì)蒸汽發(fā)生器實(shí)施不同程度的維護(hù)。
本文引用地址:http://2s4d.com/article/86405.htm由于該機(jī)械臂的工作環(huán)境的特殊性,所以對(duì)機(jī)械臂整個(gè)控制系統(tǒng)的可靠性提出了更高的要求,這就需要良好的硬件電路設(shè)計(jì)、功能更強(qiáng)大的微處理器和更好的軟件實(shí)現(xiàn)方法。本文以蒸汽發(fā)生器六自由度檢修機(jī)械臂為應(yīng)用背景,給出六自由度檢修機(jī)械臂的硬件體系結(jié)構(gòu)和上下位機(jī)軟件設(shè)計(jì)方法。在硬件上采用TI公司的TMS320LF2407處理器作為主控制芯片組成SMC控制器,采用工控機(jī)作為監(jiān)控計(jì)算機(jī),SMC控制器與監(jiān)控計(jì)算機(jī)用CAN總線連接。監(jiān)控計(jì)算機(jī)主要完成機(jī)械臂控制算法、數(shù)據(jù)記錄以及實(shí)時(shí)監(jiān)控,SMC控制器實(shí)現(xiàn)機(jī)械臂的控制、傳感器數(shù)據(jù)采集與通訊功能。在軟件上,SMC控制器采用μC/OS-II嵌入式實(shí)時(shí)操作系統(tǒng),并采用模塊化程序設(shè)計(jì)方法,方便軟件系統(tǒng)管理和后續(xù)升級(jí),在監(jiān)控計(jì)算機(jī)上采用Visual C++與OpenGL設(shè)計(jì)監(jiān)控軟件。
1 檢修機(jī)械臂系統(tǒng)描述
機(jī)械臂控制系統(tǒng)的組成框圖如圖1所示。
系統(tǒng)主要由分布在三個(gè)區(qū)域的裝置組成。(1)位于核反應(yīng)堆廠房外面的集裝箱內(nèi)的配電系統(tǒng)和監(jiān)控系統(tǒng);(2)位于蒸汽發(fā)生器附近的SMC控制器,最大距離可達(dá)到100m;(3)位于蒸汽發(fā)生器下封頭附近的機(jī)械臂本體、檢修工具、監(jiān)控?cái)z像頭,其中集裝箱與SMC控制器最大距離可達(dá)到150m。
下面介紹三部分之間的連接關(guān)系及主要功能。
(1)集裝箱與SMC控制器:①由集裝箱內(nèi)配電系統(tǒng)向SMC控制器提供220VAC、48VAC等電源輸出;②集裝箱內(nèi)監(jiān)控系統(tǒng)與SMC控制器采用現(xiàn)場(chǎng)總線通訊;③集裝箱內(nèi)監(jiān)控系統(tǒng)向SMC控制器提供遠(yuǎn)程復(fù)位(Reset)信號(hào);④SMC控制器向集裝箱內(nèi)監(jiān)控系統(tǒng)提供自身工作狀態(tài)信號(hào)。
(2)SMC控制器與機(jī)械臂本體:①SMC控制器向機(jī)械臂本體各直流伺服電機(jī)分別提供PWM直流伺服驅(qū)動(dòng)信號(hào);②SMC控制器向機(jī)械臂本體各旋轉(zhuǎn)變壓器提供中頻勵(lì)磁信號(hào);③SMC控制器向機(jī)械臂本體安裝偏差檢測(cè)電位器提供激勵(lì)信號(hào);④R旋轉(zhuǎn)變壓器向SMC控制器提供角度反饋信號(hào);⑤偏差檢測(cè)電位器向SMC控制器提供偏差檢測(cè)信號(hào)。
(3)集裝箱與機(jī)械臂本體:①由集裝箱內(nèi)配電系統(tǒng)向機(jī)械臂本體供應(yīng)檢修工具電源、監(jiān)控?cái)z像頭電源、散熱裝置電源;②SG附近監(jiān)控?cái)z像頭向集裝箱內(nèi)監(jiān)控系統(tǒng)提供監(jiān)控視頻。
由于機(jī)械臂控制算法計(jì)算量大、控制復(fù)雜,所以采用上、下位機(jī)的分布式控制方法來(lái)設(shè)計(jì)整個(gè)控制系統(tǒng)。
2 硬件電路設(shè)計(jì)
機(jī)械臂控制系統(tǒng)有三個(gè)主要部件,即工控機(jī)、SMC控制器和機(jī)械臂本體。工控機(jī)主要負(fù)責(zé)機(jī)械臂控制算法、正反解算法、工作狀態(tài)顯示、數(shù)據(jù)記錄以及實(shí)時(shí)監(jiān)控,保持與SMC控制器中六個(gè)關(guān)節(jié)控制板的實(shí)時(shí)通訊;SMC控制器是機(jī)械臂的直接控制部件,它接收工控機(jī)通過(guò)CAN通訊傳過(guò)來(lái)的機(jī)械臂角度、速度及加速度信息,對(duì)機(jī)械臂本體進(jìn)行相應(yīng)的控制,同時(shí)將機(jī)械臂的關(guān)節(jié)角度及運(yùn)行狀態(tài)參數(shù)通過(guò)CAN通訊傳給工控機(jī),機(jī)械臂本體接收SMC控制器的指令,并按照指令要求做出機(jī)械動(dòng)作,并將角度信號(hào)反饋給SMC控制器。
2.1 SMC控制器硬件電路設(shè)計(jì)
系統(tǒng)的硬件框圖如圖2所示。系統(tǒng)處理器采用TI公司的TMS320LF2407,它是TI公司新推出的高性能16位數(shù)字信號(hào)處理器,是24X家族中的新成員,專門為電極控制與運(yùn)動(dòng)控制數(shù)字化實(shí)現(xiàn)而設(shè)計(jì)。完全履行CAN2.0規(guī)范,支持11位標(biāo)準(zhǔn)和29位擴(kuò)展標(biāo)識(shí)符,完全能滿足系統(tǒng)對(duì)電機(jī)控制與CAN通訊功能。
(1)為了反饋關(guān)節(jié)電機(jī)的位置,提高控制精度,使系統(tǒng)運(yùn)行更加平穩(wěn),在電機(jī)軸上和減速器后分別安裝了一只位置檢測(cè)元件旋轉(zhuǎn)變壓器,用旋轉(zhuǎn)變壓器-數(shù)字轉(zhuǎn)換器(RDC)進(jìn)行軸角解碼,將關(guān)節(jié)的位置轉(zhuǎn)換成21位的自然二進(jìn)制碼送給DSP,實(shí)現(xiàn)位置反饋。
(2)電機(jī)選取瑞士MAXON公司的RE系列石墨電刷直流電機(jī),額定電壓為24V,電源由一個(gè)24V的開關(guān)電源提供。電機(jī)驅(qū)動(dòng)橋采用SA60脈沖調(diào)制型的運(yùn)算放大器,原理圖如圖3所示。它能給負(fù)載提供10A的連續(xù)電流,全橋運(yùn)放可在較寬的電源電壓范圍內(nèi)工作。
(3)關(guān)節(jié)電機(jī)電流檢測(cè)采用電流霍爾器件,經(jīng)過(guò)運(yùn)算放大器輸入到DSP的A/D轉(zhuǎn)換中,用于檢測(cè)機(jī)械臂關(guān)節(jié)電機(jī)是否過(guò)流,由此判斷關(guān)節(jié)電機(jī)是否堵轉(zhuǎn)。
2.2 通訊接口設(shè)計(jì)
?。茫粒慰偩€是一種串行數(shù)據(jù)通訊協(xié)議,通訊速率可達(dá)1Mb/s,采用光導(dǎo)纖維作為通訊介質(zhì),保證了通訊的速率與可靠性。數(shù)據(jù)段長(zhǎng)度最多為8個(gè)字節(jié),可滿足一般系統(tǒng)控制命令、工作狀態(tài)及檢測(cè)數(shù)據(jù)通訊的要求。同時(shí)8個(gè)字節(jié)不會(huì)占用總線時(shí)間過(guò)長(zhǎng)、保證了通訊的可靠性。根據(jù)整個(gè)機(jī)械臂控制系統(tǒng)的特點(diǎn),把工控機(jī)設(shè)為主控節(jié)點(diǎn),負(fù)責(zé)與機(jī)械臂關(guān)節(jié)控制節(jié)點(diǎn)之間的通訊,對(duì)關(guān)節(jié)控制節(jié)點(diǎn)進(jìn)行統(tǒng)一管理。
工控機(jī)與機(jī)械臂關(guān)節(jié)控制節(jié)點(diǎn)之間采用問(wèn)答式的通訊方式,工控機(jī)將計(jì)算的各關(guān)節(jié)角度傳給關(guān)節(jié)控制板,之后控制板將機(jī)械臂各關(guān)節(jié)的角度信息傳給工控機(jī),數(shù)據(jù)交換完畢后控制板根據(jù)收到的角度信息控制機(jī)械臂。工控機(jī)與關(guān)節(jié)控制板之間每隔0.1s交換一次數(shù)據(jù),工控機(jī)每次都根據(jù)收到的角度信息進(jìn)行正反解計(jì)算。
(1)CAN總線驅(qū)動(dòng)器采用PCA82C250,它是協(xié)議控制器和物理總線之間的接口,該器件對(duì)總線提供差動(dòng)發(fā)送能力并對(duì)CAN控制器提供差動(dòng)額接收能力,原理圖如圖4所示。CAN總線與DSP接口電路圖如圖5所示。
(2)工控機(jī)與DSP板的CAN通訊采用CAN接口卡PCI-5110,其作用是給計(jì)算機(jī)增加CAN-Bus現(xiàn)場(chǎng)總線接口功能。
3 軟件系統(tǒng)設(shè)計(jì)
機(jī)械臂控制系統(tǒng)的軟件設(shè)計(jì)包括兩部分:下位機(jī)SMC控制器的控制軟件設(shè)計(jì)和上位機(jī)監(jiān)控軟件設(shè)計(jì)。
3.1 下位機(jī)軟件設(shè)計(jì)
μC/OS-II是專門為微處理器設(shè)計(jì)的一種搶占式實(shí)時(shí)多任務(wù)操作系統(tǒng),與傳統(tǒng)的DSP系統(tǒng)開發(fā)相比,其利用多任務(wù)管理、任務(wù)間同步與通信等特點(diǎn),可以在一定程度上提高系統(tǒng)的可靠性和實(shí)時(shí)性,滿足機(jī)械臂控制系統(tǒng)對(duì)位置信息采集、CAN通訊以及電流采集的實(shí)時(shí)性要求。
軟件以TMS320LF2407的T0定時(shí)器作為操作系統(tǒng)的時(shí)鐘中斷源,中斷周期為1ms。創(chuàng)建位置環(huán)任務(wù)、速度環(huán)任務(wù)、A/D轉(zhuǎn)換任務(wù)、CAN通訊任務(wù)和角度采集,根據(jù)機(jī)械臂系統(tǒng)的工作特性和功能要求,系統(tǒng)任務(wù)劃分如圖6所示。系統(tǒng)任務(wù)間的通信和同步用到的系統(tǒng)服務(wù)有消息郵箱和信號(hào)量。信號(hào)量用于控制共享資源的使用權(quán)及激發(fā)其他任務(wù)的產(chǎn)生,消息郵箱用于通知任務(wù)的產(chǎn)生;本系統(tǒng)中的任務(wù)分為三種:定時(shí)產(chǎn)生的任務(wù),由其他任務(wù)激活而不需要等待的任務(wù),由中斷觸發(fā)產(chǎn)生的任務(wù)。圖6同時(shí)也反映本系統(tǒng)任務(wù)調(diào)度情況。
3.2 機(jī)械臂控制器設(shè)計(jì)
機(jī)械臂控制原理框圖如圖7所示。
控制器由串聯(lián)的三個(gè)環(huán)構(gòu)成,其中包括兩個(gè)模擬內(nèi)環(huán)(電流環(huán),速度環(huán))和一個(gè)控制環(huán)。
控制算法綜合采用積分PID控制算法和帶死區(qū)PID控制算法:積分分離PID控制算法既能保證系統(tǒng)有較快的響應(yīng)速度,又有較高的控制精度;帶死區(qū)PID控制可使機(jī)械裝置運(yùn)動(dòng)到位后,控制作用不會(huì)頻繁變動(dòng),避免不必要的機(jī)械磨損。這兩種控制算法魯棒性好、可靠性高、算法簡(jiǎn)單,能滿足系統(tǒng)的控制要求。
3.3 系統(tǒng)main函數(shù)結(jié)構(gòu)框架
在主函數(shù)中用OSTaskCreate( )函數(shù)建立初始化任務(wù)Task Init( ),初始化任務(wù)中建立一系列的信號(hào)量和郵箱,喚醒時(shí)鐘中斷任務(wù)。建立置環(huán)任務(wù)、速度環(huán)任務(wù)、電流環(huán)任務(wù)、A/D轉(zhuǎn)換任務(wù)、CAN通訊任務(wù)和角度采集等任務(wù)。在μC/OS-II實(shí)時(shí)內(nèi)核下整個(gè)程序的結(jié)構(gòu)框架如下:
Viod main(void) //主函數(shù)
{
硬件初始化;
OSInit(); //內(nèi)核的初始化
調(diào)用OSTaskCreate( )創(chuàng)建初始化任務(wù)Task Init( );
OSStart( ); //開始多任務(wù)調(diào)度
}
Viod TaskInit(void * data) //任務(wù)初始化
{
硬件時(shí)鐘初始化;
創(chuàng)建用戶任務(wù);
定時(shí)檢查系統(tǒng)的狀態(tài);
定時(shí)復(fù)位看門狗;
}
ISR//中斷服務(wù)程序
{
保存處理器寄存器的值;
OSIntEnter( );
執(zhí)行中斷函數(shù);
OSIntExit( );
恢復(fù)處理器寄存器的值;
中斷返回;
}
3.4 工控機(jī)監(jiān)控軟件設(shè)計(jì)
監(jiān)控軟件功能模式分為安裝、工作、調(diào)試模式。工作、安裝模式分為實(shí)和虛兩種模式。工作過(guò)程是指機(jī)械臂腳趾已經(jīng)插到管板孔中并脹緊、機(jī)械臂處于倒掛狀態(tài)后,完成堵管和其他檢測(cè)的工作過(guò)程。安裝過(guò)程是指機(jī)械臂進(jìn)入人孔,其四個(gè)腳趾安裝到管板孔并脹緊的過(guò)程。虛模式是計(jì)算機(jī)三維仿真,不控制實(shí)際的機(jī)械臂。實(shí)模式給控制器發(fā)各種數(shù)據(jù)和信息,通過(guò)控制器對(duì)機(jī)械臂的運(yùn)動(dòng)和操作進(jìn)行控制,實(shí)際機(jī)械臂的位置和姿態(tài)與三維仿真保持一致。
監(jiān)控軟件按功能劃分為五大模塊:操作界面設(shè)計(jì)、軌跡規(guī)劃與運(yùn)動(dòng)控制設(shè)計(jì)、任務(wù)管理模塊設(shè)計(jì)、三維運(yùn)動(dòng)仿真模塊設(shè)計(jì)和系統(tǒng)維護(hù)與故障診斷模塊設(shè)計(jì)。軟件功能結(jié)構(gòu)如圖8所示。
為滿足系統(tǒng)的控制與仿真功能,采用基于單文檔的OpenGL應(yīng)用程序?qū)崿F(xiàn)該監(jiān)控軟件。
監(jiān)控軟件的主要功能如下:
(1)主功能菜單:包括模式選擇、作業(yè)方式選擇、安裝工作、檢修工作選擇等。
(2)參數(shù)設(shè)置:CAN通訊設(shè)置、機(jī)械臂PID控制參數(shù)設(shè)置等。
(3)機(jī)械臂信息顯示:各關(guān)節(jié)位置姿態(tài)信息、CAN通訊狀態(tài)、傳感器工作狀態(tài)、關(guān)節(jié)控制電機(jī)電流等。
(4)機(jī)械臂控制:JOG單關(guān)節(jié)控制、JOY六關(guān)節(jié)聯(lián)動(dòng)控制、自動(dòng)運(yùn)行控制、關(guān)節(jié)封鎖控制等。
(5)記錄模式及數(shù)據(jù)分析:檢修路徑選擇和記錄,路徑優(yōu)化等。
本文以實(shí)際工程實(shí)踐中蒸汽發(fā)生器的六自由度檢修機(jī)械臂為研究對(duì)象,通過(guò)大量的理論研究和實(shí)際調(diào)試試驗(yàn),設(shè)計(jì)了一套完整的機(jī)械臂控制系統(tǒng)。整套系統(tǒng)的控制精度、可靠性及動(dòng)/靜態(tài)特性等均能達(dá)到技術(shù)要求,可以很好地完成技術(shù)要求中的各項(xiàng)功能,并應(yīng)用到實(shí)際工作中。
pid控制相關(guān)文章:pid控制原理
c++相關(guān)文章:c++教程
伺服電機(jī)相關(guān)文章:伺服電機(jī)工作原理
pid控制器相關(guān)文章:pid控制器原理
負(fù)離子發(fā)生器相關(guān)文章:負(fù)離子發(fā)生器原理
評(píng)論