01【控制示意圖】
如圖3-1所示為彩燈控制示意圖。
02【控制要求描述】
現有L1-L8共8盞彩燈,要求按下開始按鈕,霓虹燈L1-L8以正序每隔1S輪流點亮,當L8亮后,停2S;然后,反向逆序間隔1S輪流點亮,當L1再亮后,停5S,重復上述過程。按下停止按鈕,彩燈停止工作。
03【I/O分配】
根據控制要求描述對需要用到的I/O進行分配,如圖3-2所示:
04【相關指令解讀】
此案例主要用到移位指令和其他指令配合,這里主要解讀移位指令。
循環左移字節(圖3-2)
循環移位指令將輸入值 IN 的位值循環左移位,位置循環移位計數 N,然后將結果裝載到分配給 OUT 的存儲單元中。循環移位操作為循環操作。
舉例說明1
程序如圖3-3,利用系統時鐘SM0.1第一個掃描周期給QB0字節中賦值為1,此時QB0中最低位(Q0.0)為 1。當按下I0.0按鈕后,QB0字節中的數據左移一位,Q0.1變為1。
舉例說明2
程序如圖3-4,利用系統時鐘SM0.1第一個掃描周期給QB0字節中賦值為1,此時QB0中最低位(Q0.0)為 1。當按下I0.0按鈕后,QB0字節中的數據左移二位,Q0.2變為1。
循環右移字節
如圖3-5,循環移位指令將輸入值 IN 的位值循環右移,位置循環移位計數 N,然后將結果裝載到分配給 OUT 的存儲單元中。循環移位操作為循環操作。
舉例說明1
程序如圖3-6,利用系統時鐘SM0.1第一個掃描周期給QB0字節中賦值為1,此時QB0中最低位(Q0.0)為 1。當按下I0.0按鈕后,QB0字節中的數據右移一位,Q0.7變為1。
舉例說明2
程序如圖3-7,利用系統時鐘SM0.1第一個掃描周期給QB0字節中賦值為1,此時QB0中最低位(Q0.0)為 1。當按下I0.0按鈕后,QB0字節中的數據右移二位,Q0.6變為1。
05【程序控制程序】
(1)主程序,對數據初始化,調用相關子程序。M1.0接通代表左移位開始,左移開始之前,將1賦值給QB0。M1.2接通代表右移開始,將128給到QB0, Q0.7為1。程序如圖3-8所示
(2)循環子程序主要控制燈是啟停和循環
按下啟動按鈕,左移開始標志位M1.0自鎖,總共移7位,定時時間為7秒,左移完成斷開M1.0延時2秒接通右移標志位M1.2。右移完成延時5秒接通M1.0左移開始標志位,形成循環。程序如圖3-9所示
(3)左移程序,利用移位指令和系統時鐘配合。程序如圖3-10所示
(4)右移子程序程序,利用移位指令和系統時鐘配合。程序如圖26-6所示
結束語
本案例采用子程序的結構編程,并且結合循環指令、定時器指令等編寫彩燈循環案例。
希望大家能在此文章中汲取西門子200SMART PLC編程相關知識及理念。
審核編輯:郭婷
-
plc
+關注
關注
5008文章
13151瀏覽量
462080 -
西門子
+關注
關注
93文章
3008瀏覽量
115638
原文標題:PLC案例 | S7-200 SMART實現控制彩燈按鈕
文章出處:【微信號:跟我學PLC,微信公眾號:跟我學PLC吧】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論