不小心遇見你
自動項目、PLC、視覺、通訊等工控軟件開發(fā)QQ3515716
級別: 工控俠客
|
一個EXE分享那么多次 樓主想干嘛? 三菱的這種編寫模式已經(jīng)過時了 還不如直接把源碼發(fā)出來 來的實際 VB 你這才完成簡單的讀寫 如果還有其它任務(wù) 你這會卡死滴 |
|
---|---|---|
|
往事如風(fēng)
科技改變制造
級別: 網(wǎng)絡(luò)英雄
|
你這會卡死滴 |
|
---|---|---|
|
ylliao
級別: 略有小成
|
很奇怪,我的貼子發(fā)出來之后過不了兩天就不見了,難道有人會刪我的貼子? 你既然覺得這種編寫模式已經(jīng)過時了,那你還要源碼有什么用?說實話,這個一點都不卡。 [ 此帖被ylliao在2018-06-07 21:42重新編輯 ] |
---|---|
|
instanttw
級別: 探索解密
|
請樓主認真看待一樓的建議 程序看似豪華,但缺乏彈性。 基本功能至少還要有 無符號/正負號整數(shù)、32 位元整數(shù)、浮點數(shù)、K4MXY、K8MXY... 有沒有思考過如何提升整體通訊效率? 讀寫 5 個不連續(xù)的位址就一定要通訊 5 次? 連接的 PLC 多的時候要怎么處理? 只連一臺 PLC,程序跑到卡就太失敗了。 使用 VB6 編程... 這是曾在玩的,主站讀取資料,其他跟主站要資料。 大量不同位址 + FX3U/FX3G + FX5U + S7-1200 等多臺 PLC。 |
---|---|
|
不小心遇見你
自動項目、PLC、視覺、通訊等工控軟件開發(fā)QQ3515716
級別: 工控俠客
|
層主似乎有更好的解決辦法?能發(fā)出來共享?感受下 |
|
---|---|---|
|
instanttw
級別: 探索解密
|
噢! 這裡沒有做過展示程序,只能簡述程序的設(shè)計流程。 與 PLC 通訊的核心部分應(yīng)該是大同小異,主要就是附加功能來應(yīng)付各種情況。像是提到符號、整數(shù)的位元數(shù)(16/32/K4/K8)、浮點數(shù)等等,這些在 PC 端程序增加個轉(zhuǎn)換即可。C 使用指針、.NET 使用 BitConverter,要注意的部分是 S7-1200 為 big-endian。 而送給 PLC 的封包則是數(shù)量越少越好,所以盡量將每個封包都使用到極限。3U/3G 的極限很小,所以能玩得不多。5U 的彈性就遠比 3U/3G 來得強悍,可以將不同類型的位址塞進一個封包裡。1200 則是很單純,一個封包最多 20 組要求。 至于處理多臺 PLC,看要選擇多線程還是異步。會建議后者,但寫起來比較困難。而通訊和程序主體應(yīng)分開兩個線程執(zhí)行,避免意外鎖死。 測試時,同時連線 6 臺 PLC,通訊部分幾乎都是 0% CPU 使用率,而每臺 PLC 一秒約 50 次的通訊次數(shù)。 EDIT: 若有更好的方式,歡迎賜教~ [ 此帖被instanttw在2018-06-11 09:46重新編輯 ] |
---|---|
|
yrm258
人生就像一臺PLC。人可以選擇誰的指令,PLC沒有選擇。
級別: 論壇先鋒
|
高手真多 |
|
---|---|---|
|