- 相關推薦
生產車間數(shù)據(jù)采集與監(jiān)控系統(tǒng)探討論文
摘要:針對某大型鞋服針織品制造企業(yè)車間生產數(shù)據(jù)采集與遠程監(jiān)控問題,結合該企業(yè)實際情況,提出了一種離散型生產車間數(shù)據(jù)采集與監(jiān)控系統(tǒng)。首先對傳感器節(jié)點、網(wǎng)關、通信方式、云服務器、組網(wǎng)方案進行了分析和設計,對硬件設備、無線通信模塊進行選型,對消息流和MQforIoT服務器進行了設計與實現(xiàn)。最后,基于Python語言開發(fā)了消息接發(fā)服務(異步接口庫),用極簡的MicroPython語言為系統(tǒng)硬件(控制器和網(wǎng)關)提供驅動,采用現(xiàn)場數(shù)據(jù)看板、WEB站點、APP三種數(shù)據(jù)監(jiān)控形式。研究結果表明:該系統(tǒng)運行穩(wěn)定可靠,滿足企業(yè)對數(shù)據(jù)采集與可視化監(jiān)控的要求。
關鍵詞:MQTT;數(shù)據(jù)采集與監(jiān)控系統(tǒng);MODBUS;MICROPYTHON
我國最早是中國科學院1999年的傳感網(wǎng)項目,正式開始了對物聯(lián)網(wǎng)的研究。從廣義上講,物聯(lián)網(wǎng)就是一個M2M系統(tǒng),分別代表機器之間(Machine to Machine)、人機交互(Man to Machine,Machine to Man)和人與人之間(Man to Man)的通信[1]。在生產制造各環(huán)節(jié)實現(xiàn)遠程可視化檢測與技術支持,應用物聯(lián)網(wǎng)技術為企業(yè)提供及時準確的數(shù)據(jù),無疑對降低成本、提高生產效率和產品質量發(fā)揮重要作用。數(shù)據(jù)采集與監(jiān)控系統(tǒng)為企業(yè)ERP、EMS、CRM等信息化系統(tǒng)提供及時準確的數(shù)據(jù),相關技術因此得到了廣泛的研究。無線傳輸方案中Wi—Fi、NB—IoT、LoRa、ZigBee以及Sub—GHz都是候選技術。吳海龍,鮑敏[2]等針對生產車間中數(shù)據(jù)采集問題,提出了一種基于ZigBee的生產車間數(shù)據(jù)采集系統(tǒng),并開發(fā)了原型系統(tǒng);莫哲萌,鮑敏等[3]針對離散制造車間的特點,在原型系統(tǒng)的基礎上,提出一種基于Sub—GHz無線通信技術的車間數(shù)據(jù)采集系統(tǒng)。
本文目標企業(yè)車間生產線分布呈現(xiàn)整體分散局部集中格局,生產數(shù)據(jù)由人工統(tǒng)計及匯報,投入成本高,實時性差,管理層和決策層難以實時掌握生產一線狀況。企業(yè)希望改善現(xiàn)狀,要求能實時自動統(tǒng)計、匯總、存儲和處理生產數(shù)據(jù),監(jiān)測設備是否異常,以可視化監(jiān)控的形式供決策者隨時隨地監(jiān)控生產實際情況,做出生產調度,督促員工積極參與生產,避免地理、時間等因素的影響。在大量研究和實踐的基礎上,對原型系統(tǒng)做了多方面優(yōu)化和補充(比如,用穩(wěn)定性相差不大可編程模塊代替了原有的固定系統(tǒng)),結合企業(yè)實際要求,設計了離散型生產車間數(shù)據(jù)采集與監(jiān)控系統(tǒng)的總體架構。該系統(tǒng)具有結構簡單、組網(wǎng)容易、高靈敏度、遠程指令下達、跨平臺使用、用戶操作方便、可二次開發(fā)的特點。
1、系統(tǒng)架構。
本文目標是設計一種可視化遠程監(jiān)控系統(tǒng),需要對傳感器節(jié)點、無線模塊、組網(wǎng)方案、數(shù)據(jù)流、云服務器、業(yè)務定制應用等方面做適用性和可靠性研究。傳感器節(jié)點是遠程監(jiān)控系統(tǒng)的最小單元,由傳感器和控制器組成,起著感知世界、采集信息、接入傳感網(wǎng)的功能。該系統(tǒng)選用模擬量傳感器,由ADC電路采樣,經(jīng)過濾波等環(huán)節(jié)處理后得到需要的數(shù)字信號。本文的遠程控制系統(tǒng)中,傳感器主要是連接在控制器上,控制器可以控制傳感器的工作狀態(tài),控制器可以將采集數(shù)據(jù)進行轉化并發(fā)送出去。目標企業(yè)生產現(xiàn)場采集點分布整體分散局部集中,生產空間無障礙物的影響與繞射損耗,單條上傳數(shù)據(jù)小,因此傳輸終端采用Zig Bee模式。ZigBee網(wǎng)絡容量大,單個網(wǎng)絡最多可支持65535個設備,每臺設備可以和另外254臺設備相互連接[4]。
經(jīng)過分析和實驗,設計了基于RS485和Modbus協(xié)議的傳感器節(jié)點查詢、寫入和應答操作,RS485可連接多個設備,形成總線形式。網(wǎng)關基于以下部件的封裝:DigiX Bee Zig Bee模塊、Py board開發(fā)板、QUECTEL—EC20模塊,Py board嵌入式開發(fā)板基于STM32F405RG微控制器,成功移植了Micro Python,是連接各個終端的匯集點,采用3G/4G網(wǎng)絡進行與服務器的遠程通信。采用一個云數(shù)據(jù)中心和物聯(lián)網(wǎng)常見的三層結構組網(wǎng)方案,設備云平臺架設在阿里云,也可以架設私有云。應用業(yè)務層采用現(xiàn)場監(jiān)控看板、WEB站點、APP三種方式。
2、網(wǎng)絡接入實現(xiàn)。
。1)控制器和接口庫。
開發(fā)控制器基于XBEE模塊和Pyboard開發(fā)板封裝,支持RS485轉虛擬USB和虛擬串口連接PC,實現(xiàn)存儲內容可視,虛擬串口模式方便用戶調試;cMicroPython語言開發(fā)了可復用的消息接發(fā)異步庫、RS485庫、ZigBee庫、StateMachine庫,極大的縮短了產品開發(fā)周期,二次開發(fā)只需專注于功能實現(xiàn)?刂破鞒跏蓟ㄟ^XBEE模塊接入ZigBee網(wǎng)絡,發(fā)送握手信息連接網(wǎng)關,ZigBee協(xié)調器(Coordinator)增加了多控制器和網(wǎng)關條件下的物理隔離。傳感網(wǎng)發(fā)送Modbus請求,對返回碼進行CRC校驗。檢測網(wǎng)關是否連接,把數(shù)據(jù)解析的結果發(fā)送給網(wǎng)關。
(2)網(wǎng)關在監(jiān)控系統(tǒng)中的功能。
網(wǎng)關具備的功能有:網(wǎng)絡創(chuàng)建、傳感器節(jié)點終端互連、網(wǎng)絡搜索、搜索網(wǎng)關創(chuàng)建的局域網(wǎng)中包含的設備、為方便識別和通信給局域網(wǎng)設備分配短地址、接收數(shù)據(jù)、云服務器用戶下達的指令反饋、數(shù)據(jù)封裝上傳。
。3)網(wǎng)關的選型。
傳感器節(jié)點控制器采用XBEE模塊,該模塊支持ZigBee通信協(xié)議。
根據(jù)ZigBee協(xié)議,基于DigiX BeeZig Bee模塊、QUECTEL—EC20模塊和Py board開發(fā)板結合封裝了ZigBee/3G可編程網(wǎng)關充當網(wǎng)絡接入設備,實現(xiàn)了向下與傳感器節(jié)點通訊向上與云服務器通訊。網(wǎng)關支持多種接口的互發(fā)。既可以做為網(wǎng)關,也可以作為接入模塊使用。網(wǎng)關的開發(fā)工具是MicroPython,基于Python3語法重構而成,具有很好的二次開發(fā)性能,能添加各種MicroPython—lib庫[5],如圖2所示。
。4)UART連接。
控制器與傳感器通過UART連接,該系統(tǒng)采用RS485標準規(guī)范。現(xiàn)場總線在自動化領域,相當于計算機局域網(wǎng)。在總線種類多樣化的今天,Modbus技術以其先進性、開放性、成熟性使得基于Modbus串行鏈路通信的設備得到了廣泛的使用,Modbus是運行在RS485總線上的軟件層協(xié)議。有標準MODBUS—RTU(S)、非標準MODBUS—RTU(NS)和ASC(ASCⅡ碼)三種模式。Modbus—RTU(16進制)查詢與應答均采用8數(shù)據(jù)位、1停止位、奇偶校驗位、CRC校驗位。交互過程中關鍵是CRC—16(16位循環(huán)冗余校驗碼)校驗方法,如圖4所示。包含16位二進制。CRC校驗碼由發(fā)送端計算,放置于發(fā)送信息的尾部(2Bytes)。接收端重新計算接收到的信息的校驗碼,并與接收到的CRC校驗碼核對。
。5)MQTT消息流格式優(yōu)化性設計。
MQTT(Message Queuing Telemetry—Transpo—rt,消息隊列遙測傳輸)是IBM開發(fā)的一個即時通訊協(xié)議。MQTT消息體分為三個部分:固定頭、可變頭和有效載荷。固定頭是所有消息必須包含的部分[6],如圖5所示。當系統(tǒng)正常運行時,使用消息隊列可以跟蹤記錄系統(tǒng)的消息流狀態(tài),方便使用者精確查詢到某時間段內的操作行為。有效載荷部分(消息體),把數(shù)據(jù)按自定義的主題推送給云服務器,支持分層dev/a/b/c(最深支持8層),支持通配符+和#操作[7],如圖6所示。ZigBee協(xié)議下有效載荷應控制在71字節(jié)左右。模塊單次發(fā)送最大數(shù)據(jù)量127個字節(jié),超過最大長度,ZigBee協(xié)議棧會做分包處理。
3、消息接發(fā)服務設計與實現(xiàn)。
(1)云服務器與MQTT服務端(Broker)。
MQTT服務是建立在WEB服務器(該系統(tǒng)服務器架設于阿里云ESC)上層的消息接收發(fā)送類服務程序,如圖7所示。消息接發(fā)服務負責把數(shù)據(jù)推送給該主題的所有訂閱者,節(jié)點可以自由按需要發(fā)布、訂閱或取消訂閱。
。2)基于Python的MQTT異步接口庫設計。
異步接口庫是消息推送客戶端實現(xiàn)關鍵的步驟之一。MQTT客戶端的功能:連接服務端、訂閱服務、訂閱主題、發(fā)布服務、發(fā)布主題。異步接口庫工作流程,如圖8所示。異步接口庫的回調函數(shù)支持MQTT的14種消息類型(連接類、發(fā)布類、訂閱類、;铑悾,包含主要的幾個回調函(連接成功回調函數(shù)、斷開連接回調函數(shù)、訂閱回調函數(shù)、取消訂閱回調函數(shù)、發(fā)布回調函數(shù)、接收消息回調函數(shù))。
4、上層實現(xiàn)與應用實例。
(1)上層實現(xiàn)系統(tǒng)數(shù)據(jù)。
處理工作大部分完成于云服務器,減輕了數(shù)據(jù)上行和下行負荷。Web站點:采用B/S軟件結構開發(fā)Web站點;诘湫偷腗VC架構Django和WebService作為云后臺數(shù)據(jù)交互服務[8]。業(yè)務看板:基于Python的異步接口庫和MicrosoftSQLServer接發(fā)并保存歷史數(shù)據(jù)。使用PythonKivy開發(fā)業(yè)務看板界面,客戶端基于PYMSSQL和數(shù)據(jù)庫進行數(shù)據(jù)交互。
。2)系統(tǒng)應用實例。
Web站點包括:實時數(shù)據(jù)監(jiān)控模塊、歷史數(shù)據(jù)統(tǒng)計模塊和指令下達模塊。實時數(shù)據(jù)監(jiān)控模塊效果,界面包括網(wǎng)關MAC號,傳感器節(jié)點控制器ID號,ZigBee信號強度值,傳感網(wǎng)狀態(tài)。JavaScript實現(xiàn)數(shù)據(jù)實時刷新,刷新周期為2秒。為減少系統(tǒng)時延,數(shù)據(jù)刷新時間應小于網(wǎng)關數(shù)據(jù)上傳周期。圖9實時數(shù)據(jù)Web界面圖10實時數(shù)據(jù)與設備狀態(tài)看板生產線看板界面基于PythonKivy開發(fā),包括實時數(shù)據(jù)與設備狀態(tài)看板、歷史數(shù)據(jù)統(tǒng)計看板等多塊看板,看板掛置在每條生產線頭部。實時數(shù)據(jù)與設備狀態(tài)看板。
5、結束語。
本文根據(jù)某大型鞋服針織品制造企業(yè)要求,結合該企業(yè)生產車間現(xiàn)場環(huán)境情況,借鑒原型系統(tǒng)開發(fā)經(jīng)驗,基于大量研究和實踐,設計了一種離散型生產車間數(shù)據(jù)采集與監(jiān)控系統(tǒng)。目前,系統(tǒng)已在目標企業(yè)小規(guī)模上線。后續(xù)考慮對傳感網(wǎng)數(shù)據(jù)基于樸素貝葉斯算法分類并實現(xiàn)業(yè)務層模塊化。
【生產車間數(shù)據(jù)采集與監(jiān)控系統(tǒng)探討論文】相關文章:
無線數(shù)據(jù)采集在環(huán)境監(jiān)控系統(tǒng)中應用04-29
關于汽車轉角數(shù)據(jù)采集系統(tǒng)問題的簡要探討04-27
地震智能數(shù)據(jù)采集系統(tǒng)04-30
制藥企業(yè)生產過程的數(shù)據(jù)采集及電子記錄系統(tǒng)04-30
具有故障保護功能的數(shù)據(jù)采集系統(tǒng)05-01
Windows 95下智能數(shù)據(jù)采集系統(tǒng)05-01
海洋測繪內業(yè)數(shù)據(jù)采集系統(tǒng)04-28
VXI數(shù)據(jù)采集系統(tǒng)的建立及其應用04-27