S7-200 PLC脈沖輸出;MAP 控制程序說(shuō)明_第1頁(yè)
S7-200 PLC脈沖輸出;MAP 控制程序說(shuō)明_第2頁(yè)
S7-200 PLC脈沖輸出;MAP 控制程序說(shuō)明_第3頁(yè)
S7-200 PLC脈沖輸出;MAP 控制程序說(shuō)明_第4頁(yè)
S7-200 PLC脈沖輸出;MAP 控制程序說(shuō)明_第5頁(yè)
已閱讀5頁(yè),還剩16頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、1 概述S7-200提供了三種方式的開(kāi)環(huán)運(yùn)動(dòng)控制: 脈寬調(diào)制(PWM)-內(nèi)置于S7-200,用于速度、位置或占空比控制。 脈沖串輸出(PTO)-內(nèi)置于S7-200,用于速度和位置控制。 EM253位控模塊-用于速度和位置控制的附加模塊。S7200的內(nèi)置脈沖串輸出提供了兩個(gè)數(shù)字輸出通道(Q0.0和Q0.1),該數(shù)字輸出可以通過(guò)位控向?qū)ЫM態(tài)為PWM或PTO的輸出。當(dāng)組態(tài)一個(gè)輸出為PTO操作時(shí),生成一個(gè)50%占空比脈沖串用于步進(jìn)電機(jī)或伺服電機(jī)的速度和位置的開(kāi)環(huán)控制。內(nèi)置PTO功能僅提供了脈沖串輸出。您的應(yīng)用程序必須通過(guò)PLC內(nèi)置I/O或擴(kuò)展模塊提供方向和限位控制。PTO按照給定的脈沖個(gè)數(shù)和周期輸出一

2、串方波(占空比50),如圖1。PTO可以產(chǎn)生單段脈沖串或者多段脈沖串(使用脈沖包絡(luò))??梢灾付}沖數(shù)和周期(以微秒或毫秒為增加量): 脈沖個(gè)數(shù): 1到4,294,967,295 周期: 10s(100K)到65535s或者2ms到65535ms。200系列的PLC的最大脈沖輸出頻率除 CPU224XP 以外均為20kHz。CPU224XP可達(dá)100kHz。如表1所示:表12 MAP庫(kù)的應(yīng)用2.1 MAP庫(kù)的基本描述現(xiàn)在,200系列 PLC 本體 PTO 提供了應(yīng)用庫(kù)MAP SERV Q0.0 和 MAP SERV Q0.1,分別用于 Q0.0 和 Q0.1 的脈沖串輸出。如圖2所示:圖2注:

3、這兩個(gè)庫(kù)可同時(shí)應(yīng)用于同一項(xiàng)目。各個(gè)塊的功能如表2所示:塊功能Q0_x_CTRL參數(shù)定義和控制Q0_x_MoveRelative執(zhí)行一次相對(duì)位移運(yùn)動(dòng)Q0_x_MoveAbsolute執(zhí)行一次絕對(duì)位移運(yùn)動(dòng)Q0_x_MoveVelocity按預(yù)設(shè)的速度運(yùn)動(dòng)Q0_x_Home尋找參考點(diǎn)位置Q0_x_Stop停止運(yùn)動(dòng)Q0_x_LoadPos重新裝載當(dāng)前位置Scale_EU_Pulse將距離值轉(zhuǎn)化為脈沖數(shù)Scale_Pulse_EU將脈沖數(shù)轉(zhuǎn)化為距離值表2總體描述該功能塊可驅(qū)動(dòng)線性軸。為了很好的應(yīng)用該庫(kù),需要在運(yùn)動(dòng)軌跡上添加三個(gè)限位開(kāi)關(guān),如圖3: 一個(gè)參考點(diǎn)接近開(kāi)關(guān)(home),用于定義絕對(duì)位置 C_Po

