淮安生物工程高等職業學校 陳友明
技能大賽在中職教育中起著越來越重要的作用,YL-158G設備是電氣安裝項目指定設備,其包含各種電機的電氣控制,三菱PLC 由于其指令功能強大,深受編程愛好者的喜愛,特別是它的功能指令,合理應用會產生意想不到的效果,筆者在此特舉移位指令,講解利用移位指令來解決YL-158G 設備的應用問題,起到拋磚引玉的效果,使廣大讀者能夠觸類旁通,使PLC 編程變得更加簡單可行。
三菱PLC 指令分為基本指令、步進指令、功能指令等。SFTL指令隸屬于功能指令循環與移位指令集中,SFTL 指令全稱為(shift left),意即為向左移動;和其相對應的是SFTR,全稱為(shift right),意即為向右移動;SFTL 左移位指令格式如圖1 所示。

圖1
功能:對于n1 位(移動寄存器的長度)的位元件,進行n2 位的左移動的指令。當采用脈沖執行型指令時,驅動輸入每一次由OFF—ON 變化時,執行n2 位移位。每移動一次移1 位情況時,n2為K1。在實際應用當中,我們將初始狀態M0 設成得電狀態,當STFL 每觸沖一個脈沖,就會將M0 的狀態向左移到一位,即實現了狀態的依次得電,三菱PLC 程序設計的思路即是先寫狀態后寫動作,我們將控制要求的狀態依次寫好,再根據動作要求,寫出各個狀態的動作即可。
亞龍YL-158G 設備是國賽“電氣控制系統安裝與調試”賽項指定設備,該設備服務于PLC、電氣控制系統安裝與調試等課程,能夠進行三相民步電動機、變頻器、步進電機、伺服電機、觸摸屏、PLC、模擬量控制等多種實訓,極大地滿足中職電氣模擬控制要求。
下面以××設備為例,該××設備由五個電機控制,由主軸電機(雙速電機)、鉆孔電機(三相異步電動機)、傳送帶電(變頻器控制)、步進電機、伺服電機等五個電機組成,控制要求是首先對五個電機分別進行調試,待五個電機調試完畢后,進行五個電機的整體運行。現就該××設備進行調試,觸摸屏界面如下圖2所示,通過按下電機切換選擇按鈕,自動切換需要調試的電機,當某個電機被選中,對應的指示燈亮,同一時間,只有一個電機在調試,調試時,根據電機調試動作要求,執行該電機相應的動作,所有電機調試完成后才能進入運行模式,下面以傳送帶電機為例進行程序設計。

圖2
電機切換選擇按鈕用M100 控制,五個電機分別用M1~M5表示,當M1 得電時,表示主軸電機在調試。這里我們用移位指令SFTL 對五個電機進行調試選擇。初態時,沒有電機被選中,M0得電,當M100 按下一次,SFTL 指令得電一次,向左移一步,將M0 的狀態移給 M1,此時 M1 得電,M0 失電。同理,當 M100 再按下一次,SFTL 指令再得電一次,向左移一步,將M1 的狀態移給M2,此時M2 得電,M1 失電。以此類推,我們可以依次通按M100切換M1~M5 哪個得電,從而對五個電機進行選擇調試,程序如圖3 所示。

圖3
下面以M3 電機為例,調試要求如下,當M3 電機調試動作得電后,按下 SB1 按鈕,M3 電機以 35Hz 正轉,3S 后,以 25Hz 反轉,5S 后,以 15Hz 正轉,8S 后自動停止。I/O 分配如下:
SB1 按鈕:X1;電機正轉:Y20;電機反轉:Y21;RH:Y22;RM:Y23;RL:Y24,程序設計如下圖 4 所示

圖4
當M3 電機得電后,M30 得電,此時,通過按下X1 按鈕,SFTL 指令將 M30 的狀態 1 移給下一個,即 M31 得電,M31 得電后啟動電機以35Hz 正轉,同時用T31 定時3S,時間到后將再次觸發一個脈沖,將M31 的狀態移給M32,依此類推,能夠依次控制電機的運行狀態。同理,其余幾個電機的調試和此類似,在此不一一描述。
××設備運行控制如下,按下啟動按鈕后,設備開始加工過程,M3 電機以 35Hz 正轉,運行至 B 點(SA2 有信號),M3 電機以15Hz 正轉,同時M1 正向啟動,步進電機M4 按設置的參數下降到位(轉 10 圈),M1、M3 電機停止,間隔兩秒后,M4 返回,M2 電機正向啟動,M4 返回到位后,伺服電機按設置的參數下降,進行鉆孔加工,M5 下降到位后(旋轉 5 圈),停 0.5 秒,然后返回,當M5 返回到位后M2 電機停止,加工結束。
此控制過程是一種順序控制,根據順序控制要求,我們可以采用步進指令程序、啟保停程序、移位指令程序等來實現。這里,我們還是利用SFTL 移位指令來實現設備的運行程序。
首先分析整個控制過程分為七個部分,我們這里用M60 表示初態,所有電機停止;M61 表示 M3 電機 35Hz 正轉;M62 表示M3 電機 15Hz 正轉,M1 正向啟動,M4 轉 5 圈;M63 表示 M1、M3電機停止,定時2 秒,M64 表示M4 電機返回轉5 圈,M2 正向啟動;M65 表示 M5 正向轉 4 圈;M66 表示定時 0.5 秒;M67 表示M5 反向轉4 圈,根據要求寫出控制梯形圖如下所示。

圖5
根據程序設計要求,先把七個狀態通過移位指令寫好,然后分別在每一個狀態下對應的寫它的動作。這里的步進由Y0 脈沖發出控制,其對應的脈沖數存儲在D8140 里,K4000 表示10 圈,(步進設置成400 個脈沖轉一圈),伺服由Y1 脈沖發出控制,K50000 表示5 圈,(伺服設置成10000 個脈沖轉一圈),對應的脈沖數存儲在D8142 里,X2 表示SA2 行程開關。當運行到某狀態時,其對應的狀態運作相應的執行,執行完后,觸發SFTL 指令,執行下一個狀態,直至七個狀態依次執行完畢,回到初始狀態,整個運行過程結束。
移位指令在程序設計中起著極大的作用,不僅在電機控制中適用,同樣在其他的程序中一樣適用。在近年來技能大賽的江蘇省賽、國賽題目中,移位指令均能非常好地用于解決問題。我們應多用功能指令,化簡程序,使程序簡單明了,易于編寫和調試。三菱PLC 有許多功能指令,這些功能指令使用得當,能起到事半功倍的效果,同時,易于我們調試程序,一目了然。筆者多次在省市大賽中獲獎,根據自己的實際經驗總結以上,希望對各位同仁起到拋磚引玉的作用。