日期:2023-02-11 14:09:47瀏覽量:47540
在用plc控制步進電機加減速時,需要PLC輸出脈沖控制步進電機驅動器,在很多其他場合也可能用到脈沖輸出。西門子S7-200SMART系列PLC的脈沖輸出指令為PLS,這條指令具體要如何用呢,如何讓PLC輸出一連串特定頻率的脈沖呢?
想要輸出我們期望的那脈沖串,就要能設定脈沖頻率與脈沖數量,如何設定,就需要我們在特殊標志存儲器(SM存儲區)的對應存儲單元中寫入正確的數據并使用PLS指令。
以plc控制步進電機加減速為例,假定步進電機轉一圈需要200個脈沖,現要求步進電機以每秒5轉的速度運行30秒,應該如何編程呢。我們先計算下脈沖頻率與數量,每秒5轉,那么一秒內要發200乘以5=1000個脈沖,頻率就是1000,運行30秒,就一共要30000個脈沖。(后面有梯形圖)
首先我們看下PLS指令的基本格式,這條指令只有一個參數N,用于指定輸出通道。N=0使用輸出點Q0.0作為脈沖輸出通道,N=1或2時,通道分別為Q0.1或Q0.3。
我們要正確使用每個通道輸出脈沖,先查手冊上與PLS指令相關的內容:PLS 指令讀取存儲于指定 SM 存儲單元的數據,并相應地編程 PTO/PWM生成器。SMB67 控制 PTO0 或 PWM0,SMB77 控制 PTO1 或 PWM1,PWM1,SMB567 控制PTO2 或 PWM2。通過修改 SM 包括控制字節)中的單元,然后執行 PLS 指令,來改變 PTO 或者PWM 波形的特性。下面的圖給出了與PTO0相關的SM存儲單元。
以Q0.0做為脈沖輸出通道為例,我們必須使用PTO模式,Q0.0對應PTO0,先將脈沖的有頻率與個數寫入到對應SM存儲單元:SMW68(PTO0的頻率),SMD72(PTO0通過Q0.0輸出脈沖的數量),控制字寫入SMB67,然后執行一條PLS指令就可以了,梯形圖如下:
十六進制16#C5二進制數為1100 0101,所以查控制字SMB67可知16#C5是意義為:使能Q0.0的脈沖輸出,使用PTO模式,更新頻率與脈沖計數值。
這樣,plc控制步進電機加減速一個完整而簡單的脈沖輸出程序就編寫完了。