国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

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

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

陳奕夫 張前進

摘要:在不銹鋼生產(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ù)傳輸至云端中進行檢測處理。

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

中圖分類號:TP311.1? ? ?文獻標識碼:A

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

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

0 引言

現(xiàn)如今,隨著“中國智造2025”等一系列國家戰(zhàn)略發(fā)展方向政策的出臺,傳統(tǒng)工廠需要逐步推進智能化建設(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é)議進行可編程邏輯控制器(Programmable Logic Controller,下文均寫作PLC)的數(shù)據(jù)傳輸。

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

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

產(chǎn)線工控機與生產(chǎn)線PLC采用Modbus TCP連接并交互數(shù)據(jù),或使用特定廠家定制的通訊協(xié)議進行通訊。大部分廠商的PLC均支持Modbus TCP通訊協(xié)議,以下將使用Siemens S7-1515-2PN系列PLC作為例子,演示PLC與產(chǎn)線工業(yè)控制計算機之間的Modbus TCP長連接。S7-1515-2PN使用Siemens TIA Portal V15.1進行軟件編程,該軟件提供了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ù);當工控機需要向PLC發(fā)送數(shù)據(jù)時,則自動建立客戶端訪問PLC的服務(wù)端。該雙向連接模式實現(xiàn)了數(shù)據(jù)流收發(fā)獨立,避免了收發(fā)數(shù)據(jù)串行的問題,且通訊效率高,方便日后維護,連接模型如圖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)聽連接進來的端口,待監(jiān)聽到連接時則使用Accept方法來返回套接字實例。

4) 進行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ù)組則認定為可疑數(shù)據(jù)組。當?shù)谝粋€可疑數(shù)據(jù)存入MySQL時,寫入語句將會觸發(fā)計時器記錄委托,當計時器記錄到一定時間后結(jié)束計時,同時會以數(shù)據(jù)密度為準則,判定是否上傳至云端進行進一步的故障分析。

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

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

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ǔ)上添加新的故障處理策略。當專家系統(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輸入端為建立通訊使能端,當輸入值為TRUE時將開始任意端口監(jiān)聽;DATA輸入端為接收數(shù)據(jù)存放地址;DONE輸出端為辨別當前數(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ù)庫進行比對,適配合適的故障應(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連接模式上傳至云端故障處理策略庫中進行比對分析,最后返回給PLC應(yīng)用策略。該系統(tǒng)大大減少了生產(chǎn)線工人的工作負荷,提高了故障辨識率,一定程度上提高了產(chǎn)線的生產(chǎn)效率。在人工智能時代,本系統(tǒng)僅是初級的智能系統(tǒng),系統(tǒng)架構(gòu)仍未到達最優(yōu),有一定程度上的資源浪費,故障診斷以及處理能力仍有很大的提升空間,相信未來的故障診斷系統(tǒng)將會加入更多優(yōu)化元素優(yōu)化系統(tǒng)架構(gòu),提高故障診斷精確度以及故障處理能力。

參考文獻:

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

[2] 佘志遠,朱毅,肖萬彪,等.基于西門子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è)計的守護之道?
云端之城
《豐收的喜悅展示設(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
专栏| 通许县| 张家口市| 墨竹工卡县| 海淀区| 龙胜| 忻城县| 西平县| 大安市| 元氏县| 双牌县| 定远县| 江川县| 苍山县| 渭源县| 杨浦区| 邵阳市| 庆城县| 河北区| 太谷县| 蓬溪县| 都兰县| 呼伦贝尔市| 东辽县| 都昌县| 祁阳县| 屯昌县| 平塘县| 福清市| 高邑县| 榆社县| 洛川县| 胶南市| 天津市| 嘉鱼县| 古交市| 昭平县| 锡林郭勒盟| 东平县| 长沙县| 萨嘎县|