4、s 的零點(diǎn)。 兩個(gè)邊界限位開(kāi)關(guān),一個(gè)是正向限位開(kāi)關(guān)(Fwd_Limit),一個(gè)是反向限位開(kāi)關(guān)(Rev_Limit)。 絕對(duì)位置 C_Pos 的計(jì)數(shù)值格式為 DINT ,所以其計(jì)數(shù)范圍為(-2.147.483.648 to +2.147.483.647). 如果一個(gè)限位開(kāi)關(guān)被運(yùn)動(dòng)物件觸碰,則該運(yùn)動(dòng)物件會(huì)減速停止,因此,限位開(kāi)關(guān)的安置位置應(yīng)當(dāng)留出足夠的裕量 Smin 以避免物件滑出軌道盡頭。圖3 2.2 輸入輸出點(diǎn)定義應(yīng)用MAP庫(kù)時(shí),一些輸入輸出點(diǎn)的功能被預(yù)先定義,如表3所示:名稱MAP SERV Q0.0MAP SERV Q0.1脈沖輸出Q0.0Q0.1方向輸出Q0.2Q0.3參考點(diǎn)輸

5、入I0.0I0.1所用的高速計(jì)數(shù)器HC0HC3高速計(jì)數(shù)器預(yù)置值SMD 42SMD 142手動(dòng)速度SMD 172SMD 182表32.3 MAP庫(kù)的背景數(shù)據(jù)塊為了可以使用該庫(kù),必須為該庫(kù)分配 68 BYTE(每個(gè)庫(kù))的全局變量,如圖4所示:圖4 下表是使用該庫(kù)時(shí)所用到的最重要的一些變量(以相對(duì)地址表示),如表4:符號(hào)名相對(duì)地址注釋Disable_Auto_Stop+V0.0默認(rèn)值=0意味著當(dāng)運(yùn)動(dòng)物件已經(jīng)到達(dá)預(yù)設(shè)地點(diǎn)時(shí),即使尚未減速到Velocity_SS,依然停止運(yùn)動(dòng); =1時(shí)則減速至Velocity_SS時(shí)才停止Dir_Active_Low+V0.1方向定義,默認(rèn)值

6、0;0 = 方向輸出為1時(shí)表示正向。Final_Dir+V0.2尋找參考點(diǎn)過(guò)程中的最后方向Tune_Factor +VD1調(diào)整因子(默認(rèn)值=0)Ramp_Time +VD5Ramp time = accel_dec_time(加減速時(shí)間)Max_Speed_DI+VD9最大輸出頻率 = Velocity_MaxSS_Speed_DI+VD13最小輸出頻率 = Velocity_SSHoming_State+VD18尋找參考點(diǎn)過(guò)程的狀態(tài)Homing_Slow_Spd+VD19尋找參考點(diǎn)時(shí)的低速(默認(rèn)值 = Velocity_SS)Hom

