高速脈沖輸出基本編程思路,其用到是單段PTO脈沖輸出;下面給大家介紹一下稍微難一點的多段PTO脈沖輸出,多段PTO相對單段PTO要靈活一些,今天就來具體體會多段PTO脈沖輸出吧。
西門子S7-200PLC ,PTO的種類
在PTO方式下,要輸出多段脈沖串時,允許脈沖串排隊。PTO輸出多段脈沖的方式有兩種:
1.單段PTO:定義一個脈沖串,輸出一個脈沖串 (特性參數通過特殊寄存器分別定義) 。
2.多段PTO:集中定義多個脈沖串,按順序輸出多個脈沖串(特性參數通過包絡表集中定義) 。
多段PTO操作
多段PTO:集中定義多個脈沖串,并把各段脈沖串的特性參數按照規定的格式寫入變量存儲區用戶指定的緩沖區中稱為包絡表,如下圖所示:
1.包絡表由包絡段數和各段構成。
2.第一個字節為需要輸出的脈沖串總段數,范圍:1~255 。
3.定義一段脈沖串的特性參數需要8個字節
兩個字節存放脈沖串的起始周期值
兩個字節定義脈沖串的周期增量
四個字節存放該段脈沖串的脈沖數
4.包絡表中的周期單位可以為 ms 或 μs,但表中所有周期單位必須一致。
5.周期增量的計算公式:
例如:第1段中的初始周期為500μs ,脈沖數為400個;而第2段的初始周期為 100μs,為保證平滑過渡,第1段的結束周期設為與第2段初始周期相同,則脈沖的周期增量為:N=100-500/400=-1μs
6.多段PTO操作時,需把包絡表的起始地址裝入標志寄存器 SMW168(或SMW178)中。
PTO指令執行時,當前輸出段的段號由系統填入 SMB166 或 SMB176 中。
7.多段PTO的優點:編程簡單,且在同一段脈沖串中其周期可以均勻改變。
多段 PTO 編程步驟
(1)使用初始化脈沖觸點SM0.1調用PTO脈沖輸出初始化操作子程序。這個結構可以使系統在后續的掃描過程中不再調用這個子程序,從而減少了掃描時間,且程序更為結構化。
(3)將包絡表的起始地址寫入 SMW168;
(4)填寫包絡表中各段脈沖串的特性參數;
(5)建立中斷連接:用ATCH指令建立脈沖輸出完成中斷事件與中斷程序的聯系,用ENI全局開放中斷;當PLS指令輸出完指定數量的脈沖串時,產生中斷。
(6)有啟動信號時,執行高速脈沖輸出指令PLS,按順序輸出多段脈沖串。有停止信號時,停止高速脈沖串輸出。
(7)停止 PTO 輸出的方法,PLS指令一經激發,就能完成指定脈沖串的輸出,故要停止PTO輸出,必須先在控制字節中禁止PTO輸出,且執行PLS指令。
接下來我做一個相關案例,案例如圖所示:
案例要求:使用多段管線PTO方式控制交流伺服電動機進行精確定位的控制系統?刂浦凶裱瓐D中所畫運行軌跡,并可以實現任意時刻停止交流伺服電動機。I0.0為正轉按鈕,I0.1為反轉按鈕,I0.2為停止按鈕,控制程序如圖所示。
實踐出真知,沒有實踐,理論就是紙上談兵;學習中需要多加驗證。如果大家覺得小智的文章寫得不錯,很適合大家的口味,可以分享更多的朋友。