亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于modbus通訊的上位監(jiān)控軟件設(shè)計(jì)

        2014-10-21 20:06:36吳昊罡
        中國機(jī)械 2014年24期

        吳昊罡

        摘要:本文基于Modbus通訊協(xié)議,使用VB編寫上位軟件,與西門子CP341-RS422/485模塊進(jìn)行通訊,對(duì)PLC中變量進(jìn)行讀取,并存入SQLServer數(shù)據(jù)庫,實(shí)現(xiàn)對(duì)設(shè)備的實(shí)時(shí)監(jiān)控。

        關(guān)鍵詞:Modbus;VB; SQLServer;PLC

        在現(xiàn)代工業(yè)中使用PLC設(shè)備進(jìn)行分散化控制,上位機(jī)監(jiān)控軟件提供圖形界面并對(duì)下位設(shè)備進(jìn)行數(shù)據(jù)采集、管理,已經(jīng)成為工業(yè)控制系統(tǒng)中普遍使用的監(jiān)控形式。其中Modbus協(xié)議以標(biāo)準(zhǔn)、開放等優(yōu)點(diǎn)廣泛應(yīng)用于工業(yè)通訊當(dāng)中,本文基于西門子的CP341模塊作為Modbus從站,使用Visual Basic語言進(jìn)行編程,在上位計(jì)算機(jī)中采集、存儲(chǔ)PLC中狀態(tài)變量,實(shí)現(xiàn)對(duì)設(shè)備的實(shí)時(shí)監(jiān)控。

        1.Modbus協(xié)議

        一個(gè)Modbus通訊數(shù)據(jù)幀由若干個(gè)字節(jié)組成,一般通信數(shù)據(jù)幀的格式包括:地址域、功能碼、數(shù)據(jù)域、錯(cuò)誤校驗(yàn)(16位CRC校驗(yàn))

        地址域長度為1個(gè)字節(jié),表示從站的地址。功能碼是數(shù)據(jù)幀中傳送的第二個(gè)字節(jié),不同的功能碼對(duì)應(yīng)數(shù)據(jù)域格式不盡相同,常用的功能碼有1、2、3、4、5、6、15和16,分別表示讀線圈、讀輸入狀態(tài)、讀保持寄存器、讀輸入寄存器、寫單個(gè)線圈、寫單個(gè)輸入狀態(tài)、寫多個(gè)線圈、寫多個(gè)保持寄存器[1]。數(shù)據(jù)幀最后兩個(gè)字節(jié)是CRC錯(cuò)誤校驗(yàn)域。

        若需要讀取05從站以00 00為起始地址的兩個(gè)REAL型數(shù)據(jù):3.4和8.9,則主站發(fā)送的報(bào)文:05 03 00 00 00 04 C5 8F,從站返回報(bào)文:05 03 08 40 59 99 9A 41 0E 66 66 D6 72。

        2.西門子CP341的組態(tài)與編程

        2.1西門子CP341組態(tài)

        本文涉及與計(jì)算機(jī)通訊的從站為西門子S7-300PLC加裝CP341-RS422/485模塊。在安裝CP341之前需要插入硬件狗Dongle,安裝驅(qū)動(dòng)軟件CP_PTP_PARAM和Modbus-Slave318,然后才能在Step7中對(duì)CP341進(jìn)行組態(tài)。

        設(shè)置模塊時(shí)必須與計(jì)算機(jī)確認(rèn)設(shè)置的內(nèi)容:從站地址、波特率、數(shù)據(jù)位停止位,校驗(yàn)位。CP341模塊的參數(shù)應(yīng)按確認(rèn)后的內(nèi)容進(jìn)行配置,波特率通常設(shè)為9600即可。本文中通訊參數(shù)設(shè)置為9600, 8, 1, n,從站地址為5。

        傳輸DINT、REAL數(shù)據(jù)時(shí),應(yīng)設(shè)置FC 03,06,16選項(xiàng)卡,并建立一個(gè)DB塊存儲(chǔ)待傳數(shù)據(jù)。本文中所需傳輸?shù)淖兞繑?shù)據(jù)類型為DINT、REAL。傳輸模式選擇Half-Duplex。配置完成后,向CP341下載Modbus Slave驅(qū)動(dòng)。

        2.2PLC編程

        在Step7中打開 “zXX21_05_PtP_Com_MODSL”項(xiàng)目,將Modbus通訊程序OB100、FB7、FB8、FB80、DB80復(fù)制到Step7程序中。在程序中調(diào)用FB80,并將通訊數(shù)據(jù)塊名稱DB80和CP341起始地址填入。建立與計(jì)算機(jī)通訊用的FC塊并調(diào)用FB80,將通訊數(shù)據(jù)塊名稱DB80和CP341起始地址填入。其中FB80中的OB_MASK的值應(yīng)始終為1,其余變量根據(jù)需要進(jìn)行分配。

        3.Visual Basic編程實(shí)現(xiàn)

        為計(jì)算機(jī)安裝RS485通訊卡,添加各個(gè)數(shù)據(jù)顯示控件數(shù)組和MSComm控件。Modbus RTU模式的報(bào)文發(fā)送必須控制好字符間隔,1byte數(shù)據(jù)發(fā)送后延時(shí)應(yīng)小于1.5倍字符時(shí)間,兩幀報(bào)文之間的間隔必須大于3.5倍字符時(shí)間間隔。一個(gè)字符時(shí)間是指按照用戶設(shè)定的波特率傳輸一個(gè)字節(jié)所需要的時(shí)間[2]。

        軟件通過串口發(fā)送查詢數(shù)據(jù)幀,對(duì)PLC返回的數(shù)據(jù)分解、顯示,PLC返回的內(nèi)容包括各開關(guān)狀態(tài)、元件狀態(tài)、運(yùn)行速度、運(yùn)行負(fù)荷等。從通訊內(nèi)容來說,包括開關(guān)量、模擬量,其中開關(guān)量均打包為DINT型變量整體發(fā)送。

        3.1串口通訊與數(shù)據(jù)處理

        在界面中加載VB自帶的MSCOMM控件,在軟件啟動(dòng)時(shí),程序調(diào)用API函數(shù)自動(dòng)從配置文件中讀取設(shè)置的控件屬性參數(shù),在控件的CommEvent事件中編寫響應(yīng)程序。

        使用Timer控件按照要求的周期發(fā)送報(bào)文。主站發(fā)出的查詢報(bào)文為05 03 00 00 00 24 44 55(十六進(jìn)制),通過MSComm.Output指令發(fā)送給從站。

        取得從站返回給主站的數(shù)據(jù)幀后,從第4個(gè)字節(jié)開始,每4個(gè)字節(jié)為一個(gè)數(shù)據(jù)。數(shù)據(jù)幀中的DINT型變量按位進(jìn)行分解,與相應(yīng)的開關(guān)量對(duì)應(yīng)顯示,浮點(diǎn)數(shù)轉(zhuǎn)換為小數(shù)并顯示在界面上。

        3.2數(shù)據(jù)管理

        為及時(shí)記錄設(shè)備運(yùn)行狀態(tài),分析設(shè)備使用情況,軟件將打包傳輸?shù)臄?shù)據(jù)存儲(chǔ)在SQLServer數(shù)據(jù)庫中,以備日后查詢,存儲(chǔ)數(shù)據(jù)的過程根據(jù)MSComm.CommEvent事件觸發(fā)。VB應(yīng)用程序開發(fā)中,可以通過ADO對(duì)微軟所支持的數(shù)據(jù)庫進(jìn)行操作。

        在數(shù)據(jù)庫中建立存儲(chǔ)表,建立不少于傳輸內(nèi)容的字段,分別存儲(chǔ)各開關(guān)量數(shù)據(jù)、模擬量數(shù)據(jù)。在VB中編寫讀寫數(shù)據(jù)庫的ADO語句對(duì)SQLServer進(jìn)行操作。

        Set Cnn = New ADODB.Connection

        Cnn.Open strCnn

        Cnn.Execute "INSERT INTO Database (iTime, …) VALUES (SQLtxt)"

        需要讀取存儲(chǔ)信息時(shí),可使用SQL查詢語句讀取相應(yīng)字段進(jìn)行數(shù)據(jù)轉(zhuǎn)換和位處理即可,本文不再贅述。4 結(jié)論

        本文實(shí)現(xiàn)了在Modbus通訊的條件下,使用Visual Basic編程實(shí)現(xiàn)了在計(jì)算機(jī)上讀取PLC中少量數(shù)據(jù),并存儲(chǔ)入SQLServer數(shù)據(jù)庫的功能。在只需要監(jiān)控少量數(shù)據(jù)的情況下,可以不必在計(jì)算機(jī)上安裝其他專業(yè)的工業(yè)控制軟件就能夠滿足需求,只安裝相應(yīng)的控件補(bǔ)丁和硬件驅(qū)動(dòng)即可。本文所實(shí)現(xiàn)的功能降低了監(jiān)控軟件對(duì)計(jì)算機(jī)性能的要求,也使得部署程序更加簡便。

        參考文獻(xiàn):

        [1]白焰,鐘艷輝,秦宇飛.基于VC的Modbus協(xié)議通信測試軟件的實(shí)現(xiàn)[J].現(xiàn)代電力,2008 25(6):76-80

        [2]佟為明,胡素君,劉勇, 李中偉.一種體現(xiàn)Modbus主要技術(shù)的實(shí)驗(yàn)系統(tǒng)[J].電子器件,2009 32(4):833-839.

        在线视频中文字幕一区二区三区| 婷婷综合缴情亚洲狠狠| 午夜视频福利一区二区三区| 91盗摄偷拍一区二区三区| 久久伊人少妇熟女大香线蕉| 人妻精品无码一区二区三区| 国内视频一区| 精品福利一区二区三区| 亚洲人成欧美中文字幕| 国产精品卡一卡二卡三| 中文字幕午夜AV福利片| 中文国产乱码在线人妻一区二区| 国产成年女人毛片80s网站| 中文乱码人妻系列一区二区 | 色婷婷久久精品一区二区| 人人妻人人狠人人爽天天综合网 | 国产成人精选在线不卡| 亚洲精品一区二区三区蜜臀| 国产精品国产高清国产专区 | 国产精品久久久久久久久KTV| 日韩美女av二区三区四区| 二区免费在线视频观看| 女人被狂躁c到高潮| 国产成人影院一区二区| 杨幂二区三区免费视频| 日韩在线观看入口一二三四| 狠狠噜天天噜日日噜视频麻豆| 亚洲高潮喷水中文字幕| 成人黄色片久久久大全| 久久久国产乱子伦精品| 国产精品久久久久久麻豆一区| 国产亚洲一区二区三区夜夜骚| 性av一区二区三区免费| 四虎影视4hu4虎成人| 中文字幕亚洲好看有码| 手机在线免费观看的av| 亚洲精品一品区二品区三品区| 1769国产精品短视频| 长腿丝袜在线观看国产| а√天堂8资源中文在线| 国产精品99久久精品爆乳|