wlmissyou
級別: 探索解密
![]() |
之前發(fā)過(guò)好多次關(guān)于modbus方面的帖子,關(guān)于200smart標準化的帖子之前就發(fā)了兩三篇,距離現在最近的帖子已經(jīng)超時(shí)鎖定了。這次發(fā)帖是給之前的程序增加了新功能。在一個(gè)高度封裝的子程序里增加新功能是挺困難的,還好成功的完成了。 完整的介紹程序的功能: 1、不需要編程,只需在數據塊里正確填好各項參數,即可完美工作。 2、通信任務(wù)分為輪詢(xún)任務(wù)組,和寫(xiě)優(yōu)先任務(wù)組。輪詢(xún)任務(wù)組內可以放置寫(xiě)操作任務(wù)。即寫(xiě)操作在正常輪流工作里。 3、掉站跳過(guò)和定時(shí)掉站恢復功能。 4、定時(shí)寫(xiě)優(yōu)先組內操作的數據讀回功能,即把寫(xiě)操作變成讀操作把寫(xiě)入從站的數據讀回到PLC。 5、輪詢(xún)任務(wù)組里的任意通信任務(wù)可以臨時(shí)退出和隨時(shí)加入輪詢(xún)功能里。如果想要人工的將某個(gè)輪詢(xún)內的通信任務(wù)退出輪詢(xún),將其讀寫(xiě)操作的0和1改變?yōu)?、1、10、11、以外的任意數值,這條通信任務(wù)就退出輪詢(xún)了。 新增功能 6、以上2~4功能可以通過(guò)設置來(lái)啟用和停用。 假如應用中會(huì )出現同一時(shí)刻(同一掃描周期)的多個(gè)寫(xiě)操作,那么請把高優(yōu)先級的寫(xiě)任務(wù)寫(xiě)在小序號(其實(shí)沒(méi)序號)的寫(xiě)操作任務(wù)里。因為寫(xiě)操作的檢查是從小序號開(kāi)始的,其實(shí)是按順序檢查,先檢查到的先執行。 數據塊里的指針賦值是一大麻煩,要么是很大的雙整數,要么是十六進(jìn)制數,很不方便。這次這里的改進(jìn)就是輸入簡(jiǎn)單的雙整數,比始填4700是希望指向VB4700的指針,封裝的子程序在第一個(gè)掃描周期會(huì )將4700這些雙整數變成指針。當然,此數據塊中輸入十六進(jìn)制數和很大的雙整數值的指針數值也可以,是兼容的。 切記設置好庫內存,背影數據等的地址,不要出現干涉。干涉或數據塊填寫(xiě)的不正確,程序就工作不起來(lái)了。 下面是例程,改了PLC型號IP地址就可以工作了,下載的工友回復一下本帖,不要讓本帖沉了,讓更多人看到。 技術(shù)交流微信:50586625 最新程序在公眾號文章及視頻教程【S7-200 Smart開(kāi)源標準化編程】天花板級MODBUS RTU程序 [ 此帖被wlmissyou在2025-04-18 11:02重新編輯 ] |
---|---|
本帖最近評分記錄: |
powtiger
狂人日妓
級別: 略有小成
![]() |
其實(shí)自己編最好,也許你這個(gè)是最完善的,但一有異常不熟悉程序結構的話(huà)很難去分析原因 ![]() |
|
---|---|---|
|
wlmissyou
級別: 探索解密
![]() |
三級指針實(shí)現出來(lái)的程序 |
---|---|
|
736399812
級別: 正式會(huì )員
![]() |
謝謝分享 學(xué)習一下。請問(wèn)有沒(méi)有博圖環(huán)境的程序? |
---|---|
|
hsiung
Just do as you want.
級別: 家園?
![]() |
指針應用非常嫻熟,贊 |
|
---|---|---|
|