7、ing_Fast_Spd+VD23尋找參考點(diǎn)時(shí)的高速(默認(rèn)值 = Velocity_Max/2)Fwd_Limit+V27.1正向限位開(kāi)關(guān)Rev_Limit+V27.2反向限位開(kāi)關(guān)Homing_Active+V27.3尋找參考點(diǎn)激活C_Dir+V27.4當(dāng)前方向Homing_Limit_Chk+V27.5限位開(kāi)關(guān)標(biāo)志Dec_Stop_Flag+V27.6開(kāi)始減速PTO0_LDPOS_Error+VB28使用Q0_x_LoadPos時(shí)的故障信息(16#00 = 無(wú)故障, 16#FF = 故障)Target_Location+VD29目標(biāo)位置Deceleration_

8、factor+VD33減速因子 =(Velocity_SS Velocity_Max) /accel_dec_time (格式: REAL)SS_Speed_real+VD37最小速度 = Velocity_SS (格式: REAL)Est_Stopping_Dist+VD41計(jì)算出的減速距離 (格式: DINT)表42.4 功能塊介紹下面逐一介紹該庫(kù)中所應(yīng)用到的程序塊。這些程序塊全部基于PLC-200 的內(nèi)置PTO輸出,完成運(yùn)動(dòng)控制的功能。此外,脈沖數(shù)將通過(guò)指定的高速計(jì)數(shù)器 HSC 計(jì)量。通過(guò) HSC 中斷計(jì)算并觸發(fā)減速的起始點(diǎn)。2.4.1 Q0_x_CTRL該

9、塊用于傳遞全局參數(shù),每個(gè)掃描周期都需要被調(diào)用。功能塊如圖5,功能描述見(jiàn)表5。圖5參數(shù)類型格式單位意義Velocity_SSINDINTPulse/sec.啟動(dòng)/停止頻率Velocity_MaxINDINTPulse/sec.最大頻率accel_dec_timeINREALsec.最大加減速時(shí)間Fwd_LimitINBOOL 正向限位開(kāi)關(guān)Rev_LimitINBOOL 反向限位開(kāi)關(guān)C_PosOUTDINTPulse當(dāng)前絕對(duì)位置表5Velocity_SS 是最小脈沖頻率,是加速過(guò)程的起點(diǎn)和減速過(guò)程的終點(diǎn)。Velocity_Max 是最大小脈沖頻率,受限于電機(jī)最大頻率和PLC的最

10、大輸出頻率。在程序中若輸入超出(Velocity_SS,Velocity_Max)范圍的脈沖頻率,將會(huì)被Velocity_SS 或 Velocity_Max 所取代。accel_dec_time 是由 Velocity_SS 加速到 Velocity_Max 所用的時(shí)間(或由Velocity_Max 減速到 Velocity_SS 所用的時(shí)間,兩者相等),范圍被規(guī)定為 0.02 32.0 秒,但最好不要小于0.5秒。警告:超出 accel_dec_time 范圍的值還是可以被寫入塊中,但是會(huì)導(dǎo)致定位過(guò)程出錯(cuò)!2.4.2 Scale_EU_Pulse該塊用于將一個(gè)位置量轉(zhuǎn)化為一個(gè)脈沖量,因此它可

11、用于將一段位移轉(zhuǎn)化為脈沖數(shù),或?qū)⒁粋€(gè)速度轉(zhuǎn)化為脈沖頻率。功能塊如圖6,功能描述見(jiàn)表6。圖6參數(shù)類型格式單位意義InputINREALmm or mm/s欲轉(zhuǎn)換的位移或速度PulsesINDINTPulse /revol.電機(jī)轉(zhuǎn)一圈所需要的脈沖數(shù)E_UnitsINREALmm /revol.電機(jī)轉(zhuǎn)一圈所產(chǎn)生的位移OutputOUTDINTPulse or pulse/s轉(zhuǎn)換后的脈沖數(shù)或脈沖頻率表6下面是該功能塊的計(jì)算公式:2.4.3 Scale_ Pulse_EU該塊用于將一個(gè)脈沖量轉(zhuǎn)化為一個(gè)位置量,因此它可用于將一段脈沖數(shù)轉(zhuǎn)化為位移,或?qū)⒁粋€(gè)脈沖頻率轉(zhuǎn)化為速度。功能塊如圖7,功能描述見(jiàn)表7。圖

12、7參數(shù)類型格式單位意義InputINREALPulse or pulse/s欲轉(zhuǎn)換的脈沖數(shù)或脈沖頻率PulsesINDINTPulse /revol.電機(jī)轉(zhuǎn)一圈所需要的脈沖數(shù)E_UnitsINREALmm /revol.電機(jī)轉(zhuǎn)一圈所產(chǎn)生的位移OutputOUTDINTmm or mm/s轉(zhuǎn)換后的位移或速度表7下面是該功能塊的計(jì)算公式:2.4.4 Q0_x_Home功能塊如圖8,功能描述見(jiàn)表8。圖8參數(shù)類型格式單位意義EXECUTEINBOOL 尋找參考點(diǎn)的執(zhí)行位PositionINDINTPulse參考點(diǎn)的絕對(duì)位移Start_DirINBOOL 尋找參考點(diǎn)的起始方向(0=反

13、向,1=正向)DoneOUTBOOL 完成位(1=完成)ErrorOUTBOOL 故障位(1=故障)表8該功能塊用于尋找參考點(diǎn),在尋找過(guò)程的起始,電機(jī)首先以 Start_Dir 的方向,Homing_Fast_Spd 的速度開(kāi)始尋找;在碰到limit switch (“Fwd_Limit” or “Rev_Limit”)后,減速至停止,然后開(kāi)始相反方向的尋找;當(dāng)碰到參考點(diǎn)開(kāi)關(guān)(input I0.0; withQ0_1_Home: I0.1)的上升沿時(shí),開(kāi)始減速到 “Homing_Slow_Spd”。如果此時(shí)的方向與 “Final_Dir” 相同,則在碰到參考點(diǎn)開(kāi)關(guān)下降沿時(shí)停

