视频二区制服丝袜人妻欧美,亚洲欧美日韩中文高清WWW777 ,丰满少妇女人A毛片视频,国产成人精品日本亚洲11,亚洲国产成人手机在线电影 ,午夜福利一区二区,中文字幕乱码一区二区免费,国产精品高清一区二区不卡

      用低成本方式實(shí)現(xiàn)西門子PLC數(shù)據(jù)上云案例

      2020/9/21 2:19:26 人評(píng)論 次瀏覽 分類:PLC應(yīng)用  文章地址:http://www.fg316.com/tech/3350.html

      不得不說,儀表圈是個(gè)比較奇怪的圈子,各種各樣的項(xiàng)目需求都有,有的人就希望價(jià)格低,功能實(shí)現(xiàn)即可,有的人又不在乎價(jià)格,就要界面好看。最近有一個(gè)小伙伴又提出了這樣的需求,用最簡單的方式,最低的成本,最少的代碼,實(shí)現(xiàn)本地的PLC數(shù)據(jù)上云。如果想實(shí)現(xiàn)這種需求,大家就要站在巨人的肩膀上,用現(xiàn)成的輪子,將它們進(jìn)行組裝,變成自己的東西。那么這次,昌暉儀表就采用S7.NET+Log4Net+SQLSugar+MySQL來實(shí)現(xiàn)一個(gè)西門子PLC數(shù)據(jù)上云的案例。

      1、框架實(shí)現(xiàn)

      關(guān)于這4個(gè)組件,有一個(gè)共同點(diǎn),那就是開源免費(fèi),這樣大家就不用擔(dān)心價(jià)格和授權(quán)的問題了,昌暉儀表先對(duì)這4個(gè)組件做一個(gè)簡單的介紹:

      組件名稱          功能說明
      S7.NET            西門子PLC的開源通信庫
      Log4Net         一款.NET下免費(fèi)的日志工具
      SQLSugar       一款輕量級(jí)、強(qiáng)大的ORM
      MySQL           一款開源的關(guān)系型數(shù)據(jù)庫

      這個(gè)實(shí)現(xiàn)過程分為兩部分,首先在阿里云服務(wù)器中部署一個(gè)MySQL數(shù)據(jù)庫,一側(cè)通過S7.NET采集西門子PLC,然后使用Log4Net直接插入到阿里云服務(wù)器中,另一側(cè)通過SQLSugar從數(shù)據(jù)庫進(jìn)行查詢解析,再進(jìn)行顯示。
      在阿里云服務(wù)器中部署一個(gè)MySQL數(shù)據(jù)庫

      2、Iot傳輸實(shí)現(xiàn)

      首先在PLC中準(zhǔn)備好需要傳輸?shù)臄?shù)據(jù),最好提前都數(shù)據(jù)到放到同一個(gè)存儲(chǔ)區(qū)中,并且是連續(xù)的N個(gè)字節(jié),這里以一個(gè)結(jié)構(gòu)體為例,里面包含25個(gè)浮點(diǎn)數(shù),占100個(gè)字節(jié),如下圖所示:
      在PLC中準(zhǔn)備好需要傳輸?shù)臄?shù)據(jù)

      然后創(chuàng)建一個(gè)DB塊,取名為IotDB,DB號(hào)為DB1,添加一個(gè)Iot結(jié)構(gòu)體變量,如下圖所示:



      創(chuàng)建一個(gè)控制臺(tái)應(yīng)用程序,取名為thinger.cn.IotDataTransfer,該項(xiàng)目用于和PLC通信,并將數(shù)據(jù)傳輸?shù)桨⒗镌品?wù)器中的MySQL數(shù)據(jù)中,這里為了方便,直接將讀取的字節(jié)數(shù)組轉(zhuǎn)換16進(jìn)制字符串進(jìn)行傳輸。


      首先在Nuget服務(wù)器中搜索S7netplus,添加到項(xiàng)目中,如下圖所示:

      Nuget服務(wù)器添加項(xiàng)目S7netplus

      接著搜索log4net,添加到項(xiàng)目中,如下圖所示:

      Nuget服務(wù)器中添加項(xiàng)目log4net

      最后再搜索mysql,添加到項(xiàng)目中,如下圖所示:

      Nuget服務(wù)器中添加項(xiàng)目mysql

      添加完成之后,初始化PLC對(duì)象,然后連接PLC,連接成功后,開啟一個(gè)定時(shí)器,編寫程序如下所示:

      編寫程序
      定時(shí)器定時(shí)讀取PLC數(shù)據(jù),然后通過Log4Net直接存儲(chǔ)到數(shù)據(jù)中,如下圖所示:

      定時(shí)器定時(shí)讀取PLC數(shù)據(jù),然后通過Log4Net直接存儲(chǔ)到數(shù)據(jù)中
      運(yùn)行程序后,結(jié)果如下所示:

      程序運(yùn)行結(jié)果

      使用SQLyog查看服務(wù)器數(shù)據(jù)庫數(shù)據(jù), 如下所示:

      使用SQLyog查看服務(wù)器數(shù)據(jù)庫數(shù)據(jù)

      通過這種方式,我們可以很輕松實(shí)現(xiàn)PLC數(shù)據(jù)讀取并存儲(chǔ)到云端數(shù)據(jù)庫中,初步實(shí)現(xiàn)了數(shù)據(jù)上云,接下來我們可以通過創(chuàng)建一個(gè)上位機(jī)程序,實(shí)現(xiàn)數(shù)據(jù)的查詢、解析及顯示。


      3、Iot接收實(shí)現(xiàn)

      創(chuàng)建一個(gè)Windows窗體應(yīng)用程序,取名為thinger.cn.IotDataReceiver,該項(xiàng)目用于從云服務(wù)器的MySQL數(shù)據(jù)庫中查詢數(shù)據(jù),并將數(shù)據(jù)解析成需要的數(shù)值,然后進(jìn)行顯示。

      由于參數(shù)類型各種情況都有,因此針對(duì)參數(shù)創(chuàng)建了一個(gè)參數(shù)實(shí)體類,如下所示:

      針對(duì)參數(shù)創(chuàng)建了一個(gè)參數(shù)實(shí)體類

      UI界面設(shè)計(jì)如下圖所示:

      UI界面設(shè)計(jì)

      這里采用多線程的方式,持續(xù)從數(shù)據(jù)庫中進(jìn)行數(shù)據(jù)查詢,如果查詢到數(shù)據(jù),進(jìn)行解析賦值,否則進(jìn)行狀態(tài)顯示,代碼如下所示:

      持續(xù)從數(shù)據(jù)庫中進(jìn)行數(shù)據(jù)查詢
      最終運(yùn)行結(jié)果如下所示:

      最終運(yùn)行結(jié)果

      4、整體總結(jié)

      隨著越來越多的設(shè)備開始加入IIoT網(wǎng)絡(luò)(Industrial Internet of Things,工業(yè)物聯(lián)網(wǎng)簡稱IIoT),誕生了很多向前發(fā)展的機(jī)會(huì)。IT與OT的融合將為工廠自動(dòng)化、資產(chǎn)管理和生產(chǎn)制造執(zhí)行系統(tǒng)提供開箱即用的集成解決方案。按目前的趨勢發(fā)展下去,IT與OT之間的界限將逐漸消失,直到成為一個(gè)或相同的系統(tǒng)為止。本文主要從儀表工程師的角度出發(fā),讓大家學(xué)會(huì)使用開源組件來搭建一個(gè)簡單的物聯(lián)網(wǎng)平臺(tái)。

      共有訪客發(fā)表了評(píng)論 網(wǎng)友評(píng)論

        客戶姓名:
      郵箱或QQ:
      驗(yàn)證碼: 看不清楚?