當設備對位置有精確要求時選用PTO,而當設備對轉速和力矩有精確要求時選用PWM。
根據設備的需要選擇伺服驅動的類型,再選擇用哪種控制方式。
PWM是通過高速計數器將輸入信號模擬為恒定的電壓輸出,通過控制電壓的變化來控制電機轉速的變化。
目前市場中用的比較多的是帶PTO功能的伺服,我們叫它脈沖型。
另外一種是兩種功能都具備的,我們叫它全功能型。比脈沖型貴不少。
既然是全功能型,你又想要伺服精確位移的話,用PTO控制就好了。
下面我從網上找了兩個實例,先存著,以后新身證實一下。
西門子S7-200系列PLC的PMW方波控制程序舉
在西門子S7-200系列PLC中,CPU-214的輸出端Q0.0和Q0.1能夠輸出方波信號,而且方波信號的周期和脈寬均能獨立調節,其中脈寬指的是在一個周期內,輸出信號處于高電平的時間長度。
下面這個例子說明了脈寬調制(PWM)是如何工作的。輸出端Q0.0輸出方波信號,其脈寬每周期遞增0.5秒,周期固定為5秒,并且脈寬的初始值為0.5秒。當脈寬達到設定的最大值4.5秒,脈寬改為每周期遞減0.5秒,自到脈寬為零為止。以上過程周而復始。
在這個例子中必須把輸出端Q0.0與輸入端10.0連接,這樣程序才能控制PWM。
子程序:
特殊存儲字節SMB67用來初始化輸出端00.0的PWM。這個控制字內含PWM允許位,修改周期和脈寬的允許位,以及時問基數選擇位等。子程序0來調整這個控制字節。通過EN}指令,使所有的中斷成為全局允許,然后通過PLSO指令,使系統接受各設定值,并初始化“PT O/PWM發生器”,從而在輸出端00.0輸出脈寬調制(PWM)信號。
另外,周期5秒是通過將數值500置入特殊存儲字SMW68來實現的,初始脈寬0.5秒則通過將500寫入特殊存儲字SMW70來實現的。
主程序:
這個初始化過程是在程序的第一個掃描周期通過執行子程序0來實現,第一個掃描周期標志是SM0.1=1。當一個PWM循環結束,即當前脈寬為0秒時,將再一次初始化PWM。
輔助內存標記M 0.0用來表明脈寬是增加,還是減少,初始化時將這個標記設為增加(置1為加,置0為減)。輸出端00.0與輸入端I0.0相連,這樣輸出信號就可送到輸入端I0.0。當第一個方波脈沖輸出時,利用ATC H指令,把中斷程序1(INT1)賦給中斷事件0 (I0.0的上升沿)。
每個周期中斷程序1將當前脈寬增加0.5秒,然后利用D丁C日指令分離中斷INT1,使這個中斷再次被屏蔽。如果在下次增加時,脈寬大于或等于周期,則將輔助內存標記位M 0.0再次置0。這樣就把中斷程序2賦子事件0,并且脈寬也將每次遞減0.5秒。當脈寬值減為零時,將再次執行,初始化程序(子程序0)。
西門子S7-200系列PLC的PTO方波控制程序舉例
1、使用位控向導編程的步驟如下:
A、 為S7--200 PLC選擇選項組態 置PTO/PWM操作。 在STEP7V4.0軟件命令菜單中選擇工具→位置控制向導并選擇配置S7-200PLC內 置PTO/PWM操作,如圖所示。
B、單擊“下一步”選擇“Q0.0”,再單擊“下一步”選擇“線性脈沖輸出(PTO)”。
C、單擊“下一步”后,在對應的編輯框中輸入MAX_SPEED 和SS_SPEED 速度值。輸入最高電機速度“90000”,把電機啟動/停止速度設定為“600”。這時,如果單擊MIN_SPEED值對應的灰色框,可以發現,MIN_SPEED值改為600,注意:MIN_SPEED值由計算得出。用戶不能在此域中輸入其他數值。
D、單擊“下一步”填寫電機加速時間“1500”和電機減速時間 “200”。
E、接下來一步是配置運動包絡界面。
該界面要求設定操作模式、1個步的目標速度、結束位置等步的指標,以及定義這一包絡的符號名。(從第0個包絡第0步開始)。在操作模式選項中選擇相對位置控制,填寫包絡“0”中數據目標速度“60000”,結束位置“85600”,點擊“繪制包絡”,如圖9所示,注意,這個包絡只有1步。包絡的符號名按默認定義。這樣,第0個包絡的設置,即從供料站→加工站的運動包絡設置就完成了。現在可以設置下一個包絡。
F、運動包絡編寫完成單擊“確認”,向導會要求為運動包絡指定V存儲區地址(建議地址為VB75~VB300),默認這一建議,單擊“下一步”出現下圖,單擊 “完成”。
2、項目組件
運動包絡組態完成后,向導會為所選的配置生成三個項目組件(子程序),分別是:PTOx_RUN子程序(運行包絡),PTOx_CTRL子程序(控制)和PTOx_MAN子程序(手動模式)子程序。一個由向導產生的子程序就可以在程序中調用了,如圖所示。