• 
    

    
    

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

      基于TCP/IP的安東系統(tǒng)管理軟件設(shè)計(jì)與實(shí)現(xiàn)

      2020-04-24 14:50:40趙勇
      電腦知識(shí)與技術(shù) 2020年5期

      摘要:針對(duì)車間產(chǎn)線異常停工,降低產(chǎn)品質(zhì)量和影響作業(yè)效率等問(wèn)題,提出了安東系統(tǒng)的解決方案。車間現(xiàn)場(chǎng)使用LoRa網(wǎng)絡(luò)組件,實(shí)現(xiàn)了低成本快速靈活的部署,安東系統(tǒng)管理軟件通過(guò)C#軟件和TCP/lP協(xié)議就可實(shí)現(xiàn)對(duì)車間工位信息的采集和管理。有效地提高了產(chǎn)線的效率,為公司的精益管理提供了技術(shù)支撐。

      關(guān)鍵詞:TCP/lP;C#;LoRa;安東系統(tǒng)

      中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A

      文章編號(hào):1009-3044(2020)05-0094-03

      開(kāi)放科學(xué)(資源服務(wù))標(biāo)識(shí)碼(OSID):

      1 背景

      當(dāng)前制造業(yè)面臨著巨大的競(jìng)爭(zhēng)壓力,必須不斷地提高生產(chǎn)效率,降低生產(chǎn)成本。為了提高生產(chǎn)效率,必須減少生產(chǎn)線的停工時(shí)間,時(shí)刻關(guān)注和控制產(chǎn)品質(zhì)量。安東系統(tǒng)作為精益生產(chǎn)制造管理的一個(gè)核心工具,在制造過(guò)程利用安東系統(tǒng)可對(duì)生產(chǎn)現(xiàn)場(chǎng)的設(shè)備、人員、品質(zhì)、物料等問(wèn)題進(jìn)行可視化管理,使員工和主管等相關(guān)人員能在第一時(shí)間發(fā)現(xiàn)問(wèn)題的根源并解決問(wèn)題。

      本文采用LoRa技術(shù),在產(chǎn)線的各個(gè)工位布置RS485終端采集安東系統(tǒng)按鍵操作盤信號(hào),各工位信號(hào)通過(guò)LoRa網(wǎng)絡(luò)將信號(hào)傳輸?shù)郊衅?,集中器按照固定時(shí)間輪詢產(chǎn)線工位,安東系統(tǒng)管理軟件通過(guò)TCP/IP與集中器通訊,采集工位信號(hào),并將實(shí)時(shí)數(shù)據(jù)和異常處理過(guò)程的完整信息記錄在MySQL數(shù)據(jù)庫(kù)中。

      2 系統(tǒng)設(shè)計(jì)及關(guān)鍵技術(shù)

      基于TCP/IP的安東系統(tǒng)管理軟件包括兩個(gè)部分:一部分是使用基于LoRa技術(shù)采集現(xiàn)場(chǎng)數(shù)據(jù)的網(wǎng)絡(luò)部分,另一部分是C#語(yǔ)言開(kāi)發(fā)的安東系統(tǒng)管理軟件。

      系統(tǒng)采用了串口和LoRa網(wǎng)絡(luò)將先將現(xiàn)場(chǎng)操作盤的信號(hào)采集到LoRa集中器中,集中器和安東系統(tǒng)管理軟件安裝的服務(wù)器采用以太網(wǎng)技術(shù)相連接。LoRa集中器IP和服務(wù)器IP地址設(shè)定在相同的網(wǎng)段,保證LoRa集中器和服務(wù)器之間可以正常交換數(shù)據(jù)。在服務(wù)器上部署Visual Studi02015開(kāi)發(fā)平臺(tái)和MySQL數(shù)據(jù)庫(kù),使用C#編程語(yǔ)言編寫TCP/IP通訊程序,采集數(shù)據(jù)并將數(shù)據(jù)和處理結(jié)果插入數(shù)據(jù)庫(kù)中,根據(jù)故障信號(hào)等級(jí)通過(guò)短信或微信發(fā)送故障信息。利用多線程技術(shù)完成TCP/IP通訊

      2.1 LoRa網(wǎng)絡(luò)結(jié)構(gòu)

      LoRa整體網(wǎng)絡(luò)結(jié)構(gòu)分為終端和網(wǎng)關(guān)。終端節(jié)點(diǎn)可以同時(shí)發(fā)給多個(gè)基站,一般LoRa終端和網(wǎng)關(guān)之間可以通過(guò)LoRa無(wú)線技術(shù)進(jìn)行數(shù)據(jù)傳輸,而網(wǎng)關(guān)和服務(wù)器之間的交互可以通過(guò)TCP/IP協(xié)議。物理連接可以是以太網(wǎng)、4G網(wǎng)和無(wú)線網(wǎng)絡(luò)等。

      2.2 TCP/IP通信協(xié)議的實(shí)現(xiàn)

      TCP/IP協(xié)議概念層模型中分為四層自下而上分別為鏈路層、網(wǎng)絡(luò)層、傳輸層和應(yīng)用層詳見(jiàn)圖1。在安東系統(tǒng)管理軟件與LoRa通信過(guò)程中分別與之一一對(duì)應(yīng)。鏈路層:使用LoRa集中器將各工位信號(hào)統(tǒng)一成工業(yè)以太網(wǎng)接口;網(wǎng)絡(luò)層:使用TCP/IP協(xié)議中的IP協(xié)議定義了網(wǎng)段地址,區(qū)分網(wǎng)段,對(duì)不同子網(wǎng)的數(shù)據(jù)包進(jìn)行路由;傳輸層:定義端口,標(biāo)識(shí)應(yīng)用程序身份,實(shí)現(xiàn)端口到端口的通信;應(yīng)用層:與通信內(nèi)容有關(guān),定義數(shù)據(jù)格式并按照對(duì)應(yīng)的格式解讀數(shù)據(jù)。Socket是應(yīng)用層與TCP/IP協(xié)議族通信的中間軟件抽象層,是一組接口,它把復(fù)雜的TCP/IP協(xié)議族隱藏在Socket接口后面。

      2.3 多線程

      一個(gè)正在運(yùn)行的應(yīng)用程序在操作系統(tǒng)中被視為一個(gè)進(jìn)程。線程是進(jìn)程中的基本執(zhí)行單元,是操作系統(tǒng)分配CPU時(shí)間的基本單位,一個(gè)進(jìn)程可以包含若干個(gè)線程,在進(jìn)程入口執(zhí)行的第一個(gè)線程被視為這個(gè)進(jìn)程的主線程。在.NET應(yīng)用中,都是以Main()方法作為入口的。

      安東系統(tǒng)管理軟件作為服務(wù)器端在與LoRa集中器之間TCP[IP通訊就內(nèi)置了多個(gè)線程,可以通過(guò)多線程程序分別負(fù)責(zé)實(shí)現(xiàn)服務(wù)器端偵聽(tīng)是否有連接的請(qǐng)求并接受客戶端的連接和負(fù)責(zé)服務(wù)器與客戶端通信。

      3 LoRa網(wǎng)絡(luò)配置

      LoRa網(wǎng)絡(luò)主要由多個(gè)串口轉(zhuǎn)換終端和一個(gè)集中器組成。串口轉(zhuǎn)換終端支持RS232和RS485連接方式,參數(shù)設(shè)置分為串口基本參數(shù)設(shè)置和LoRa參數(shù)設(shè)置。串口基本參數(shù)設(shè)置如波特率、數(shù)據(jù)位、校驗(yàn)、停止位等和操作盤保持一致;LoRa參數(shù)設(shè)置包括通信速率,通信信道及身份識(shí)別的應(yīng)用ID與集中器保持一致。集中器配置分為服務(wù)器參數(shù)和基本參數(shù)。服務(wù)器參數(shù):協(xié)議類型選擇TCP client集中器配置為客戶端,服務(wù)器IP和端口與服務(wù)器參數(shù)一致;基本參數(shù)設(shè)置集中器工作在輪詢喚醒模式,通信的串口轉(zhuǎn)換終端節(jié)點(diǎn)數(shù)量,輪詢的通信數(shù)據(jù)幀和輪詢的時(shí)間等。

      4 系統(tǒng)軟件實(shí)現(xiàn)

      安東系統(tǒng)管理軟件程序設(shè)計(jì)主要由:數(shù)據(jù)采集解析、數(shù)據(jù)業(yè)務(wù)邏輯處理和報(bào)警信息及處理結(jié)果寫入數(shù)據(jù)庫(kù)三部分組成。數(shù)據(jù)業(yè)務(wù)邏輯處理和數(shù)據(jù)庫(kù)部分根據(jù)客戶的要求會(huì)各不相同,這里主要講述TCP服務(wù)端通信的實(shí)現(xiàn)。

      4.1 通信接口設(shè)計(jì)

      TCP通信是面向連接的通信,所以在通信之前,客戶端與服務(wù)器端必須通過(guò)三次握手建立連接然后在通信完畢,還要通過(guò)四次揮手?jǐn)嚅_(kāi)連接。建立連接后首先安東系統(tǒng)管理軟件作為TCP服務(wù)器端需要申請(qǐng)一個(gè)socket綁定到服務(wù)器IP地址和一個(gè)端口上,負(fù)責(zé)監(jiān)聽(tīng)客戶端的消息;然后客戶端LoRa集中器新建socket連接到服務(wù)器指定端口;最后安東系統(tǒng)管理軟件負(fù)責(zé)監(jiān)聽(tīng)的socket,監(jiān)聽(tīng)到客戶端有連接過(guò)來(lái)了,就創(chuàng)建一個(gè)負(fù)責(zé)和客戶端通信的socket,等待接收連接程序和發(fā)送數(shù)據(jù)等。安東系統(tǒng)管理軟件需要不斷的讀取LoRa集中器的信息所以建立長(zhǎng)連接模式,所有讀寫請(qǐng)求都利用建立的公用通道來(lái)完成,這樣讀寫性能更高效,即使多線程調(diào)用情況下也不會(huì)受影響。安東系統(tǒng)管理軟件服務(wù)器端流程詳見(jiàn)圖2。

      4.2 TCP服務(wù)器端軟件編程實(shí)現(xiàn)

      1)服務(wù)器端定義用于監(jiān)聽(tīng)的Socket對(duì)象:把IP和端口綁定到Socket上:

      Socket socketw= new Socket(AddressFamily.InterNetwork,

      SocketType.Stream, Protoc olType.Tcp);

      IPAddress ip= IPAddress.Parse(" 192. 168.1.208”);

      IPEndPoint point= new IPEndPoint(ip, 1883);

      socketw.Bind(point);

      socketw.Listen(10);

      2)開(kāi)啟新線程調(diào)用Listen方法進(jìn)行監(jiān)聽(tīng):

      Thread th= new Thread(Listen);

      th.IsBackground= true;

      th.Start(socketw);

      3) Listen方法中循環(huán)監(jiān)聽(tīng),并新建一個(gè)socketS負(fù)責(zé)跟客戶端通信,新建一個(gè)線程調(diào)用Receive方法用于接收消息:

      Socket socketS;

      void Listen(object o)

      f Socket socketWatch=o as Socket;

      while (true)

      { socketS= socketWatch.Accept0;

      dicSocket.Add(socketS.RemoteEndPoint.ToString0, socketS);

      while (true)

      {Thread th= new Thread(Receive);

      th.IsBackground= true;

      th.Start(socketS);)】】

      Dictionary dicSocket = new Dictionarv0;

      4) Receive方法中循環(huán)處理接收的消息:

      void Receive(object o)

      {Socket socketSend=o as Socket;

      while (true)

      { try

      {byteo buffer= new byte[36];

      int len= socketSend.Receive(buffer);

      if (len==0){break;)

      string str= Encoding.UTF8.GetString(buffer,0, len);)

      catch{¨

      4.3 系統(tǒng)界面

      安東系統(tǒng)管理軟件界面包括工位狀態(tài)、報(bào)警匯總、數(shù)據(jù)統(tǒng)計(jì)和系統(tǒng)設(shè)置。工位狀態(tài)實(shí)時(shí)顯示每個(gè)工位運(yùn)行的狀態(tài),顯示當(dāng)前報(bào)警信息、待處理的報(bào)警信息和已經(jīng)處理的報(bào)警信息;報(bào)警匯總顯示所有已經(jīng)發(fā)生并處理過(guò)的報(bào)警信息;數(shù)據(jù)統(tǒng)計(jì)顯示各工位報(bào)警發(fā)生的頻率統(tǒng)計(jì)等信息;系統(tǒng)設(shè)置可設(shè)置報(bào)警的延遲時(shí)間、報(bào)警發(fā)送的短信或微信賬號(hào)等。

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

      隨著制造業(yè)的快速發(fā)展,企業(yè)精益化管理勢(shì)在必行。安東系統(tǒng)將生產(chǎn)線工位與管理者相連,在任何有異常狀況時(shí)發(fā)出信號(hào),可以充分暴露和改善生產(chǎn)現(xiàn)場(chǎng)的問(wèn)題,有效地提高作業(yè)效率,為企業(yè)的精益化管理提供了有效的技術(shù)支撐。

      本文基于TCP/IP通訊技術(shù),使用LoRa網(wǎng)絡(luò)組件實(shí)現(xiàn)了車間產(chǎn)線安東系統(tǒng)。同時(shí)使用C#語(yǔ)言開(kāi)發(fā)的安東系統(tǒng)管理軟件,實(shí)時(shí)采集產(chǎn)線工位的故障信息,存儲(chǔ)故障及故障處理信息,提供短信或微信報(bào)警等功能。有效減少了由于設(shè)備故障或物料不足而造成的生產(chǎn)線的停線情況,為企業(yè)生產(chǎn)和管理提供了技術(shù)依據(jù)。

      參考文獻(xiàn):

      [1]馮慶東,楊麗.C#項(xiàng)目開(kāi)發(fā)全程實(shí)錄[M].3版.北京:清華大學(xué)出版社.2013.

      [2] Karli Waston.C#入門經(jīng)典Christian Nagel[M].3版.北京:清華大學(xué)出版社,2006.

      [3] Ben Forta.MySQL必知必會(huì)[M].北京:人民郵電出版社,2009.

      [4]史蒂文斯.TCP/IP詳解卷1:協(xié)議[M].北京:機(jī)械工業(yè)出版社,2000.

      【通聯(lián)編輯:謝媛媛】

      收稿日期:2019 -12 -15

      作者簡(jiǎn)介:趙勇(1974-),甘肅天水人,工程師,主要從事自動(dòng)控制系統(tǒng)設(shè)計(jì)及應(yīng)用工作。

      新竹县| 济南市| 册亨县| 康马县| 五常市| 江门市| 庆阳市| 长乐市| 海南省| 河津市| 克拉玛依市| 东丽区| 宜兴市| 兰西县| 阳春市| 沽源县| 渑池县| 承德县| 长宁县| 琼海市| 五寨县| 会宁县| 永春县| 扎兰屯市| 襄垣县| 双柏县| 灵宝市| 札达县| 黑水县| 泰安市| 胶州市| 霸州市| 凤翔县| 霍山县| 共和县| 桐乡市| 汝南县| 都昌县| 海林市| 上高县| 泾阳县|