基本指令部分:
脈沖輸出指令(PLS)用于在高速輸出(Q0.0和Q0.1)上控制脈沖串輸出(PTO)和脈寬調制(PWM)功能。
1、PWM波
PWM產生一個占空比變化周期固定的脈沖輸出。可以以微秒或者毫秒為單位指定其周期和脈沖寬度:
周期: 10 μs到65,535 μs或 2ms到65,535 ms
脈寬時間:0 μs到65,535μs或 0ms到65,535 ms
注:脈寬≥周期值占空比是100%:連續接通輸出。
脈寬=0占空比是0%:連續關閉輸出。
周期<2個時間單位將周期缺省地設定為2個時間單位。
1.1有兩個方法改變PWM信號波形的特性:
(1)同步更新:如果不要求改變時間基準,則可以使用同步更新。利用同步更新,信號波形特性的變化發生在周期邊沿,提供平滑轉換。
(2)異步更新:通常,對于PWM操作,脈沖寬度在周期保持不變時變化,所以不要求改變時間基準。但是,如果需要改變PTO/PWM發生器的時間基準,就要使用異步更新。異步更新會造成PTO/PWM功能被瞬時禁止,和PWM信號波形不同步。這會引起被控設備的振動。由于這個原因,建議采用PWM同步更新。選擇一個適合于所有周期時間的時間基準。
1.2特點:周期和脈寬都是以時間為單位特別是脈寬不是固定的0-255或者0-512
2、脈沖串操作(PTO)
TO按照給定的脈沖個數和周期輸出一串方波(占空比50%)。PTO可以產生單段脈沖串或者多段脈沖串(使用脈沖波形)。可以指定脈沖數和周期(以微秒或毫秒為增加量):
脈沖數目:1到4,294,967,295
周期: 10 μs到65,535 μs或 2ms到65,535 ms。
周期<2個時間單位將周期缺省地設定為2個時間單位
脈沖個數=0將脈沖個數缺省地設定為1個脈沖
PTO功能允許脈沖串“鏈接”或者“排隊”。當當前脈沖串輸出完成時,會立即開始輸出一個新的脈沖串。這保證了多個輸出脈沖串之間的連續性。
2.1 PTO脈沖串的單段管道
在單段管道模式,需要為下一個脈沖串更新特殊寄存器。一旦啟動了起始PTO段,就必須按照第二個信號波形的要求改變特殊寄存器,并再次執行PLS指令。第二個脈沖串的屬性在管道中一直保持到第一個脈沖串發送完成。在管道中一次只能存儲一段脈沖串的屬性。當第一個脈沖串發送完成時,接著輸出第二個信號波形,此時管道可以用于下一個新的脈沖串。重復這個過程可以再次設定下一個脈沖串的特性。除去以下兩種情況之外,脈沖串之間可以作到平滑轉換:時間基準發生了變化或者在利用PLS指令捕捉到新脈沖之前,啟動的脈沖串已經完成。
特點:可以實現輸出多個單端脈沖中間無需停止
2.2 PTO脈沖串的多段管道
在多段管道模式,CPU自動從V存儲器區的包絡表中讀出每個脈沖串的特性。在該模式下,僅使用特殊存儲器區的控制字節和狀態字節。選擇多段操作,必須裝入包絡表在V存儲器中的起始地址偏移量(SMW168或SMW178)。時間基準可以選擇微秒或者毫秒,但是,在包絡表中的所有周期值必須使用同一個時間基準,而且在包絡正在運行時不能改變。執行PLS指令來啟動多段操作。
每段記錄的長度為8個字節,由16位周期值、16位周期增量值和32位脈沖個數值組成。表中給出了包絡表的格式。您可以通過編程的方式使脈沖的周期自動增減。在周期增量處輸入一個正值將增加周期;輸入一個負值將減少周期;輸入0將不改變周期。
2.3計算包絡表的值
2.3.1PTO發生器的多段管道功能在許多應用中非常有用,尤其在步進電機控制中。例如:您可以用帶有脈沖包絡的PTO來控制一臺步進電機,來實現一個簡單的加速、勻速和減速過程或者一個由最多255段脈沖波形組成的復雜過程,而其中每一段波形都是加速、勻速或者減速操作。圖中的示例給出的包絡表值要求產生一個輸出信號波形包括三段:步進電機加速(第一段);步進電機勻速(第二段)和步進電機減速(第三段)。
對于該實例:啟動和最終脈沖頻率是2kHz,最大脈沖頻率是10 kHz,要求4000個脈沖才能達到期望的電機旋轉數。由于包絡表中的值是用周期表示的,而不是用頻率,需要把給定的頻率值轉換成周期值。因此,啟動(初始)和最終(結束)周期時間是500 μs,相應于最大頻率的周期時間是100 μs。在輸出包絡的加速部分,要求在200個脈沖左右達到最大脈沖頻率。也假定包絡的減速部分,在400個脈沖完成。
De給定段的周期增量=|ECT--ICT|/Q
其中:End_CTseg =此段的結束周期
Init_CTseg =此段的初始周期
Quantityseg =此段中的脈沖數量
利用這個公式,
分段1(加速):增量周期=--2
分段2(恒速):增量周期=0
分段3(減速):增量周期=1
假定包絡表存放在從VB500開始的V存儲器區,表給出了產生所要求信號波形的值。該表的值可以在用戶程序中用指令放在V存儲器中。一種方法是在數據塊中定義包絡表的值。
段的最后一個脈沖的周期在包絡中不直接指定,但必須計算出來(除非周期增量是0)。如果在段之間需要平滑轉換,知道段的最后一個脈沖的周期是有用的。計算段的最后一個脈沖周期的公式是:
段的最后一個脈沖的周期時間=ICT+(DEL*(Q--1))
其中:Init_CTseg =該段的初始化周期
Deltaseg=該段的增量周期時間
Quantityseg=該段的脈沖數量
注意:周期增量只能以微秒數或毫秒數指定,周期的修改在每個脈沖上進行
2.3.2、按照下面的公式可以計算完成一個給定波形段的時間長短:
波形段的持續時間=Q*(ICT+((DEL/2)*(Q--1)))
其中:Quantityseg =該段的脈沖數量
ICT=該段的初始化周期時間
DEL=該段的增量周期時間
PTO的特點:每段中的頻率變化值都是每個脈沖變化一次,曲線較均勻平滑。可以很好的擬合復雜的曲線。
開環運動控制部分:
1、S7-200提供有開環運動控制的三種方式:
脈寬調制(PWM) --內置于S7-200,用于速度、位置或占空比控制。
脈沖串輸出(PTO) --內置于S7-200,用于速度和位置控制。
EM253位控模塊--用于速度和位置控制的附加模塊。
S7-200提供了兩個數字輸出(Q0.0和Q0.1),該數字輸出可以通過位控向導組態為PWM或PTO的輸出。位控向導還可以用于組態EM253位控模塊。
當組態一個輸出為PWM操作時,輸出周期固定,脈寬或脈沖占空比通過您的程序進行控制。脈沖寬度的變化在您程序中可以控制速度或位置。
當組態一個輸出為PTO操作時,生成一個50%占空比脈沖串用于步進電機或伺服電機的速度和位置的開環控制。內置PTO功能僅提供了脈沖串輸出。您的應用程序必須通過PLC內置I/O或擴展模塊提供方向和限位控制。
EM253位控模塊提供了帶有方向控制、禁止和清除輸出的單脈沖輸出。另外,專用輸入允許將模塊組態為包括自動參考點搜索在內的幾種操作模式。模塊為步進電機或伺服電機的速度和位置開環控制提供了統一的解決方案。
為了簡化您應用程序中位控功能的使用,STEP 7--Micro/WIN提供的位控向導可以在幾分鐘內全部完成PWM、PTO或位控模塊的組態。該向導可以生成位控指令,可以用這些指令在應用程序中對速度和位置進行動態控制。對于位控模塊,STEP 7--Micro/WIN還提供了一個控制面板,可以控制、監視和測試您的運動操作。
1.1使用PWM (脈寬調制)輸出
PWM產生一個占空比變化周期固定的脈沖輸出。以指定頻率(周期)啟動后,PWM持續輸出。脈沖寬度根據所需的控制要求進行變化。占空比可以表示為周期的一個百分比或對應于脈沖寬度的一個時間值。脈沖寬度可以從0% (無脈沖,一直為低電平)變化到100% (無脈沖,一直為高電平)。
由于PWM輸出可以從0%變化到100%,在很多情況下,它可以提供一個類似于模擬量輸出的數字量輸出。例如,PWM輸出可以用于電機從停止到最大速度的控制,或用于閥從關到全開的位置值控制。
1.2開環位控用于步進電機或伺服電機的基本信息
內置于S7-200 PLC的PTO和EM253位控模塊都使用一個脈沖串輸出用于步進電機或伺服電機的速度和位置控制。使用PTO或模塊用于開環位置控制需要運動控制領域的專業技術。提供基礎信息以幫助您使用位控向導為您的應用程序組態PTO或模塊、
最大速度和啟動/停止速度
向導將提示您應用程序的最大速度(MAX_SPEED)和啟動/停止速度(SS_SPEED)。如圖
輸入加速和減速時間
1.3選擇包絡的操作模式
您要按照操作模式組態包絡。PTO支持相對位置和單一速度的連續轉動。而位控模塊支持絕對位置、相對位置、單一速度連續轉動和以兩種速度連續轉動
1.4創建包絡中的步
一個步是工件運動的一個固定距離,包括加速和減速時間內的距離。PTO每一包絡最大允許29個步,而模塊的每一包絡最大允許4個步。要為每一步指定目標速度和結束位置或
脈沖數目,且每次輸入一步。圖所示為一步、兩步、三步和四步包絡。
注意一步包絡只有一個勻速段,兩步包絡有兩個勻速段,依次類推。步的數目與包絡中勻速段的數目一致
1.5組態PTO輸出
1.6通過位控向導創建指令
通過創建五個唯一的指令子程序,位控向導使得控制內置PTO更加容易。每個位控指令都包含前綴“PTOx_”,其中x表示通道編號(x=0時為Q0.0,x=1時為Q0.1
USS_CTRL子程序
PTOx_CTRL子程序(控制)使能和初始化用于步進電機或伺服電機的PTO輸出。在您的程序中僅能使用該子程序一次,并保證每個掃描周期該子程序都被執行。一直使用SM0.0作為EN輸入的輸入。
PTOx_RUN子程序
PTOx_RUN子程序(運行包絡)命令PLC在一個指定的包絡中執行運動操作,此包絡存儲在組態/包絡表中
PTOx_MAN子程序
PTOx_MAN子程序(手動模式)使PTO輸出置為手動模式。這可以使電機在向導中指定的范圍(從啟動/停止速度到最大速度)內以不同速度啟動、停止和運行。如果啟用了PTOx_MAN子程序,則不應執行其它任何PTOx_RUN或PTOx_ADV指令。
PTOx_LDPOS指令
PTOx_LDPOS指令(裝載位置)改變PTO脈沖計數器的當前位置值為一個新值。您可以使用該指令為任何一個運動命令建立一個新的零位置。
PTOx_ADV子程序
PTOx_ADV子程序停止當前的連續運動包絡,并增加向導包絡定義中指定的脈沖數。當您在位控向導中指定了至少一個允許PTOx_ADV選項的單速連續轉動,則該子程序被創建。
OSx_GOTO指令
指令POSx_GOTO命令位控模塊走到指定位置
POSx_RSEEK指令
POSx_RSEEK指令(尋找參考點位置)觸發一個參考點尋找操作,使用組態/包絡表中的搜尋方式。當位控模塊鎖定參考點并且運動停止后,位控模塊裝載參數RP_OFFSET的值作為當前位置并在CLR輸出點產生一個50毫秒的脈沖
POSx_LDOFF指令
POSx_LDOFF指令(裝載參考點偏移量)建立一個新的零位置,它與參考點位置不在同一處。
OSx_SRATE指令
POSx_SRATE指令(設置速率)命令位控模塊改變加速、減速和陡變時間
POSx_DIS指令
指令POSx_DIS可接通或斷開位控模塊的DIS輸出。您可以使用DIS輸出來允許或禁止電機控制器。如果您要使用位控模塊上的DIS輸出,那么,這條指令可以在每一循環周期中調用,或者只在您需要改變DIS輸出時調用。
POSx_CLR指令
POSx_CLR指令(觸發CLR輸出)命令位控模塊在CLR輸出上生成一個50ms的脈沖。
POSx_CFG指令
POSx_CFG指令(重新裝載組態)命令位控模塊從組態/包絡表指針所指定的地方讀取組態塊。位控模塊將新的組態與現有的組態進行比較并執行所有需要的設置改變或重新計算。
1.5位控模塊的特性
位控模塊可為您提供單軸、開環位置控制所需要的功能和性能。
提供高速控制,速度從每秒20個脈沖到每秒200,000個脈沖
支持急停(S曲線)或線性的加速、減速功能
提供可組態的測量系統,既可以使用工程單位
(如英寸或厘米)也可以使用脈沖數
提供可組態的螺距誤差補償
支持絕對、相對和手動的位控方式
提供連續操作
提供多達25組的移動包絡,每組最多可有4種速度
提供4種不同的參考點尋找模式,每種模式都可對起始的尋找方向和最終的接近方向進行選擇
位控模塊提供5個數字輸入和4個數字輸出與您的運動控制應用相連。這些輸入輸出位于位控模塊上。另外還提供了位控模塊與一些常用的電機驅動/放大單元的接線圖。
組態模塊對物理輸入的響應
接下來,為LMT+、LMT--、和STP輸入選擇模塊響應。使用下拉框選擇:無動作(忽略輸入條件),減速至停止(缺省)或立即停止。
輸入最大啟動和停止速度
為您的應用輸入最大速度(MAX_SPEED)和啟動/停止速度(SS_SPEED)。S7-200開環運動控制
輸入點動參數
接下來,輸入JOG_SPEED和JOG_INCREMENT速度值。
JOG_SPEED:JOG_SPEED (電機的點動速度)是JOG命令仍然有效時能夠實現的最大速度。
JOG_INCREMENT:瞬時JOG命令移動工具的距離。
輸入加速時間
在編輯框中輸入加速和減速時間。
輸入陡變時間
對于單步運動,輸入陡變時間補償。通過減小運動包絡的加速和減速部分的陡變(變化速率)來提供更為平滑的位置控制。參見圖。陡變時間補償也被稱為“S曲線包絡”。這種補償同樣地作用于加速曲線和減速曲線的開始和結束部分。陡變補償不能夠應用在介于零速和SS_SPEED速度之間的初始段和結束段中。
1.6位控模塊所支持的RP尋找模式
1.7選擇工作區位置消除螺距誤差
-
西門子
+關注
關注
93文章
3008瀏覽量
115637 -
PWM
+關注
關注
114文章
5144瀏覽量
213403 -
脈沖
+關注
關注
20文章
884瀏覽量
95540
原文標題:史上最全的西門子脈沖方式匯總
文章出處:【微信號:GKYXT1508,微信公眾號:工控云學堂】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論