黃偉健 吳浩基 馮智銳 黃榮杰
(廣東海洋大學(xué)電子與信息工程學(xué)院,廣東 湛江 524088)
隨著世界進出口貿(mào)易的增加以及船舶朝著大型化和高速化方向發(fā)展,船舶碰撞事故也隨之不斷增多[1]。我國作為全球貿(mào)易大國,約90%的國際貿(mào)易是通過海運完成的,因此海洋運輸對我國至關(guān)重要。然而,港口、碼頭等船舶密集區(qū)域中發(fā)生的碰撞事故數(shù)量持續(xù)增加,成為一個亟待解決的問題。盡管目前已有船舶自動識別系統(tǒng)(Automatic Identification System,AIS)、海圖儀等設(shè)備廣泛應(yīng)用于海上船舶,但在船舶密集的場景中,這些設(shè)備仍然面臨無法進行高精度測距以及避碰的問題。因此,研究船舶的近海域避碰技術(shù)對提高海上航運的經(jīng)濟性和安全性具有重要意義[2]。為了解決這一難題,本文針對港口碼頭等船舶密集場景,設(shè)計了一種船舶近距離激光測距系統(tǒng),從而滿足了船舶避碰和預(yù)警的需求?;诖?,本文將介紹該系統(tǒng)的總體設(shè)計、硬件電路、工作原理和激光測距算法等。
該系統(tǒng)以IAP15F2K61S2 芯片為基礎(chǔ),集成了8 位8 段共陽數(shù)碼管模塊、獨立按鍵模塊、激光測距模塊和LED 指示燈模塊。通過融入調(diào)頻算法,實現(xiàn)了多方位數(shù)據(jù)處理,從而設(shè)計出了一種船舶近距離避碰系統(tǒng)。該設(shè)計的核心目標是解決多方位高精度測距問題,并實現(xiàn)高精度測距及報警功能。該系統(tǒng)首先利用激光測距模塊完成高精度測距任務(wù),其次采用調(diào)頻算法對多點數(shù)據(jù)進行融合處理。與傳統(tǒng)的相位式測距相比,調(diào)頻算法距離分辨率、測距精度更高。通過串口傳輸,使多個測量點的數(shù)據(jù)匯總。數(shù)碼管負責(zé)顯示測量數(shù)據(jù),并根據(jù)預(yù)設(shè)范圍將數(shù)據(jù)劃分為4 個部分:安全距離、遠距離、中距離和近距離。當(dāng)距離小于50 m 時,系統(tǒng)會自動計算距離的平均值。LED 燈、繼電器和蜂鳴器根據(jù)不同范圍的距離做出響應(yīng),以實現(xiàn)報警功能。此外,用戶可以通過獨立按鍵操作數(shù)碼管和LED 燈的熄滅與開啟、打開實時時鐘界面以及進入障礙物距離平均值顯示界面。通過實際應(yīng)用收集到的數(shù)據(jù)表明,該系統(tǒng)解決了船舶在短距離內(nèi)無法進行高精度測距及報警的問題。系統(tǒng)總體如圖1所示。
圖1 系統(tǒng)總體框圖
該系統(tǒng)以IAP15 芯片為核心,通過連接各外圍模塊,實現(xiàn)了系統(tǒng)的整體功能。其中,激光測距模塊為最重要的外圍模塊,為系統(tǒng)測提供了高精度的測距數(shù)據(jù)。數(shù)碼管模塊和獨立按鍵模塊共同組成了海上工作人員的交互界面,方便操作員進行系統(tǒng)設(shè)置和結(jié)果觀察。蜂鳴器模塊、繼電器模塊和LED 模塊則協(xié)同工作,構(gòu)成了系統(tǒng)的報警機制,能夠根據(jù)危險程度的不同選擇相應(yīng)的報警方式。
主控芯片選用的是STC15F2K61S2,其特點包括2 048 字節(jié)片內(nèi)RAM、高可靠復(fù)位電路(不用外部復(fù)位)、高速ADC以及8 通道10 位。
數(shù)碼管模塊利用芯片P0 端口控制二極管顯示及具體位置。所有數(shù)碼管均可顯示數(shù)字0~9 以及大、小寫的26 個字母。它具有耗電低、反應(yīng)速度快、使用溫度范圍廣以及構(gòu)造簡單等優(yōu)點。
獨立按鍵模塊由4 個按鍵組成,能夠直接讀取,檢測占用時間短、誤觸率低。該模塊還能區(qū)分長按和短按操作并且不受其他因素干擾。
激光測距模塊的測距精度為±0.5 cm,標準差<5 mm(2 m范圍內(nèi)),盲區(qū)低至1.5 cm。它還具有強大的抗干擾能力。該模塊以激光測距傳感器為核心,通過精確計算發(fā)射和接收反射激光的時間差來測量距離,具有測距頻率高和響應(yīng)快速的特點,并配備了屏蔽罩,以有效保護外圍電路免受電磁干擾。此外,該模塊還集成了MCU 和專門的測距算法。在船舶上布置了8 個激光測距傳感器:左右船舷各3 個、船頭和船尾各1 個。這些傳感器與距離傳感器和GSM 模塊緊密相連,并通過RS-485 串行總線接口實現(xiàn)高效通信。該接口采用差分平衡方式傳輸信號,因此具有出色的抗共模干擾能力,非常適合復(fù)雜的海洋環(huán)境。
LED 指示燈模塊提供了一個靈活的軟件控制機制,允許調(diào)整二極管亮滅時間的占空比。這一功能使筆者能夠選擇理想的亮度設(shè)置,從而延長發(fā)光二極管的使用壽命。此外,該模塊還具有動態(tài)顯示效果和大量的實際可視像素點,增強了整體視覺效果。
繼電器模塊在增強系統(tǒng)報警功能多樣性方面發(fā)揮重要作用。為了防止在單片機復(fù)位過程中發(fā)生誤觸動作,在該系統(tǒng)中,選用了三極管(PNP)繼電器,并實施了低電平觸發(fā)的控制邏輯,從而提高了系統(tǒng)的穩(wěn)定性和可靠性。
蜂鳴器模塊的主要職責(zé)是警示海上作業(yè)人員。本文采用了有源蜂鳴器,其內(nèi)部集成了專門的發(fā)聲電路(源振蕩),從而構(gòu)成了1 個高效且可靠的發(fā)聲裝置。這種有源蜂鳴器能夠提供清晰響亮的聲音,保證在各種工作環(huán)境下都能有效地傳達警示信息。
該系統(tǒng)是一個完整的船舶近距離避碰系統(tǒng),基于STC15-F2K61S2 設(shè)計,并由很多功能模塊組成。
該系統(tǒng)首先通過數(shù)據(jù)采集機構(gòu)(激光測距模塊)收集距離數(shù)據(jù),這些數(shù)據(jù)隨后被傳輸?shù)綌?shù)據(jù)處理機構(gòu)(IAP15F2K61S2芯片),該芯片采用線性調(diào)頻激光測距算法對數(shù)據(jù)進行篩選,以剔除誤差較大的數(shù)據(jù),從而獲得高精度的距離信息。在代碼中,本文預(yù)設(shè)了閾值,劃分了4 個不同的報警區(qū)域,每個報警區(qū)域都配置了不同的報警方式,以便通過用戶交互機構(gòu)及時警示海上作業(yè)人員并采取相應(yīng)操作。數(shù)碼管用于實時顯示當(dāng)前距離信息以及平均距離。按鍵功能包括切換當(dāng)前距離界面、平均距離界面、進入實時時鐘界面、關(guān)閉LED 燈、關(guān)閉繼電器以及關(guān)閉蜂鳴器等。LED 燈根據(jù)4 個不同的閾值區(qū)域,通過亮、滅和流水燈等操作來警示作業(yè)人員潛在的碰撞風(fēng)險。蜂鳴器和繼電器也會在不同的閾值區(qū)域中以不同的響應(yīng)頻率發(fā)出警報,警示作業(yè)人員注意避碰。
系統(tǒng)工作原理圖中的各模塊機構(gòu)如圖2所示。數(shù)據(jù)采集機構(gòu)主要依賴激光測距模塊進行數(shù)據(jù)采集。由于海上環(huán)境易受風(fēng)浪、天氣等外界因素影響,因此其他測距方式難以滿足高精度測距的需求。激光測距在穩(wěn)定性和精確性方面表現(xiàn)出色。結(jié)合線性調(diào)頻激光測距算法,能有效篩選并剔除誤差較大的數(shù)據(jù),從而顯著提高測距數(shù)據(jù)的可靠性,與傳統(tǒng)的相位式激光測距方式相比是一大優(yōu)勢。數(shù)據(jù)處理機構(gòu)的核心是IAP15F2K61S2 芯片。該主控芯片不僅價格低,而且可靠性高。考慮到本系統(tǒng)中激光傳感器間復(fù)雜的數(shù)據(jù)交互需求,該芯片憑借強大的數(shù)據(jù)處理能力,保證了數(shù)據(jù)的穩(wěn)定傳輸與處理,為系統(tǒng)的穩(wěn)定運行提供了保障。
圖2 系統(tǒng)工作原理圖
用戶交互機構(gòu)由數(shù)碼管、獨立按鍵、LED 燈、蜂鳴器以及繼電器組成,旨在實現(xiàn)以下功能。
數(shù)碼管主要用于顯示實時距離和實時時鐘。當(dāng)系統(tǒng)判斷為安全距離時,數(shù)碼管顯示實時時間。一旦探測到障礙物靠近,數(shù)碼管將迅速切換至距離顯示界面,展示當(dāng)前距離數(shù)據(jù)和障礙物的平均距離。
獨立按鍵具有多項實用功能,例如關(guān)閉LED 燈報警、打開實時時鐘界面以及進入障礙物距離平均值顯示界面等。
當(dāng)距離過近時,LED 燈發(fā)揮報警作用:當(dāng)處于安全距離(>50 m)時,LED 燈保持熄滅;當(dāng)處于遠距離(40 m~50 m)時,L1和L2亮起;當(dāng)進入中距離(30 m~40 m)時,L1和L2呈現(xiàn)呼吸燈狀態(tài);一旦進入近距離(<30 m),L1和L2保持呼吸燈狀態(tài),同時L3~L8啟動流水燈模式。LED 燈報警模式見表1。
表1 LED 燈報警模式
蜂鳴器報警設(shè)定如下:當(dāng)處于安全距離和遠距離時,蜂鳴器保持靜默。但處于中距離和近距離時,蜂鳴器會啟動報警功能。特別是在近距離,蜂鳴器的報警響應(yīng)間隔更短,警示更頻繁。
繼電器報警設(shè)定如下:與蜂鳴器相同,當(dāng)處于安全距離和遠距離時,繼電器不工作。但當(dāng)測距距離為30 m~40 m時,繼電器每300 ms 閉合1 次;當(dāng)距離為<30m 時,繼電器的閉合頻率提高,每100 ms 閉合一次。這種設(shè)計通過調(diào)整繼電器吸合的時間間隔,提高了報警的緊迫性,使船員能更直觀地感知到距離的變化。
在海上,由于海浪、噪聲等干擾因素,激光測距傳感器的數(shù)據(jù)采集會受到一定影響,而數(shù)據(jù)采集的準確性直接關(guān)系到避碰方案的有效性。為了提高船舶測距的精確度,該設(shè)計采用了線性調(diào)頻激光測距算法對數(shù)據(jù)進行優(yōu)化處理,從而使采集到的數(shù)據(jù)更可靠和準確。
假設(shè)D為臨近船舶與自身船舶的距離,c為光速,N為光波信號在往返中得到的整周期數(shù),而Δσ為調(diào)制信號頻率。那么在測量過程中,只需要獲取N和Δσ的數(shù)據(jù),利用這些數(shù)據(jù)進行計算,以得出船舶之間的距離D,如公式(1)所示。
式中:t為測量時間。
線性調(diào)頻激光測距的原理與邁克爾遜干涉儀相似。在調(diào)頻激光信號產(chǎn)生模塊中,常用的驅(qū)動方式有鋸齒波或三角波2 種,用于驅(qū)動半導(dǎo)體激光器。雖然鋸齒波驅(qū)動的調(diào)頻激光信號抗干擾能力較強,但在系統(tǒng)靈敏度等方面卻不如三角波驅(qū)動的調(diào)頻激光信號[3]。綜合考慮海上環(huán)境的實際情況,筆者采用三角波信號的激光器進行測距驅(qū)動。
筆者采用線性調(diào)頻激光測距算法進行距離測量,如公式(2)所示。
式中:T為調(diào)制周期;B為調(diào)頻帶寬;fIF為差頻信號的頻率。
在相同的時間域中,通過對比發(fā)射信號與回波信號,發(fā)現(xiàn)差頻信號的頻率在特定時間范圍內(nèi)保持不變。如果調(diào)制周期和調(diào)頻帶寬都是已知的且保持不變,就能根據(jù)這些數(shù)據(jù)計算距離D。該方法顯著提高了測量精度,且抗干擾能力較強。
線性調(diào)頻激光測距技術(shù)的固有分辨率如公式(3)所示。
式中:ΔR為三角波調(diào)制信號的帶寬;B為三角波調(diào)制信號的帶寬;Δτd為延時td后的回波信號瞬時頻率。
由公式(3)可知,線性調(diào)頻激光測距技術(shù)的固有分辨率與三角波調(diào)制信號的帶寬之間存在反比關(guān)系,因此,增加調(diào)頻激光信號的調(diào)頻帶寬,可以提高距離分辨率[4]。與傳統(tǒng)的相位式激光測距相比,基于線性調(diào)頻的激光測距算法在測距精度方面具有明顯優(yōu)勢。
數(shù)據(jù)處理核心代碼如下:
while(1)
{
Status=vl53l0x_start_single_test(&vl53l0x_dev,&vl53l0x_data,buf); //執(zhí)行一次測量
if(Status==VL53L0X_ERROR_NONE)
printf("d: %4imm ",Distance_data);//打印測量距離
else
printf("Measurement is Error!!! ");
//delay_ms(100);
i++;
if(i>=10)
{
i=0;
LED0=!LED0;
}
}
本節(jié)將通過數(shù)值分析對比,進一步說明應(yīng)用線性調(diào)頻激光測距算法后的數(shù)據(jù)更具可靠性和穩(wěn)定性。運用線性調(diào)頻激光測距算法與運用相位式激光測距方式的數(shù)值分析對比見表2。
表2 應(yīng)用線性調(diào)頻激光測距算法的數(shù)值對比
經(jīng)過對上述數(shù)值的分析與對比,可以得出以下結(jié)論:在不采用線性調(diào)頻激光測距算法的情況下,測量距離越遠,測量數(shù)據(jù)的誤差越大。當(dāng)應(yīng)用線性調(diào)頻激光測距算法進行數(shù)據(jù)測量時,不僅數(shù)據(jù)波動幅度變小,而且其誤差也相對較小。由此可以推斷出,應(yīng)用線性調(diào)頻激光測距算法的數(shù)據(jù)測量的穩(wěn)定性與準確性更高。
隨著海上交通流量的日益增多和復(fù)雜的會遇態(tài)勢的頻繁出現(xiàn),航海技術(shù)的各方面都面臨著新的挑戰(zhàn),對海上安全避碰技術(shù)提出了更高的要求[5]。為了解決海上近距離避碰的問題,本文設(shè)計了一種用于港口碼頭的船舶避碰系統(tǒng),并對該系統(tǒng)進行了整體性描述。其中,重點介紹了線性調(diào)頻激光測距算法測距部分的原理,該算法顯著提高了測距精度,以獲取準確的距離信息,并根據(jù)評估結(jié)果判斷是否需要生成避碰方案,當(dāng)距離過近時對海上作業(yè)人員進行報警提示。