zhengf1989
級別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 142 個
工控威望: 273 點
下載積分: 686 分
在線時間: 486(小時)
注冊時間: 2012-11-28
最后登錄: 2024-11-11
查看zhengf1989的 主題 / 回貼
樓主  發(fā)表于: 2018-10-27 16:01
最近一直在研究通訊,突然感覺懂了一點,寫寫自己對于modbus 通訊的體會:
1.    經(jīng)常聽說的485,232,422,是指的是物理端口,modbus是通訊協(xié)議,也就是通訊的規(guī)則,就好象社會上有很多潛規(guī)則,服從這些規(guī)則才能混下去。
2.    modbus通訊分為主站和很多編了號的從站,例如主站對從站說,3號從站你家的第三個房間里住著誰?話音剛落,1號,2號,4號從站心里想:反正沒有喊我,不關(guān)我的事,就通通裝          死,3號從站聽到后,回答說,我家的第三個房間里住著一條狗,這樣一個通訊過程就完成了,跟主站讀取從站某個寄存器的內(nèi)容很類似。如果是廣播命令,就是每個從站都要聽著,不需要作出回答。
3.   通訊主要是通過 報文發(fā)送出去執(zhí)行的。 地址+功能碼。。。。。。西門子plc中有通訊庫,三菱臺達(dá)plc有通訊的方便指令,我通過串口調(diào)試工具測試,最終還是發(fā)出來標(biāo)準(zhǔn)的 報文,只是方便大家使用的。通訊的具體地址要看每種設(shè)備原件的廠家是怎樣定義的,會應(yīng)用就可以了。
4.   crc校驗就是為了防止在通訊過程中會出現(xiàn)數(shù)據(jù)的丟失或者出錯。就好象在生活中,甲對乙說:我還你5個硬幣你數(shù)一數(shù),乙收到錢后數(shù)了一下硬幣,只有四個,乙就說你給的不對。
如果有能力用plc自己寫個自由口通訊的塊,或者單片機(jī)開發(fā)個通訊那就是大神了。
tingfenghu
級別: 工控俠客

精華主題: 0
發(fā)帖數(shù)量: 2847 個
工控威望: 3619 點
下載積分: 3521 分
在線時間: 3810(小時)
注冊時間: 2007-11-04
最后登錄: 2024-12-28
查看tingfenghu的 主題 / 回貼
1樓  發(fā)表于: 2018-10-28 12:14
單片機(jī)采用查詢或者中斷方式,
PLC就更加簡單,
ASCII轉(zhuǎn)換成ASCII再發(fā)送,校驗加起來丟棄高位就可以。
CRC也沒有多復(fù)雜,無非就邏輯運算加移位。

單片機(jī)資源比較緊張時,
有人用普通端口模擬串口使用。
二手PLC,觸摸屏,伺服驅(qū)動,各類氣動設(shè)備
http://shop58129605.taobao.com/