宋大雷 ,徐霄陽 ,田 川
(1.中國海洋大學,山東 青島 266003;2.中國科學院海洋研究所,山東 青島 266071)
溫度傳感器在小型ROV系統(tǒng)中的應用與研究
宋大雷1,徐霄陽1,田 川2
(1.中國海洋大學,山東 青島 266003;2.中國科學院海洋研究所,山東 青島 266071)
介紹了一種響應時間快、高精度、低功耗的溫度傳感器軟硬件設計。傳感器與ROV之間采用有纜方式進行通信,使得ROV可以方便有效地控制溫度傳感器,并可根據(jù)具體測量環(huán)境改變加裝方式和通信模式。模塊化的設計減小了傳感器的體積使其可方便地集成在小型ROV系統(tǒng)或其它測量平臺上。
溫度傳感器;小型ROV;有限狀態(tài)機
水下機器人ROV(Remotely Operated Vehicle)是通過有纜方式進行操作的水下航行器。它主要由推進系統(tǒng)、操作系統(tǒng)(機械手)、通訊系統(tǒng)、攝像系統(tǒng)(包括輔助照明設備)、水下測量系統(tǒng)、零浮力臍帶纜以及甲板操控系統(tǒng)等組成。隨著經(jīng)濟的發(fā)展,尤其對海洋、湖波等水資源的開發(fā)和利用,小型ROV系統(tǒng)具有的尺寸小、重量輕、操行簡單、續(xù)航能力強、穩(wěn)定性好、可在狹窄環(huán)境使用等特點,越來越受到用戶的重視[1]。通常情況下,ROV系統(tǒng)會根據(jù)不同的作業(yè)任務攜帶不同的測量傳感器,但溫度測量傳感器通常為ROV系統(tǒng)的基本配置。本文主要基于自主研發(fā)的SeaRay-50型ROV系統(tǒng)上的溫度測量傳感器模塊進行研究,通過對該溫度測量模塊的長期測試表明,該測量模塊可以方便地裝載在任何水下航行器或者測量平臺上使用。
溫度傳感器設計采用模塊化思想,主要分為三部分,分別為溫度探頭、電路模塊和對外接口,其中前端為溫度探頭部分,中部為模塊主體,后端設計加裝水密插頭以完成數(shù)據(jù)通信和供電。模塊的主體長85 mm,直徑30 mm,探頭長為20 mm,小型化的設計可方便實現(xiàn)其在ROV或其他水下測量系統(tǒng)上的外延集成。圖1展示了設計完成的溫度傳感器。
測溫模塊的前端探頭為316不銹鋼材質(zhì),可保護內(nèi)部的熱敏電阻不受外壓而發(fā)生損壞,熱敏電阻被封裝在探頭內(nèi)部。同時探頭被設計為針狀結(jié)構(gòu),以滿足熱敏電阻溫度響應時間小于200 ms的要求??紤]到前端探頭尺寸較小,所以在其周圍加裝不銹鋼的保護罩。
結(jié)合ROV的工作環(huán)境和監(jiān)測要求,溫度傳感器采用了直讀式的采樣方式。因此硬件設計主要由主控芯片、電源管理模塊、數(shù)據(jù)采集模塊和串口通信模塊四部分組成,各模塊之間的關(guān)系如圖2所示。
主控芯片主要負責控制數(shù)據(jù)的采集和串口通信,ROV通過外接水密纜完成對溫度傳感器的直接供電和命令通信,利用ROV的上位機軟件便可方便完成對測溫模塊的控制。硬件的具體設計如下:
(1)考慮到系統(tǒng)的外設較少,因此溫度傳感器主控芯片采用AVR Atmega8,便可以完成對其他模塊的控制和數(shù)據(jù)處理等工作。
(2)電源管理模塊包括了LTC1763穩(wěn)壓芯片,可以把4~20 V供電電壓穩(wěn)定至3.3 V輸出??梢詽M足ROV供電電壓為6 V的設計要求。
(3)數(shù)據(jù)采集模塊中A/D轉(zhuǎn)換芯片使用了LTC2411,可以方便ROV擴展多路數(shù)據(jù)的采集。傳感器測量精度可達±0.005℃,響應時間小于160 ms,滿足ROV對于環(huán)境溫度的監(jiān)測精度。
(4)串口通信模塊實現(xiàn)了測溫模塊與ROV之間的通信。為了方便溫度傳感器在ROV上的集成,同時滿足長距離的數(shù)據(jù)傳輸要求,本模塊使用了MAX3160電平轉(zhuǎn)換芯片,通過對單片機編程,可以完成邏輯電平到RS-232或RS-485的轉(zhuǎn)換。
在電源接口的設計上,由于溫度測量模塊的大部分芯片工作電壓小于5 V,為了使ROV對模塊的供電能夠安全、可靠,同時,為了提高A/D采集數(shù)據(jù)的精度,在電源管理模塊中使用了LTC1763芯片。它是一種寬電壓輸入的穩(wěn)壓芯片,輸出電壓穩(wěn)定在3.3 V。這樣設計,就使得ROV的供電電壓范圍擴大,同時也可以適應其他系統(tǒng)的集成,通信模塊中使用的MAX3160芯片和外圍電路會對A/D的輸入電壓產(chǎn)生影響,為了消除電源紋波對測量精度的影響,在通信模塊設計上采用了通信板和主電路板分離的電路設計。在縮小了總體電路長度的同時,使得通信部分也實現(xiàn)模塊化。測溫模塊對外接口設計采用4線制接口,除供電的兩路線外,通信的兩路也可被RS-232模式和RS-485模式共用,通過對單片機的編程可以實現(xiàn)兩種通信模式的轉(zhuǎn)換,這樣就最大化地簡化了對外接口[2]。在測溫模塊的尾端,使用水密接頭向外延伸線纜,ROV可以直接利用水密線纜與測溫模塊進行通信,獲得實時溫度數(shù)據(jù)。
測溫模塊的軟件設計采用了狀態(tài)機的思想。在有限狀態(tài)機系統(tǒng)中,狀態(tài)量是有限的,在設計狀態(tài)時需要設定盡可能少的狀態(tài)量,且在任意時刻系統(tǒng)都工作在其中的一個狀態(tài)。同時狀態(tài)之間的跳轉(zhuǎn)(觸發(fā))條件必須明確。由此根據(jù)測溫模塊的功能和ROV的具體需求設計出了如圖3的總體架構(gòu)。
測溫模塊為了兼顧與ROV的通信和保持實時采樣,程序的總體狀態(tài)分為三種,分別為:采樣、休眠和待機。當模塊未與上位機通信時,處于采樣或休眠兩種狀態(tài)中的一種。當模塊狀態(tài)跳轉(zhuǎn)為采樣狀態(tài)時,測溫模塊會進行持續(xù)的采樣并通過串口實時地發(fā)送采集到的溫度數(shù)據(jù)給ROV。定時器中斷被用作采樣間隔的設定,通過對定時器的計數(shù)量選擇,實現(xiàn)不同采樣間隔的設定。當不再需要測溫模塊采樣時,模塊退出采樣狀態(tài)并進入休眠狀態(tài)。在休眠狀態(tài)下,單片機將停止一切工作,并等待外部中斷信號重新喚醒,而外部中斷不僅被用做把單片機從休眠狀態(tài)下喚醒,同時還被用來使單片機從采樣狀態(tài)向待機狀態(tài)跳轉(zhuǎn)。當模塊接收到通信命令時首先觸發(fā)外部中斷進入到待機狀態(tài),待機狀態(tài)是為了通信需要而設定的,在此狀態(tài)下對模塊發(fā)出的不同命令可實現(xiàn)模塊的各種功能。待機狀態(tài)的超時時間(待機時間)被設定為5 s,即在5 s內(nèi)接收到任何命令都將重置待機時間到5 s,而在距上一次命令接收5 s的時間內(nèi)未收到命令,模塊將自動退出待機狀態(tài),并按照之前命令所設定的方式執(zhí)行程序。圖4給出了三種狀態(tài)下的程序流程圖。
實現(xiàn)三種采樣狀態(tài)的跳轉(zhuǎn),關(guān)鍵是對中斷進行配置[3]。由于休眠和采樣兩種狀態(tài)到待機狀態(tài)的跳轉(zhuǎn)都需要利用外部中斷實現(xiàn),因此在進入前兩種狀態(tài)后都需要首先配置外部中斷使能。在休眠狀態(tài)中由于使能了外部中斷,因此在單片機休眠后可以直接通過外部中斷喚醒并進入中斷子程序,而在采樣狀態(tài)時,由于受A/D轉(zhuǎn)換速度最快為130 ms的限制,因此在采樣狀態(tài)下的采樣子函數(shù)中需要禁止外部中斷和串口中斷,以防止在A/D采樣時接受到串口命令而干擾到采樣過程。在完成一次完整的采樣后,需要再次使能中斷,使得單片機可以響應外部命令。利用外部中斷服務程序置位待機標志位,便使得模塊跳轉(zhuǎn)到待機狀態(tài)。在主程序中采用查詢的方式判斷模塊狀態(tài),這樣就實現(xiàn)了不同狀態(tài)之間的跳轉(zhuǎn)[4]。
測溫模塊的通信可選擇RS-232或RS-485,采用的MAX3160芯片是一款可編程多協(xié)議的收發(fā)器。芯片支持RS-232和RS-485通信,其中RS-485通信需要軟件編程實現(xiàn)。兩種通信模式的轉(zhuǎn)換也可通過編程實現(xiàn),當芯片11、12引腳為低電平時,芯片啟用RS-232模式,反之則工作在RS-485模式[5]。這樣集成近岸ROV只需選用RS-232便可滿足距離要求,而如果需求遠距離通信也可以方便切換為RS-485通信。測溫模塊架裝在ROV上,ROV能通過對測溫模塊發(fā)送不同命令,實現(xiàn)對其的有效控制。以下定義了3種基本的通信命令,所有通信命令都采用十六進制,全長為4 byte。
(1)開始采樣命令:向測溫模塊發(fā)送此命令可使其按照設定的頻率進行采樣,通過串口把采集到的溫度數(shù)據(jù)以實時的方式發(fā)送給ROV。命令格式為D7090101,其中前兩個字節(jié)的D709為命令標志,第三個字節(jié)的01表示命令種類,第四個字節(jié)的01表示設定的采樣頻率。根據(jù)ROV對于溫度數(shù)據(jù)的采樣頻率要求為大于1 Hz,此命令設計了可以選擇01(1 Hz)、02(2 Hz)、04(4 Hz)三種采樣頻率。模塊接收到命令后將返回535441(STA),表示傳感器開始采樣。
(2)結(jié)束采樣命令:此命令可以停止溫度傳感器的采樣。命令格式為D7090200,模塊返回53544F(STO),表示傳感器停止采樣。
(3)握手命令:向測溫模塊發(fā)送此命令,模塊將返回自身信息和狀態(tài),返回值依次為兩個字節(jié)的模塊編號、一個字節(jié)的采樣狀態(tài)(01為采樣中,00為停止)、一個字節(jié)的采樣頻率。命令格式為D7090300,一種可能的返回值為00010101494E46。
除了上述3種基本命令外,模塊還定義了其他一些實用化的操作命令,隨著ROV對測溫模塊要求的不斷提高,模塊可以擴展更多命令以簡化操作。
在使用了“開始采樣”命令后,測溫模塊將實時對外發(fā)送溫度數(shù)據(jù)。為了簡化ROV的工作,使模塊更具兼容性,溫度數(shù)據(jù)的解析直接由單片機來完成。通過對原始AD值的解析,可以獲取熱敏電阻的阻值,再利用傳感器標定所得到的擬合系數(shù),最終計算出溫度值。測溫模塊的主控芯片通過處理得到的溫度值并最終以字符形式輸出,這樣ROV只需接收所得溫度數(shù)據(jù)并直接輸出顯示即可。輸出的數(shù)據(jù)格式為$XX.XXXX,溫度單位為攝氏度,例如$24.1451。
溫度傳感器的標定需要在恒溫水槽中進行。由于傳感器采用直讀式設計,使得其標定過程較為簡單。在溫度傳感器的測量量程-2~40℃內(nèi),選5個溫度點,分別為0℃,5℃,15℃,25℃,35℃,測得5組熱敏電阻阻值,如表1。
表1 熱敏電阻阻值
再根據(jù)Steinhart-Hart方程:T=1/(A+B*(LnR)+C*(LnR)*(LnR)+D*(LnR)*(LnR)*(LnR)),擬合算出 A、B、C、D 四個系數(shù),分別為:A=0.000 700 017 704 406 045;B=0.000 295 730 851 936 622;C=-4.690 551 678 251 96e-06;D=2.293 326 223 767 59e-07。把得到的系數(shù)寫入程序中,傳感器在工作時就能把計算出的實時溫度發(fā)送出來了。
ROV系統(tǒng)在工作時對所經(jīng)過海區(qū)內(nèi)海水溫度進行測量,并將數(shù)據(jù)通過電纜實時的傳送給母船上的甲板控制系統(tǒng),可使操作者對作業(yè)環(huán)境進行分析,更好的對ROV系統(tǒng)進行相關(guān)的決策。通過對集成在ROV系統(tǒng)上的溫度測量傳感器模塊測試以及采集數(shù)據(jù)進行分析,該測量模塊的指標可以滿足ROV在作業(yè)時對溫度測量的要求,并且由于該測量模塊具有小型化、響應時間快、精度高、功耗低等特點,可以方便的集成到其他水下測量平臺中使用。
[1]孫虎元,孫立娟,侯保榮,等.用于近海海洋環(huán)境檢測的輕型機器人[J].海洋技術(shù),2005,24(1):10-13.
[2]賈智平,張瑞華.嵌入式系統(tǒng)原理與接口技術(shù)[M].北京∶清華大學出版社,2005.
[3]Atemel.AVR ATmega8 data sheet.http∶//www.Atmel.com.
[4](美)克尼漢(Kernighan BW),(美)里奇(Ritchie DM).C程序設計語言(2版)[M].徐寶文,李志,譯.北京:機械工業(yè)出版社,2004.
[5]張成鶴,王平,鄭林華.可編程多協(xié)議收發(fā)器MAX3160的原理與應用[J].國外電子元器件,2002(12):62-63.
Research and Application of Temperature Sensor in Mini-ROV System
SONG Da-lei1,XU Xiao-yang1,TIAN Chuan2
(1.Ocean University of China,Qingdao Shandong266003,China;2.Institute of Oceanology,Chinese Academy of Sciences,Qingdao Shandong266071,China)
The hardware and software design of a fast-response,high-precision and low-power consumption temperature sensor was introduced.The sensor communicates with ROV using cable and could be controlled easily and effectively by ROV.It also could change the installation and communication mode depending on the environment of measurement.The small size sensor which is designed to be modular can be easily integrated in mini ROV system or other measurement platforms.
temperature sensor;mini ROV;finite state machine
TH766
A
1003-2029(2013)01-0024-04
2012-08-06
國家自然科學基金資助項目(41006005)
宋大雷(1971-),男,教授,碩士生導師,主要研究方向為海洋監(jiān)測傳感器的開發(fā)與應用、水下航行器。Email:daleisong@126.com