序: PTO和PMW的在應用上的區別為:
PTO為脈衝控制模式,而PWM為模擬量控制模式。
當設備對位置有精確要求時選用PTO,而當設備對轉速和力矩有精確要求時選用PWM。
根據設備的需要選擇伺服設備的類型,再選擇用哪種控制方式。
PWM是通過高速計數器將輸入信號模擬為恆定的電壓輸出,通過控制電壓的變化來控制電機轉速的變化。
一 西門子PLC高速脈衝輸出的幾個概念
1 高速脈衝輸出的形式
A 高速脈衝串輸出 PTO : ( Pulse Train Output )
輸出指定數量,佔空比為50% 的方波脈衝串。
B 寬度可調脈衝輸出 PWM : ( Pulse Width Modulation )
輸出數量不限,佔空比可調的脈衝串信號。
2 高速脈衝輸出端子
西門子S7-200CPU可以提供 2 個高速脈衝發生器
● PTO/PWM 發生器0 的輸出端子是 Q0.0
● PTO/PWM 發生器1 的輸出端子是 Q0.1
3 高速脈衝輸出優先權
有PTO/PWM 輸出時,CPU 把輸出端子Q0.0、Q0.1 控制權交給 PTO/PWM 發生器,禁止普通邏輯輸出。
輸出映像寄存器 Q 的狀態會影響PTO/PWM波形的起始電平, 高速脈衝輸出前要先把Q0.0、 Q0.1的狀態清零。
4 高速脈衝輸出適用機型
輸出高頻脈衝信號時,應選用晶體管輸出型 PLC。
二 高速脈衝輸出指令及特殊寄存器
1 高速脈衝輸出指令( Pulse )
指令功能:EN 有一個上升沿時,激活PLS,控制PLC從 Q0.0 或 Q0.1 輸出高速脈衝。
PLS指令可以輸出:
※ 高速脈衝串 PTO
※ 寬度可調的脈衝信號 PWM
數據類型:
※ 操作數Q0.X:X必須是常數 0 或 1。
※ EN:只接通一個掃描週期的短信號。
2 特殊寄存器
每個 PTO/PWM 都有一組配套參數:
● 1個 8位的控制字節
● 1個 8位的狀態字節
● 1個 16位的週期值
● 1個 16位的脈寬值
● 1個 32位的脈衝數量
對於多段 PTO,還有
● 1個 8位的段字節
● 1個 16位包絡表起始地址
這些參數存放在系統指定的特殊標誌寄存器中
狀態字節
PTO 方式下運行時,系統根據運行狀態使相應位置位。
控制字節
通過設置字節中各控制位,來定義高速脈衝輸出的特性.
控制字節中各控制位的功能
三 高速脈衝串輸出PTO
特點:高速脈衝串輸出(PTO)方式下,只能改變脈衝的週期值和脈衝數。
1 週期和脈衝數
●週期:單位:μs或ms。週期值為16位無符號整數。變化範圍:50~65535 μs或 2~65535 ms。
脈衝數:是一個32位的無符號整數,取值範圍:1~4294967295。
2 高速脈衝串輸出中斷
PTO 方式下,當輸出完指定數量的脈衝後,產生高速脈衝串輸出中斷。
● PTO/PWM 0 的中斷事件號是19
● PTO/PWM 1 的中斷事件號是20
高速脈衝串輸出時,CPU自動將PTO空閒位SM66.7(或SM76.7)置1。
3 PTO的種類
PTO方式下,要輸出多段脈衝串時,允許脈衝串排隊。PTO輸出多段脈衝的方式有兩種:
●單段PTO:定義一個脈衝串,輸出一個脈衝串 (特性參數通過特殊寄存器分別定義) 。
●多段PTO:集中定義多個脈衝串,按順序輸出多個脈衝串(特性參數通過包絡表集中定義)
單段PTO 實現的方法
用指定的特殊標誌寄存器定義脈衝串特性參數(每次定義一個脈衝串)。一個脈衝串輸出完成後,產生中斷。在中斷服務程序中再為下一個脈衝串更新參數,輸出下一個脈衝串。
優點: 各脈衝段可以採用不同的時間基準。◎缺點:單段PTO輸出多段高速脈衝串時,編程複雜,且參數設置不當會造成脈衝串之間的不平滑轉換。
多段PTO 操作
多段PTO:集中定義多個脈衝串,並把各段脈衝串的特性參數按照規定的格式寫入變量存儲區用戶指定的緩衝區中--稱為包絡表
包絡表說明:
● 包絡表由包絡段數和各段構成。
● 第一個字節為需要輸出的脈衝串總段數,範圍:1~255 ;
● 定義一段脈衝串的特性參數需要8個字節
※ 2個字節存放脈衝串的起始週期值
※ 2個字節定義脈衝串的週期增量
※ 4個字節存放該段脈衝串的脈衝數
包絡表中的週期單位可以為 ms 或 μs,
但表中所有周期單位必須一致。
● 週期增量的計算公式:
多段PTO操作時,需把包絡表的起始地址裝入標誌寄存器 SMW168(或SMW178)中。
● PTO指令執行時,當前輸出段的段號由系統填入 SMB166 或 SMB176 中。
多段PTO的優點:
編程簡單,且在同一段脈衝串中其週期可以均勻改變。
多段 PTO 編程方法及步驟:
A. 初始化操作(以PTO/PWM 0為例):
a. 將 PTO 的輸出點 Q0.0 復位;
b. 調用初始化子程序SBR-0,完成下列任務:
設置控制字節SMB67 ,按照控制要求按位填寫:如使SMB67=16#A0。
將包絡表的起始地址寫入 SMW168;
● 填寫包絡表中各段脈衝串的特性參數;
建立中斷連接:用ATCH指令建立脈衝輸出完成中斷事件與中斷程序的聯繫。當PLS指令輸出完指定數量的脈衝串時,產生中斷。
● 用ENI全局開放中斷;
B. 有啟動信號時,執行高速脈衝輸出指令PLS,按順序輸出多段脈衝串。
C. 有停止信號時,停止高速脈衝串輸出。
停止 PTO 輸出的方法
PLS指令一經激發,就能完成指定脈衝串的輸出,故要停止PTO輸出,必須先在控制字節中禁止PTO輸出,且執行PLS指令。
多段PTO應用實例
已知步進電機的起動頻率為2 kHz(A點),經過400個脈衝加速後頻率上升到10 kHz(B點和C點),恆速轉動的脈衝數為4000個,減速過程脈衝數為200個,頻率降為2 kHz(D點),其頻率特性如圖所示。
解:● 確定脈衝發生器及工作模式
要求PLC輸出三段串脈衝。故採用多段PTO輸出方式。選擇輸出端為 Q0.0。
● 填寫控制字節SMB67:使SMB67=16#A0
將包絡表首地址裝入SMW168中。
● 填寫包絡表。
參數換算:
起始頻率:2 kHz ,起始週期值:500μs,
運行頻率為10 kHz,運行週期值:100μs。
輸出3段脈衝串,時基取μs,定義三段脈衝串特性參數的包絡表為:
中斷連接:高速脈衝輸出完成時,產生中斷事件19,用ATCH指令將與中斷事件與中斷服務程序INT0連接起來,並全局開中斷(ENI)。
● 執行PLS指令。
採用多段PTO,脈衝串連續輸出期間,按啟動按鈕I0.0不起作用,不會出現脈衝串重複排隊輸出的現象,脈衝串能夠按照規定的順序輸出完後,停止輸出。
四 寬度可調的脈衝輸出PWM
特點: PWM方式下,用戶可以改變脈衝的週期值 和 脈寬值 ,脈衝數不受限制。
1 週期值和脈寬值
週期值:是一個16位無符號數據,單位:μs或ms;變化範圍:50~65535μs或2~65535 ms。
脈衝寬度:是一個16位無符號整數,單位:μs或ms;變化範圍是0~65535 μs或ms。即佔空比在0%~100%之間變化。
2 PWM 更新方式
● 同步更新:在改變脈衝週期值和脈寬值時,不改變時間基準。特點:同步更新時,波形的變化發生在週期的邊緣,輸出波形進行平滑轉換。
異步更新:在改變脈衝週期值和脈寬值時,改變時間基準。特點:採用異步更新會使高速脈衝輸出功能被瞬時禁止,這時輸出端交由輸出映像寄存器Q控制,可能使 PWM 的波形不連續,引起被控制設備的振動。
結論:改變 PWM 波形的特性時應儘量採用同步更新。
3 PWM的編程方法及步驟
A.確定脈衝發生器:
※ 選擇高速脈衝輸出端(發生器);
※ 選擇工作模式為PWM。
B. PWM的初始化
a. 將PWM的輸出點(Q0.0或Q0.1)復位;
b. 調用初始化子程序SBR-0,它所完成的任務:
按位填寫控制字節(如SMB67):SMB67=16#DB
向SMW68寫入第一個脈衝串的週期值;
●向SMW70寫入第一個脈衝串的脈寬值 ;
●執行PLS指令,輸出指定寬度的脈衝信號。修改脈衝串寬度的方法
● 改寫控制字節SMB67,將允許改脈寬值位置1 ,其它位不變。
● 向SMW70寫入新的脈衝寬度值
● 執行PLS,輸出指定寬度的脈衝信號。
PWM 輸出舉例
要求 PWM0的脈衝週期是 T=10000ms,開始時輸出佔空比為 10%的脈衝,當 I0.0=1時,輸出佔空比為 50%的脈衝 ,當 I0.2=1時,停止輸出脈衝。
閱讀更多 電氣自動化應用 的文章