書香伴侶
級別: 略有小成
|
本人自己寫的一個HostLink通訊類,是基于歐姆龍PLC自帶的232串口,可以實現讀取和寫入; 但存在以下缺點,就是讀取數據和寫入數據不可用是進行,個人水平有限,如有大神路過,伸出援手,感激不盡。。。 |
---|---|
|
不小心遇見你
自動項目、PLC、視覺、通訊等工控軟件開發QQ3515716
級別: 工控俠客
|
你想表達的意思是讀和寫不可同時進行吧? 串口本來就是不可以同時讀寫的,只是在感覺上可以同時的話,就是隊列處理 你百度下 隊列 樓主留言:好的,我去了解一下 |
|
---|---|---|
|
泡沫_2019
級別: 探索解密
|
RS232是全雙工的理論上是可以讀寫同時進行的,RS485是半雙工的讀寫不能同時進行,但是這個協議應該是應答機制的,一問一答,全雙工的意義也不大 |
---|---|
|
加減1生不息
自動化軟件工程師
級別: 略有小成
|
首先串口DB9支持很多協議,如西門子PROFIBUS-DP,三菱自由協議,歐姆龍HostLInk,通用的如ModBus RTU 第二不能同時支持讀寫是否是波特率設置過小,可以提升至19200,115200 |
|
---|---|---|
|
不小心遇見你
自動項目、PLC、視覺、通訊等工控軟件開發QQ3515716
級別: 工控俠客
|
唉,當我沒說 無論讀還是寫都是發送,等結果(反饋)叫接受,接受和發送同時叫全雙工 先搞清楚概念 |
|
---|---|---|
|
gxtmdb82164
級別: 論壇先鋒
|
推薦 HSL ,有現成的輪子何必自己造? http://www.hslcommunication.cn/ 順便1L老哥的意思是從軟件這側來看,串口是一個獨占的資源,任何讀寫都是要獨占這個資源,然后讀寫一般情況下是分開的,所以同一時間下一個程序在讀的時候其他程序是不能寫,也不能讀的. 標準的解決方案就是1L老哥說的,開隊列,把軟件分層,負責讀寫串口的程序和處理邏輯的程序通過隊列交互,這樣在宏觀上就可以實現多個程序"同時"讀寫同一個串口,實際上是底層的程序把上層的需求都排隊處理了.人生苦短,沒興趣研究這些的直接用我上面推薦的HSL組件,什么PLC都不是問題,直接碼就完了~ |
---|---|
|
dq961
級別: 略有小成
|
請教一個問題,我現在有個機器是OMRON的 PLC控制,上位機電腦通過RS232端口下發數據給PLC生產,我有什么辦法可以知道上位機下發的數據內容呢?(比如下發數據的格式和內容) |
---|---|
|