新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > PLC在變頻器網絡控制中的通信程序設計

        PLC在變頻器網絡控制中的通信程序設計

        作者: 時間:2016-12-16 來源:網絡 收藏

        五、程序清單:( 子程序和主程序 )
          本程序主要介紹1臺EC20PLC(作為主站)按照MODBUS協議網絡對3臺變頻器(從站號分別是2,3,4)進行通信控制的簡單范例,本例中:
          連續命令序列 包括對2,3,4號變頻器的運行頻率的讀取;
          隨機命令序列 包括對2,3,4號變頻器進行啟動,停止,更改頻率的命令操作;
          1) “變頻器正轉”子程序清單如下:
          //主程序中用M1993作為各發送輔助使能,主要用于 MODBUS指令的上升沿觸發無其他用
          LD LM0 //位輸入參數型—發送輔助使能
          RSTSM135 //復位成功標志
          RST SM136 //復位失敗標志
          LD SM0 //運行標志
          MOV Z0 V9 //保存Z0值到V9
          LD SM0 //運行標志
          MOV V0 V10 //從機地址
          MOV 16#6 V11 //功能碼
          MOV 16#32 V12 //寄存器地址高字節
          MOV 16#0 V13 //寄存器地址低字節
          MOV 1 V14 //寫入數據高字節
          MOV 16#C7 V15 //寫入數據低字節
          //以下把發送數據轉移到D7940-D7945里
          LD SM0
          MOV 0 Z0
          LD SM0
          FOR 6
          LD SM0
          MOV V10Z0 D7940Z0
          LD SM0
          INC Z0
          NEXT
          //發送接收數據,數據放在D7970開始區域
          LD LM0
          MODBUS 1 D7940 D7970
          RST LM0 //馬上復位發送輔助使能
          //無論成功失敗都還原Z0值
          //當然這里省略了錯誤報告的處理
          LD SM135
          OR SM136
          EU //上升沿
          MOV V9 Z0
        2) “停機”子程序(省略)
          3) “設定頻率”子程序(省略)
          4) “讀取運行頻率”子程序(省略)
          5) 主程序清單:
          //******以下為通信邏輯處理部分******
          LD SM1 //運行第一周期脈沖
          //***這里省略了檢查從機準備好否的環節***
          //***程序里設計了3個連續命令序列***
          RST M6 //復位連續命令序列1使能標志
          RST M7 //復位連續命令序列2使能標志
          RST M8 //復位連續命令序列3使能標志
          ED //下降沿
          //置位連續命令序列1使能標志,以開始第1條連續命令執行
          SET M6
          //***程序里設計了共9個隨機命令序列***
          //只要有至少1個隨機命令, // M1000=ON,表示有隨機命令等待,這樣在連續命令切換時優先執行隨機命令系列。
          LD M0 //隨機命令序列1使能標志
          OR M1 //隨機命令序列2使能標志
          OR M2 //隨機命令序列3使能標志
          OR M3 //隨機命令序列4使能標志
          OR M4 //隨機命令序列5使能標志
          OR M5 //隨機命令序列6使能標志
          OR M9 //隨機命令序列7使能標志
          OR M10 //隨機命令序列8使能標志
          OR M11 //隨機命令序列9使能標志
          SET M1000
          //所有隨機命令都處理完成后, M1000=OFF,表示隨機命令完成,則連續命令可以正常切換。
          LDI M0
          ANIM1
          ANI M2
          ANI M3
          ANI M4
          ANI M5
          ANI M9
          ANI M10
          ANI M11
          RST M1000
          //任何1個連續命令未完成時,M1001=ON,標志連續命令在進行,如果有隨機命令必須等待。
          LD M6
          OR M7
          OR M8
          SET M1001
          //連續命令處于切換狀態時,M1001=OFF,標志連續命令完成,如果有隨機命令可以進行。
          LDI M6
          ANI M7
          ANI M8
          RST M1001
          //每1個連續命令完成且無隨機命令等待時,啟動延時T0 100MS,以便切換下1個連續命令執行
          LD M100 //連續命令1完成標志
          OR M101 //連續命令2完成標志
          OR M102 //連續命令3完成標志
          ANI M1000
          TON T0 1 //啟動延時T0 100MS
          //******************************************
          //**********以下為3個連續命令序列**********
          //調用“讀取運行頻率”子程序-2#站,頻率存在D1000里;
          //通信成功或失敗都復位連續命令序列1使能標志M6,同時置位完成標志M100,以便進行切換。當然這里省略了失敗的處理子程序;
          //延時T0時間后,執行連續命令2序列,置位連續命令2序列使能標志M7;
          LD M6 //連續命令序列1使能
          MPS
          EU
          SET M1993 //發送前置位發送輔助標志
          MRD
          CALL 讀取運行頻率 2 M1993 D1000
          //參數注釋:站地址,發送輔助位,頻率存放地址
          MPP
          LD SM135
          OR SM136
          ANB
          RST M6
          SET M100
          LD T0
          AND M100
          EU
          RST M100 //復位連續命令1完成標志
          SET M7
          //調用“讀取運行頻率”子程序-3#站,頻率存在D1001里;
          //通信成功或失敗都復位連續命令序列2使能標志M7,同時置位完成標志M101,以便進行切換。當然這里省略了失敗的處理子程序;
          //延時T0時間后,執行連續命令3序列,置位連續命令3序列使能標志M8;
          LD M7 //連續命令2序列使能
          MPS
          EU
          SET M1993 //發送前置位發送輔助標志
          MRD
          CALL 讀取運行頻率 3 M1993 D1001
          //參數注釋:站地址,發送輔助位,頻率存放地址
          MPP
          LD SM135
          OR SM136
          ANB
          RST M7 //復位使能標志
          SET M101 //置位完成標志
          LD T0
          AND M101
          EU
          RST M101 //復位連續命令2完成標志
          SET M8 //置位連續命令3使能標志
          //調用“讀取運行頻率”子程序-4#站,頻率存在D1002里
          //通信成功或失敗都復位連續命令序列3使能標志M8,同時置位完成標志M102,以便進行切換。當然這里省略了失敗的處理子程序;
          //延時T0時間后,重新執行連續命令1序列,置位連續命令1序列使能標志M6;
          LD M8 //連續命令3序列使能
          MPS
          EU
          SET M1993
          MRD
          CALL 讀取運行頻率 4 M1993 D1002
          //參數注釋:站地址,發送輔助位,頻率存放地址
          MPP
          LD SM135
          OR SM136
          ANB
          RST M8
          SET M102
          LD T0
          AND M102
          EU
          RST M102
          SET M6


        評論


        技術專區

        關閉
        主站蜘蛛池模板: 汝城县| 吴旗县| 吉木萨尔县| 江陵县| 诸暨市| 崇仁县| 金坛市| 广宗县| 潢川县| 吉隆县| 讷河市| 德清县| 古浪县| 哈尔滨市| 谢通门县| 天门市| 湖口县| 如东县| 闽侯县| 锡林浩特市| 永丰县| 额济纳旗| 佛教| 湾仔区| 黔东| 镇安县| 分宜县| 左云县| 安陆市| 天镇县| 阳春市| 济宁市| 城市| 开江县| 三江| 卢湾区| 北海市| 林周县| 于田县| 辛集市| 山西省|