SIMATIC S7-200 CN,CPU 222 緊湊型設(shè)備,交流電源 8 個直流數(shù)字輸入/6 個繼電器數(shù)字輸出 4 KB 程序/2 KB 數(shù)據(jù), PROFIBUS DP 可擴展 此 S7-200 CN 產(chǎn)品 只具有 CE 認證
產(chǎn)品簡介
詳細介紹
業(yè)務(wù)顧問;竭誠為你服務(wù),急你所需、
所售均為西門子原裝正品全新未開封產(chǎn)品,圖片僅供參考,一切以型號為準,實物保證全新,敬請放心購買!量大價優(yōu),歡迎選購!
6ES72121AB230XB8 | S7-200CN CPU222,DC/DC/DC,8輸入/6輸出 |
6ES72121BB230XB8 | S7-200CN CPU222,AC/DC/Rly,8輸入/6輸出 |
6ES72141AD230XB8 | S7-200CN CPU224,DC/DC/DC,14輸入/10輸出 |
6ES72141BD230XB8 | S7-200CN CPU224,AC/DC/Rly,14輸入/10輸出 |
6ES72142AD230XB8 | S7-200CN CPU224XP,DC/DC/DC,14輸入/10輸出,集成2AI/1AO |
6ES72142AS230XB8 | S7-200CN CPU224XPsi,DC/DC/DC,14輸入/10輸出,集成2AI/1AO |
6ES72142BD230XB8 | S7-200CN CPU224XP,AC/DC/Rly,14輸入/10輸出(NPN輸出),集成2AI/1AO |
6ES72162AD230XB8 | S7-200CN CPU226,DC/DC/DC,24輸入/16輸出 |
6ES72162BD230XB8 | S7-200CN CPU226,AC/DC/Rly,24輸入/16輸出 |
S7-200 PLC 脈沖輸出MAP 庫文件的使用
推薦文檔: 西門子工程師推薦本文檔!
文檔
涉及產(chǎn)品
1 概述
S7--200提供了三種方式的開環(huán)運動控制:
• 脈寬調(diào)制(PWM)--內(nèi)置于S7--200,用于速度、位置或占空比控制。
• 脈沖串輸出(PTO)--內(nèi)置于S7--200,用于速度和位置控制。
• EM253位控模塊--用于速度和位置控制的附加模塊。
S7—200的內(nèi)置脈沖串輸出提供了兩個數(shù)字輸出通道(Q0.0和Q0.1),該數(shù)字輸出可以通過位控向?qū)ЫM態(tài)為PWM或PTO的輸出。
當組態(tài)一個輸出為PTO操作時,生成一個50%占空比脈沖串用于步進電機或伺服電機的速度和位置的開環(huán)控制。內(nèi)置PTO功能僅提供了脈沖串輸出。您的應(yīng)用程序必須通過PLC內(nèi)置I/O或擴展模塊提供方向和限位控制。
PTO按照給定的脈沖個數(shù)和周期輸出一串方波(占空比50%),如圖1。PTO可以產(chǎn)生單段脈沖串或者多段脈沖串(使用脈沖包絡(luò))。可以脈沖數(shù)和周期(以微秒或毫秒為增加量):
• 脈沖個數(shù): 1到4,294,967,295
• 周期: 10μs(100K)到65535μs或者2ms到65535ms。
圖1
200系列的PLC的最大脈沖輸出頻率除 CPU224XP 以外均為20kHz。CPU224XP可達100kHz。如表1所示:
表1
2 MAP庫的應(yīng)用
2.1 MAP庫的基本描述
現(xiàn)在,200系列 PLC 本體 PTO 提供了應(yīng)用庫MAP SERV Q0.0 和 MAP SERV Q0.1,分別用于 Q0.0 和 Q0.1 的脈沖串輸出。如圖2所示:
圖2
注: 這兩個庫可同時應(yīng)用于同一項目。
各個塊的功能如表2所示:
塊 | 功能 |
Q0_x_CTRL | 參數(shù)定義和控制 |
Q0_x_MoveRelative | 執(zhí)行一次相對位移運動 |
Q0_x_MoveAbsolute | 執(zhí)行一次位移運動 |
Q0_x_MoveVelocity | 按預(yù)設(shè)的速度運動 |
Q0_x_Home | 尋找參考點位置 |
Q0_x_Stop | 停止運動 |
Q0_x_LoadPos | 重新裝載當前位置 |
Scale_EU_Pulse | 將距離值轉(zhuǎn)化為脈沖數(shù) |
Scale_Pulse_EU | 將脈沖數(shù)轉(zhuǎn)化為距離值 |
表2
總體描述
該功能塊可驅(qū)動線性軸。
為了很好的應(yīng)用該庫,需要在運動軌跡上添加三個限位開關(guān),如圖3:
• 一個參考點接近開關(guān)(home),用于定義位置 C_Pos 的零點。
• 兩個邊界限位開關(guān),一個是正向限位開關(guān)(Fwd_Limit),一個是反向限位開關(guān)(Rev_Limit)。
• 位置? C_Pos 的計數(shù)值格式為 DINT ,所以其計數(shù)范圍為(-2.147.483.648 to +2.147.483.647). ?
• 如果一個限位開關(guān)被運動物件觸碰,則該運動物件會減速停止,因此,限位開關(guān)的安置位置應(yīng)當留出足夠的裕量?ΔSmin 以避免物件滑出軌道盡頭。
圖3
2.2 輸入輸出點定義
應(yīng)用MAP庫時,一些輸入輸出點的功能被預(yù)先定義,如表3所示:
名稱 | MAP SERV Q0.0 | MAP SERV Q0.1 |
脈沖輸出 | Q0.0 | Q0.1 |
方向輸出 | Q0.2 | Q0.3 |
參考點輸入 | I0.0 | I0.1 |
所用的高速計數(shù)器 | HC0 | HC3 |
高速計數(shù)器預(yù)置值 | SMD 42 | SMD 142 |
手動速度 | SMD 172 | SMD 182 |
表3
2.3 MAP庫的背景數(shù)據(jù)塊
為了可以使用該庫,必須為該庫分配 68 BYTE(每個庫)的全局變量,如圖4所示:
圖4
下表是使用該庫時所用到的最重要的一些變量(以相對地址表示),如表4:
符號名 | 相對地址 | 注釋 |
Disable_Auto_Stop | +V0.0 | 默認值=0意味著當運動物件已經(jīng)到達預(yù)設(shè)地點時,即使尚未減速到Velocity_SS,依然停止運動; =1時則減速至Velocity_SS時才停止 |
Dir_Active_Low | +V0.1 | 方向定義,默認值 0 = 方向輸出為1時表示正向。 |
Final_Dir | +V0.2 | 尋找參考點過程中的最后方向 |
Tune_Factor | +VD1 | 調(diào)整因子(默認值=0) |
Ramp_Time | +VD5 | Ramp time = accel_dec_time(加減速時間) |
Max_Speed_DI | +VD9 | 最大輸出頻率 = Velocity_Max |
SS_Speed_DI | +VD13 | 最小輸出頻率 = Velocity_SS |
Homing_State | +VB18 | 尋找參考點過程的狀態(tài) |
Homing_Slow_Spd | +VD19 | 尋找參考點時的低速(默認值 = Velocity_SS) |
Homing_Fast_Spd | +VD23 | 尋找參考點時的高速(默認值 = Velocity_Max/2) |
Fwd_Limit | +V27.1 | 正向限位開關(guān) |
Rev_Limit | +V27.2 | 反向限位開關(guān) |
Homing_Active | +V27.3 | 尋找參考點激活 |
C_Dir | +V27.4 | 當前方向 |
Homing_Limit_Chk | +V27.5 | 限位開關(guān)標志 |
Dec_Stop_Flag | +V27.6 | 開始減速 |
PTO0_LDPOS_Error | +VB28 | 使用Q0_x_LoadPos時的故障信息(16#00 = *, 16#FF = 故障) |
Target_Location | +VD29 | 目標位置 |
Deceleration_factor | +VD33 | 減速因子 =(Velocity_SS – Velocity_Max) / |
accel_dec_time (格式: REAL) | ||
SS_Speed_real | +VD37 | 最小速度 = Velocity_SS (格式: REAL) |
Est_Stopping_Dist | +VD41 | 計算出的減速距離 (格式: DINT) |
表4
2.4 功能塊介紹
下面逐一介紹該庫中所應(yīng)用到的程序塊。這些程序塊全部基于PLC-200 的內(nèi)置PTO輸出,完成運動控制的功能。此外,脈沖數(shù)將通過的高速計數(shù)器 HSC 計量。通過 HSC 中斷計算并觸發(fā)減速的起始點。
2.4.1 Q0_x_CTRL
該塊用于傳遞全局參數(shù),每個掃描周期都需要被調(diào)用。功能塊如圖5,功能描述見表5。
圖5
參數(shù) | 類型 | 格式 | 單位 | 意義 |
Velocity_SS | IN | DINT | Pulse/sec. | 啟動/停止頻率,必須是大于零的數(shù) |
Velocity_Max | IN | DINT | Pulse/sec. | 最大頻率 |
accel_dec_time | IN | REAL | sec. | 最大加減速時間 |
Fwd_Limit | IN | BOOL | 正向限位開關(guān) | |
Rev_Limit | IN | BOOL | 反向限位開關(guān) | |
C_Pos | OUT | DINT | Pulse | 當前位置 |
表5
Velocity_SS 是最小脈沖頻率,是加速過程的起點和減速過程的終點。
Velocity_Max 是最大小脈沖頻率,受限于電機最大頻率和PLC的最大輸出頻率。
在程序中若輸入超出(Velocity_SS,Velocity_Max)范圍的脈沖頻率,將會被Velocity_SS 或 Velocity_Max 所取代。
accel_dec_time 是由 Velocity_SS 加速到 Velocity_Max 所用的時間(或由Velocity_Max 減速到 Velocity_SS 所用的時間,兩者相等),范圍被規(guī)定為 0.02 ~ 32.0 秒,但不要小于0.5秒。
警告:超出 accel_dec_time 范圍的值還是可以被寫入塊中,但是會導(dǎo)致定位過程出錯!
2.4.2 Scale_EU_Pulse
該塊用于將一個位置量轉(zhuǎn)化為一個脈沖量,因此它可用于將一段位移轉(zhuǎn)化為脈沖數(shù),或?qū)⒁粋€速度轉(zhuǎn)化為脈沖頻率。功能塊如圖6,功能描述見表6。
圖6
參數(shù) | 類型 | 格式 | 單位 | 意義 |
Input | IN | REAL | mm or mm/s | 欲轉(zhuǎn)換的位移或速度 |
Pulses | IN | DINT | Pulse /revol. | 電機轉(zhuǎn)一圈所需要的脈沖數(shù) |
E_Units | IN | REAL | mm /revol. | 電機轉(zhuǎn)一圈所產(chǎn)生的位移 |
Output | OUT | DINT | Pulse or pulse/s | 轉(zhuǎn)換后的脈沖數(shù)或脈沖頻率 |
表6
下面是該功能塊的計算公式:
2.4.3 Scale_ Pulse_EU
該塊用于將一個脈沖量轉(zhuǎn)化為一個位置量,因此它可用于將一段脈沖數(shù)轉(zhuǎn)化為位移,或?qū)⒁粋€脈沖頻率轉(zhuǎn)化為速度。功能塊如圖7,功能描述見表7。
圖7
參數(shù) | 類型 | 格式 | 單位 | 意義 |
Input | IN | REAL | Pulse or pulse/s | 欲轉(zhuǎn)換的脈沖數(shù)或脈沖頻率 |
Pulses | IN | DINT | Pulse /revol. | 電機轉(zhuǎn)一圈所需要的脈沖數(shù) |
E_Units | IN | REAL | mm /revol. | 電機轉(zhuǎn)一圈所產(chǎn)生的位移 |
Output | OUT | DINT | mm or mm/s | 轉(zhuǎn)換后的位移或速度 |
表7
下面是該功能塊的計算公式:
2.4.4 Q0_x_Home
功能塊如圖8,功能描述見表8。
圖8
參數(shù) | 類型 | 格式 | 單位 | 意義 |
EXECUTE | IN | BOOL | 尋找參考點的執(zhí)行位 | |
Position | IN | DINT | Pulse | 參考點的位移 |
Start_Dir | IN | BOOL | 尋找參考點的起始方向 | |
(0=反向,1=正向) | ||||
Done | OUT | BOOL | 完成位(1=完成) | |
Error | OUT | BOOL | 故障位(1=故障) |
表8
該功能塊用于尋找參考點,在尋找過程的起始,電機首先以 Start_Dir 的方向,Homing_Fast_Spd 的速度開始尋找;在碰到limit switch (“Fwd_Limit” or “Rev_Limit”)后,減速至停止,然后開始相反方向的尋找;當碰到參考點開關(guān)(input I0.0; with
Q0_1_Home: I0.1)的上升沿時,開始減速到 “Homing_Slow_Spd”。如果此時的方向與 “Final_Dir” 相同,則在碰到參考點開關(guān)下降沿時停止運動,并且將計數(shù)器HC0的計數(shù)值設(shè)為 “Position” 中所定義的值。
如果當前方向與 “Final_Dir” 不同,則必然要改變運動方向,這樣就可以保證參考點始終在參考點開關(guān)的同一側(cè)(具體是那一側(cè)取決于 “Final_Dir”)。
尋找參考點的狀態(tài)可以通過全局變量 “Homing_State” 來監(jiān)測,如表9:
Homing_State的值 | 意義 |
0 | 參考點已找到 |
2 | 開始尋找 |
4 | 在相反方向,以速度 Homing_Fast_Spd 繼續(xù)尋找過程(在碰到限位開關(guān)或參考點開關(guān)之后) |
6 | 發(fā)現(xiàn)參考點,開始減速過程 |
7 | 在方向 Final_Dir ,以速度 Homing_Slow_Spd 繼續(xù)尋找過程(在參考點已經(jīng)在 Homing_Fast_Spd 的速度下被發(fā)現(xiàn)之后) |
10 | 故障(在兩個限位開關(guān)之間并未發(fā)現(xiàn)參考點) |
表9
2.4.5 Q0_x_MoveRelative
該功能塊用于讓軸按照的方向,以的速度,運動的相對位移。功能塊如圖9,功能描述見表10。
圖9
參數(shù) | 類型 | 格式 | 單位 | 意義 |
EXECUTE | IN | BOOL | 相對位移運動的執(zhí)行位 | |
Num_Pulses | IN | DINT | Pulse | 相對位移(必須>1) |
Velocity | IN | DINT | Pulse/sec. | 預(yù)置頻率 |
(Velocity_SS <= Velocity <= | ||||
Velocity_Max) | ||||
Direction | IN | BOOL | 預(yù)置方向 | |
(0=反向,1=正向) | ||||
Done | OUT | BOOL | 完成位(1=完成) |
表10
2.4.6 Q0_x_MoveAbsolute
該功能塊用于讓軸以的速度,運動到的位置。功能塊如圖10,功能描述見表11。
圖10
參數(shù) | 類型 | 格式 | 單位 | 意義 |
EXECUTE | IN | BOOL | 位移運動的執(zhí)行位 | |
Position | IN | DINT | Pulse | 位移 |
Velocity | IN | DINT | Pulse/sec. | 預(yù)置頻率 |
(Velocity_SS <= Velocity <=Velocity_Max) | ||||
Done | OUT | BOOL | 完成位(1=完成) |
表11
2.4.7 Q0_x_MoveVelocity
該功能塊用于讓軸按照的方向和頻率運動,在運動過程中可對頻率進行更改。功能塊如圖11,功能描述見表12。
圖11
參數(shù) | 類型 | 格式 | 單位 | 意義 |
EXECUTE | IN | BOOL | 執(zhí)行位 | |
Velocity | IN | DINT | Pulse/sec. | 預(yù)置頻率 |
(Velocity_SS <= Velocity <= | ||||
Velocity_Max) | ||||
Direction | IN | BOOL | 預(yù)置方向 | |
(0=反向,1=正向) | ||||
Error | OUT | BYTE | 故障標識 | |
(0=*,1=立即停止,3=執(zhí)行錯誤) | ||||
C_Pos | OUT | DINT | Pulse | 當前位置 |
表12
注意:Q0_x_MoveVelocity 功能塊只能通過 Q0_x_Stop block 功能塊來停止軸的運動。如圖12:
圖12
2.4.8 Q0_x_Stop
該功能塊用于使軸減速直至停止。功能塊如圖13,功能描述見表13。
圖13
參數(shù) | 類型 | 格式 | 單位 | 意義 |
EXECUTE | IN | BOOL | 執(zhí)行位 | |
Done | OUT | BOOL | 完成位(1=完成) |
表13
2.4.9 Q0_x_LoadPos
該功能塊用于將當前位置的位置設(shè)置為預(yù)置值。功能塊如圖14,功能描述見表14。
圖14
參數(shù) | 類型 | 格式 | 單位 | 意義 |
EXECUTE | IN | BOOL | 設(shè)置位置的執(zhí)行位 | |
New_Pos | IN | DINT | Pulse | 預(yù)置位置 |
Done | OUT | BOOL | 完成位(1=完成) | |
Error | OUT | BYTE | 故障位(0=*) | |
C_Pos | OUT | DINT | Pulse | 當前位置 |
表14
注意:使用該塊將使得原參考點失效,為了清晰地定義位置,必須重新尋找參考點。
2.5 校準
該塊所使用的算法將計算出減速過程(從減速起始點到速度最終達到Velocity_SS)所需要的脈沖數(shù)。但時在減速過程中所形成的斜坡有可能會導(dǎo)致計算出的減速斜坡與實際的包絡(luò)不**。此時就需要對 “Tune_Factor” 進行校正。
校正因子 “Tune_Factor”
“Tune_Factor” 的值取決于最大、最小和目標脈沖頻率以及最大減速時間。如圖15:
圖15
如圖所示,運動的目標位置是B,算法會自動計算出減速起始點,當計算與實際不符時,當軸已經(jīng)運動到B點時,尚未到達最低速度,此時若位 ”Disable_Auto_Stop” = 0,則軸運動到B點即停止運動,若位 ”Disable_Auto_Stop” = 1,則軸會繼續(xù)運動直至到達最低速度。圖中所示的情況為計算的減速起始點出現(xiàn)的太晚了。
確定調(diào)整因子
注意:一次新的校準過程并不需要將伺服驅(qū)動器連接到CPU。
步驟如下:
1. 置位 ”Disable_Auto_Stop”,即令 ”Disable_Auto_Stop” = 1。
2. 設(shè)置 “Tune_Factor” = 1。
3. 使用 Q0_x_LoadPos 功能將當前位置的位置設(shè)為0。
4. 使用 Q0_x_MoveRelative,以的速度完成一次相對位置運動(留出足夠的空間以使得該運動得以順利完成)。
5. 運動完成后,查看實際位置 HC0。Tune_Factor 的調(diào)整值應(yīng)由 HC0,目標相對位移 Num_Pulses,預(yù)估減速距離 Est_Stopping_Dist 所決定。Est_Stopping_Dist 由下面的公式計算得出:
Tune_Factor由下面的公式計算得出:
6. 在調(diào)用 Q0_x_CTRL 的網(wǎng)絡(luò)之后插入一條網(wǎng)絡(luò),將調(diào)整后的 Tune_Factor 傳遞給全局變量 +VD1,如圖16。
圖16
7. 復(fù)位 ”Disable_Auto_Stop”,即令 ”Disable_Auto_Stop” = 0。
2.6 尋找參考點的若干種情況
在尋找參考點的過程中由于起始位置、起始方向和終止方向的不同會出現(xiàn)很多種情況。
一個總的原則就是:從起始位置以起始方向 Start_Dir 開始尋找,碰到參考點之前若碰到限位開關(guān),則立即調(diào)頭開始反向?qū)ふ?,找到參考點開關(guān)的上升沿(即剛遇到參考點開關(guān))即減速到尋找低速 Homing_Slow_Spd,若在檢測到參考點開關(guān)的下降沿(即剛離開遇到參考點開關(guān))之前已經(jīng)減速到 Homing_Slow_Spd,則比較當前方向與終止方向 Final_Dir 是否*,若*,則完成參考點尋找過程;若否,則調(diào)頭找尋另一端的下降沿。若在檢測到參考點開關(guān)的下降沿(即剛離開遇到參考點開關(guān))之前尚未減速到 Homing_Slow_Spd,則在減速到 Homing_Slow_Spd 后調(diào)頭加速,直至遇到參考點開關(guān)上升沿,重新減速到 Homing_Slow_Spd,最后判斷當前方向與終止方向 Final_Dir 是否*,若*,則完成參考點尋找過程;若否,則調(diào)頭找尋另一端的下降沿。(Final_Dir 決定尋找參考點過程結(jié)束后,軸停在參考點開關(guān)的哪一側(cè))
下面的圖形會反應(yīng)不同情形下尋找參考點的過程。
Start_Dir=0, Final_Dir=0,如圖17:
圖17
Start_Dir=0, Final_Dir=1,如圖18:
圖18
Start_Dir=1, Final_Dir=0,如圖19:
圖19
Start_Dir=1, Final_Dir=1,如圖20:
在搜索關(guān)鍵字中輸入文檔編號“26513850”,進入下面的網(wǎng)頁:
選擇下載 MAP 參考文檔(English)SERV_MAP_e.pdf 和 庫文件 SERV MAP.zip。