14、止運(yùn)動(dòng),并且將計(jì)數(shù)器HC0的計(jì)數(shù)值設(shè)為 “Position” 中所定義的值。如果當(dāng)前方向與 “Final_Dir” 不同,則必然要改變運(yùn)動(dòng)方向,這樣就可以保證參考點(diǎn)始終在參考點(diǎn)開(kāi)關(guān)的同一側(cè)(具體是那一側(cè)取決于 “Final_Dir”)。尋找參考點(diǎn)的狀態(tài)可以通過(guò)全局變量 “Homing_State” 來(lái)監(jiān)測(cè),如表9:Homing_State的值意義0參考點(diǎn)已找到2開(kāi)始尋找4在相反方向,以速度 Homing_Fast_Spd 繼續(xù)尋找過(guò)程(在碰到限位開(kāi)關(guān)或參考點(diǎn)開(kāi)關(guān)之后)6發(fā)現(xiàn)參考點(diǎn),開(kāi)始減速過(guò)程7在方向 Final_Dir ,以速度 Homing

15、_Slow_Spd 繼續(xù)尋找過(guò)程(在參考點(diǎn)已經(jīng)在 Homing_Fast_Spd 的速度下被發(fā)現(xiàn)之后)10故障(在兩個(gè)限位開(kāi)關(guān)之間并未發(fā)現(xiàn)參考點(diǎn))表92.4.5 Q0_x_MoveRelative該功能塊用于讓軸按照指定的方向,以指定的速度,運(yùn)動(dòng)指定的相對(duì)位移。功能塊如圖9,功能描述見(jiàn)表10。圖9參數(shù)類型格式單位意義EXECUTEINBOOL 相對(duì)位移運(yùn)動(dòng)的執(zhí)行位Num_PulsesINDINTPulse相對(duì)位移(必須>1)VelocityINDINTPulse/sec.預(yù)置頻率(Velocity_SS <= Velocity <=Ve

16、locity_Max)DirectionINBOOL 預(yù)置方向(0=反向,1=正向)DoneOUTBOOL 完成位(1=完成)表102.4.6 Q0_x_MoveAbsolute該功能塊用于讓軸以指定的速度,運(yùn)動(dòng)到指定的絕對(duì)位置。功能塊如圖10,功能描述見(jiàn)表11。圖10 參數(shù)類型格式單位意義EXECUTEINBOOL 絕對(duì)位移運(yùn)動(dòng)的執(zhí)行位PositionINDINTPulse絕對(duì)位移VelocityINDINTPulse/sec.預(yù)置頻率(Velocity_SS <= Velocity <=Velocity_Max)DoneOUTBOOL&#

17、160;完成位(1=完成)表112.4.7 Q0_x_MoveVelocity該功能塊用于讓軸按照指定的方向和頻率運(yùn)動(dòng),在運(yùn)動(dòng)過(guò)程中可對(duì)頻率進(jìn)行更改。功能塊如圖11,功能描述見(jiàn)表12。圖11參數(shù)類型格式單位意義EXECUTEINBOOL 執(zhí)行位VelocityINDINTPulse/sec.預(yù)置頻率(Velocity_SS <= Velocity <=Velocity_Max)DirectionINBOOL 預(yù)置方向(0=反向,1=正向)ErrorOUTBYTE 故障標(biāo)識(shí)(0=無(wú)故障,1=立即停止,3=執(zhí)行錯(cuò)誤)C_PosOUTDINTPulse當(dāng)前絕

