• 
    

    
    

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

      ?

      基于WinForm的不銹鋼產(chǎn)線云端電機故障處理系統(tǒng)設(shè)計

      2023-04-14 17:45:02陳奕夫張前進(jìn)
      電腦知識與技術(shù) 2023年6期
      關(guān)鍵詞:云端設(shè)計

      陳奕夫 張前進(jìn)

      摘要:在不銹鋼生產(chǎn)過程中,機械設(shè)備有概率出現(xiàn)非預(yù)估的機械故障或因不銹鋼板面不均導(dǎo)致的電機過載等現(xiàn)象。由于部分產(chǎn)線工藝復(fù)雜,產(chǎn)線狀態(tài)需要工人去監(jiān)控,在電機密集區(qū)域工人無暇顧及,出現(xiàn)問題需要產(chǎn)線工人前往對應(yīng)區(qū)域的HMI處才能控制,大大增加了問題處理時間、降低了產(chǎn)線生產(chǎn)效率。與此同時,許多工業(yè)軟件需要大量的“點數(shù)授權(quán)費用”,增加了小型生產(chǎn)線的成本。對此,文章提出一種基于WinForm的云端電機故障檢測系統(tǒng)的設(shè)計思路,在本地及云端布置系統(tǒng),將可疑數(shù)據(jù)傳輸至云端中進(jìn)行檢測處理。

      關(guān)鍵詞:WinForm;云端;故障檢測處理系統(tǒng);設(shè)計

      中圖分類號:TP311.1? ? ?文獻(xiàn)標(biāo)識碼:A

      文章編號:1009-3044(2023)06-0090-04

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

      0 引言

      現(xiàn)如今,隨著“中國智造2025”等一系列國家戰(zhàn)略發(fā)展方向政策的出臺,傳統(tǒng)工廠需要逐步推進(jìn)智能化建設(shè),更新硬件設(shè)備與軟件系統(tǒng),以提升工廠生產(chǎn)線的生產(chǎn)效率、提高產(chǎn)線可靠性、減少故障排查的時間等。其中減少故障排查時間困擾著大部分的工廠。

      在確保硬件設(shè)備可靠性后,故障檢測軟件系統(tǒng)也成為許多低端工廠的“痛點”,其授權(quán)費用高、應(yīng)用效果不好、配置繁瑣的特點使得許多工廠望而卻步。編輯提出一種基于WinForm的云端電機故障處理系統(tǒng),該系統(tǒng)檢測到可疑數(shù)據(jù)的同時將數(shù)據(jù)轉(zhuǎn)發(fā)至云端分析,待分析結(jié)果出現(xiàn)后便將控制指令返回至產(chǎn)線控制器,這樣做的好處是減少了產(chǎn)線控制器的內(nèi)存占用、提高了故障檢測的精度、可在已投產(chǎn)的產(chǎn)線基礎(chǔ)上增加該系統(tǒng)等。與此同時,該系統(tǒng)設(shè)計均由開源代碼開發(fā),不需要繳納巨額的專利費用或點數(shù)費用,后期擴展性好。

      WinForm是.NET開發(fā)平臺對Windows Form的一種稱謂,WinForm有以下幾個重要特點。1)功能強大。Windows的窗體可用于設(shè)計窗體以及使用其可視控件,以創(chuàng)建豐富的基于Windows平臺的應(yīng)用程序。2)操作方便。得益于微軟公司對WinForm的支持,WinForm包含著許多簡易的方法函數(shù),降低了編程人員的工作量,與此同時,編程人員也可在Nuget開源項目中獲取到豐富的技術(shù)支持。3)使用安全[1]。WinForm充分利用公共語言運行庫的安全特性,同時擁有內(nèi)存自動管理機制,大大降低了內(nèi)存泄漏等難以察覺的問題的發(fā)生概率。

      1 系統(tǒng)設(shè)計

      1.1 總體設(shè)計

      設(shè)計該云端故障檢測系統(tǒng)所使用的軟件是Visual Studio Community 2022,以WinForm為C/S開發(fā)架構(gòu),選擇MySQL數(shù)據(jù)庫對產(chǎn)線本地數(shù)據(jù)實時記錄以及云端數(shù)據(jù)信息持久化存儲,使用Modbus TCP協(xié)議進(jìn)行可編程邏輯控制器(Programmable Logic Controller,下文均寫作PLC)的數(shù)據(jù)傳輸。

      本系統(tǒng)由兩臺計算機組成,一部用于生產(chǎn)線數(shù)據(jù)采集,另一部作為云端服務(wù)器對可疑數(shù)據(jù)進(jìn)行專業(yè)的分析。其中,產(chǎn)線工業(yè)控制計算機(以下簡稱產(chǎn)線工控機)可選擇通過Modbus TCP或其他開源的通訊協(xié)議對可編程控制器或產(chǎn)線傳感器進(jìn)行數(shù)據(jù)監(jiān)控以及采集工作;產(chǎn)線工控機通過單向Socket連接模式與云端服務(wù)器進(jìn)行短連接。

      1.2 數(shù)據(jù)采集系統(tǒng)設(shè)計

      產(chǎn)線工控機與生產(chǎn)線PLC采用Modbus TCP連接并交互數(shù)據(jù),或使用特定廠家定制的通訊協(xié)議進(jìn)行通訊。大部分廠商的PLC均支持Modbus TCP通訊協(xié)議,以下將使用Siemens S7-1515-2PN系列PLC作為例子,演示PLC與產(chǎn)線工業(yè)控制計算機之間的Modbus TCP長連接。S7-1515-2PN使用Siemens TIA Portal V15.1進(jìn)行軟件編程,該軟件提供了S7-1500系列CPU在Modbus通訊中作為主站與從站的兩種功能塊;在S7-1500的組態(tài)中,使用的Modbus TCP為V5.0版本,該版本需要固件V2.5版本以上支持[2]。

      PLC與產(chǎn)線工控機使用雙向連接模式,PLC使用客戶端向產(chǎn)線工控機發(fā)送數(shù)據(jù),工控機使用服務(wù)端接收數(shù)據(jù);當(dāng)工控機需要向PLC發(fā)送數(shù)據(jù)時,則自動建立客戶端訪問PLC的服務(wù)端。該雙向連接模式實現(xiàn)了數(shù)據(jù)流收發(fā)獨立,避免了收發(fā)數(shù)據(jù)串行的問題,且通訊效率高,方便日后維護(hù),連接模型如圖3所示。

      其中,REQ輸入端為時鐘輸入,上升沿觸發(fā)數(shù)據(jù)的發(fā)送;CONT輸入端為建立通訊使能端,輸入為true時激活通訊;CONNECT輸入端為連接對應(yīng)服務(wù)端的地址;DATA輸入端為傳輸數(shù)據(jù)的地址;DONE輸出端為顯示本次數(shù)據(jù)是否成功發(fā)送;BUSY輸出端為顯示數(shù)據(jù)是否發(fā)生沖突;ERROR輸出端為本次數(shù)據(jù)傳輸是否存在問題;STATUS輸出端為錯誤代碼。

      WinForm中配置Socket服務(wù)端網(wǎng)絡(luò)通訊訪問步驟如下:

      1) 實例化一個線程實例,實例化一個套接字實例。

      2) 綁定本機的IP和端口。

      3) 對于TCP協(xié)議的通訊,由于它是面向連接的通訊方式,因此需要使用Listen方法監(jiān)聽連接進(jìn)來的端口,待監(jiān)聽到連接時則使用Accept方法來返回套接字實例。

      4) 進(jìn)行Send/Receive操作[3]。

      5) 待信息傳輸完畢后關(guān)閉并釋放套接字實例。

      6) 開啟線程。

      非主線程套接字與PLC客戶端建立連接過程代碼如下:

      Thread thread = new Thread(() =>

      {

      Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);

      IPEndPoint ipe = new IPEndPoint(long.Parse("127.0.0.1"), 6666);

      socket.Bind(ipe);

      socket.Listen(10);

      socket = socket.Accept();

      MessageBox.Show("Connected!");

      socket.Close();

      socket.Dispose();

      });

      thread.Start();

      1.3 數(shù)據(jù)上傳系統(tǒng)設(shè)計

      產(chǎn)線工控機的服務(wù)端接收到來自PLC數(shù)據(jù)后,觸發(fā)數(shù)據(jù)初步檢驗線程,判定數(shù)據(jù)是否在正常區(qū)間內(nèi),其判定流程如圖5所示。

      可疑數(shù)據(jù)組將存放于產(chǎn)線工控機的本地MySQL數(shù)據(jù)庫中,其中存儲可疑數(shù)據(jù)的表單字段包含DataID(數(shù)據(jù)ID,主鍵),MachineID(電機位置),Current(電流值),Voltage(電壓值),IronLength(數(shù)據(jù)對應(yīng)的不銹鋼板長度)。

      使用者可根據(jù)實際需求設(shè)定電機數(shù)據(jù)的正常范圍以及數(shù)據(jù)采集計時器上限,可疑數(shù)據(jù)密度過大的數(shù)據(jù)組則認(rèn)定為可疑數(shù)據(jù)組。當(dāng)?shù)谝粋€可疑數(shù)據(jù)存入MySQL時,寫入語句將會觸發(fā)計時器記錄委托,當(dāng)計時器記錄到一定時間后結(jié)束計時,同時會以數(shù)據(jù)密度為準(zhǔn)則,判定是否上傳至云端進(jìn)行進(jìn)一步的故障分析。

      數(shù)據(jù)密度計算代碼如圖6所示。

      該類使用float數(shù)組類型保存可疑數(shù)據(jù),使用float類型數(shù)據(jù)“Normal”變量作為正常范圍值的上限,遍歷“SuspectNumbers”數(shù)組,當(dāng)數(shù)據(jù)不符合正常區(qū)間時將計數(shù)“Count”加一,若計數(shù)值大于數(shù)組長度一半以上,則認(rèn)為該組數(shù)據(jù)存在異常,觸發(fā)發(fā)送數(shù)據(jù)至云端數(shù)據(jù)庫函數(shù)。其中,產(chǎn)線工控機與云端服務(wù)器采用Socket短連接形式,采用單向Socket進(jìn)行收發(fā)數(shù)據(jù),當(dāng)一個故障處理周期過后,連接將自動斷開。

      1.4 云端反饋系統(tǒng)設(shè)計

      云端反饋系統(tǒng)包含著一個專家控制系統(tǒng),專家控制系統(tǒng)主要指的是一個智能計算機程序系統(tǒng),其內(nèi)部含有大量的某個領(lǐng)域?qū)<宜降闹R與經(jīng)驗,能夠利用人類專家的知識和解決問題的經(jīng)驗方法來處理該領(lǐng)域的高水平難題[4]。該專家控制系統(tǒng)會收集現(xiàn)場工程師針對不同故障的處理策略,在日后使用時自動適配故障處理策略。為防止新型故障的出現(xiàn),該系統(tǒng)也預(yù)留了增加故障處理策略的接口,現(xiàn)場工程師可在原策略數(shù)據(jù)庫的基礎(chǔ)上添加新的故障處理策略。當(dāng)專家系統(tǒng)無法適配對應(yīng)故障處理策略時,則向現(xiàn)場工程師發(fā)出告警,請求手動修正故障并存儲新的故障策略。

      待專家系統(tǒng)運算完畢或工程師手動選擇處理策略后,云端服務(wù)器將以原Socket鏈路返回數(shù)據(jù),以保證故障處理環(huán)節(jié)順序執(zhí)行。

      產(chǎn)線工控機接收到故障返回策略后將會建立Socket客戶端用以連接PLC的服務(wù)端,其連接過程步驟如下所示:

      1) 實例化一個線程,實例化一個套接字。

      2) 等待套接字客戶端連接至PLC服務(wù)端,若失敗則激活重連機制。

      3) 等待Send操作。

      4) Send一個字節(jié)后,判定是否連接成功,若成功則返回故障處理策略。

      5) 關(guān)閉連接,釋放套接字資源[5]。

      過程代碼如下所示:

      Thread thread = new Thread(async () => {

      List heartbeat = new List();

      heartbeat.Add(0x10);

      Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);

      IPEndPoint ipe = new IPEndPoint(long.Parse("192.168.99.10"), 3225);

      await socket.ConnectAsync(ipe);

      socket.Send(heartbeat.ToArray());

      if (socket.Connected)

      {

      List bytes = GetTatics(status).ToList();

      socket.Send(bytes.ToArray());

      }

      socket.Close();

      socket.Dispose();

      返回的故障處理策略將會在PLC上得到解析,分解成每一個電機的動作,例如停機,降低電壓、電流,請求更換電機配件等。產(chǎn)線工控機使用客戶端連接PLC上配置的服務(wù)端,服務(wù)端連接配置屬性如圖10所示。

      其中,EN_R輸入端口為程序啟用端;CONT輸入端為建立通訊使能端,當(dāng)輸入值為TRUE時將開始任意端口監(jiān)聽;DATA輸入端為接收數(shù)據(jù)存放地址;DONE輸出端為辨別當(dāng)前數(shù)據(jù)是否成功接收;BUSY輸出端為辨別接收數(shù)據(jù)是否沖突;ERROR輸出端為辨別接收數(shù)據(jù)時是否產(chǎn)生錯誤;STATUS輸出端為錯誤代碼;RCVD_LEN為接收數(shù)據(jù)的字節(jié)長度。每接收一次完整的數(shù)據(jù)后將自動將字節(jié)數(shù)組轉(zhuǎn)換成對應(yīng)指令寫入電機控制模塊中,以此完成故障處理。

      2 系統(tǒng)總結(jié)

      產(chǎn)線工控機實時收集產(chǎn)線電機數(shù)據(jù),檢測到可疑數(shù)據(jù)的出現(xiàn)后將開始計數(shù)收集數(shù)據(jù),若可疑數(shù)據(jù)密度較大則發(fā)送至云端反饋系統(tǒng)中分析,否則放棄該組數(shù)據(jù);云端檢測系統(tǒng)將可疑數(shù)據(jù)組與專家系統(tǒng)中的策略數(shù)據(jù)庫進(jìn)行比對,適配合適的故障應(yīng)對策略,若沒有合適的應(yīng)對策略,則向現(xiàn)場工程師發(fā)出手動修正故障請求并將新的故障處理策略存儲到策略數(shù)據(jù)庫中;最后故障應(yīng)對策略將通過產(chǎn)線工控機返還給PLC服務(wù)端接收模塊,PLC通過解析字節(jié)數(shù)據(jù)組應(yīng)用到產(chǎn)線故障電機處。

      3 結(jié)束語

      本文設(shè)計了一種基于WinForm框架開發(fā)的云端故障處理系統(tǒng),通過Modbus TCP通訊協(xié)議實時監(jiān)控電機數(shù)據(jù),并將可疑數(shù)據(jù)通過Socket連接模式上傳至云端故障處理策略庫中進(jìn)行比對分析,最后返回給PLC應(yīng)用策略。該系統(tǒng)大大減少了生產(chǎn)線工人的工作負(fù)荷,提高了故障辨識率,一定程度上提高了產(chǎn)線的生產(chǎn)效率。在人工智能時代,本系統(tǒng)僅是初級的智能系統(tǒng),系統(tǒng)架構(gòu)仍未到達(dá)最優(yōu),有一定程度上的資源浪費,故障診斷以及處理能力仍有很大的提升空間,相信未來的故障診斷系統(tǒng)將會加入更多優(yōu)化元素優(yōu)化系統(tǒng)架構(gòu),提高故障診斷精確度以及故障處理能力。

      參考文獻(xiàn):

      [1] 魏立明,季樹彬,孫佳隆.基于WinForm的設(shè)備管理系統(tǒng)的設(shè)計與實現(xiàn)[J].中國新技術(shù)新產(chǎn)品,2020(3):11-12.

      [2] 佘志遠(yuǎn),朱毅,肖萬彪,等.基于西門子1500的Modbus TCP與相機通信在沖壓行業(yè)的應(yīng)用[J].鍛壓裝備與制造技術(shù),2021,56(4):68-71.

      [3] 范營營,田雨.基于Socket通訊多線程技術(shù)的工業(yè)無線數(shù)據(jù)服務(wù)軟件設(shè)計[J].機械設(shè)計與制造工程,2016,45(3):61-64.

      [4] 呂俊霞.人工智能專家控制系統(tǒng)簡介[J].精密制造與自動化,2020(1):62-64.

      [5] 曲楠,李巖,宋萬強,等.基于Socket異步技術(shù)的設(shè)備數(shù)據(jù)通訊設(shè)計[J].工業(yè)控制計算機,2022,35(2):52-53,111.

      【通聯(lián)編輯:梁書】

      猜你喜歡
      云端設(shè)計
      云端相連
      歌海(2024年3期)2024-01-01 00:00:00
      四海心連·云端匯聚
      華人時刊(2022年5期)2022-06-05 07:32:30
      何為設(shè)計的守護(hù)之道?
      云端之城
      《豐收的喜悅展示設(shè)計》
      流行色(2020年1期)2020-04-28 11:16:38
      瞞天過?!律O(shè)計萌到家
      設(shè)計秀
      海峽姐妹(2017年7期)2017-07-31 19:08:17
      有種設(shè)計叫而專
      Coco薇(2017年5期)2017-06-05 08:53:16
      美人如畫隔云端
      行走在云端
      初中生(2017年3期)2017-02-21 09:17:43
      苗栗市| 遂溪县| 龙游县| 布尔津县| 沈丘县| 勃利县| 松溪县| 临泉县| 绍兴市| 德清县| 林口县| 新源县| 合水县| 疏附县| 阿拉尔市| 石泉县| 丹阳市| 胶南市| 丰城市| 伊金霍洛旗| 思南县| 五家渠市| 莆田市| 榆社县| 阜新| 柳江县| 广德县| 峨边| 田林县| 沛县| 宾川县| 滁州市| 长沙县| 卓资县| 临夏市| 保康县| 宣武区| 崇义县| 浪卡子县| 嘉善县| 泗洪县|