新聞中心

        EEPW首頁 > 手機與無線通信 > 設計應用 > Modbus通信在PLC通道檢測中的應用

        Modbus通信在PLC通道檢測中的應用

        作者: 時間:2010-06-21 來源:網絡 收藏



        -TCP實現了在TCP/IP以太網上以客戶/服務器方式的報文。這種模型是將協議作為層協議嵌入到低層TCP/IP協議中構成的。與標準Modbus幀相比,Modbus-TCP幀中的尋址與校驗交由TCP/IP協議完成。如圖3所示,使用封裝的方法將Modbus PDU嵌入到TCP報文中形成Modbus-TCP幀,該幀在PDU之前形成了一個占用7個字節大小的MBAP幀頭,幀頭可以劃分為四部分,如表3所示。


        交易標識符用于交易校驗,服務器端節收到由客戶發來的請求交易標識符并復制到響應中。協議標識符用于系統內多路復用傳輸,取0值時代表Modbus協議傳輸。長度域記錄了該域后續報文的字節長度(包括設備識別符和數據域),用于服務器識別報文的傳輸結束。設備標識符用于系統內路由,當需要與通過以太網網關連接的Modbus串行鏈路或Modbus-Plus網絡上的設備進行通信時,該標識符域的值由Modbus-TCP客戶在請求幀中設置,服務器接收到后,在響應幀中復制該值。

        3 Modbus-TCP


        針對施奈德電氣旗下的Quantum系列,為了加快完成這方面的工作,采用自編寫的程序實現計算機對的四種數據類型直接操作。硬件方面,Quantum系列有能提供以太網接口的網絡模塊,通過底板與CPU通信,它作為Modbus-TCP通信的服務器,不需要我們做其他編程工作。PLC為上文所陳述的四種數據類型定義了四個獨立的內存區,其中離散輸入為1區,線圈為0區,輸入寄存器為3區,輸出寄存器為4區,尋址方式為區號加上5位的十進制地址,當輸入地址不足6位時,系統將自動認為最高位數值為內存分區號,其后數值為該區域內的地址編號。由于操作的目的在于檢驗PLC系統中IO的正確性,所需要使用的功能碼有:讀線圈01、讀離散輸入02、讀保持寄存器03、讀輸入寄存器04、寫多線圈15和寫多個寄存器16。


        一次完整的Modbus-TCP通信在時間上可以劃分為三個步驟:連接的建立、Modbus數據傳輸和連接的釋放。在進行Modbus數據傳輸之前首先要建立起一個連接,設備是通過在502端口提供一個監聽口(socket)來允許與其它設備建立新連接和進行數據傳輸。當某一設備需要與遠方的服務器進行數據交換時,必須通過自身大于1024的端口與服務器的502端口建立連接。TCP連接建立后,客戶端設備便可以發送Modbus請求幀到服務器,服務器接收到請求后作出響應,向連接客戶的端口發送響應報文。傳輸結束時,客戶端負責進行釋放通信連接的初始化工作。


        程序在DOS模式下運行,提供有以下運行參數:
        -ip: 即目標服務器的IP地址;
        -p: PLC的Modbus通信端口,默認值為502;
        -c: 服務器執行功能碼的操作對象數量;
        -r: 操作的起始地址;
        -w: 寫操作參數;
        -a: 自動操作模式;
        -t: 自動操作的時間間隔;
        -b: 線圈寫操作的布爾值。

        4 結束語


        通過以太網來實現計算機直接讀寫PLC數據,使得廠級監控網絡能夠直接與現場設備通信,監控人員能夠在熟悉的計算機畫面上對PLC進行,與依靠人為施加信號來進行相比,前者明顯地降低了操作人員的工作量,而且當需要的IO點數量越大時,效率越高。本程序只是Modbus與TCP/IP協議結合的一個簡單,雖然以太網的實時性、穩定性和抗干擾性已得到很大的發展,但要把以太網真正應用到實際的控制中還有很多技術難題,這還要走很長一段路。不過以太網進入自動控制領域已是必然趨勢,它將使控制變得更加簡單和清楚。


        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 苏尼特左旗| 台安县| 阳信县| 盘锦市| 桐柏县| 安康市| 宁明县| 宁晋县| 宁远县| 得荣县| 久治县| 河间市| 通化市| 池州市| 灵璧县| 三亚市| 来宾市| 商河县| 土默特左旗| 涪陵区| 邵武市| 南和县| 红原县| 新安县| 石景山区| 镇原县| 蒙阴县| 三都| 方城县| 峨边| 杨浦区| 汉阴县| 定州市| 普安县| 沙河市| 大同县| 缙云县| 上犹县| 衡南县| 凌云县| 溆浦县|