18、對(duì)位置表12注意:Q0_x_MoveVelocity 功能塊只能通過(guò) Q0_x_Stop block 功能塊來(lái)停止軸的運(yùn)動(dòng)。如圖12:圖12 2.4.8 Q0_x_Stop該功能塊用于使軸減速直至停止。功能塊如圖13,功能描述見(jiàn)表13。圖13 參數(shù)類型格式單位意義EXECUTEINBOOL 執(zhí)行位DoneOUTBOOL 完成位(1=完成)表132.4.9 Q0_x_LoadPos該功能塊用于將當(dāng)前位置的絕對(duì)位置設(shè)置為預(yù)置值。功能塊如圖14,功能描述見(jiàn)表14。圖14參數(shù)類型格式單位意義EXECUTEINBOOL 設(shè)置絕對(duì)位置的執(zhí)行位New_Pos

19、INDINTPulse預(yù)置絕對(duì)位置DoneOUTBOOL 完成位(1=完成)ErrorOUTBYTE 故障位(0=無(wú)故障)C_PosOUTDINTPulse當(dāng)前絕對(duì)位置表14注意:使用該塊將使得原參考點(diǎn)失效,為了清晰地定義絕對(duì)位置,必須重新尋找參考點(diǎn)。2.5 校準(zhǔn)該塊所使用的算法將計(jì)算出減速過(guò)程(從減速起始點(diǎn)到速度最終達(dá)到Velocity_SS)所需要的脈沖數(shù)。但時(shí)在減速過(guò)程中所形成的斜坡有可能會(huì)導(dǎo)致計(jì)算出的減速斜坡與實(shí)際的包絡(luò)不完全一致。此時(shí)就需要對(duì) “Tune_Factor” 進(jìn)行校正。校正因子 “Tune_Factor”“Tune_Factor” 的最優(yōu)值取決于最大、

20、最小和目標(biāo)脈沖頻率以及最大減速時(shí)間。如圖15:圖15 如圖所示,運(yùn)動(dòng)的目標(biāo)位置是B,算法會(huì)自動(dòng)計(jì)算出減速起始點(diǎn),當(dāng)計(jì)算與實(shí)際不符時(shí),當(dāng)軸已經(jīng)運(yùn)動(dòng)到B點(diǎn)時(shí),尚未到達(dá)最低速度,此時(shí)若位 ”Disable_Auto_Stop” = 0,則軸運(yùn)動(dòng)到B點(diǎn)即停止運(yùn)動(dòng),若位 ”Disable_Auto_Stop” = 1,則軸會(huì)繼續(xù)運(yùn)動(dòng)直至到達(dá)最低速度。圖中所示的情況為計(jì)算的減速起始點(diǎn)出現(xiàn)的太晚了。確定調(diào)整因子注意:一次新的校準(zhǔn)過(guò)程并不需要將伺服驅(qū)動(dòng)器連接到CPU。步驟如下:1. 置位 ”Disable_Auto_Stop”,即令 ”Disable_Auto_Stop” = 1。2. 設(shè)置 “Tu

21、ne_Factor” = 1。3. 使用 Q0_x_LoadPos 功能將當(dāng)前位置的絕對(duì)位置設(shè)為0。4. 使用 Q0_x_MoveRelative,以指定的速度完成一次相對(duì)位置運(yùn)動(dòng)(留出足夠的空間以使得該運(yùn)動(dòng)得以順利完成)。5. 運(yùn)動(dòng)完成后,查看實(shí)際位置 HC0。Tune_Factor 的調(diào)整值應(yīng)由 HC0,目標(biāo)相對(duì)位移 Num_Pulses,預(yù)估減速距離 Est_Stopping_Dist 所決定。Est_Stopping_Dist 由下面的公式計(jì)算得出:Tune_Factor由下面的公式計(jì)算得出:6. 在調(diào)用 Q0_x_CTRL 的網(wǎng)絡(luò)之后插入一條網(wǎng)絡(luò),將調(diào)整后的 Tune_Factor 傳遞給全局變量 +VD1,如圖16。圖167. 復(fù)位 ”Disable_Auto_Stop”,即令 ”Disable_Auto_Stop” = 0。2.6 尋找參考點(diǎn)的若干種情況在尋找參考點(diǎn)的過(guò)程中由于起始位置、起始方向和終止方向的不同會(huì)出現(xiàn)很多種情況。一個(gè)總的原則就是:從起始位置以起始方向 Start_Dir

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論