wlmissyou
級別: 探索解密
精華主題: 0
發(fā)帖數(shù)量: 62 個
工控威望: 165 點
下載積分: 1285 分
在線時間: 105(小時)
注冊時間: 2017-06-11
最后登錄: 2024-12-22
查看wlmissyou的 主題 / 回貼
樓主  發(fā)表于: 60天前
        之前發(fā)過好多次關于modbus方面的帖子,關于200smart標準化的帖子之前就發(fā)了兩三篇,距離現(xiàn)在最近的帖子已經(jīng)超時鎖定了。這次發(fā)帖是給之前的程序增加了新功能。在一個高度封裝的子程序里增加新功能是挺困難的,還好成功的完成了。

        完整的介紹程序的功能:
1、不需要編程,只需在數(shù)據(jù)塊里正確填好各項參數(shù),即可完美工作。
2、通信任務分為輪詢?nèi)蝿战M,和寫優(yōu)先任務組。輪詢?nèi)蝿战M內(nèi)可以放置寫操作任務。即寫操作在正常輪流工作里。
3、掉站跳過和定時掉站恢復功能。
4、定時寫優(yōu)先組內(nèi)操作的數(shù)據(jù)讀回功能,即把寫操作變成讀操作把寫入從站的數(shù)據(jù)讀回到PLC。
5、輪詢?nèi)蝿战M里的任意通信任務可以臨時退出和隨時加入輪詢功能里。如果想要人工的將某個輪詢內(nèi)的通信任務退出輪詢,將其讀寫操作的0和1改變?yōu)?、1、10、11、以外的任意數(shù)值,這條通信任務就退出輪詢了。
新增功能
6、以上2~4功能可以通過設置來啟用和停用。
    假如應用中會出現(xiàn)同一時刻(同一掃描周期)的多個寫操作,那么請把高優(yōu)先級的寫任務寫在小序號(其實沒序號)的寫操作任務里。因為寫操作的檢查是從小序號開始的,其實是按順序檢查,先檢查到的先執(zhí)行。
    數(shù)據(jù)塊里的指針賦值是一大麻煩,要么是很大的雙整數(shù),要么是十六進制數(shù),很不方便。這次這里的改進就是輸入簡單的雙整數(shù),比始填4700是希望指向VB4700的指針,封裝的子程序在第一個掃描周期會將4700這些雙整數(shù)變成指針。當然,此數(shù)據(jù)塊中輸入十六進制數(shù)和很大的雙整數(shù)值的指針數(shù)值也可以,是兼容的。
    切記設置好庫內(nèi)存,背影數(shù)據(jù)等的地址,不要出現(xiàn)干涉。干涉或數(shù)據(jù)塊填寫的不正確,程序就工作不起來了。


下面是例程,改了PLC型號IP地址就可以工作了,下載的工友回復一下本帖,不要讓本帖沉了,讓更多人看到。
技術交流微信:50586625
[ 此帖被wlmissyou在2024-12-08 18:45重新編輯 ]
附件: 天花板級modbus rtu2.6版241026.zip (87 K) 下載次數(shù):855
網(wǎng)站提示: 請不要用迅雷下載附件,容易出錯
本帖最近評分記錄:
  • 下載積分:+1(小名嘟嘟)
  • 下載積分:+1(凌先生) GOOD
  • 下載積分:+2(月如常卿)
  • 下載積分:+1(摸魚超人吳桑) 真誠感謝!
  • 下載積分:+2(neafar22) 不明覺厲,謝謝分享。
  • 下載積分:+1(紅城老夫) 真誠感謝!
  • 下載積分:+1(16675175450)
  • 下載積分:+1(hsiung) 真誠感謝!
    wangyuh7400
    級別: 論壇先鋒
    精華主題: 0
    發(fā)帖數(shù)量: 201 個
    工控威望: 1604 點
    下載積分: 4391 分
    在線時間: 141(小時)
    注冊時間: 2016-08-15
    最后登錄: 2024-12-14
    查看wangyuh7400的 主題 / 回貼
    1樓  發(fā)表于: 52天前
    下來看看