楊章友,韓 強(qiáng)
(東華大學(xué) 機(jī)械工程學(xué)院,上海 201620)
椰青開(kāi)孔機(jī)是一種對(duì)堅(jiān)硬外殼的椰青進(jìn)行自動(dòng)識(shí)別開(kāi)孔的自動(dòng)化設(shè)備。利用自動(dòng)控制技術(shù)對(duì)開(kāi)孔機(jī)機(jī)械裝置中的夾緊爪、升降機(jī)構(gòu)及切刀電機(jī)進(jìn)行控制,實(shí)現(xiàn)了對(duì)椰青高效、準(zhǔn)確、安全的開(kāi)孔過(guò)程。由于該設(shè)備是機(jī)電一體化產(chǎn)品,隨著時(shí)間的推移,機(jī)械各部件間配合間隙會(huì)增大,引起設(shè)備故障。設(shè)備廠家需了解各個(gè)設(shè)備的運(yùn)行狀態(tài),便于定期維護(hù);并且該設(shè)備通常投放在大型超市和水果店。如今移動(dòng)GPRS網(wǎng)絡(luò)信號(hào)已大規(guī)模覆蓋,應(yīng)用GPRS技術(shù)將設(shè)備記錄的開(kāi)孔椰青數(shù)目、運(yùn)行產(chǎn)生的報(bào)警信息以及設(shè)備ID號(hào)發(fā)送至監(jiān)控中心,后臺(tái)人員依據(jù)監(jiān)控中心接收的數(shù)據(jù),分析設(shè)備的運(yùn)行狀態(tài),統(tǒng)計(jì)產(chǎn)品銷售趨勢(shì)并預(yù)測(cè)判斷當(dāng)?shù)赜脩糍?gòu)買開(kāi)孔椰青的個(gè)數(shù),提高了管理人員的工作效率。本文提出了一種基于GPRS技術(shù)的椰青自動(dòng)開(kāi)孔遠(yuǎn)程監(jiān)控的方案。
椰青自動(dòng)開(kāi)孔機(jī)遠(yuǎn)程監(jiān)控系統(tǒng) (如圖1所示)包括終端機(jī)、網(wǎng)絡(luò)通信平臺(tái)和監(jiān)控中心。其數(shù)據(jù)交互流程為由處理器終端采集設(shè)備記錄的開(kāi)孔椰青數(shù)目、運(yùn)行產(chǎn)生的報(bào)警信息以及設(shè)備ID號(hào)發(fā)送至監(jiān)控中心,通過(guò)AT+CGSN指令與GPRS模塊交互設(shè)備ID號(hào),存儲(chǔ)記錄并在設(shè)備非工作時(shí)段,達(dá)到30 min間隔,以TCP/IP協(xié)議方式將相關(guān)數(shù)據(jù)發(fā)送至監(jiān)控中心[1]。當(dāng)設(shè)備發(fā)生報(bào)警,設(shè)備管理人員通過(guò)報(bào)警分析將相應(yīng)的控制指令發(fā)送到設(shè)備終端,設(shè)備終端則依照相關(guān)指令做出狀態(tài)變更,利于維護(hù)人員通過(guò)監(jiān)控平臺(tái)直觀地了解各個(gè)自動(dòng)開(kāi)孔機(jī)的動(dòng)態(tài)運(yùn)作信息,進(jìn)行故障分析或遠(yuǎn)程診斷。
圖1 椰青自動(dòng)開(kāi)孔機(jī)遠(yuǎn)程監(jiān)控系統(tǒng)Fig.1 Coconut automatic opening machine of remote monitoring system
椰青開(kāi)孔設(shè)備遠(yuǎn)程監(jiān)控系統(tǒng)的硬件結(jié)構(gòu)如圖2所示。該系統(tǒng)由主控芯片、E2PROM存儲(chǔ)電路、采集執(zhí)行部件狀態(tài)、晶振復(fù)位電路、電壓轉(zhuǎn)換電路、GPRS模塊等部分組成。
圖2 遠(yuǎn)程監(jiān)控系統(tǒng)的硬件結(jié)構(gòu)框圖Fig.2 Hardware structure diagram of remote monitoring system
設(shè)備終端主控芯片采用STM32F103系列處理器,采用Cortex-M3內(nèi)核架構(gòu),32位處理器,最高工作頻率為72 MHz,內(nèi)部集成了多種外設(shè)功能模塊如:定時(shí)器、DMA 控制器、I2C、串口、ADC、DAC 及通用IO口[2-3]。該芯片強(qiáng)大的運(yùn)算處理能力,滿足遠(yuǎn)程監(jiān)控項(xiàng)目對(duì)芯片功能的需求。
選用AIR208模塊實(shí)現(xiàn)設(shè)備的無(wú)線通信,將設(shè)備記錄的開(kāi)孔椰青數(shù)目、運(yùn)行產(chǎn)生的報(bào)警信息以及設(shè)備ID號(hào)每間隔30 min時(shí)間發(fā)送一次數(shù)據(jù),以便對(duì)各個(gè)設(shè)備的運(yùn)行狀態(tài)實(shí)施監(jiān)測(cè)。在主控芯片和GPRS模塊的硬件連接環(huán)境中,除通信模塊需接天線和電話卡外,主控芯片和AIR208模塊通過(guò)RS-232串行通信接口方式連接。同時(shí),選用AC/DC電源提供2 A額定電流,以滿足AIR208模塊通信的供電需求。
采用AT24C02芯片存儲(chǔ)數(shù)據(jù),可將設(shè)備記錄的開(kāi)孔椰青數(shù)目、運(yùn)行產(chǎn)生的報(bào)警信息實(shí)時(shí)保存,防止掉電丟失。存儲(chǔ)芯片是一個(gè)2 K位串行E2PROM,有256個(gè)8位字節(jié)的儲(chǔ)存空間,芯片地址可擦寫次數(shù)可達(dá)百萬(wàn)次并能長(zhǎng)久保存數(shù)據(jù)。主控和存儲(chǔ)芯片I2C引腳的SDA、SCL對(duì)應(yīng)硬件連接,且SDA為雙向I/O線。
直流電機(jī)電流值和負(fù)載的關(guān)系滿足公式:
式中:M為電機(jī)轉(zhuǎn)矩;F為電磁力;D為轉(zhuǎn)動(dòng)半徑;C為電機(jī)常數(shù);φ為電機(jī)磁通(正常工作時(shí)是常數(shù));I為電流,即M=Ca×I,電機(jī)電流和負(fù)載滿足正比例關(guān)系。執(zhí)行器件電機(jī)電流值隨負(fù)載的變化具有線性關(guān)系,采集負(fù)載電機(jī)的電流值變化量和峰值,通過(guò)MCU的狀態(tài)識(shí)別算法濾除干擾值準(zhǔn)確接收平穩(wěn)的電流值,判斷椰青開(kāi)孔周期是否完成[4]。圖3為電機(jī)電流采集原理圖。
圖3 電機(jī)電流采集原理圖Fig.3 Motor current acquisition circuits
椰青自動(dòng)開(kāi)孔遠(yuǎn)程監(jiān)控系統(tǒng)采用STM32處理器,采集設(shè)備記錄的開(kāi)孔椰青數(shù)目、運(yùn)行產(chǎn)生的報(bào)警信息和設(shè)備ID號(hào),通過(guò)GPRS通訊模塊以TCP/IP協(xié)議方式傳送至監(jiān)控中心;并將所采集到的數(shù)據(jù)及時(shí)存入E2PROM芯片中;同時(shí)與后臺(tái)保持交互的功能,包括監(jiān)控設(shè)備工作狀態(tài)、設(shè)備ID號(hào),以及監(jiān)控站依據(jù)設(shè)備狀態(tài)信息發(fā)送控制下位機(jī)的指令[5]。圖4為設(shè)備遠(yuǎn)程監(jiān)控系統(tǒng)的軟件框架。
圖4 遠(yuǎn)程監(jiān)控系統(tǒng)的軟件框架Fig.4 Software framework of remote monitoring system
3.1.1 設(shè)備工作狀態(tài)采集
椰青開(kāi)孔設(shè)備工作狀態(tài)包括設(shè)備記錄的開(kāi)孔椰青數(shù)目、運(yùn)行產(chǎn)生的報(bào)警信息;在開(kāi)孔過(guò)程中,負(fù)載電機(jī)電流值是具有一個(gè)由小變大、再由大變小的變化周期,每完成一次周期,椰青數(shù)目加1;若沒(méi)有放入椰青或者出現(xiàn)設(shè)備報(bào)警信息,對(duì)應(yīng)報(bào)警標(biāo)志加1;并存儲(chǔ)在E2PROM相應(yīng)字節(jié)地址中,在非開(kāi)孔時(shí)段發(fā)送到監(jiān)控中心。
3.1.2 設(shè)備號(hào)采集
處理器采集GPRS模塊IMEI號(hào),其一配置好串口5接收中斷程序,清除接收緩存數(shù)組的值;其二STM32處理器串口5發(fā)出AT+GSN指令,GPRS模塊返回IMEI號(hào),串口5產(chǎn)生接收中斷,將緩存中的數(shù)據(jù)通過(guò)中間數(shù)組變量完整存儲(chǔ),再由?C語(yǔ)言的庫(kù)函數(shù)之一的strncpy函數(shù)將中間數(shù)組變量值拷貝至IMEI號(hào)數(shù)組變量中。如圖5所示,通過(guò)網(wǎng)絡(luò)調(diào)試助手模擬服務(wù)器接收窗口監(jiān)控設(shè)備號(hào)。
圖5 模擬服務(wù)器監(jiān)控設(shè)備號(hào)Fig.5 Simulation server monitors IMEI number and locating information
在存儲(chǔ)任務(wù)中,等待一次存儲(chǔ)周期采集事件的完成,將采集到的變量數(shù)據(jù)以I2C總線一次保存單字節(jié)或者多字節(jié)至E2PROM芯片指定的地址處;在發(fā)送數(shù)據(jù)的工作任務(wù)之前,可將存儲(chǔ)器的數(shù)據(jù)以一次單字節(jié)或多字節(jié)的方式讀取出來(lái),再發(fā)送至后臺(tái)。
GPRS模塊作為主控芯片和后臺(tái)服務(wù)器端的硬件橋梁,其和主控芯片串口分別連接TX、RX、GND,采用RS232通信接口方式傳輸數(shù)據(jù);數(shù)據(jù)按協(xié)議幀格式串行傳送,以字節(jié)為傳送單位,采用波特率9600 bps、8位數(shù)據(jù)位、1位停止位、無(wú)奇偶校驗(yàn)位的串口配置[6],按照此協(xié)議發(fā)送AT指令至GPRS模塊。GPRS終端是以IP包的形式進(jìn)行數(shù)據(jù)的傳輸,GPRS模塊通過(guò)PPP(Point to Point Protoc01)協(xié)議獲得動(dòng)態(tài)分配的IP地址。建立連接后,在PPP協(xié)議的基礎(chǔ)上通過(guò)數(shù)據(jù)傳輸協(xié)議TCP/IP實(shí)現(xiàn)與 Internet上計(jì)算機(jī)服務(wù)器終端的數(shù)據(jù)通訊[7-8]。具體的AT指令流程如圖6所示。
在本監(jiān)控系統(tǒng)中,當(dāng)遠(yuǎn)程監(jiān)控中心獲取到報(bào)警狀態(tài)的變更,即設(shè)備有故障或者多次未放入椰青,監(jiān)控中心將通過(guò)互聯(lián)網(wǎng)鏈路發(fā)送相關(guān)請(qǐng)求信息,由GPRS模塊及時(shí)轉(zhuǎn)發(fā),經(jīng)過(guò)串口至主控芯片串口接收引腳;在串口中斷程序中解析該信號(hào)并作出應(yīng)答,控制設(shè)備的工作狀態(tài)。
圖6 AT指令流程Fig.6 AT command flow chart
該遠(yuǎn)程監(jiān)控的后臺(tái)系統(tǒng)由Java開(kāi)發(fā)人員編寫,圖7是監(jiān)控中心的數(shù)據(jù)庫(kù)顯示界面,服務(wù)器將接收到的消息記錄在數(shù)據(jù)庫(kù)中。在上海的某些超市內(nèi)投放了椰青開(kāi)孔設(shè)備,其中存儲(chǔ)模塊和通信模塊分別具有保存和發(fā)送設(shè)備工作狀態(tài)、ID的功能。所購(gòu)買的AIR208模塊設(shè)備ID號(hào)以86開(kāi)頭,實(shí)測(cè)數(shù)據(jù)庫(kù)中接收DeviceID和GPRS模塊ID號(hào)相同,采集準(zhǔn)確。
圖7 數(shù)據(jù)庫(kù)顯示界面Fig.7 Database display interface
隨著物聯(lián)網(wǎng)技術(shù)的發(fā)展,越來(lái)越多的研究人員結(jié)合嵌入式技術(shù)和GPRS無(wú)線技術(shù)來(lái)實(shí)現(xiàn)機(jī)器設(shè)備的遠(yuǎn)程監(jiān)控系統(tǒng)充分體現(xiàn)了其可應(yīng)用的前景和領(lǐng)域。本文研究的基于GPRS椰青開(kāi)孔設(shè)備的遠(yuǎn)程監(jiān)控系統(tǒng)能對(duì)設(shè)備記錄的開(kāi)孔椰青數(shù)目、運(yùn)行產(chǎn)生的報(bào)警信息以及設(shè)備ID進(jìn)行實(shí)時(shí)監(jiān)控。采用TCP/IP協(xié)議方式將數(shù)據(jù)發(fā)送至服務(wù)器,一旦連接成功不會(huì)斷開(kāi),當(dāng)設(shè)備出現(xiàn)故障信息,監(jiān)控中心能及時(shí)發(fā)送控制指令至設(shè)備終端。實(shí)驗(yàn)結(jié)果表明,該遠(yuǎn)程監(jiān)控系統(tǒng)運(yùn)行穩(wěn)定可靠。