周彬
摘 要:西門子S7-200系列PLC的高速脈沖輸出功能可用于實(shí)現(xiàn)位置控制,采用該公司推出的MAP庫文件可便于位置控制程序的編寫,該文對MAP庫中的對各指令功能塊進(jìn)行解析,說明了MAP庫指令的應(yīng)用方法。
關(guān)鍵詞:MAP 位置控制 PLC
中圖分類號:G63 文獻(xiàn)標(biāo)識碼:A 文章編號:1674-098X(2014)06(c)-0050-01
隨著工業(yè)自動化技術(shù)的不斷發(fā)展,越來越多的工業(yè)控制場合需要準(zhǔn)確實(shí)現(xiàn)位置控制。將PLC用于位置控制,具有開發(fā)周期短、便于調(diào)試等優(yōu)點(diǎn),近年來得到了廣泛的應(yīng)用。西門子公司的S7-200系列晶體管輸出類型的PLC具備高速脈沖串輸出功能,該功能與步進(jìn)電機(jī)或伺服電機(jī)相結(jié)合就可以實(shí)現(xiàn)位置控制。
對S7-200PLC的內(nèi)置高速脈沖串輸出功能的編程有兩種實(shí)現(xiàn)方法。一種是通過編程軟件STEP7-MicroWIN提供的位置控制指令向?qū)в糜诟咚倜}沖輸出的配置,該指令向?qū)?yīng)用簡便,但各運(yùn)動塊的位移/脈沖量需要預(yù)先設(shè)定,對于位移/脈沖量需要臨時(shí)計(jì)算的情況,其應(yīng)用就不夠靈活;另一種方法是采用西門子提供的脈沖輸出指令MAP庫,該指令庫可適用于較復(fù)雜的位置控制要求。
1 MAP庫文件簡述
MAP(Micro Automation Positioning)指令庫用于對S7-200系列PLC的Q0.0和Q0.1的高速脈沖輸出功能進(jìn)行編程,以實(shí)現(xiàn)位置控制。從西門子公司網(wǎng)站上可免費(fèi)下載壓縮文件包SERV MAP.ZIP,解壓后分別雙擊map serv q0.0.mwl和map serv q0.1.mwl,即可在STEP7-MicroWIN中添加指令庫文件。兩個(gè)位置控制指令庫的功能完全相同,分別用于Q0.0和Q0.1的脈沖串輸出。
西門子MAP SERVQ0.x提供了9個(gè)程序功能塊,使用MAP SERVQ0.0或MAP SERVQ0.1,必須為庫文件分配68字節(jié)的全局變量地址空間,這些地址用于儲存與運(yùn)動控制程序運(yùn)行相關(guān)的參數(shù)和標(biāo)志位。此外,MAP SERVQ0.0和MAP SERVQ0.1分別占用了PLC的部分I/O、高速計(jì)數(shù)器等資源將,用戶編程時(shí)不能隨意使用這些資源。各程序功能塊的參數(shù)說明、被占用的資源和全局變量地址的定義可參考文獻(xiàn)[1]。
2 指令功能塊解析
MAP指令庫的9個(gè)程序功能塊涵蓋了位置控制應(yīng)用的各個(gè)方面。
Q0_x_CTRL是參數(shù)定義和控制功能塊,用于控制參數(shù)的初始化,即設(shè)置電機(jī)運(yùn)行的最大和最小速度、最大加/減速時(shí)間。在運(yùn)動控制時(shí),該功能塊在每個(gè)掃描周期都需要被調(diào)用。
Q0_x_Home是尋找參考點(diǎn)位置功能塊,一般在位置控制系統(tǒng)初始化時(shí),實(shí)現(xiàn)回參考點(diǎn)的功能。
Q0_x_MoveRelative、Q0_x_MoveAbsolute分別用于實(shí)現(xiàn)相對位移和絕對位移功能。以圖1為例,設(shè)A為原點(diǎn),B、C、D點(diǎn)的絕對位置為10000、15000、25000脈沖,若當(dāng)前位置為C點(diǎn),用相對位移指令實(shí)現(xiàn)從C點(diǎn)移動到D,則需要在Q0_x_MoveRelative功能塊的輸入?yún)?shù)中設(shè)定運(yùn)動方向,移動速度和位移脈沖量10000;若使用絕對位移指令實(shí)現(xiàn)相同功能,則需要在Q0_x_MoveAbsolute功能塊的輸入?yún)?shù)中設(shè)定移動速度和位移脈沖量25000,無需設(shè)定運(yùn)動方向,系統(tǒng)將根據(jù)目標(biāo)位置和當(dāng)前位置參數(shù)自行計(jì)算運(yùn)行的方向。(圖1)
Q0_x_MoveVelocity指令功能塊的功能是使系統(tǒng)按預(yù)設(shè)方向和速度運(yùn)行,在系統(tǒng)運(yùn)行過程中允許對頻率(速度)進(jìn)行修改,執(zhí)行該指令后,只能通過Q0_x_Stop指令來停止。
Q0_x_Stop是運(yùn)動停止功能塊,當(dāng)該功能塊觸發(fā)后,電機(jī)將減速至停止,一般用于實(shí)現(xiàn)系統(tǒng)急停功能。
Q0_x_LoadPos為重新裝載當(dāng)前位置功能塊,用于實(shí)現(xiàn)將當(dāng)前絕對位移值設(shè)置為預(yù)設(shè)值。當(dāng)系統(tǒng)出現(xiàn)PLC計(jì)算的運(yùn)動曲線與實(shí)際傳感器檢測的實(shí)際運(yùn)行曲線不完全一致時(shí),就需要對全局變量中的校正因子“Tune_Factor”進(jìn)行校正,以保證系統(tǒng)的運(yùn)動精度,此時(shí)就需要使用Q0_x_LoadPos功能塊,使用該功能塊將導(dǎo)致原參考點(diǎn)失效,為保證系統(tǒng)可靠運(yùn)行,必須重新尋找參考點(diǎn)。
Scale_EU_Pulse和Scale_Pulse_EU分別用于將距離值轉(zhuǎn)化為脈沖數(shù)和將脈沖數(shù)轉(zhuǎn)化為距離值。
3 結(jié)語
應(yīng)用MAP庫文件對S7-200系列PLC的高速脈沖串輸出功能進(jìn)行位置控制編程是一種簡單易行的辦法,在編寫位置控制程序時(shí),一般將尋找參考點(diǎn)、運(yùn)行控制等功能分為不同的子程序進(jìn)行編寫,以便于調(diào)試。MAP指令庫輔以適當(dāng)?shù)臄?shù)據(jù)處理可實(shí)現(xiàn)一些較為復(fù)雜的位置控制,提高位置控制系統(tǒng)的靈活性和可靠性。
參考文獻(xiàn)
[1] S7-200 PLC脈沖輸出MAP庫文件的使用[M].西門子(中國)有限公司,2011.
[2] 胡佳麗.S7-200 PLC在伺服電機(jī)位置控制中的應(yīng)用[J].自動化儀表,2009(12).
[3] 劉穎君,郭偉越.西門子MAP庫在三軸機(jī)械手定位控制中的應(yīng)用[J].裝備制造技術(shù),2013(4).
[4] 雷聲勇,許梅艷.西門子MAP庫指令在伺服定位控制中的應(yīng)用[J].機(jī)床電器,2012(2).endprint
摘 要:西門子S7-200系列PLC的高速脈沖輸出功能可用于實(shí)現(xiàn)位置控制,采用該公司推出的MAP庫文件可便于位置控制程序的編寫,該文對MAP庫中的對各指令功能塊進(jìn)行解析,說明了MAP庫指令的應(yīng)用方法。
關(guān)鍵詞:MAP 位置控制 PLC
中圖分類號:G63 文獻(xiàn)標(biāo)識碼:A 文章編號:1674-098X(2014)06(c)-0050-01
隨著工業(yè)自動化技術(shù)的不斷發(fā)展,越來越多的工業(yè)控制場合需要準(zhǔn)確實(shí)現(xiàn)位置控制。將PLC用于位置控制,具有開發(fā)周期短、便于調(diào)試等優(yōu)點(diǎn),近年來得到了廣泛的應(yīng)用。西門子公司的S7-200系列晶體管輸出類型的PLC具備高速脈沖串輸出功能,該功能與步進(jìn)電機(jī)或伺服電機(jī)相結(jié)合就可以實(shí)現(xiàn)位置控制。
對S7-200PLC的內(nèi)置高速脈沖串輸出功能的編程有兩種實(shí)現(xiàn)方法。一種是通過編程軟件STEP7-MicroWIN提供的位置控制指令向?qū)в糜诟咚倜}沖輸出的配置,該指令向?qū)?yīng)用簡便,但各運(yùn)動塊的位移/脈沖量需要預(yù)先設(shè)定,對于位移/脈沖量需要臨時(shí)計(jì)算的情況,其應(yīng)用就不夠靈活;另一種方法是采用西門子提供的脈沖輸出指令MAP庫,該指令庫可適用于較復(fù)雜的位置控制要求。
1 MAP庫文件簡述
MAP(Micro Automation Positioning)指令庫用于對S7-200系列PLC的Q0.0和Q0.1的高速脈沖輸出功能進(jìn)行編程,以實(shí)現(xiàn)位置控制。從西門子公司網(wǎng)站上可免費(fèi)下載壓縮文件包SERV MAP.ZIP,解壓后分別雙擊map serv q0.0.mwl和map serv q0.1.mwl,即可在STEP7-MicroWIN中添加指令庫文件。兩個(gè)位置控制指令庫的功能完全相同,分別用于Q0.0和Q0.1的脈沖串輸出。
西門子MAP SERVQ0.x提供了9個(gè)程序功能塊,使用MAP SERVQ0.0或MAP SERVQ0.1,必須為庫文件分配68字節(jié)的全局變量地址空間,這些地址用于儲存與運(yùn)動控制程序運(yùn)行相關(guān)的參數(shù)和標(biāo)志位。此外,MAP SERVQ0.0和MAP SERVQ0.1分別占用了PLC的部分I/O、高速計(jì)數(shù)器等資源將,用戶編程時(shí)不能隨意使用這些資源。各程序功能塊的參數(shù)說明、被占用的資源和全局變量地址的定義可參考文獻(xiàn)[1]。
2 指令功能塊解析
MAP指令庫的9個(gè)程序功能塊涵蓋了位置控制應(yīng)用的各個(gè)方面。
Q0_x_CTRL是參數(shù)定義和控制功能塊,用于控制參數(shù)的初始化,即設(shè)置電機(jī)運(yùn)行的最大和最小速度、最大加/減速時(shí)間。在運(yùn)動控制時(shí),該功能塊在每個(gè)掃描周期都需要被調(diào)用。
Q0_x_Home是尋找參考點(diǎn)位置功能塊,一般在位置控制系統(tǒng)初始化時(shí),實(shí)現(xiàn)回參考點(diǎn)的功能。
Q0_x_MoveRelative、Q0_x_MoveAbsolute分別用于實(shí)現(xiàn)相對位移和絕對位移功能。以圖1為例,設(shè)A為原點(diǎn),B、C、D點(diǎn)的絕對位置為10000、15000、25000脈沖,若當(dāng)前位置為C點(diǎn),用相對位移指令實(shí)現(xiàn)從C點(diǎn)移動到D,則需要在Q0_x_MoveRelative功能塊的輸入?yún)?shù)中設(shè)定運(yùn)動方向,移動速度和位移脈沖量10000;若使用絕對位移指令實(shí)現(xiàn)相同功能,則需要在Q0_x_MoveAbsolute功能塊的輸入?yún)?shù)中設(shè)定移動速度和位移脈沖量25000,無需設(shè)定運(yùn)動方向,系統(tǒng)將根據(jù)目標(biāo)位置和當(dāng)前位置參數(shù)自行計(jì)算運(yùn)行的方向。(圖1)
Q0_x_MoveVelocity指令功能塊的功能是使系統(tǒng)按預(yù)設(shè)方向和速度運(yùn)行,在系統(tǒng)運(yùn)行過程中允許對頻率(速度)進(jìn)行修改,執(zhí)行該指令后,只能通過Q0_x_Stop指令來停止。
Q0_x_Stop是運(yùn)動停止功能塊,當(dāng)該功能塊觸發(fā)后,電機(jī)將減速至停止,一般用于實(shí)現(xiàn)系統(tǒng)急停功能。
Q0_x_LoadPos為重新裝載當(dāng)前位置功能塊,用于實(shí)現(xiàn)將當(dāng)前絕對位移值設(shè)置為預(yù)設(shè)值。當(dāng)系統(tǒng)出現(xiàn)PLC計(jì)算的運(yùn)動曲線與實(shí)際傳感器檢測的實(shí)際運(yùn)行曲線不完全一致時(shí),就需要對全局變量中的校正因子“Tune_Factor”進(jìn)行校正,以保證系統(tǒng)的運(yùn)動精度,此時(shí)就需要使用Q0_x_LoadPos功能塊,使用該功能塊將導(dǎo)致原參考點(diǎn)失效,為保證系統(tǒng)可靠運(yùn)行,必須重新尋找參考點(diǎn)。
Scale_EU_Pulse和Scale_Pulse_EU分別用于將距離值轉(zhuǎn)化為脈沖數(shù)和將脈沖數(shù)轉(zhuǎn)化為距離值。
3 結(jié)語
應(yīng)用MAP庫文件對S7-200系列PLC的高速脈沖串輸出功能進(jìn)行位置控制編程是一種簡單易行的辦法,在編寫位置控制程序時(shí),一般將尋找參考點(diǎn)、運(yùn)行控制等功能分為不同的子程序進(jìn)行編寫,以便于調(diào)試。MAP指令庫輔以適當(dāng)?shù)臄?shù)據(jù)處理可實(shí)現(xiàn)一些較為復(fù)雜的位置控制,提高位置控制系統(tǒng)的靈活性和可靠性。
參考文獻(xiàn)
[1] S7-200 PLC脈沖輸出MAP庫文件的使用[M].西門子(中國)有限公司,2011.
[2] 胡佳麗.S7-200 PLC在伺服電機(jī)位置控制中的應(yīng)用[J].自動化儀表,2009(12).
[3] 劉穎君,郭偉越.西門子MAP庫在三軸機(jī)械手定位控制中的應(yīng)用[J].裝備制造技術(shù),2013(4).
[4] 雷聲勇,許梅艷.西門子MAP庫指令在伺服定位控制中的應(yīng)用[J].機(jī)床電器,2012(2).endprint
摘 要:西門子S7-200系列PLC的高速脈沖輸出功能可用于實(shí)現(xiàn)位置控制,采用該公司推出的MAP庫文件可便于位置控制程序的編寫,該文對MAP庫中的對各指令功能塊進(jìn)行解析,說明了MAP庫指令的應(yīng)用方法。
關(guān)鍵詞:MAP 位置控制 PLC
中圖分類號:G63 文獻(xiàn)標(biāo)識碼:A 文章編號:1674-098X(2014)06(c)-0050-01
隨著工業(yè)自動化技術(shù)的不斷發(fā)展,越來越多的工業(yè)控制場合需要準(zhǔn)確實(shí)現(xiàn)位置控制。將PLC用于位置控制,具有開發(fā)周期短、便于調(diào)試等優(yōu)點(diǎn),近年來得到了廣泛的應(yīng)用。西門子公司的S7-200系列晶體管輸出類型的PLC具備高速脈沖串輸出功能,該功能與步進(jìn)電機(jī)或伺服電機(jī)相結(jié)合就可以實(shí)現(xiàn)位置控制。
對S7-200PLC的內(nèi)置高速脈沖串輸出功能的編程有兩種實(shí)現(xiàn)方法。一種是通過編程軟件STEP7-MicroWIN提供的位置控制指令向?qū)в糜诟咚倜}沖輸出的配置,該指令向?qū)?yīng)用簡便,但各運(yùn)動塊的位移/脈沖量需要預(yù)先設(shè)定,對于位移/脈沖量需要臨時(shí)計(jì)算的情況,其應(yīng)用就不夠靈活;另一種方法是采用西門子提供的脈沖輸出指令MAP庫,該指令庫可適用于較復(fù)雜的位置控制要求。
1 MAP庫文件簡述
MAP(Micro Automation Positioning)指令庫用于對S7-200系列PLC的Q0.0和Q0.1的高速脈沖輸出功能進(jìn)行編程,以實(shí)現(xiàn)位置控制。從西門子公司網(wǎng)站上可免費(fèi)下載壓縮文件包SERV MAP.ZIP,解壓后分別雙擊map serv q0.0.mwl和map serv q0.1.mwl,即可在STEP7-MicroWIN中添加指令庫文件。兩個(gè)位置控制指令庫的功能完全相同,分別用于Q0.0和Q0.1的脈沖串輸出。
西門子MAP SERVQ0.x提供了9個(gè)程序功能塊,使用MAP SERVQ0.0或MAP SERVQ0.1,必須為庫文件分配68字節(jié)的全局變量地址空間,這些地址用于儲存與運(yùn)動控制程序運(yùn)行相關(guān)的參數(shù)和標(biāo)志位。此外,MAP SERVQ0.0和MAP SERVQ0.1分別占用了PLC的部分I/O、高速計(jì)數(shù)器等資源將,用戶編程時(shí)不能隨意使用這些資源。各程序功能塊的參數(shù)說明、被占用的資源和全局變量地址的定義可參考文獻(xiàn)[1]。
2 指令功能塊解析
MAP指令庫的9個(gè)程序功能塊涵蓋了位置控制應(yīng)用的各個(gè)方面。
Q0_x_CTRL是參數(shù)定義和控制功能塊,用于控制參數(shù)的初始化,即設(shè)置電機(jī)運(yùn)行的最大和最小速度、最大加/減速時(shí)間。在運(yùn)動控制時(shí),該功能塊在每個(gè)掃描周期都需要被調(diào)用。
Q0_x_Home是尋找參考點(diǎn)位置功能塊,一般在位置控制系統(tǒng)初始化時(shí),實(shí)現(xiàn)回參考點(diǎn)的功能。
Q0_x_MoveRelative、Q0_x_MoveAbsolute分別用于實(shí)現(xiàn)相對位移和絕對位移功能。以圖1為例,設(shè)A為原點(diǎn),B、C、D點(diǎn)的絕對位置為10000、15000、25000脈沖,若當(dāng)前位置為C點(diǎn),用相對位移指令實(shí)現(xiàn)從C點(diǎn)移動到D,則需要在Q0_x_MoveRelative功能塊的輸入?yún)?shù)中設(shè)定運(yùn)動方向,移動速度和位移脈沖量10000;若使用絕對位移指令實(shí)現(xiàn)相同功能,則需要在Q0_x_MoveAbsolute功能塊的輸入?yún)?shù)中設(shè)定移動速度和位移脈沖量25000,無需設(shè)定運(yùn)動方向,系統(tǒng)將根據(jù)目標(biāo)位置和當(dāng)前位置參數(shù)自行計(jì)算運(yùn)行的方向。(圖1)
Q0_x_MoveVelocity指令功能塊的功能是使系統(tǒng)按預(yù)設(shè)方向和速度運(yùn)行,在系統(tǒng)運(yùn)行過程中允許對頻率(速度)進(jìn)行修改,執(zhí)行該指令后,只能通過Q0_x_Stop指令來停止。
Q0_x_Stop是運(yùn)動停止功能塊,當(dāng)該功能塊觸發(fā)后,電機(jī)將減速至停止,一般用于實(shí)現(xiàn)系統(tǒng)急停功能。
Q0_x_LoadPos為重新裝載當(dāng)前位置功能塊,用于實(shí)現(xiàn)將當(dāng)前絕對位移值設(shè)置為預(yù)設(shè)值。當(dāng)系統(tǒng)出現(xiàn)PLC計(jì)算的運(yùn)動曲線與實(shí)際傳感器檢測的實(shí)際運(yùn)行曲線不完全一致時(shí),就需要對全局變量中的校正因子“Tune_Factor”進(jìn)行校正,以保證系統(tǒng)的運(yùn)動精度,此時(shí)就需要使用Q0_x_LoadPos功能塊,使用該功能塊將導(dǎo)致原參考點(diǎn)失效,為保證系統(tǒng)可靠運(yùn)行,必須重新尋找參考點(diǎn)。
Scale_EU_Pulse和Scale_Pulse_EU分別用于將距離值轉(zhuǎn)化為脈沖數(shù)和將脈沖數(shù)轉(zhuǎn)化為距離值。
3 結(jié)語
應(yīng)用MAP庫文件對S7-200系列PLC的高速脈沖串輸出功能進(jìn)行位置控制編程是一種簡單易行的辦法,在編寫位置控制程序時(shí),一般將尋找參考點(diǎn)、運(yùn)行控制等功能分為不同的子程序進(jìn)行編寫,以便于調(diào)試。MAP指令庫輔以適當(dāng)?shù)臄?shù)據(jù)處理可實(shí)現(xiàn)一些較為復(fù)雜的位置控制,提高位置控制系統(tǒng)的靈活性和可靠性。
參考文獻(xiàn)
[1] S7-200 PLC脈沖輸出MAP庫文件的使用[M].西門子(中國)有限公司,2011.
[2] 胡佳麗.S7-200 PLC在伺服電機(jī)位置控制中的應(yīng)用[J].自動化儀表,2009(12).
[3] 劉穎君,郭偉越.西門子MAP庫在三軸機(jī)械手定位控制中的應(yīng)用[J].裝備制造技術(shù),2013(4).
[4] 雷聲勇,許梅艷.西門子MAP庫指令在伺服定位控制中的應(yīng)用[J].機(jī)床電器,2012(2).endprint