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