我好像是
大波就是我
級別: 家園?
精華主題: 0
發(fā)帖數(shù)量: 303 個
工控威望: 603 點
下載積分: 1392 分
在線時間: 493(小時)
注冊時間: 2012-12-09
最后登錄: 2025-01-18
查看我好像是的 主題 / 回貼
樓主  發(fā)表于: 2017-09-18 18:02
現(xiàn)在是這樣。有一臺上位機。程序是死的,我沒有辦法修改。上位機通過rs232接口跟下位機(PLC)通訊。
1:PLC發(fā)送給上位機的格式跟內(nèi)容:PLC發(fā)送數(shù)據(jù) 03 13 02 SD 給上位機,  意思是讓上位機進行某一個操作  然后上位機返回03 13 01E5  說明操作成功(操作很多,這只是舉例子)
2:上位機發(fā)送給PLC的格式跟內(nèi)容:上位機發(fā)送數(shù)據(jù) 03 13 02 GD   意思是讓下位機(PLC)進行某一個操作  然后上位機返回03 13 01E8  說明操作成功.(操作很多,這只是舉例子)

3:上位機不停發(fā)送固定數(shù)據(jù)給下位機PLC 88 88 88 88,  頻率是每秒一次。(作用是判斷上位機是否死機)
4:下位機不停發(fā)送固定數(shù)據(jù)給上位機 66 66 66 66,  頻率是每秒一次。(作用是判斷下位機是否死機)



問題:請問一下這個應該用什么PLC?走自由口通訊協(xié)議?可是PLC跟上位機一直在不停發(fā)送跟接收數(shù)據(jù)哎。接收跟發(fā)送都是4組十六進制數(shù)據(jù)。要是有協(xié)議的話我還是知道怎么寫,不同數(shù)據(jù)發(fā)送給不同寄存器嘛。
可現(xiàn)在沒辦法指定某一個寄存器哎,都是一股老的發(fā)送,接收。發(fā)送跟接收就這么四組數(shù)據(jù),沒有指定寄存器哎。


有成功例子,人家下位機是用STC C52單片機高仿三菱的工控板子。說明這個是可以寫出來的嘛。
請各位大神提供一個思路,成功的,我發(fā)微信紅包哈。上位機發(fā)送接收格式內(nèi)容沒有辦法修改哎。這是死的。
戇獅
廣州三能:自動化設備制造 自動化培訓
級別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 369 個
工控威望: 488 點
下載積分: 1466 分
在線時間: 593(小時)
注冊時間: 2010-08-06
最后登錄: 2025-01-22
查看戇獅的 主題 / 回貼
1樓  發(fā)表于: 2017-09-19 12:14
用三菱FX232全雙工。
接收到動作命令就回應動作
沒有接收到動作命令就定時發(fā)送死機信號
發(fā)送動作命令時等待回應信息,收到動作回應信息發(fā)送死機信號

不用管寫到哪個寄存器,寫到寄存器就是專用協(xié)議了。用監(jiān)控緩存區(qū)方式發(fā)送和判斷接收信息。

FX232參數(shù)以自由口設定,接收完成信號置位后,緩存區(qū)應該可以得到接收的數(shù)據(jù),再轉(zhuǎn)移出來作判斷

顧慮一點就是怕PLC操作速度不夠電腦快而出現(xiàn)通訊失敗。單片機做肯定是比PLC快的
廣州夏譜  工控專家 林生 13602663187 專業(yè)自動化設備開發(fā),全實操自動化培訓