鐘 蕊, 安博文, 陳 維, 倪訓(xùn)鵬, 潘勝達(dá)
(1.上海海事大學(xué) 信息工程學(xué)院,上海 201306;2.浦東海事局危管防污中心,上海 200086)
船舶燃油燃燒排放的污染物主要包括硫氧化物、氮氧化物、碳氧化物和顆粒物,其中,硫氧化物和氮氧化物對(duì)大氣和人類的危害最嚴(yán)重。由于船舶安裝尾氣過濾裝置的情況較少,尾氣污染物隨風(fēng)飄向沿海與內(nèi)河港口城市,加重城市環(huán)境污染。我國(guó)交通部自2016年正式施行《珠三角、長(zhǎng)三角、環(huán)渤海(京津冀)水域船舶排放控制區(qū)實(shí)施方案》以來,不斷提高限制硫和氮排放的要求,擴(kuò)大排放控制區(qū)范圍?,F(xiàn)階段海事監(jiān)管部門的監(jiān)控手段多針對(duì)燃油,缺少對(duì)船舶尾氣的直接監(jiān)控。目前常用的船舶尾氣檢測(cè)方法主要有兩種,一是可遠(yuǎn)距離監(jiān)測(cè)的光學(xué)法,二是直接對(duì)尾氣進(jìn)行采樣檢測(cè)的嗅探法[1]。本文設(shè)計(jì)的尾氣排放監(jiān)測(cè)系統(tǒng)基于嗅探法,以吊艙的形式安裝在無(wú)人機(jī)上,具有靈活性高,易于維護(hù)的特點(diǎn)[2],對(duì)排放控制區(qū)內(nèi)的船舶進(jìn)行監(jiān)測(cè),為海事監(jiān)管部門提供港區(qū)船舶尾氣濃度數(shù)據(jù)。
船舶尾氣排放監(jiān)測(cè)系統(tǒng)主要是監(jiān)控港區(qū)在航船舶的尾氣濃度,通過無(wú)人機(jī)搭載吊艙進(jìn)行尾氣檢測(cè),吊艙主要由氣路模塊、傳感器組、主控單元構(gòu)成。
氣路模塊由進(jìn)氣管、過濾嘴、微型氣泵和排氣管構(gòu)成,其主要用來對(duì)尾氣進(jìn)行預(yù)處理,氣泵為傳感器模組提供尾氣傳輸動(dòng)力,傳感器模組實(shí)時(shí)采集尾氣中SO2和CO2體積分?jǐn)?shù)和溫濕度等數(shù)據(jù),數(shù)據(jù)經(jīng)主控單元分析整理后通過4 G網(wǎng)絡(luò)傳輸?shù)皆贫朔?wù)器。
系統(tǒng)軟件移植了FreeRTOS,它是一種開源、內(nèi)核精簡(jiǎn)、裁剪方便的實(shí)時(shí)操作系統(tǒng)[3],但其本身沒有提供文件管理功能,因此,同時(shí)也移植了一種開源小巧并且讀寫高效的文件管理系統(tǒng),即FATFS[4],使用FreeRTOS和FATFS作為系統(tǒng)軟件設(shè)計(jì)平臺(tái),確保吊艙系統(tǒng)的穩(wěn)定性和實(shí)時(shí)性。
主控芯片采用意法半導(dǎo)體公司的STM32f103RCT6微控制器(micro controller unit,MCU)[5],控制其他各個(gè)模塊的運(yùn)作:氣泵控制模塊通過調(diào)節(jié)輸出脈沖的占空比改變氣泵轉(zhuǎn)速,控制進(jìn)氣速度;數(shù)字量采集模塊完成兩路串口數(shù)據(jù)和一路I2C總線數(shù)據(jù)的接收,接收的信息包括SO2和CO2體積分?jǐn)?shù)以及溫濕度信息;GPS定位模塊負(fù)責(zé)采集工作狀態(tài)中吊艙的位置信息和時(shí)間信息;存儲(chǔ)模塊完成尾氣數(shù)據(jù)的備份操作;4 G通信模塊的功能是在吊艙工作過程中,實(shí)時(shí)將主控模塊整合好的數(shù)據(jù)發(fā)送到服務(wù)器。
電源模塊是吊艙結(jié)構(gòu)中最重要的模塊之一,其性能和穩(wěn)定性直接影響吊艙工作性能的優(yōu)劣。由于該系統(tǒng)中模塊較多,工作電壓需求不同且電壓差較大,如氣泵模塊需要同時(shí)用到24 V和5 V電壓,主控芯片需要用3.3 V電壓,4 G通信模塊需要用到3.9 V電壓,因此,電源模塊采用兩級(jí)降壓的方式設(shè)計(jì)。
具體降壓過程如下:吊艙系統(tǒng)的外部供電采用無(wú)人機(jī)提供的24 V電源,24 V電壓通過TPS5430電壓轉(zhuǎn)換模塊輸出7 V電壓;7 V電壓再分別通過AMS1117—5.0,AMS1117—3.3,MIC29302WU模塊輸出5,3.3,3.9 V電壓。
氣泵采用KLP04—320—24微型隔膜泵,其額定工作電壓為24 V,由無(wú)人機(jī)直接提供,負(fù)載電流為150 mA,氣體流量為(320±80)mL/min。主控芯片可以通過調(diào)節(jié)輸出脈沖占空比來控制氣泵流速,以滿足吊艙在不同工況下運(yùn)行時(shí)對(duì)氣體流量的不同需求。
吊艙系統(tǒng)需要完成對(duì)溫濕度信息、CO2和SO2體積分?jǐn)?shù)信息的接收與存儲(chǔ)。數(shù)字量采集模塊使用一路I2C總線和兩路UART總線,實(shí)現(xiàn)主控制器與外接傳感器之間的通信。溫濕度傳感器型號(hào)為SHT21,輸出采用標(biāo)準(zhǔn)的I2C格式,其濕度工作范圍為0 %~100 %RH,溫度工作范圍為-40~125 ℃,工作電壓范圍為2.1~3.6 V,功耗為3.2 μW。SO2和CO2傳感器的型號(hào)分別為SO2-B4和CO2-IRC-A1,檢測(cè)原理分別為電化學(xué)[6]和非色散紅外[7]。主控芯片通過串口USART3和UART4與其通信,傳感器參數(shù)如表1所示。
表1 氣體傳感器參數(shù)
定位模塊采用L76C模塊,支持多衛(wèi)星系統(tǒng)聯(lián)合定位,包括GPS、BeiDou、GLONASS和Gallileo等,性能穩(wěn)定,定位精度小于等于2.5 m CEP,采樣頻率最高達(dá)10 Hz。該模塊提供UART和I2C兩種數(shù)據(jù)傳輸接口,主控芯片通過串口UART5與其通信,獲取吊艙經(jīng)緯度和時(shí)間信息。GPS定位模塊電路如圖1所示。
圖1 GPS定位模塊電路
4 G通信采用EC20模塊,可向下兼容2 G/3 G,支持LTE-FDD,LET-TDD,WCDMA,TD-SCDMA,GSM等多種網(wǎng)絡(luò)數(shù)據(jù)連接,同時(shí)內(nèi)置了豐富的網(wǎng)絡(luò)協(xié)議和多個(gè)工業(yè)標(biāo)準(zhǔn)接口,主控芯片通過串口USART1與該模塊進(jìn)行AT命令傳送和數(shù)據(jù)傳輸,向數(shù)據(jù)庫(kù)端發(fā)送尾氣數(shù)據(jù)采用TCP網(wǎng)絡(luò)協(xié)議。通信模塊接口電路如圖2所示,其中虛線部分省略了具體的電路。
圖2 4 G通信模塊電路示意
考慮到港區(qū)海面上4 G信號(hào)未覆蓋或信號(hào)弱的情況,難以做到數(shù)據(jù)實(shí)時(shí)傳輸?shù)綌?shù)據(jù)庫(kù),該系統(tǒng)添加了存儲(chǔ)模塊,將所有檢測(cè)數(shù)據(jù)備份到存儲(chǔ)設(shè)備。STM32F103控制器支持兩種SD卡操作模式:SDIO模式和SPI模式。SDIO方式數(shù)據(jù)傳輸速度較快,由于需要存儲(chǔ)的數(shù)據(jù)量不大,因此采用SPI模式,此模式對(duì)硬件接口兼容性較好,且容易編程實(shí)現(xiàn)。
吊艙主控制器需要完成多只傳感器的數(shù)據(jù)采集、GPS定位數(shù)據(jù)獲取、數(shù)據(jù)整合存儲(chǔ)、數(shù)據(jù)傳輸、氣泵控制等多個(gè)工作。系統(tǒng)的軟件設(shè)計(jì)移植了FreeRTOS和FATFS,以滿足系統(tǒng)實(shí)時(shí)性和穩(wěn)定性的要求,將主控制器需要完成的工作劃分成多個(gè)獨(dú)立的任務(wù),由調(diào)度器完成多任務(wù)運(yùn)行調(diào)度,使用消息隊(duì)列完成任務(wù)間的數(shù)據(jù)傳遞。系統(tǒng)軟件設(shè)計(jì)如圖3所示,圖中步驟(1)~步驟(4)為系統(tǒng)軟件主函數(shù)運(yùn)行流程。
圖3 系統(tǒng)軟件設(shè)計(jì)框圖
首先,需要對(duì)保存吊艙配置信息的Flash區(qū)進(jìn)行初始化,包括吊艙編號(hào)、出廠日期、數(shù)據(jù)上報(bào)速率以及氣泵電機(jī)轉(zhuǎn)速等信息。然后,初始化5個(gè)串口的配置,串口分別用來和以下模塊進(jìn)行數(shù)據(jù)傳輸:EC20通信模塊、調(diào)試接口、SO2氣體傳感器接口、CO2氣體傳感器接口、GPS定位模塊。接著,初始化主控芯片與各模塊相連的總線接口或GPIO口的配置,包括 GPS模塊復(fù)位端口、溫濕度傳感器I2C總線接口、用于氣泵調(diào)速的硬件定時(shí)器端口以及通信模塊的電源控制端口等。最后,從Flash區(qū)讀取數(shù)據(jù)上報(bào)速率和氣泵電機(jī)轉(zhuǎn)速信息并進(jìn)行初始化。
FreeRTOS提供的隊(duì)列主要用來完成任務(wù)與任務(wù)之間、任務(wù)與中斷之間的消息傳遞,系統(tǒng)軟件設(shè)計(jì)了三個(gè)消息隊(duì)列,分別用來存儲(chǔ)以下內(nèi)容:1) 發(fā)送消息隊(duì)列,隊(duì)列中的消息需要被通信模塊發(fā)送到服務(wù)器端;2) 存儲(chǔ)消息隊(duì)列,隊(duì)列中的消息需要被存儲(chǔ)到SD卡中;3) 接收消息隊(duì)列,隊(duì)列中的消息由通信模塊接收,這些消息與吊艙配置相關(guān),如數(shù)據(jù)上報(bào)速率修改、氣泵電機(jī)轉(zhuǎn)速修改、吊艙編號(hào)修改等。
根據(jù)吊艙的功能要求系統(tǒng)軟件建立了8個(gè)主要任務(wù):1)初始化主任務(wù):該任務(wù)首先初始化EC20通信模塊的上線功能,與服務(wù)器建立TCP連接,并將吊艙配置信息和網(wǎng)絡(luò)信息存入發(fā)送消息隊(duì)列等待通信模塊發(fā)送任務(wù)處理;接著創(chuàng)建其他任務(wù),將自身掛起。2)通信模塊接收任務(wù):主要用來接收來自服務(wù)器的下發(fā)指令,進(jìn)行解碼并把不同的報(bào)文存入接收消息隊(duì)列中,等待吊艙配置任務(wù)處理。3)通信模塊發(fā)送任務(wù):從發(fā)送消息隊(duì)列中讀取消息,即整合后的尾氣濃度等業(yè)務(wù)數(shù)據(jù),接著根據(jù)服務(wù)器接收?qǐng)?bào)文協(xié)議,為業(yè)務(wù)數(shù)據(jù)加上固定報(bào)文頭部,最后進(jìn)行發(fā)送。4)SD卡存儲(chǔ)任務(wù):從存儲(chǔ)消息隊(duì)列中讀取數(shù)據(jù),存入SD卡中。5)GPS數(shù)據(jù)采集任務(wù):采集GPS數(shù)據(jù),包括經(jīng)緯度、海拔高度和時(shí)間信息,接著對(duì)數(shù)據(jù)進(jìn)行校驗(yàn)、解析和提取操作,并將數(shù)據(jù)暫存在結(jié)構(gòu)體內(nèi)等待軟件定時(shí)器任務(wù)讀取。6)傳感器數(shù)據(jù)采集任務(wù):按照規(guī)定采樣頻率采集溫濕度、CO2和SO2氣體體積分?jǐn)?shù)數(shù)據(jù),并將數(shù)據(jù)暫存在結(jié)構(gòu)體內(nèi)等待定時(shí)器任務(wù)讀取,同時(shí)更新采樣速率。7)軟件定時(shí)器任務(wù):軟件定時(shí)器任務(wù)包含兩個(gè)定時(shí)任務(wù),一個(gè)是定時(shí)向服務(wù)器端發(fā)送心跳指令保持與服務(wù)器的連接;另一個(gè)是定時(shí)讀取GPS數(shù)據(jù)和各傳感器數(shù)據(jù),將數(shù)據(jù)分別按照發(fā)送消息隊(duì)列與存儲(chǔ)消息隊(duì)列的數(shù)據(jù)格式整合處理并存入相應(yīng)隊(duì)列中,等待通信模塊發(fā)送任務(wù)和SD卡存儲(chǔ)任務(wù)處理。8)吊艙配置任務(wù):從接收消息隊(duì)列中讀取報(bào)文,這些報(bào)文可能是設(shè)置數(shù)據(jù)上傳頻率、調(diào)整氣泵轉(zhuǎn)速、重啟等命令,根據(jù)提取出的報(bào)文類別分別做出相應(yīng)配置并將配置數(shù)據(jù)寫入到Flash中。
整機(jī)安裝完成后,在實(shí)驗(yàn)室對(duì)吊艙的主要功能進(jìn)行了測(cè)試,包括傳感器和GPS數(shù)據(jù)采集測(cè)試、數(shù)據(jù)發(fā)送測(cè)試以及吊艙配置修改測(cè)試,測(cè)試驗(yàn)證了吊艙功能完整性以及系統(tǒng)的穩(wěn)定性。系統(tǒng)測(cè)試完成之后,在外高橋碼頭對(duì)靠港船只和在航船只開展了實(shí)際尾氣排放的檢測(cè)實(shí)驗(yàn),無(wú)人機(jī)搭載吊艙實(shí)際檢測(cè)如圖4所示。
圖4 無(wú)人機(jī)搭載吊艙實(shí)際檢測(cè)
使用吊艙對(duì)多艘船舶進(jìn)行了實(shí)際檢測(cè),其中兩艘船舶的尾氣濃度數(shù)據(jù)如圖5所示,結(jié)合圖中氣體體積分?jǐn)?shù)變化情況可知,無(wú)人機(jī)搭載吊艙檢測(cè)尾氣的過程是一個(gè)不斷進(jìn)出尾氣羽流的檢測(cè)過程,因此會(huì)出現(xiàn)多個(gè)體積分?jǐn)?shù)峰值。
圖5 實(shí)測(cè)SO2與CO2的體積分?jǐn)?shù)數(shù)據(jù)
本文設(shè)計(jì)了一種船舶尾氣排放遠(yuǎn)程監(jiān)測(cè)系統(tǒng),其結(jié)合無(wú)人機(jī)具有較高的靈活性,可在工況復(fù)雜的尾氣羽流中近距離檢測(cè),使用多個(gè)傳感器實(shí)時(shí)監(jiān)測(cè)尾氣濃度數(shù)據(jù),并通過4 G網(wǎng)絡(luò)將尾氣數(shù)據(jù)發(fā)送到云端服務(wù)器,便于監(jiān)管人員監(jiān)控船舶的尾氣排放情況。實(shí)驗(yàn)證明:該監(jiān)測(cè)系統(tǒng)具有檢測(cè)精度高、運(yùn)行穩(wěn)定和實(shí)時(shí)性強(qiáng)的特點(diǎn)。