文獻(xiàn)標(biāo)識(shí)碼: A
文章編號(hào): 0258-7998(2013)06-0017-04
近幾十年,我國(guó)加大了對(duì)海洋科考和探測(cè)的力度,。經(jīng)探測(cè)發(fā)現(xiàn),,我國(guó)大陸架淺海海底埋藏著豐富的石油、天然氣以及煤,、硫,、磷等礦產(chǎn)資源。在多數(shù)海盆中,,廣泛分布著深海錳結(jié)核等可利用金屬礦產(chǎn)資源[1],。深海鉆機(jī)是大洋深海地質(zhì)探測(cè)的重要工具之一,它可以探取海底數(shù)十米以下的地質(zhì)樣品,,為科學(xué)家了解海底地質(zhì)構(gòu)造提供第一手資料,。但是深海鉆機(jī)的使用現(xiàn)狀并不理想。一方面,,深海的惡劣環(huán)境給深海鉆機(jī)的使用帶來(lái)了不便,;另一方面,鉆機(jī)一般會(huì)被下放到海底4 000 m~5 000 m的地方作業(yè),,甲板操控人員根據(jù)深海攝像頭傳回來(lái)的視頻對(duì)海底鉆機(jī)進(jìn)行控制,,是典型的開環(huán)控制[2],鉆取成功率較低,。從海底傳輸上來(lái)的監(jiān)控視頻質(zhì)量不是很好,,再加上鉆機(jī)鉆進(jìn)程序繁瑣,一次作業(yè)時(shí)間長(zhǎng)達(dá)數(shù)十個(gè)小時(shí),,操作人員壓力大,。監(jiān)控視頻從海底傳輸?shù)郊装灞O(jiān)控系統(tǒng),傳輸距離遠(yuǎn),,延時(shí)較為明顯,。如果遇到誤操作或其他偶然事件,,則無(wú)法及時(shí)停止操作,會(huì)對(duì)鉆機(jī)本身造成很大的損害,。本文介紹的基于STM32的檢測(cè)系統(tǒng)可以減少,,甚至避免這些意外事件的發(fā)生,降低操作人員的工作壓力,。
1 系統(tǒng)的工作原理概述
1.1 系統(tǒng)結(jié)構(gòu)
深海鉆機(jī)閉環(huán)檢測(cè)系統(tǒng)整體結(jié)構(gòu)框圖如圖1所示,。本文主要闡述由檢測(cè)板以及各個(gè)傳感器組成的檢測(cè)系統(tǒng),它主要完成對(duì)鉆機(jī)運(yùn)行狀況,、動(dòng)作完成情況的檢測(cè),,并向鉆機(jī)主控系統(tǒng)和甲板監(jiān)控系統(tǒng)實(shí)時(shí)反饋鉆機(jī)狀態(tài)信息。
1.2 深海鉆機(jī)閉環(huán)檢測(cè)
閉環(huán)控制系統(tǒng)是指輸出量直接或者間接地反饋到輸入端,,形成閉環(huán)參與的系統(tǒng)[3],。鉆機(jī)閉環(huán)操作原理簡(jiǎn)圖如圖2所示。實(shí)現(xiàn)深海鉆機(jī)的閉環(huán)控制一般需要有三個(gè)循環(huán)步驟:(1)鉆機(jī)主控系統(tǒng)根據(jù)命令按步驟執(zhí)行分解動(dòng)作,;(2)將分解動(dòng)作的執(zhí)行結(jié)果反饋到鉆機(jī)主控系統(tǒng)和甲板監(jiān)控系統(tǒng),;(3)鉆機(jī)主控系統(tǒng)根據(jù)反饋的結(jié)果做出相應(yīng)的調(diào)整或者是進(jìn)行下一步分解動(dòng)作。本文設(shè)計(jì)的檢測(cè)系統(tǒng)主要完成步驟(2),。檢測(cè)系統(tǒng)向鉆機(jī)主控系統(tǒng)的輸出結(jié)果會(huì)間接地影響到檢測(cè)系統(tǒng)采集端的輸入量,,這就形成了對(duì)鉆機(jī)系統(tǒng)的閉環(huán)檢測(cè)。
首先,檢測(cè)系統(tǒng)對(duì)鉆機(jī)動(dòng)作進(jìn)行狀態(tài)檢測(cè)?,F(xiàn)在深海鉆機(jī)的動(dòng)作主要是靠液壓桿的伸縮來(lái)完成,,鉆機(jī)主控系統(tǒng)通過控制液壓閥的開、關(guān)來(lái)實(shí)現(xiàn)液壓桿的伸縮[2],。檢測(cè)系統(tǒng)主要通過檢測(cè)液壓桿中的油壓力大小并結(jié)合外部數(shù)字傳感器的狀態(tài)來(lái)判定液壓桿動(dòng)作完成情況,。例如,如果液壓桿中油壓增大但是明顯小于系統(tǒng)壓力且外部數(shù)字傳感器沒有信號(hào),,則說(shuō)明液壓桿開始伸縮但是還沒有完成動(dòng)作;如果液壓桿壓力接近系統(tǒng)壓力,,而且外部數(shù)字傳感器有信號(hào),,則說(shuō)明液壓桿已經(jīng)到位。
其次,,檢測(cè)系統(tǒng)把采集信息反饋到鉆機(jī)主控系統(tǒng)和甲板監(jiān)控系統(tǒng),。因?yàn)殂@機(jī)主控系統(tǒng)內(nèi)部采用CAN總線通信協(xié)議,為了便于與鉆機(jī)主控系統(tǒng)通信,,檢測(cè)系統(tǒng)與鉆機(jī)主控系統(tǒng)之間也采用CAN總線協(xié)議,。檢測(cè)系統(tǒng)與甲板監(jiān)控系統(tǒng)間使用串口協(xié)議,但由于串口傳輸距離有限,,所以需要使用光纖作為傳輸中繼,。水下光端機(jī)先將串口信號(hào)轉(zhuǎn)換為光信號(hào),,然后混合光纜將信號(hào)傳輸?shù)郊装灞O(jiān)控系統(tǒng),甲板監(jiān)控系統(tǒng)再使用光端機(jī)將光信號(hào)還原為串口信號(hào)進(jìn)行分析,。
2 系統(tǒng)硬件描述
2.1 系統(tǒng)主板
考慮到本系統(tǒng)要設(shè)計(jì)很多模擬量采集口和很多數(shù)字采集量,,監(jiān)測(cè)系統(tǒng)主板的微處理器選擇了ST公司生產(chǎn)的STM32F103VCT6。這款單片機(jī)具有高達(dá)72 MHz的主頻,,內(nèi)置256 KB的Flash,,多路ADC,具有18 MHz的I/O翻轉(zhuǎn)速度[4],,可以滿足檢測(cè)系統(tǒng)對(duì)運(yùn)行速度,、多路模擬量和數(shù)字量采集的要求。這款單片機(jī)還內(nèi)設(shè)有CAN,、USART通信接口,,可以讓檢測(cè)系統(tǒng)與鉆機(jī)主控系統(tǒng)和甲板監(jiān)控系統(tǒng)的通信更加容易實(shí)現(xiàn)。具體的檢測(cè)系統(tǒng)主板構(gòu)架圖如圖3所示,。
2.3 系統(tǒng)應(yīng)急控制
系統(tǒng)設(shè)計(jì)了4路24 V/2 A的應(yīng)急控制繼電器,,MCU通過自身的I/O口控制驅(qū)動(dòng)電路來(lái)驅(qū)動(dòng)繼電器開和關(guān)。如果鉆機(jī)在運(yùn)行過程中發(fā)生意外事件,,比如外部突然電壓不穩(wěn)定,、突發(fā)的姿態(tài)變化、主控系統(tǒng)操作邏輯錯(cuò)誤等狀況,,檢測(cè)系統(tǒng)可以立即控制這4路繼電器采取應(yīng)急措施,,比如切斷系統(tǒng)供電、給鉆機(jī)油壓系統(tǒng)卸荷等,。這些應(yīng)急動(dòng)作是發(fā)生在檢測(cè)系統(tǒng)向鉆機(jī)主控系統(tǒng)和甲板監(jiān)控系統(tǒng)反饋信息之前,,從而在第一時(shí)間避免對(duì)整個(gè)鉆機(jī)系統(tǒng)造成不必要的損害。
3 系統(tǒng)軟件描述
3.1 檢測(cè)系統(tǒng)主板程序流程
主程序流程圖如圖5所示,。主程序的設(shè)計(jì)主要分為以下幾個(gè)步驟:
(1)開始及系統(tǒng)初始化,;
(2)循環(huán)查詢發(fā)送標(biāo)志位是否置位,如果置位則收集各個(gè)采集模塊信息,;
(3)判斷采集信息并發(fā)送,;
(4)安全機(jī)制和響應(yīng)上位機(jī)命令。
系統(tǒng)上電后,,立即進(jìn)行系統(tǒng)的初始化,。這一步驟非常重要,單片機(jī)初始化系統(tǒng)時(shí)鐘,、定時(shí)器以及各個(gè)外設(shè)等,。初始化完成后,進(jìn)入while循環(huán),。定時(shí)器每隔500 ms就會(huì)觸發(fā)中斷并置位發(fā)送標(biāo)志位,,當(dāng)系統(tǒng)查詢到發(fā)送標(biāo)志位置位時(shí),,就會(huì)采集、計(jì)算各個(gè)傳感器的信息,。如果系統(tǒng)判斷各個(gè)傳感器的信息是在預(yù)定范圍內(nèi),,則通過串口和CAN總線分別向甲板監(jiān)控系統(tǒng)和鉆機(jī)主控系統(tǒng)反饋信息,否則就是鉆機(jī)發(fā)生意外事件,,觸發(fā)緊急安全機(jī)制,。判斷結(jié)束后清空發(fā)送標(biāo)志位,至此一次發(fā)送完成,。
3.2 通信協(xié)議
檢測(cè)系統(tǒng)向甲板監(jiān)控系統(tǒng)反饋數(shù)據(jù)時(shí),,是以幀數(shù)據(jù)的格式發(fā)送。幀格式具體如圖6,。
圖中“@$”是幀頭,,“55*”是幀尾,各個(gè)數(shù)據(jù)間用“,,”隔開,。AD1~AD10分別代表MCU采集的10個(gè)通道的AD值,繼電器幀和數(shù)字1,、2幀分別以位的形式表示現(xiàn)在繼電器的狀態(tài)和數(shù)字傳感器的狀態(tài),,例如繼電器幀如果為0x03,轉(zhuǎn)化為二進(jìn)制就是0011,,這表示第一,、第二個(gè)繼電器閉合,第三,、第四繼電器打開,。
由于CAN協(xié)議一幀數(shù)據(jù)最大為8 B,不能滿足數(shù)據(jù)長(zhǎng)度要求,,所以軟件上使用CAN數(shù)據(jù)幀中的DATA0作為數(shù)據(jù)發(fā)送的擴(kuò)展幀,,數(shù)據(jù)格式具體如表1。
Data0的0x01,、0x02,、0x03分別代表數(shù)據(jù)的第一、二,、三幀。把3幀數(shù)據(jù)整合起來(lái),,才是完整的一組數(shù)據(jù),。由于CAN傳輸?shù)拿恳粋€(gè)數(shù)據(jù)都是8 bit,而AD采樣值為16 bit,,系統(tǒng)軟件上采用兩個(gè)CAN數(shù)據(jù)表示一個(gè)AD值,,即第一幀的Data1,、Data2表示AD3的值(AD1與AD2不反饋給鉆機(jī)主控系統(tǒng)),以此類推,。第三幀的Data3和Data4表示轉(zhuǎn)速數(shù)據(jù),,Data5、Data6,、Data7分別表示繼電器狀態(tài)和數(shù)字1,、2的值。
4 測(cè)試結(jié)果
4.1 通信穩(wěn)定性測(cè)試及結(jié)果
測(cè)試時(shí)搭建起整個(gè)鉆機(jī)系統(tǒng),,設(shè)置PC上位機(jī)軟件串口為COM1,,通信速率為9 600 b/s,無(wú)奇偶校驗(yàn)位,,8 bit數(shù)據(jù)位,,1 bit停止位。鉆機(jī)主控系統(tǒng)的CAN收發(fā)模塊ID設(shè)置為0x100,,檢測(cè)系統(tǒng)的CAN收發(fā)模塊ID設(shè)置為0x200,,無(wú)擴(kuò)展ID。系統(tǒng)上電,,上位機(jī)可以順利地收到檢測(cè)系統(tǒng)反饋信息后,,用串口調(diào)試助手和USB-CAN助手截獲通信信息進(jìn)行通信穩(wěn)定性測(cè)試,統(tǒng)計(jì)一分鐘內(nèi)串口和CAN的通信次數(shù),、丟包數(shù)和亂碼幀數(shù)量,,結(jié)果如表2所示。
4.2 檢測(cè)系統(tǒng)功能測(cè)試及結(jié)果
測(cè)試流程如下:
(1)通信安全機(jī)制測(cè)試
系統(tǒng)運(yùn)行正常后,,將檢測(cè)系統(tǒng)與PC機(jī)之間的串口連接線斷開,,3 s后檢測(cè)到系統(tǒng)主板自動(dòng)復(fù)位(軟件設(shè)置為3 s),證明軟件安全機(jī)制有效,。
(2)系統(tǒng)應(yīng)急功能測(cè)試
系統(tǒng)運(yùn)行正常后,,慢慢調(diào)高供電電壓,當(dāng)供電電壓超過300 V時(shí)(程序設(shè)置300 V為門限電壓),,檢測(cè)板繼電器打開,,鉆機(jī)卸荷,證明應(yīng)急功能有效,。
(3)進(jìn)行各個(gè)模塊采集功能測(cè)試
在調(diào)試模擬傳感器和數(shù)字傳感器正常后,,進(jìn)行鉆機(jī)閉環(huán)操作模擬。上位機(jī)發(fā)出一個(gè)指令進(jìn)行“取管”組合動(dòng)作,。
試驗(yàn)中觀察到主控系統(tǒng)首先進(jìn)行組合動(dòng)作中的第一個(gè)“擺臂”動(dòng)作,。檢測(cè)系統(tǒng)反饋機(jī)械臂到位信號(hào)后,鉆機(jī)主控板自動(dòng)進(jìn)行“夾緊機(jī)械手”動(dòng)作,。當(dāng)檢測(cè)系統(tǒng)反饋“機(jī)械手”夾緊信號(hào)后,,主控系統(tǒng)自動(dòng)進(jìn)行“回臂”動(dòng)作,;當(dāng)檢測(cè)系統(tǒng)反饋到位信號(hào)后,一套組合動(dòng)作完成,。鉆機(jī)主控系統(tǒng)執(zhí)行動(dòng)作時(shí),,PC上位機(jī)可以實(shí)時(shí)地反應(yīng)當(dāng)前鉆機(jī)機(jī)械臂的狀態(tài)。系統(tǒng)運(yùn)行一個(gè)小時(shí)時(shí),,統(tǒng)計(jì)操作次數(shù)和動(dòng)作執(zhí)行情況,,如表3所示。
4.3 實(shí)驗(yàn)結(jié)果分析
由以上實(shí)驗(yàn)結(jié)果可以證明:
(1)檢測(cè)系統(tǒng)與主板間的CAN通信穩(wěn)定可靠,,與甲板監(jiān)控系統(tǒng)串口通信穩(wěn)定,,誤碼率在可接受范圍內(nèi)。
(2)檢測(cè)系統(tǒng)可以檢測(cè)到鉆機(jī)外部運(yùn)行環(huán)境穩(wěn)定情況,,當(dāng)發(fā)送意外事件時(shí),,可以及時(shí)地采取應(yīng)急措施,成功避免因?yàn)榘l(fā)生意外事件而對(duì)整個(gè)鉆機(jī)系統(tǒng)造成的損害,。
(3)檢測(cè)系統(tǒng)可以準(zhǔn)確,、實(shí)時(shí)地檢測(cè)鉆機(jī)運(yùn)行狀態(tài),并反饋給鉆機(jī)主控系統(tǒng)和甲板監(jiān)控系統(tǒng),,能輔助鉆機(jī)主控系統(tǒng)完成組合動(dòng)作,,檢測(cè)到鉆機(jī)執(zhí)行操作過程中的邏輯錯(cuò)誤,并能成功避免誤操作,,這是深海鉆機(jī)實(shí)現(xiàn)閉環(huán)控制必不可少的一部分,。
參考文獻(xiàn)
[1] 金翔龍.二十一紀(jì)海洋開發(fā)利用與海洋經(jīng)濟(jì)發(fā)展的展望[J].科學(xué)中國(guó)人,2006(11):13-17.
[2] 邱良豐.基于復(fù)合光纜的深海鉆機(jī)監(jiān)控系統(tǒng)的研制[D].杭州:杭州電子科技大學(xué),,2010.
[3] 趙欽君,,姜斌.基于模型的閉環(huán)系統(tǒng)故障檢測(cè)的一種新方法[J].控制工程,2005,,2(12):174-176.
[4] ST Microelectronics.STM32F103xC STM32F103xD STM32F103xE[Z].2008.
[5] 李海波,,林輝.線性光耦在電流采樣中的應(yīng)用[J].電源技術(shù),2004,,6(1):17-19.