• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于MQTT協(xié)議的車間設(shè)備物聯(lián)網(wǎng)系統(tǒng)研發(fā)*

      2019-05-07 12:28:18楊繼新劉志宇王德權(quán)
      關(guān)鍵詞:服務(wù)端通訊車間

      何 體,楊繼新,劉志宇,王德權(quán)

      (大連工業(yè)大學(xué) 國(guó)家海洋食品工程技術(shù)研究中心,遼寧 大連 116034)

      0 引言

      目前國(guó)內(nèi)外的車間設(shè)備物聯(lián)網(wǎng)系統(tǒng)主要以連續(xù)型的裝配行業(yè)為主[1],對(duì)于離散制造行業(yè)的研發(fā)投入較為低下。主要原因在于,無(wú)論是小型電子行業(yè)還是大型汽車裝配行業(yè),其裝配線體(或者是裝配設(shè)備)都規(guī)?;?大規(guī)模從單一設(shè)備廠商定制)、連續(xù)化(整個(gè)生產(chǎn)過(guò)程連續(xù)不間斷,產(chǎn)品零件上下直至產(chǎn)成品下線,均在一個(gè)時(shí)間軸上完成,先后順序明確)[2-4];然而離散制造的設(shè)備種類不一、新舊不一、生產(chǎn)制造環(huán)境惡劣導(dǎo)致了物聯(lián)網(wǎng)系統(tǒng)推進(jìn)進(jìn)程緩慢。

      其中,連續(xù)制造業(yè)的物聯(lián)網(wǎng)系統(tǒng),通訊方式門類眾多(TCP、UDP等傳統(tǒng)通訊技術(shù)、ZMQ等新興的通訊技術(shù)),以及通訊協(xié)議復(fù)雜多樣(Modbus、Http或者廠商自定義的等)。由此造成的通訊效率低下,上層物聯(lián)網(wǎng)系統(tǒng)的開(kāi)發(fā)困難等問(wèn)題,一直困擾著整個(gè)行業(yè)的發(fā)展。

      本系統(tǒng)的成功研發(fā),不僅實(shí)現(xiàn)了在Z公司的離散制造車間部署物聯(lián)網(wǎng)系統(tǒng),而且成功的將基于MQTT標(biāo)準(zhǔn)通訊協(xié)議的系統(tǒng)架構(gòu)使用,為物聯(lián)網(wǎng)系統(tǒng)的通訊系統(tǒng)提供了可靠的技術(shù)保證。

      1 通訊服務(wù)架構(gòu)

      物聯(lián)網(wǎng)系統(tǒng)顧名思義,就是將車間物體(即車間設(shè)備等)進(jìn)行組網(wǎng)[5],通過(guò)網(wǎng)絡(luò)上層系統(tǒng)統(tǒng)一控制、分配資源,消除底層設(shè)備信息孤島,使整個(gè)車間甚至于整個(gè)公司融為一體,提升企業(yè)的綜合管理能力,從而降低企業(yè)運(yùn)行成本。

      核心通訊層,即為本系統(tǒng)研發(fā)的重中之重。核心通訊,是一切設(shè)備互聯(lián)互通的基礎(chǔ),是整套物聯(lián)網(wǎng)系統(tǒng)的核心。

      本系統(tǒng)的核心通訊,采用的是IBM公司提出的MQTT(Message Queuing Telemetry Transport,消息隊(duì)列遙測(cè)傳輸)即時(shí)通訊協(xié)議[6]。該協(xié)議針對(duì)物聯(lián)網(wǎng)設(shè)計(jì),可應(yīng)用于目前所有主流平臺(tái)(Windows、Linux、Unix等)[7]。

      不同于傳統(tǒng)的設(shè)計(jì)理念——將通訊服務(wù)端集成在業(yè)務(wù)邏輯處理服務(wù)中,使原本只需要進(jìn)行業(yè)務(wù)邏輯處理的服務(wù)既需要處理通訊業(yè)務(wù),又需要進(jìn)行邏輯業(yè)務(wù)處理。本文在開(kāi)發(fā)過(guò)程中,獨(dú)創(chuàng)性的將其分為業(yè)務(wù)處理服務(wù)和通訊服務(wù)進(jìn)行實(shí)現(xiàn),如圖1所示:將整個(gè)服務(wù)系統(tǒng),拆分設(shè)計(jì)成兩個(gè)并列的服務(wù)端,一個(gè)服務(wù)端用來(lái)處理消息通訊,一個(gè)服務(wù)端用來(lái)處理業(yè)務(wù)邏輯。兩者并列存在于服務(wù)器中,業(yè)務(wù)處理服務(wù)端作為中轉(zhuǎn)通訊服務(wù)的連接服務(wù)。此設(shè)計(jì)可大幅度降低系統(tǒng)的冗余,提升系統(tǒng)的可維護(hù)性。

      圖1 通訊服務(wù)關(guān)系圖

      整套系統(tǒng)的核心在于開(kāi)設(shè)中轉(zhuǎn)服務(wù)系統(tǒng),為全部信息提供中轉(zhuǎn)服務(wù),在本系統(tǒng)中將其命名為MQ-Server。開(kāi)發(fā)過(guò)程中,將MQ-Server剝離出來(lái),使其獨(dú)立于邏輯處理服務(wù),僅作為消息中轉(zhuǎn)服務(wù)端存在,而不進(jìn)行任何邏輯處理,類似物流中心。此設(shè)計(jì)方式能夠?qū)⑿畔⒘鲗?dǎo)向不同的業(yè)務(wù)處理服務(wù)中,一方面能夠緩解信息處理壓力,提升信息流轉(zhuǎn)速度;另一方面,提升系統(tǒng)穩(wěn)定性。

      主要優(yōu)點(diǎn)在于根據(jù)發(fā)布訂閱模式信息,將不同客戶端(MQ-Client,通訊的另一部分)發(fā)布的消息送往不同的訂閱客戶端,進(jìn)而實(shí)現(xiàn)端對(duì)端的處理,消息轉(zhuǎn)發(fā)處理過(guò)程中,完全依據(jù)發(fā)布訂閱的信息通道。除此通道外,不做IP地址和端口的區(qū)分,有別于傳統(tǒng)的Win Socket通訊。

      系統(tǒng)開(kāi)發(fā)基于微軟.NET平臺(tái),使用高級(jí)語(yǔ)言C#開(kāi)發(fā)[8-9]。采用異步方法和線程池等技術(shù)進(jìn)行服務(wù)端代碼實(shí)現(xiàn)。

      圖2 通訊系統(tǒng)架構(gòu)圖

      MQ-Sever作為整個(gè)系統(tǒng)的“物流集散中心”,需要具有較大的 “吞吐能力”。能夠高效、穩(wěn)定的實(shí)現(xiàn)對(duì)信息并發(fā)的處理。

      利用.NET框架的機(jī)制,從而更穩(wěn)定的實(shí)現(xiàn)多方法并發(fā)時(shí)的異步處理,提升系統(tǒng)開(kāi)發(fā)的便捷性和系統(tǒng)使用過(guò)程中的穩(wěn)定性。

      系統(tǒng)和開(kāi)發(fā)流程如圖2所示,設(shè)計(jì)過(guò)程中,本文將系統(tǒng)服務(wù)限制為只提供會(huì)話通道,會(huì)話通道由客戶端登陸時(shí),系統(tǒng)自動(dòng)提建立。由于會(huì)話通道之間相互獨(dú)立,互不影響,而且需要共同運(yùn)行,所以使用線程池技術(shù),將每個(gè)會(huì)話運(yùn)行在自己獨(dú)立的線程中。

      客戶端連接服務(wù)之后,雖然成功建立會(huì)話,但是客戶端之間并沒(méi)有進(jìn)行信息通訊,在各客戶端通過(guò)發(fā)布/訂閱通訊主題后實(shí)現(xiàn)通訊,通訊服務(wù)只和發(fā)布/訂閱的主題有關(guān),對(duì)會(huì)話通道中的客戶端數(shù)量之作上限數(shù)量控制。

      由于本服務(wù)只作中轉(zhuǎn),不做任何UI交互,所以開(kāi)發(fā)過(guò)程中,服務(wù)端UI界面以簡(jiǎn)潔為主,故而使用控制臺(tái)的方式顯示。顯示內(nèi)容從實(shí)際出發(fā),采用固定設(shè)計(jì)格式:時(shí)間+客戶端名稱+發(fā)布內(nèi)容+發(fā)布字節(jié)數(shù)量,其目的是為了方便監(jiān)控客戶端消息發(fā)送情況。

      本文在開(kāi)發(fā)設(shè)計(jì)時(shí),將發(fā)布訂閱進(jìn)行了標(biāo)準(zhǔn)化設(shè)計(jì),后續(xù)開(kāi)發(fā)者可以通過(guò)簡(jiǎn)單的表格配置,直接使用本系統(tǒng)的通訊功能,不需要編寫任何代碼。發(fā)布訂閱的對(duì)應(yīng)關(guān)系如表1所示,通過(guò)自動(dòng)實(shí)現(xiàn)拼接“工位”+“發(fā)布訂閱”,實(shí)現(xiàn)每條信息的精確發(fā)布和接收。

      表1 發(fā)布訂閱關(guān)系匹配表

      2 RFID采集系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

      RFID(Radio Frequency Identification ,射頻識(shí)別)。RFID由讀寫器和讀寫標(biāo)簽(工業(yè)中稱為碼塊)組成:讀寫器負(fù)責(zé)讀取碼塊信息,被固定線體或者設(shè)備上;碼塊隨著生產(chǎn)過(guò)程進(jìn)行流轉(zhuǎn)[10-12]。

      作為物聯(lián)網(wǎng)系統(tǒng)的信息載體,RFID信息采集系統(tǒng)利用MQ-Server進(jìn)行信息集散。RFID功能實(shí)現(xiàn)的設(shè)計(jì)流程如下:當(dāng)工件達(dá)到加工工位之后,底層控制系統(tǒng)(一般稱為下位機(jī)系統(tǒng))給上層控制系統(tǒng)(一般稱為上位機(jī)系統(tǒng))反饋到位信號(hào),上層系統(tǒng)接收到工件到位信號(hào)之后,首先會(huì)對(duì)自身的會(huì)話(與MQ-Server的會(huì)話)狀態(tài)進(jìn)行查驗(yàn),如果會(huì)話狀態(tài)出現(xiàn)問(wèn)題,則自動(dòng)刷新系統(tǒng),重新與MQ-Server建立通訊,并將異常寫入系統(tǒng)日志,嘗試3次后,系統(tǒng)將通過(guò)UI拋出異常;如果會(huì)話狀態(tài)正常,RFID系統(tǒng)將尋找具有RFID通訊功能的發(fā)布訂閱主題(RFID/ZY10103,表1中所示),并判斷自身是否具有該主題的發(fā)布功能,并通過(guò)該主題將RFID碼塊讀取信息進(jìn)行發(fā)布。

      3 系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì)與實(shí)現(xiàn)

      本系統(tǒng)使用了微軟的SQL Server 2016 的企業(yè)版,主要用來(lái)進(jìn)行生產(chǎn)過(guò)程中產(chǎn)生的設(shè)備狀態(tài)等數(shù)據(jù)、基礎(chǔ)配置數(shù)據(jù)存儲(chǔ)等。

      數(shù)據(jù)庫(kù)設(shè)計(jì)主要是數(shù)據(jù)表的設(shè)計(jì),通過(guò)設(shè)計(jì)科學(xué)合理的數(shù)據(jù)表字段、數(shù)據(jù)格式可以大幅度提升數(shù)據(jù)庫(kù)的可讀性和提升數(shù)據(jù)查詢的速度[13]。

      表2為基礎(chǔ)通訊配置表,通過(guò)定義合理的字段、數(shù)據(jù)格式、主外鍵高效、快速的進(jìn)行數(shù)據(jù)查詢。

      表2 基礎(chǔ)通訊配置表

      4 結(jié)束語(yǔ)

      通過(guò)數(shù)月的應(yīng)用,本系統(tǒng)整體運(yùn)行平穩(wěn),雖偶爾發(fā)生連接超時(shí)報(bào)錯(cuò),但運(yùn)行功能均在合理可控范圍之內(nèi)。

      針對(duì)運(yùn)行連接報(bào)錯(cuò)問(wèn)題,目前出現(xiàn)次數(shù)少,無(wú)法明確問(wèn)題點(diǎn),將會(huì)在后續(xù)運(yùn)行階段繼續(xù)跟蹤,找到問(wèn)題后,通過(guò)版本升級(jí)進(jìn)行服務(wù)更新。

      猜你喜歡
      服務(wù)端通訊車間
      《茶葉通訊》簡(jiǎn)介
      茶葉通訊(2022年2期)2022-11-15 08:53:56
      《茶葉通訊》簡(jiǎn)介
      茶葉通訊(2022年3期)2022-11-11 08:43:50
      通訊報(bào)道
      100MW光伏車間自動(dòng)化改造方案設(shè)計(jì)
      智能制造(2021年4期)2021-11-04 08:54:28
      招工啦
      云存儲(chǔ)中基于相似性的客戶-服務(wù)端雙端數(shù)據(jù)去重方法
      新時(shí)期《移動(dòng)Web服務(wù)端開(kāi)發(fā)》課程教學(xué)改革的研究
      “扶貧車間”拔窮根
      在Windows Server 2008上創(chuàng)建應(yīng)用
      把農(nóng)業(yè)搬進(jìn)車間
      钦州市| 射洪县| 海淀区| 凤阳县| 都安| 贺州市| 紫金县| 贵阳市| 寿宁县| 四平市| 九龙县| 濉溪县| 揭阳市| 平安县| 弋阳县| 清徐县| 策勒县| 宁强县| 出国| 三亚市| 托里县| 唐河县| 于都县| 白沙| 洛南县| 浪卡子县| 四子王旗| 永靖县| 布尔津县| 仲巴县| 西吉县| 黄龙县| 山东| 阿克陶县| 丹寨县| 抚松县| 泾源县| 西华县| 清涧县| 双鸭山市| 和政县|