孫志剛,高萌萌,王亞寧,張 敏,王國濤,2
(1.黑龍江大學(xué) 電子工程學(xué)院,哈爾濱 150080; 2.哈爾濱工業(yè)大學(xué) 電器與電子可靠性研究所,哈爾濱 150001;3.蘇州科技大學(xué) 地理科學(xué)與測繪工程學(xué)院,江蘇 蘇州 215009)
隨著經(jīng)濟(jì)社會(huì)的發(fā)展,經(jīng)濟(jì)社會(huì)對(duì)畜牧肉類的需求也持續(xù)增長。在肉類產(chǎn)業(yè)和結(jié)構(gòu)方面,肉雞占有較大比重。中國作為全球第二大禽肉生產(chǎn)國,2020年肉雞年產(chǎn)量為1 485萬噸,較2019年產(chǎn)出的1 375萬噸大幅增長8%。相比世界上其他的肉雞主產(chǎn)國,我國是肉雞生產(chǎn)增長數(shù)量和增長率最大的國家。雖然我國的肉雞養(yǎng)殖生產(chǎn)規(guī)模較大,但是自動(dòng)化水平還需要不斷提升。目前,國內(nèi)肉雞養(yǎng)殖場主要依靠人工觀察來對(duì)肉雞的生活環(huán)境和健康狀況進(jìn)行評(píng)判,養(yǎng)殖人員經(jīng)驗(yàn)水平的不同、觀察時(shí)間的偏差不可避免地引起誤判和漏檢等情況。所以,僅僅依靠人工觀察的方法進(jìn)行檢測,人工成本高且檢測效率較低。因此,實(shí)現(xiàn)肉雞養(yǎng)殖場自動(dòng)化檢測是非常有意義的。隨著檢測理論和技術(shù)的發(fā)展,高精度傳感器和集成通信模塊的出現(xiàn),再加上其高效率、低成本的優(yōu)點(diǎn),使得在肉雞養(yǎng)殖場內(nèi)搭建小型監(jiān)測系統(tǒng)對(duì)肉雞生活環(huán)境和健康情況實(shí)現(xiàn)自動(dòng)監(jiān)控成為了可能。
在區(qū)域范圍內(nèi)對(duì)動(dòng)植物的生長或環(huán)境狀況進(jìn)行參數(shù)采集或狀態(tài)監(jiān)測,可以采用單片機(jī)來設(shè)計(jì)微控制系統(tǒng),通過控制多種類型的精密傳感器獲得所需的監(jiān)測信息,并借助于WiFi、4G、ZigBee、藍(lán)牙、NB-IoT等無線傳輸技術(shù)進(jìn)一步將監(jiān)測信息發(fā)送至管理平臺(tái),管理人員在平臺(tái)端對(duì)數(shù)據(jù)進(jìn)一步分析或存儲(chǔ)。國內(nèi)外很多學(xué)者對(duì)此進(jìn)行了深入研究,如文獻(xiàn)[3]采用STM32微控制器和多個(gè)功能傳感器來獲取牛舍當(dāng)前的溫度、濕度、光照、有害氣體濃度等環(huán)境參數(shù),并通過ZigBee網(wǎng)絡(luò)將上述參數(shù)及時(shí)傳輸?shù)竭h(yuǎn)程PC機(jī)服務(wù)器上,實(shí)現(xiàn)了對(duì)牛舍環(huán)境的遠(yuǎn)程無線實(shí)時(shí)監(jiān)測。文獻(xiàn)[4]根據(jù)豬用自動(dòng)飲水碗的結(jié)構(gòu)和飲水時(shí)的場景,設(shè)計(jì)了集水流量傳感器、RFID閱讀器和ZigBee模塊于一體的無線監(jiān)控節(jié)點(diǎn),并開發(fā)了在豬只飲水的同時(shí)自動(dòng)進(jìn)行體溫測量的監(jiān)測系統(tǒng),該系統(tǒng)可以滿足集中式養(yǎng)豬場的精細(xì)化管理要求。文獻(xiàn)[5]設(shè)計(jì)了基于IPSO優(yōu)化BP神經(jīng)網(wǎng)絡(luò)模型的有害氣體精確監(jiān)測系統(tǒng),通過選用無線ZigBee模塊、傳感器模塊和STM32模塊,搭建了蛋雞舍各點(diǎn)數(shù)據(jù)采集硬件平臺(tái),并利用GPRS遠(yuǎn)程通信模塊將平臺(tái)采集到的數(shù)據(jù)傳輸至服務(wù)器,同時(shí)開發(fā)手機(jī)APP軟件實(shí)現(xiàn)對(duì)有害氣體的實(shí)時(shí)監(jiān)測。文獻(xiàn)[6]采用Arduino uno為微控制器,控制DHT22傳感器采集養(yǎng)雞籠內(nèi)的溫濕度信息,并協(xié)調(diào)DS3231 RTC模塊和電機(jī)伺服器實(shí)現(xiàn)籠內(nèi)自動(dòng)化定時(shí)喂食和實(shí)時(shí)控溫。文獻(xiàn)[7]開發(fā)了一套用于生豬生長的遠(yuǎn)程監(jiān)控系統(tǒng),該系統(tǒng)將收集生豬的體重和飼料攝入量等數(shù)據(jù),通過無線通信模塊實(shí)時(shí)傳輸?shù)竭h(yuǎn)程服務(wù)器,服務(wù)器端由計(jì)算機(jī)處理數(shù)據(jù)來生成各種報(bào)告,并自動(dòng)繪制生豬的生長性能曲線。文獻(xiàn)[8]設(shè)計(jì)了一種無線傳感器網(wǎng)絡(luò)技術(shù),該技術(shù)可以監(jiān)控家禽飼養(yǎng)籠中的溫濕度條件。系統(tǒng)由3個(gè)傳感器節(jié)點(diǎn)和一個(gè)星形拓?fù)涞膮f(xié)調(diào)器節(jié)點(diǎn)組成。I.A.Ashari等人設(shè)計(jì)了一個(gè)在線監(jiān)控系統(tǒng)來實(shí)時(shí)檢測農(nóng)場環(huán)境中氨氣的濃度狀況,通過建立一個(gè)無線網(wǎng)絡(luò)系統(tǒng),將實(shí)時(shí)監(jiān)測的氨氣濃度信息應(yīng)用Internet連接傳輸?shù)絎eb服務(wù)器,并提出了一種反距離權(quán)重插值法來精確計(jì)算氨氣的濃度。
本研究在現(xiàn)有的基礎(chǔ)上,設(shè)計(jì)了一套基于無線傳輸技術(shù)的肉雞養(yǎng)殖場音頻采集系統(tǒng),系統(tǒng)包括采集終端、無線通信模塊和遠(yuǎn)程服務(wù)器三部分。其中,采集終端用于放置在肉雞養(yǎng)殖場內(nèi),定時(shí)或?qū)崟r(shí)對(duì)養(yǎng)殖場內(nèi)的肉雞聲音信號(hào)(音頻信號(hào))進(jìn)行采集,并添加濾波算法,從而達(dá)到采集高質(zhì)量音頻信號(hào)的目的。據(jù)養(yǎng)殖場內(nèi)是否事先覆蓋局域網(wǎng),無線通信模塊具體包含GSM/GPRS通信模塊和WiFi通信模塊,用于建立采集終端與遠(yuǎn)程服務(wù)器之間的Socket通信連接,將采集的音頻信號(hào)由采集終端發(fā)送至遠(yuǎn)程服務(wù)器。遠(yuǎn)程服務(wù)器接收到信號(hào)后,在外存儲(chǔ)器中對(duì)其進(jìn)行存儲(chǔ),以便管理人員后續(xù)對(duì)該信號(hào)進(jìn)一步處理。此外,該系統(tǒng)在無線通信模塊工作異常、網(wǎng)絡(luò)異常等遠(yuǎn)程傳輸異常情況下,提供本地存儲(chǔ)的功能,采集終端采集的音頻信號(hào)會(huì)直接存儲(chǔ)在SD卡存儲(chǔ)模塊內(nèi),管理人員通過移動(dòng)拷貝的方式存儲(chǔ)到遠(yuǎn)程服務(wù)器的外存儲(chǔ)器中,進(jìn)行集中統(tǒng)一管理。該研究是筆者參與的某市廳級(jí)項(xiàng)目中一部分,項(xiàng)目最終是從本系統(tǒng)采集的一段音頻信號(hào)中識(shí)別出肉雞咳嗽聲與鳴叫聲的具體個(gè)數(shù)和差值比例,進(jìn)而得出該采集終端所在區(qū)域范圍內(nèi)肉雞的健康狀態(tài),實(shí)現(xiàn)對(duì)大規(guī)模肉雞養(yǎng)殖場內(nèi)肉雞健康狀態(tài)的有效監(jiān)測。本研究的成果是該項(xiàng)目有效開展的基礎(chǔ),因而具有極重要的實(shí)際意義。同時(shí),該系統(tǒng)可移植性、拓展性強(qiáng),可以推廣應(yīng)用于其他畜牧類動(dòng)物養(yǎng)殖廠的監(jiān)測,具有較高的應(yīng)用價(jià)值。
本研究提出的基于無線傳輸技術(shù)的肉雞養(yǎng)殖場音頻采集系統(tǒng),主要由采集終端、無線通信模塊和遠(yuǎn)程服務(wù)器三部分組成,涵蓋物聯(lián)網(wǎng)層面的感知層、傳輸層與應(yīng)用層。無線通信模塊作為采集終端與遠(yuǎn)程服務(wù)器之間的通信媒介,負(fù)責(zé)將采集終端采集的音頻信號(hào)高效準(zhǔn)確的發(fā)送至遠(yuǎn)程服務(wù)器。無線通信模塊包括可選擇的GSM/GPRS通信模塊與WiFi通信模塊,可根據(jù)養(yǎng)殖場內(nèi)是否事先覆蓋局域網(wǎng)進(jìn)行選擇,由此搭建的系統(tǒng)架構(gòu)如圖1、圖2所示。
如圖1所示,如果肉雞養(yǎng)殖場內(nèi)未事先覆蓋局域網(wǎng),則選擇GSM/GPRS通信模塊建立采集終端與遠(yuǎn)程服務(wù)器之間的Socket通信連接,GSM/GPRS通信模塊在硬件層面通過GPIO口與采集終端的微控制器相連接,在軟件程序中通過TCP/IP的套接字完成采集終端與遠(yuǎn)程服務(wù)器之間的Socket通信連接。采集終端定時(shí)或?qū)崟r(shí)采集的一段音頻信號(hào)會(huì)編碼成一串字符流信息,微控制器對(duì)數(shù)字式的字符流信息進(jìn)行濾波處理,并將處理后的字符流信息通過串口發(fā)送至GSM/GPRS通信模塊。GSM/GPRS通信模塊根據(jù)遠(yuǎn)程服務(wù)器的IP地址和端口號(hào),將該串字符流信息經(jīng)最近的通信基站接入移動(dòng)網(wǎng)絡(luò),最終發(fā)送到指定的遠(yuǎn)程服務(wù)器,運(yùn)行在遠(yuǎn)程服務(wù)器上的上位機(jī)軟件會(huì)將字符流信息反向解碼為音頻信號(hào)的文件格式存儲(chǔ)到外存儲(chǔ)器中,用于后續(xù)的分析處理。同時(shí),采集終端可以外接SD卡存儲(chǔ)模塊,在GSM/GPRS通信模塊工作異?;蚓W(wǎng)絡(luò)連接異常的情況下,系統(tǒng)提供音頻信號(hào)的本地存儲(chǔ)功能,此時(shí)采集終端定時(shí)或?qū)崟r(shí)采集的一段音頻信號(hào)先會(huì)編碼成一串字符流信息,經(jīng)過濾波處理后再由微控制器解碼為音頻信號(hào)的文件存儲(chǔ)在SD卡存儲(chǔ)模塊中,管理人員通過定期插拔的方式循環(huán)更換SD卡存儲(chǔ)模塊,防止內(nèi)存溢出或存儲(chǔ)覆蓋,拔出的SD卡可以通過外接存儲(chǔ)器的方式連入遠(yuǎn)程服務(wù)器,將前期存儲(chǔ)的音頻信號(hào)及時(shí)拷貝到遠(yuǎn)程服務(wù)器的外存儲(chǔ)器中,該過程作為遠(yuǎn)程傳輸異常情況下的一種補(bǔ)救措施。
圖1 基于GSM/GPRS通信模塊的系統(tǒng)架構(gòu)圖
如圖2所示,如果肉雞養(yǎng)殖場內(nèi)已事先覆蓋局域網(wǎng),則選擇WiFi通信模塊建立采集終端與遠(yuǎn)程服務(wù)器之間的連接。兩者在硬件層面的連接方法一致,在軟件程序中也建立了Socket通信連接。采集終端定時(shí)或?qū)崟r(shí)采集的一段音頻信號(hào),同樣會(huì)被編碼成一串字符流信息和進(jìn)行濾波處理,并通過串口發(fā)送至WiFi通信模塊。WiFi通信模塊根據(jù)遠(yuǎn)程服務(wù)器的IP地址和端口號(hào),將上述字符流信息發(fā)送到遠(yuǎn)程服務(wù)器。該情況下,外接的SD卡存儲(chǔ)模塊會(huì)在WiFi模塊工作異?;蚓钟蚓W(wǎng)路異常的情況下,實(shí)現(xiàn)本地存儲(chǔ)音頻文件,通過定期移動(dòng)拷貝的方式轉(zhuǎn)存到遠(yuǎn)程服務(wù)器的外存儲(chǔ)器中。
圖2 基于WiFi通信模塊的系統(tǒng)架構(gòu)圖
系統(tǒng)硬件設(shè)計(jì)部分主要包括采集終端與無線通信模塊,它們?cè)谟布用嫔鲜峭ㄟ^串口連接在一起的,其整體的硬件設(shè)計(jì)效果影響采集系統(tǒng)的可靠和高效運(yùn)行。采集終端的硬件設(shè)計(jì)包括微控制器、音頻采集模塊、按鍵模塊、SD卡存儲(chǔ)模塊、液晶屏和其他功能模塊。音頻采集模塊通過GPIO引腳與微控制器相連接,用于完成養(yǎng)殖場內(nèi)的音頻采集;按鍵模塊通過GPIO引腳與微控制器相連接,實(shí)現(xiàn)設(shè)置定時(shí)或?qū)崟r(shí)音頻采集的時(shí)長和頻率;SD卡存儲(chǔ)模塊通過卡槽接口與微控制器相連接,在遠(yuǎn)程傳輸異常的情況下及時(shí)存儲(chǔ)音頻信號(hào);液晶屏通過GPIO引腳與微控制器相連接,提供界面顯示,方便工作人員設(shè)置定時(shí)或?qū)崟r(shí)音頻采集信息;其他功能模塊包括電源模塊、晶振回路、串口模塊等,屬于微控制器的外圍電路,整體形成基本的最小控制系統(tǒng),本研究對(duì)此不進(jìn)行贅述。無線通信模塊的硬件設(shè)計(jì)包括可選擇的GSM/GPRS通信模塊和WiFi通信模塊,它們都是通過串口及GPIO引腳與微控制器相連接,用于建立采集終端與遠(yuǎn)程服務(wù)器之間的Socket通信連接,并將采集終端定時(shí)或?qū)崟r(shí)采集的音頻信號(hào)進(jìn)行及時(shí)發(fā)送。其中,采集終端與無線通信模塊組成的系統(tǒng)硬件結(jié)構(gòu)見圖3。
圖3 系統(tǒng)硬件結(jié)構(gòu)圖
微控制器選用STM32F103RCT6型號(hào)的芯片,其與電源模塊、晶振回路、串口模塊等其他功能模塊形成微控制器(系統(tǒng)),電路原理見圖4。芯片的微控制器實(shí)際工作時(shí)的頻率可達(dá)72 MHz,并且具有256 k字節(jié)的系統(tǒng)可編程Flash存儲(chǔ)器,以及48 k字節(jié)的RAM空間,具備SPI、CAN、IC、UART等通信方式的外設(shè)功能,最高配備9個(gè)通信接口。在本研究中,微控制器需要實(shí)現(xiàn)的功能包括:定時(shí)或?qū)崟r(shí)控制音頻采集模塊完成音頻信號(hào)的采集、對(duì)音頻信號(hào)進(jìn)行濾波處理、將處理后的高信噪比的音頻信號(hào)通過串口發(fā)送至無線通信模塊、控制無線通信模塊與遠(yuǎn)程服務(wù)器建立Socket通信連接、配備按鍵模塊設(shè)置定時(shí)或?qū)崟r(shí)音頻采集的時(shí)長和頻率、本地音頻信號(hào)的存儲(chǔ)等。本研究選用的微控制器完全滿足上述功能實(shí)現(xiàn)的性能要求。
圖4 微控制器電路原理圖
圖5 音頻采集模塊電路原理圖
音頻采集模塊選用VS1053B型號(hào)的芯片,其與咪頭、穩(wěn)壓芯片、電源接口等基本的外設(shè)形成音頻采集模塊。在本研究中,該模塊通過SPI通信接口與微控制器相連接,支持MP3、WAV、OGG、WMA等音頻格式的編解碼。音頻采集模塊的DAC分辨率為18位,總諧波失真(THD)為0.07%,信噪比為94 dB,滿足本研究中對(duì)肉雞養(yǎng)殖場的高保真音頻采集需求。音頻采集模塊的電路原理見圖5。本研究中,音頻采集模塊與微控制器通過7個(gè)GPIO引腳進(jìn)行連接,如圖中紅線標(biāo)注所示,分別是:RST、XCS、XDCS、SI、SO、SCK和DREQ。其中,RST是音頻采集模塊的復(fù)位控制線,低電平有效。DREQ是數(shù)據(jù)請(qǐng)求線,用于通知微控制器音頻采集模塊是否準(zhǔn)備好可以開始接收數(shù)據(jù)。SI(圖中MOSI)、SO(圖中MISO)SCK則是音頻采集模塊的SPI通信接口,它們?cè)赬CS和XDCS的控制下執(zhí)行不同的數(shù)據(jù)通信。最終,音頻采集模塊定時(shí)或?qū)崟r(shí)采集的音頻信號(hào)通過SPI通信接口傳輸至微控制器進(jìn)行后續(xù)的濾波處理。
GSM/GPRS通信模塊選用SIM800C型號(hào)的模塊,模塊板載5 V至24 V的直流電源輸入接口、Micro SIM卡座、RS232串口、天線等外設(shè),其電路原理見圖6。此外,該模塊工作在4個(gè)頻段,分別是:850 MHz、900 MHz、1 800 MHz、1 900 MHz,可以在低功耗狀態(tài)下實(shí)現(xiàn)語音、SMS、MMS、藍(lán)牙數(shù)據(jù)信息的傳輸。在本研究中,微控制器控制GSM/GPRS模塊經(jīng)最近的基站與遠(yuǎn)程服務(wù)器建立Socket通信連接,從而建立兩者之間的數(shù)據(jù)通信鏈路,這樣,音頻采集模塊通過串口發(fā)送至微控制器的字符流形式的音頻信號(hào),再次通過串口發(fā)送至GSM/GPRS通信模塊的內(nèi)部緩存中,最終通過SEND_BUFF接口函數(shù)發(fā)送至遠(yuǎn)程服務(wù)器。
圖6 GSM/GPRS通信模塊電路原理圖
WiFi通信模塊選用ESP8266型號(hào)的芯片,其電路原理見圖7。該模塊通過串口與微控制器進(jìn)行數(shù)據(jù)通信,模塊內(nèi)置TCP/IP協(xié)議棧,能夠?qū)崿F(xiàn)串口與WiFi之間的轉(zhuǎn)換。具體的,該模塊支持串口轉(zhuǎn)WiFi STA、串口轉(zhuǎn)WiFi AP、串口轉(zhuǎn)WiFi STA+AP 3種模式,可以快速構(gòu)建串口-WiFi的數(shù)據(jù)傳輸方案。此外,該模塊符合多個(gè)無線傳輸標(biāo)準(zhǔn),工作在2.4 GHz頻率范圍,完全滿足本研究對(duì)音頻信號(hào)傳輸需求。在本研究中,WiFi通信模塊與遠(yuǎn)程服務(wù)器接入同一局域網(wǎng),并工作于STA模式,從而建立兩者之間的Socket通信連接,借助串口-WiFi的數(shù)據(jù)傳輸方案將字符流形式的音頻信號(hào)發(fā)送至遠(yuǎn)程服務(wù)器。
系統(tǒng)的軟件設(shè)計(jì)主要包括采集終端、無線通信模塊以及遠(yuǎn)程服務(wù)器三部分。
采集終端軟件設(shè)計(jì)部分包括音頻采集流程和譜減法濾波兩部分。在音頻采集流程部分,本研究主要介紹系統(tǒng)上電后采集終端的默認(rèn)工作流程,介紹其在定時(shí)、實(shí)時(shí)、本地音頻存儲(chǔ)模式下的工作流程。在譜減法濾波部分,本研究主要介紹通過帶通與譜減法濾波的方式對(duì)字符流形式的音頻信號(hào)進(jìn)行降噪處理,達(dá)到去除背景噪聲、提高信噪比的目的。
3.1.1 音頻采集工作流程
圖7 WiFi通信模塊電路原理圖
采集終端音頻采集工作流程見圖8。系統(tǒng)上電工作后,默認(rèn)處于定時(shí)音頻采集狀態(tài),即定時(shí)工作模式,微控制器會(huì)讀取RAM中存儲(chǔ)的上次掉電前設(shè)置的定時(shí)工作信息,如:每整點(diǎn)進(jìn)行一次2分鐘的音頻采集、以1小時(shí)為時(shí)間間隔進(jìn)行一次1分鐘30秒的音頻采集等,并控制無線傳輸模塊與遠(yuǎn)程服務(wù)器建立Socket通信連接,同時(shí)加載本地SD卡存儲(chǔ)模塊。微控制器讀取設(shè)置的定時(shí)工作信息后,實(shí)時(shí)判斷是否到達(dá)設(shè)置的時(shí)間節(jié)點(diǎn),若到達(dá)時(shí)間節(jié)點(diǎn),則控制音頻采集模塊按照時(shí)長要求完成一次音頻采集,最終通過串口發(fā)送至遠(yuǎn)程服務(wù)器。若未到達(dá)時(shí)間節(jié)點(diǎn),則繼續(xù)進(jìn)行判斷。需要說明的是,在無線通信模塊與遠(yuǎn)程服務(wù)器建立Socket通信連接后,微控制器可以實(shí)時(shí)獲取當(dāng)前的網(wǎng)絡(luò)時(shí)間,其中,GSM/GPRS通信模塊可以通過GPRS網(wǎng)絡(luò)獲取時(shí)間,WiFi通信模塊可以通過接入局域網(wǎng)獲取時(shí)間,由此微控制器完成是否到達(dá)時(shí)間節(jié)點(diǎn)及采集時(shí)長的判斷。特別需要指出的是,系統(tǒng)初始化上電工作時(shí),即第一次上電工作,此時(shí)不存在上次掉電前設(shè)置的定時(shí)工作信息,系統(tǒng)會(huì)提示工作人員現(xiàn)場通過按鍵設(shè)置定時(shí)工作信息,微控制器同步保存該信息后,據(jù)此進(jìn)行正常工作。
圖8 音頻采集終端工作流程圖
在系統(tǒng)正常工作過程中,工作人員可以隨時(shí)通過按鍵更改定時(shí)工作信息,如重新調(diào)整為在某個(gè)時(shí)間節(jié)點(diǎn)進(jìn)行一次規(guī)定時(shí)長的音頻采集,或設(shè)置以多長的時(shí)間為間隔進(jìn)行一次規(guī)定時(shí)長的音頻采集等。設(shè)置完后,微控制器將最新的定時(shí)工作信息更新存儲(chǔ)到RAM中,并按照該設(shè)置進(jìn)行正常工作。
此外,在系統(tǒng)正常工作過程中,工作人員可以通過按鍵使系統(tǒng)工作于實(shí)時(shí)音頻采集狀態(tài),即實(shí)時(shí)工作模式。在工作人員按下按鍵開啟中斷事件時(shí),微控制器控制采集終端開始音頻采集,當(dāng)工作人員再次按下按鍵關(guān)閉中斷事件時(shí),控制采集終端停止音頻采集,最終將采集的這段音頻信號(hào)進(jìn)行遠(yuǎn)程發(fā)送或存儲(chǔ)到SD卡存儲(chǔ)模塊中。之后,系統(tǒng)重新切換至定時(shí)工作模式,直至工作人員再次按下按鍵開啟中斷,系統(tǒng)切換至實(shí)時(shí)工作模式。
在無線通信模塊工作異常、網(wǎng)絡(luò)異常等遠(yuǎn)程傳輸異常的情況下,采集終端工作于本地音頻存儲(chǔ)模式。微控制器及時(shí)捕捉到無線通信模塊的網(wǎng)絡(luò)異常信息,暫停音頻采集,等待工作人員進(jìn)行設(shè)置。工作人員通過按鍵設(shè)置新的定時(shí)工作信息,微控制器根據(jù)新設(shè)置開始正常工作,最終將采集的音頻信號(hào)保存至SD卡存儲(chǔ)模塊中。需要說明的是,因?yàn)榇藭r(shí)不能獲取網(wǎng)絡(luò)時(shí)間,工作人員設(shè)置的定時(shí)工作信息只能是以多長的時(shí)間為間隔進(jìn)行一次規(guī)定時(shí)長的音頻采集,對(duì)于設(shè)置的時(shí)間間隔和采集時(shí)長,微控制器需要開啟本地計(jì)時(shí)器與定時(shí)器進(jìn)行實(shí)時(shí)判斷,該情況下工作人員的定時(shí)工作設(shè)置不更新到微控制器的RAM中。在本地音頻存儲(chǔ)模式下,工作人員依然可以隨時(shí)通過按鍵更改設(shè)置定時(shí)工作信息,設(shè)置完后,微控制器將根據(jù)最新的定時(shí)工作信息進(jìn)行正常工作,重新設(shè)置的定時(shí)工作信息同樣不會(huì)更新到微控制器的RAM中。同樣的,在遠(yuǎn)程傳輸異常的情況下,工作人員通過按鍵還可以切換系統(tǒng)工作于實(shí)時(shí)工作模式,同樣通過開啟或關(guān)閉中斷進(jìn)行,并將采集的音頻信號(hào)保存至SD卡存儲(chǔ)模塊中。在遠(yuǎn)程傳輸恢復(fù)正常后,系統(tǒng)會(huì)主動(dòng)切換回此前的定時(shí)工作模式。
3.1.2 濾波算法處理
對(duì)采集終端采集的一段原始(未經(jīng)濾波處理)音頻信號(hào)進(jìn)行分析,借助于GoldWave音頻剪輯軟件,可以從該段音頻信號(hào)中得到單個(gè)鳴叫聲和咳嗽聲的音頻片段。利用MATLAB對(duì)得到的音頻片段進(jìn)行頻譜分析,由此繪制的頻譜分別見圖9。
圖9 肉雞鳴叫聲與咳嗽聲的原始頻譜圖
圖中可以看出,采集的原始音頻信號(hào)中含有一定的背景噪聲,需要對(duì)其進(jìn)行濾波處理以得到高信噪比的音頻信號(hào)。從圖中同樣可以發(fā)現(xiàn),肉雞鳴叫聲與咳嗽聲的頻率主要集中在1 200 Hz至3 000 Hz的范圍內(nèi)。因此,在微控制器的軟件程序中,首先添加了帶通濾波器的算法設(shè)計(jì),頻帶范圍設(shè)置為1 000 Hz至3 200 Hz,有效保留了有效肉雞聲音信號(hào),并實(shí)現(xiàn)了對(duì)音頻信號(hào)的初步濾波,其次,利用了譜減法濾波算法,對(duì)經(jīng)過初步濾波后的音頻信號(hào)進(jìn)一步進(jìn)行深度信號(hào)濾波處理,得到具有較高信噪比的音頻信號(hào)。
譜減法是最直觀和最常用的去噪聲思想,即利用帶噪信號(hào)的頻譜減去噪聲的頻譜,進(jìn)而得到干凈信號(hào)的頻譜。設(shè)聲音信號(hào)為x
(n
),經(jīng)過加窗分幀處理后,得到i
幀幀長為N
的聲音信號(hào)x
(m
)。聲音信號(hào)x
(m
)經(jīng)過離散傅里葉變換處理(DFT,discrete fourier transform)后為x
(k
),其計(jì)算公式為:(1)
對(duì)x
(k
)的每個(gè)分量的幅值和相角進(jìn)行計(jì)算,可得幅值為|x
(k
)|,相角為:(2)
根據(jù)前導(dǎo)無話段時(shí)長IS
和對(duì)應(yīng)的幀數(shù)NIS
,可以求得該噪聲段的平均能量為:(3)
譜減算法為:
(4)
其中:a
和b
是兩個(gè)常數(shù),a
為過減因子,b
為增益補(bǔ)償因子。圖10 基本譜減法的原理圖
這樣,經(jīng)過“帶通+譜減法”的組合信號(hào)濾波處理后的音頻信號(hào),一方面由無線通信模塊從微控制器發(fā)送至遠(yuǎn)程服務(wù)器進(jìn)行本地保存,另一方面直接存儲(chǔ)在SD卡存儲(chǔ)模塊中。需要說明的是,此時(shí)采集的音頻信號(hào)具有較高的信噪比,利于音頻信號(hào)的后續(xù)處理。
無線通信模塊作為采集終端與遠(yuǎn)程服務(wù)器之間的通信媒介,主要完成將微控制器通過串口發(fā)送的字符流格式的音頻信號(hào)發(fā)送至遠(yuǎn)程服務(wù)器,本質(zhì)上屬于數(shù)據(jù)通信。在本研究中,無線通信模塊包括GSM/GPRS通信模塊和WiFi通信模塊,并采用面向有連接(TCP/IP)的Socket通信作為兩者的通信方式。Socket通常翻譯為“套接字”,實(shí)際是一個(gè)句柄,存在于內(nèi)存中的一個(gè)標(biāo)識(shí)符,作為網(wǎng)絡(luò)通信的一個(gè)符號(hào)。為了能區(qū)分不同的網(wǎng)絡(luò)應(yīng)用服務(wù),TCP/IP協(xié)議引入了端口號(hào),把IP地址和端口號(hào)組合成通信的端點(diǎn),即套接字,一對(duì)端點(diǎn)就表示相互通信的應(yīng)用程序之間的網(wǎng)絡(luò)連接。在本研究中,采集終端作為客戶端,它的套接字稱為ClientSocket,遠(yuǎn)程服務(wù)器作為服務(wù)器端,它的套接字稱為ServerSocket。根據(jù)連接啟動(dòng)的方式以及套接字要連接的目標(biāo),套接字之間的連接過程包含以下3個(gè)步驟:服務(wù)器監(jiān)聽,客戶端請(qǐng)求,連接確認(rèn)。
在本研究中,系統(tǒng)上電工作后,由采集終端板載的直流電源給無線通信模塊供電,并在微控制器的軟件程序中實(shí)現(xiàn)無線通信模塊與遠(yuǎn)程服務(wù)器之間通信連接的建立和后續(xù)音頻文件的傳輸。其具體的工作過程如下:首先,根據(jù)遠(yuǎn)程服務(wù)器端的IP地址和端口號(hào),發(fā)送連接請(qǐng)求,在遠(yuǎn)程服務(wù)器同意后,建立兩者之間的通信連接。其次,在建立通信連接之后,無線通信模塊會(huì)及時(shí)的將通過串口發(fā)送過來的經(jīng)過濾波處理的字符流形式的音頻信號(hào)發(fā)送至遠(yuǎn)程服務(wù)器。具體的,GSM/GPRS模塊經(jīng)最近的基站通過GPRS網(wǎng)絡(luò)進(jìn)行傳輸,WiFi模塊通過接入同一局域網(wǎng)進(jìn)行傳輸。最后,若采集終端或遠(yuǎn)程服務(wù)器向?qū)Ψ桨l(fā)送斷開連接的指令,無線通信模塊及時(shí)結(jié)束通信連接。在此過程中,若遠(yuǎn)程傳輸突然出現(xiàn)異常情況,則無線通信模塊及時(shí)反饋網(wǎng)絡(luò)異常的信息至采集終端,采集終端的微控制器及時(shí)捕捉該信息,暫停音頻采集,等待工作人員進(jìn)行設(shè)置。需要說明的是,若無線通信模塊上電工作之初就出現(xiàn)遠(yuǎn)程傳輸異常的情況,即無線通信模塊發(fā)送連接請(qǐng)求后未得到回復(fù),則無線通信模塊同樣及時(shí)反饋網(wǎng)絡(luò)異常的信息至采集終端。上述流程見圖11。
圖11 無線通信模塊工作流程圖
在本研究中,遠(yuǎn)程服務(wù)器為具有網(wǎng)絡(luò)連接功能的計(jì)算機(jī),管理人員可以根據(jù)實(shí)際需求定點(diǎn)設(shè)置或移動(dòng)設(shè)置,當(dāng)計(jì)算機(jī)連接上網(wǎng)絡(luò)之后,采集終端可以通過無線通信模塊發(fā)送連接請(qǐng)求至計(jì)算機(jī)設(shè)備,計(jì)算機(jī)設(shè)備在同意連接請(qǐng)求后,開始音頻信號(hào)的傳輸。當(dāng)GSM/GPRS通信模塊作為無線通信模塊時(shí),計(jì)算機(jī)設(shè)備在任意地點(diǎn)建立兩者的通信連接;當(dāng)WiFi通信模塊作為無線通信模塊時(shí),計(jì)算機(jī)設(shè)備需在同一局域網(wǎng)覆蓋范圍內(nèi)建立兩者的通信連接。上述過程在硬件層面上保證了遠(yuǎn)程服務(wù)器與無線通信模塊接入全球通信系統(tǒng)或同一局域網(wǎng)。類似于在采集終端的微控制器的程序中實(shí)現(xiàn)控制無線通信模塊完成軟件層面的Socket通信,遠(yuǎn)程服務(wù)器也需要設(shè)計(jì)上位機(jī)軟件配套完成Socket通信的全過程。在本研究中,上位機(jī)軟件采用C#語言編程,在Visual Studio 2010環(huán)境下進(jìn)行開發(fā),考慮到本研究設(shè)計(jì)的重點(diǎn)在于整個(gè)音頻采集系統(tǒng),所以此處對(duì)上位機(jī)軟件的具體設(shè)計(jì)過程不做過多介紹,但對(duì)其運(yùn)行后與采集終端進(jìn)行通信連接和音頻傳輸?shù)墓ぷ髁鞒踢M(jìn)行描述。其工作流程見圖12。
圖12 遠(yuǎn)程服務(wù)器工作流程圖
首先,遠(yuǎn)程服務(wù)器在連接上網(wǎng)絡(luò)之后,運(yùn)行上位機(jī)軟件啟動(dòng)網(wǎng)絡(luò)監(jiān)聽并等待采集終端的通信連接請(qǐng)求,在接收到請(qǐng)求之后建立通信連接。其次,對(duì)無線通信模塊發(fā)送的音頻信號(hào)進(jìn)行判斷,判斷其是否為數(shù)字式格式,當(dāng)判斷為真時(shí),對(duì)其進(jìn)行接收并存儲(chǔ)到外存儲(chǔ)器中。最后,在接收到斷開連接的指令時(shí),需要說明該指令包括采集終端下發(fā)和自身下發(fā),則結(jié)束通信連接。在此過程中,若出現(xiàn)網(wǎng)絡(luò)異常情況時(shí),同樣結(jié)束通信連接。
本研究的音頻采集系統(tǒng)完成后,在黑龍江省牡丹江市林口縣匯興養(yǎng)殖場進(jìn)行了現(xiàn)場測試。由于該養(yǎng)殖場地處偏遠(yuǎn),未能覆蓋局域網(wǎng),因此選用GSM/GPRS模塊作為通信模塊。遠(yuǎn)程服務(wù)器設(shè)置為黑龍江大學(xué)電磁兼容實(shí)驗(yàn)室內(nèi)的一臺(tái)計(jì)算機(jī),該計(jì)算機(jī)已接入以太網(wǎng),并已運(yùn)行上位機(jī)軟件進(jìn)入了等待連接請(qǐng)求的狀態(tài)。圖13為林口縣匯興養(yǎng)殖場現(xiàn)場測試圖。
圖13 林口縣某肉雞養(yǎng)殖場現(xiàn)場測試圖
圖14為運(yùn)行在遠(yuǎn)程服務(wù)器上的上位機(jī)軟件。需要說明的,圖中“音頻網(wǎng)絡(luò)通信”部分是與本研究相關(guān)的遠(yuǎn)程傳輸部分,其他部分為本研究依托項(xiàng)目的其他功能模塊。從圖中可以看出,遠(yuǎn)程服務(wù)器的IP地址為:192.168.0.10,端口號(hào)為:8899,并且已經(jīng)處于監(jiān)聽狀態(tài),等待采集終端的連接請(qǐng)求。
圖14 遠(yuǎn)程服務(wù)器的上位機(jī)軟件測試圖
采集終端正常工作后,對(duì)其進(jìn)行初始化設(shè)置,每次采集時(shí)長為2分鐘的音頻信號(hào),且采集頻率為每整點(diǎn)采集一次,筆者測試時(shí)的時(shí)間為11時(shí)41分,當(dāng)時(shí)間為12時(shí)整時(shí),采集終端對(duì)音頻進(jìn)行采集,并在12時(shí)02分結(jié)束音頻采集。如圖15所示,上位機(jī)軟件接收到通過GSM/GPRS通信模塊發(fā)送的音頻信號(hào),并將其存儲(chǔ)在外存儲(chǔ)器中。
圖15 接收音頻信號(hào)并存儲(chǔ)到外存儲(chǔ)器中
隨后,筆者按下按鍵將采集終端切換至實(shí)時(shí)工作模式,并隨機(jī)采集了一段時(shí)長17秒的音頻信號(hào),最終同樣發(fā)送至遠(yuǎn)程服務(wù)器并存儲(chǔ)到外存儲(chǔ)器中。現(xiàn)場測試過程中,筆者將GSM/GPRS模塊的SIM卡拔出,人為造成無線傳輸中斷的狀態(tài),此時(shí)采集終端及時(shí)調(diào)整工作狀態(tài),等待筆者進(jìn)行新的定時(shí)工作信息的設(shè)置,筆者將其設(shè)置為每5分鐘采集一次時(shí)長10秒的音頻信號(hào),則其在設(shè)置完成后的15分鐘內(nèi),共采集了3端音頻信號(hào),并存儲(chǔ)在了SD卡存儲(chǔ)模塊中,筆者按下按鍵將采集終端切換至實(shí)時(shí)工作模式,同樣成功地采集一段時(shí)長8秒的音頻信號(hào)存儲(chǔ)在SD卡存儲(chǔ)模塊中,遠(yuǎn)程服務(wù)器讀取的SD卡存儲(chǔ)模塊內(nèi)的部分音頻信號(hào)見圖16。
圖16 SD卡存儲(chǔ)模塊中的音頻信號(hào)
接著重新插入SIM卡,并且將采集終端重新啟動(dòng)。此時(shí)無線傳輸恢復(fù)正常工作狀態(tài),即可以正常讀取斷電前設(shè)置的工作信息:采集頻率為每整點(diǎn)采集一次且采集時(shí)長為2分鐘的音頻信號(hào),可以進(jìn)行正常工作,則表明測試達(dá)到了預(yù)期的效果。最后,隨機(jī)選擇一段音頻信號(hào),并借助于GoldWave音頻剪輯軟件,從原始信號(hào)中剪輯出單獨(dú)的鳴叫聲和咳嗽聲片段,利用MATLAB進(jìn)行頻譜分析后得到的頻譜如圖17所示。
圖17 濾波處理后的鳴叫聲與咳嗽聲頻譜圖
與圖19相比,可以看出,經(jīng)過譜減法濾波后的音頻信號(hào)中的噪聲被有效抑制,音頻信號(hào)的信噪比明顯提升,且集中在1 200 Hz至3 000 Hz。至此,本系統(tǒng)的所有功能測試結(jié)束。
上述測試表明,本研究設(shè)計(jì)的基于無線傳輸技術(shù)的肉雞養(yǎng)殖場音頻采集系統(tǒng)經(jīng)過現(xiàn)場測試,較好地實(shí)現(xiàn)了預(yù)期效果。系統(tǒng)在接通電源后,采集終端會(huì)根據(jù)設(shè)置的工作信息,在指定時(shí)間點(diǎn)進(jìn)行指定時(shí)長的音頻采集;當(dāng)按下按鍵觸發(fā)中斷時(shí),采集終端會(huì)切換至實(shí)時(shí)工作模式,根據(jù)中斷開啟的時(shí)長進(jìn)行音頻采集。采集終端的微控制器會(huì)將采集到的音頻信號(hào)編碼為一段字符流,利用帶通濾波和譜減法對(duì)其進(jìn)行濾波處理,最后利用無線通信模塊完成采集終端與遠(yuǎn)程服務(wù)器之間的字符流傳輸,由上位機(jī)軟件將字符流解碼為音頻信號(hào),并將其存儲(chǔ)在外存儲(chǔ)器中。若遠(yuǎn)程傳輸發(fā)生異常,采集終端會(huì)根據(jù)重新獲得的工作信息進(jìn)行正常工作,并在觸發(fā)中斷時(shí)切換至實(shí)時(shí)工作模式進(jìn)行工作。在此種情況下,在采集到音頻信號(hào)并對(duì)其進(jìn)行濾波處理后,由微控制器解碼為音頻信號(hào),并將其存儲(chǔ)在SD卡中,后續(xù)通過移動(dòng)拷貝的方式存儲(chǔ)至外存儲(chǔ)器中。通過對(duì)濾波前后音頻信號(hào)的頻譜分析可得,濾波后的音頻信號(hào)的整體信噪比有所提升。
對(duì)肉雞咳嗽聲與鳴叫聲進(jìn)行識(shí)別和分析處理,可以有效分析其健康狀況,本研究的基于無線傳輸技術(shù)的肉雞養(yǎng)殖場音頻采集系統(tǒng),是作為獲取音頻信號(hào)來源的重要環(huán)節(jié),由采集終端、無線通信模塊與遠(yuǎn)程服務(wù)器組成。在無線傳輸正常的狀態(tài)下,采集終端可以工作于定時(shí)或?qū)崟r(shí)工作模式,并將采集的音頻信號(hào)經(jīng)濾波處理后發(fā)送至遠(yuǎn)程服務(wù)器進(jìn)行存儲(chǔ);在無線傳輸異常的狀態(tài)下,采集終端也可以工作于定時(shí)或?qū)崟r(shí)工作模式,并將采集的音頻信號(hào)經(jīng)濾波后保存至SD卡存儲(chǔ)模塊中,通過移動(dòng)拷貝的方式存儲(chǔ)到遠(yuǎn)程服務(wù)器。本研究作為某市廳級(jí)項(xiàng)目一部分,是該項(xiàng)目的開展后續(xù)研究的重要基礎(chǔ)。同時(shí),設(shè)計(jì)的系統(tǒng)可移植性、拓展性強(qiáng),可以推廣應(yīng)用于其他畜牧類動(dòng)物養(yǎng)殖廠的監(jiān)測或監(jiān)控系統(tǒng)的設(shè)計(jì)中,具有較高的應(yīng)用價(jià)值。
下一步階段工作的展望,一方面,在采集終端經(jīng)過帶通濾波與譜減法濾波的音頻信號(hào),還存在些許的干擾噪聲,這些噪聲可能是因?yàn)椴杉K端自身的無線通信或電壓供電產(chǎn)生的機(jī)械噪聲或電磁干擾,筆者打算進(jìn)一步在服務(wù)器端對(duì)音頻信號(hào)進(jìn)行二次濾波處理,進(jìn)一步提高音頻信號(hào)的信噪比,方便后續(xù)研究。另一方面,筆者將同課題組成員一起,在本研究采集保存的音頻信號(hào)的基礎(chǔ)上,利用語音識(shí)別技術(shù)對(duì)其中的肉雞鳴叫聲與咳嗽聲進(jìn)行有效提取,最終通過閾值比對(duì)等手段實(shí)現(xiàn)區(qū)域范圍內(nèi)肉雞健康狀況的監(jiān)測。