在某些控制系統中,必須有脈沖信號源。控制任務不同,要求脈沖頻率不同,或脈沖占空比不同。掌握脈沖的產生方法和獲取途徑,對控制設計有很大的幫助。本文著重介紹FX2系列PLC脈沖輸出的幾種方法和技巧。
1 FX2系列PLC脈沖輸出的幾種方法和技巧
1.1 應用脈沖輸出指令實現脈沖輸出
應用脈沖輸出指令PLSY,可實現頻率范圍為1~1000Hz,占空比為50%,脈沖個數范圍為1到無窮多個的脈沖輸出。其梯形圖如圖1所示。
圖1 PLSY指令實現脈沖輸出梯形圖
圖中,Kn1為脈沖頻率設定值,取值范圍為1~1 000。Kn2為脈沖個數設定值,操作數為16位的二進制(PLSY)時,設定范圍為1~32 767;操作數為32位的二進制[(D)PLSY]時,設定范圍為1~2 147 483 647;設定值為0(K0)時,脈沖個數為無窮多個。X0接起動按鈕;X1接停止按鈕。X0瞬時閉合,M0就得電,Y0輸出設定頻率、設定個數、占空比為50%的脈沖列。
1.2 應用脈寬調制指令實現脈沖輸出
應用脈寬調制指令PWM,可實現周期為1~32 767毫秒,占空比范圍為0%~100%的脈沖列輸出。其梯形圖如圖2所示。
圖2中,Kn1為脈寬設定值,取值范圍為0~32 767;Kn2脈沖周期設定值,取值范圍為1~32 767。脈寬和周期的增量均為毫秒。Kn1為0(K0),即脈寬等于0,占空比等于0,輸出斷開;Kn1=Kn2,即占空比等于100%,輸出連續接通。X0瞬時閉合,M0得電,Y0輸出設定周期、設定占空比的脈沖列。
圖2 PWM指令實現脈沖輸出梯形圖
1.3 應用時鐘源實現脈沖輸出
PLC內部具有穩定的時鐘源,如:M8011輸出周期為10毫秒振蕩脈沖,M8012輸出周期為100毫秒振蕩脈沖,M8014輸出周期為1分鐘振蕩脈沖。利用這些時鐘源可得到頻率為100Hz、10Hz、1Hz、1/60Hz,占空比為50%脈沖列輸出。
圖3為應用100毫秒時鐘源實現脈沖列輸出的梯形圖。X0瞬時閉合,M0就得電,Y0輸出10Hz、占空比50%的脈沖列。
圖3 時鐘源實現脈沖輸出梯形圖
1.4 應用計數器實現脈沖輸出
圖4為應用計數器實現脈沖輸出的梯形圖及時序圖。第2個脈沖上升沿來到時,C0常開觸點閉合,Y0得電,輸出高電平。第5個脈沖上升沿來到時,C0、C1復位,C0常開觸點斷開,Y0失電,輸出低電平,第7個脈沖上升沿來到時,C0常開觸點又閉合,Y0又得電。從而實現占空比為60%、周期為5秒脈沖列輸出。改變C0、C1的設定值,就可改變脈沖的占空比和頻率。
(a) 梯形圖 (b) 時序圖
圖4 計數器實現脈沖輸出
1.5 應用移位指令實現脈沖輸出
圖5為應用移位指令實現脈沖輸出的梯形圖及時序圖。第1條右移位指令(第3邏輯行)控制占空比,第2條右移位指令(第4邏輯行)控制周期。第1個脈沖上升沿來到時,M0、M5分別由0變1,同時M0的1移至M3,即M0、M1、M2均為0,M3為1;M5的1移至M10,即M5、M6、M7、M8、M9均為0,M10為1。第2個脈沖上升沿來到時,M3的1移至M2,即M0、M1、M3均為0,M2為1;M10的1移至M9,即M5、M6、M7、M8、M10均為0,M9為1。第3個脈沖上升沿來到時,M2的1移至M1,即M0、M2、M3均為0,M1為1,Y0被置位;M9的1移至M8。第4個脈沖上升沿來到時,M1的1被移出,而移入0,Y0仍為1;M8的1移至M7。第5個脈沖上升沿來到時,M7的1移至M6,Y0被復位。至此完成脈沖波一個周期的輸出,占空比為40%。
改變梯形圖中第3邏輯行中目的操作元件的位數(變K3為K2或K4等),可改變脈沖的占空比;改變第4邏輯行中目的操作元件的位數(變K5為K6或K7等),可改變脈沖的頻率。
(a) 梯形圖 (b) 時序圖
圖5 移位指令實現脈沖輸出
1.6 應用加1、比較指令實現脈沖輸出
(a) 梯形圖 (b) 時序圖
圖6 INC、CMP指令實現脈沖輸出
圖6為應用加1、比較指令實現脈沖輸出的梯形圖及時序圖。圖中,X0、X1分別接起動、停止按鍵。第1秒脈沖上升沿來到時,D0中的數加1再存入D0中,D0中的數為1,緊接著D0中的數與2比較,因D0中的數小于2,于是M2、M3為0,M1為1。第2個秒脈沖上升沿來到時,D0中的數加1再存入D0中,D0中的數為2,緊接著D0中的數與2比較,因D0中的數等于2,于是M1、M3為0,M2為1。M2為1,Y0得電,輸出高電平。同理,第5個秒脈沖上升沿來到時,D1中的數加1再存入D1中,D1中的數為5,于是M4、M6為0,M5為1。M5為1,使M1~M6均復位,D0、D1清零,Y0失電,輸出低電平。第7個秒脈沖上升沿來到時,M2又為1,Y0又得電,又輸出高電平。從而實現占空比為60%、周期為5秒的脈沖輸出。
改變梯形圖中第3邏輯行CMP(P)后的K值(變K2為K3、K4等),可改變脈沖占空比。改變梯形圖中第5邏輯行CMP(P)后的K值(變K5為K6、K7等),可改變脈沖周期。
1.7 應用循環移位指令實現脈沖輸出
圖7為應用循環移位指令實現脈沖輸出控制的梯形圖及時序圖。PLC接通電源后,M8013輸出周期為1秒、占空比為50%的振蕩脈沖。當X0閉合,M0得電,使M8022復位,同時將十進制數15轉換成二進制數后傳送到寄存器D0中,使D0中的數據狀態為0000 0000 0000 1111。當第1個秒脈沖上升沿來到時,D0中各位數據向右循環移位1位,數據狀態為1000 0000 0000 0111,同時M8022為1,Y0得電。第4個秒脈沖上升沿來到時,D0中各位數據向右循環移位1位數據狀態為1111 0000 0000 0000,同時M8022為1,Y0仍得電。第5個秒脈沖上升沿來到時,D0中各位數據向右循環移位1位,數據狀態為0111 1000 0000 0000,同時M8022為1,Y0失電。第16個秒脈沖上升沿來到時,D0中各位數據向右循環移位1位數據狀態為0000 0000 0000 1111,M8022仍為0,Y0仍失電。第17個秒脈沖上升沿來到時,情況與第1個秒脈沖上升沿來到時相同。從而實現周期為16秒,占空比為25%的脈沖輸出。
(a) 梯形圖 (b) 時序圖
圖7 循環移位指令實現脈沖輸出
改變D0中的初始傳送值,可改變脈沖的占空比,如:變K15為K1,則占空比為1/16,變K15為K3,則占空比為2/16。改變移位量可改變脈沖的周期。如:變ROR(P)所在邏輯行中的K1為K2,則周期為8秒,變K1為K4,則周期為4秒。
1.8 應用置位、復位指令實現脈沖輸出
(a) 梯形圖 (b) 時序圖
圖8 置位、復位指令實現脈沖輸出
圖8為應用置位、復位指令實現脈沖輸出的梯形圖及時序圖。第1個秒脈沖上升沿來到時,Y0被置位,輸出高電平。第3個秒脈沖上升沿來到時,Y0被復位輸出低電平。第7個秒脈沖上升沿來到時,Y0又被置位,輸出高電平。從而實現占空比為33.3%、周期為6秒的脈沖列輸出。改變CO、C1的設定值,就可改變脈沖的占空比和頻率。
1.9 應用定時器實現脈沖輸出
(a) 梯形圖 (b) 時序圖
圖9 定時器實現脈沖輸出
圖9為應用定時器實現脈沖輸出的梯形圖及時序圖。當X10接通,T0線圈得電1秒后,其常開觸點閉合,Y0得電,同時T1線圈得電計時。T1線圈得電1.5秒后,其常閉觸點斷開,使T0線圈失電復位。T0復位后,其常開觸點斷開,使T1線圈失電復位,Y0失電。T1復位后T0線圈又得電,進入下一周期,只要X10接通,則上述過程周而復始,從輸出繼電器Y0即可得到周期為2.5秒振蕩信號。
2 結語
實現PLC脈沖輸出的方法較多,實際應用中,可根據控制任務和要求的不同,個人對指令和元件的熟練程度加以選擇,使設計的PLC控制系統經濟合理。