資料介紹
其實很早就想寫寫關(guān)于Modbus的開發(fā)歷程,但牽扯項目較多,不同語言版本較多,頭緒繁雜,一時不知從何寫起。最近的醫(yī)療項目的通信部分,重新調(diào)整為Modbus協(xié)議,并且內(nèi)容幾乎涵蓋了Modbus的方方面面(Rtu/Tcp,Slave/Client相關(guān)開發(fā)),所以更堅定了寫Modbus信心,今天忙里偷閑,以時間為序,以項目為綱,把Modbus相關(guān)開發(fā)經(jīng)歷一一道來。
操作系統(tǒng):Win2000/XP
1、 主PLC與PC機的通信
最早主PLC與PC機通信,采用自定義的協(xié)議,主PLC中做了一個類似木馬的程序來響應(yīng)PC機下發(fā)的讀寫V變量區(qū)的指令。這樣就完成了PLC的讀寫操作。
后來西門子PLC的開發(fā)軟件進行了升級,提供了Modbus Rtu Slave庫,這樣只要上位機實現(xiàn)Modbus Rtu Client就可以直接讀寫PLC變量區(qū)了,之后用VB開發(fā)了Modbus相應(yīng)的組件,這樣很長一段內(nèi),該系統(tǒng)PC與主PLC就采用了Modbus的通信。
前兩年開發(fā)組態(tài)軟件,所以西門子PPI協(xié)議順禮成章也就知道了,當然PC與西門子采用PPI協(xié)議是最棒的,因為PLC中不需要寫一行代碼,也無需占用程序和變量空間。所以之后Modbus被放棄了,轉(zhuǎn)而采用了PPI通信協(xié)議。
2、 主PLC與從PLC的通信(無線電臺通信)
剛開始主PLC與從PLC采用自定義協(xié)議,最早在首鋼做實驗的時候,只有四個從站,并且個數(shù)是唯一確定的,所以自定義協(xié)議用的很好,效率也很高;但是項目推廣后,在其它現(xiàn)場有7個從站的,也有8個,9個的,不確定,并且從站要分組,此外通信傳遞內(nèi)容也更多了,不光位置信息、推焦電流、推焦、平煤信號、連鎖信號都要傳遞,最后選擇了Modbus協(xié)議。
但是使用Modbus有幾個問題,第一西門子提供的Modbus Slave不支持廣播命令,第二只提供了Modbus Slave程序,從PLC 沒有什么問題,但是主PLC卻沒有Modbus Client程序。
對第一個問題,沒有辦法,不支持就算了,只要一個個來寫。(注:后來的某一天,西門子MicroWIN開發(fā)環(huán)境突然出bug 了,竟然看到了部分的西門子Modbus Slave源碼,我在此基礎(chǔ)上實現(xiàn)了可支持廣播的Modbus Slave代碼)。
對第二個問題,只好老老實實的用西門子 PLC 語句表命令開發(fā)Modbus Client,只要實現(xiàn)3號和16號命令就可以了,還好,Modbus Client本身協(xié)議不難,難在PLC的運行機制和PC程序不同,PLC是大循環(huán)掃描的,等待數(shù)據(jù)返回時,不能直接等待,否則運行看門狗會超時,總之克服重重困難,終于開發(fā)出穩(wěn)定可靠的Modbus Client程序,直到現(xiàn)在,現(xiàn)場的PLC通信仍采用該方式。
附記:有人會問,為什么沒有采用PPI協(xié)議,PLC本身就支持主和從協(xié)議啊?但太讓人遺憾的是,PPI協(xié)議通信節(jié)奏太快,目前還沒有無線電臺(普通工業(yè)用)可以正常實現(xiàn)PPI協(xié)議通信。
- ESP32教程之如何搭建linux開發(fā)環(huán)境的詳細資料說明 11次下載
- Rockchip Linux SDK的開發(fā)指南的詳細資料說明 74次下載
- LabVIEW開發(fā)教程之LabVIEW界面設(shè)計秘訣的詳細資料說明 240次下載
- Protel DXP的常用快捷鍵詳細資料說明 0次下載
- 如何使用ubuntu和eclipse與sdcc搭建C51開發(fā)環(huán)境詳細資料說明
- 進行ARM開發(fā)的初體驗資料說明
- 嵌入式開發(fā)教程之SCPI命令參考的詳細資料說明 38次下載
- MODBUS的協(xié)議整理和功能代碼的應(yīng)用資料說明 8次下載
- 嵌入式C語言的5個位操作筆記資料說明
- 決策支持系統(tǒng)的開發(fā)與實例詳細資料說明 11次下載
- 如何使用eclipse和Wamp Server搭建PHP開發(fā)環(huán)境的詳細資料說明 14次下載
- 機械原理的詳細筆記資料說明 9次下載
- python基礎(chǔ)教程之如何進行靜態(tài)方法和類方法詳細筆記說明 17次下載
- Git軟件的安裝筆記的詳細資料說明 0次下載
- RTC日歷程序詳細中文資料(免費下載) 10次下載
- 迪文串口屏ModBus開發(fā)流程 235次閱讀
- 如何快速生成Modbus指令?教程來啦 925次閱讀
- Modbus和Profibus協(xié)議有什么區(qū)別 1874次閱讀
- 使用協(xié)議棧實現(xiàn)Modbus ASCII從站應(yīng)用 1131次閱讀
- 使用協(xié)議棧實現(xiàn)Modbus ASCII主站應(yīng)用 827次閱讀
- 使用協(xié)議棧實現(xiàn)Modbus RTU從站應(yīng)用 1787次閱讀
- 使用協(xié)議棧實現(xiàn)Modbus RTU主站應(yīng)用 1477次閱讀
- Modbus RTU的設(shè)計與實現(xiàn) 1804次閱讀
- 對DTU進行Modbus RTU協(xié)議的配置流程 3415次閱讀
- Modbus協(xié)議調(diào)試工具的軟件功能說明 3341次閱讀
- FPGA的入門基礎(chǔ)知識詳細說明 9211次閱讀
- 使用AT89S51單片機制作紅外遙控器的資料和源代碼詳細說明 5862次閱讀
- 如何進行PLC控制程序的設(shè)計詳細資料PPT說明 5753次閱讀
- PLC常用基本環(huán)節(jié)梯形圖和詳細文字說明詳細資料概述 8957次閱讀
- modbus rtu通訊協(xié)議格式詳細說明 7w次閱讀
下載排行
本周
- 1TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 2開關(guān)電源基礎(chǔ)知識
- 5.73 MB | 6次下載 | 免費
- 3100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 4嵌入式linux-聊天程序設(shè)計
- 0.60 MB | 3次下載 | 免費
- 5基于FPGA的光纖通信系統(tǒng)的設(shè)計與實現(xiàn)
- 0.61 MB | 2次下載 | 免費
- 651單片機窗簾控制器仿真程序
- 1.93 MB | 2次下載 | 免費
- 751單片機大棚環(huán)境控制器仿真程序
- 1.10 MB | 2次下載 | 免費
- 8基于51單片機的RGB調(diào)色燈程序仿真
- 0.86 MB | 2次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33564次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關(guān)電源設(shè)計實例指南
- 未知 | 21549次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅(qū)動電路設(shè)計》 溫德爾著
- 0.00 MB | 6653次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537796次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191185次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183279次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多