初始化程序MOVW200,,PLC在伺服電機(jī)位置控制中的應(yīng)用研究
摘要:伴隨著工業(yè)自動(dòng)化的發(fā)展,,對(duì)其中的位置控制度也逐步的提高,如何能方便,,準(zhǔn)確的實(shí)現(xiàn)位置控制,,是一個(gè)重大的問題,本文講述了如何采用PLC可編程控制器來實(shí)現(xiàn)控制,。分別列舉了三項(xiàng)方法,,以及他們之間的相互比較。
引言
隨著自動(dòng)化水平的不斷提高,,越來越多的工業(yè)控制場(chǎng)合需要的位置控制,。因此,如何更方便,、更準(zhǔn)確地實(shí)現(xiàn)位置控制是工業(yè)控制領(lǐng)域內(nèi)的一個(gè)重要問題,。位置控制的性主要取決于伺服驅(qū)動(dòng)器和運(yùn)動(dòng)控制器的精度。的運(yùn)動(dòng)控制模塊可以對(duì)伺服系統(tǒng)進(jìn)行非常復(fù)雜的運(yùn)動(dòng)控制,。但在有些需要位置控制的場(chǎng)合,,其對(duì)位置精度的要求比較高,但運(yùn)動(dòng)的復(fù)雜程度不是很高,,這就沒有必要選擇那些昂貴的運(yùn)動(dòng)控制系統(tǒng),。
S7-200系列PLC是一種體積小、編程簡(jiǎn)單,、控制方便的可編程控制器,,它提供了多種位置控制方式可供用戶選擇,因此,如何利用該系列PLC實(shí)現(xiàn)對(duì)伺服電機(jī)運(yùn)動(dòng)位置較為的控制是本文的研究重點(diǎn),。
1,、基本控制系統(tǒng)
伺服系統(tǒng)分為液壓伺服系統(tǒng)、電氣-液壓伺服系統(tǒng)以及電氣伺服系統(tǒng),。本文主要討論了電氣伺服系統(tǒng)中的交流伺服系統(tǒng),,其基本組成為交流伺服電機(jī)、編碼器和伺服驅(qū)動(dòng)器,。交流伺服系統(tǒng)的工作原理是伺服驅(qū)動(dòng)器發(fā)送運(yùn)動(dòng)命令,,驅(qū)動(dòng)伺服電機(jī)運(yùn)動(dòng),并接收來自編碼器的反饋信號(hào),,然后重新計(jì)算伺服電機(jī)運(yùn)動(dòng)目標(biāo)位置,,從而達(dá)到控制伺服電機(jī)運(yùn)動(dòng)。
本伺服系統(tǒng)中選用Exlar公司生產(chǎn)的GSX50-0601型伺服直線電動(dòng)缸,。該電動(dòng)缸由普通伺服電機(jī)和一個(gè)行星滾珠絲杠組成,,用來實(shí)現(xiàn)將旋轉(zhuǎn)運(yùn)動(dòng)轉(zhuǎn)變?yōu)橹本€運(yùn)動(dòng),。此外,,選用Xenus公司生產(chǎn)的XenusTM型伺服驅(qū)動(dòng)器。它可以利用RS.232串口通信方式和外部脈沖方式實(shí)現(xiàn)位置控制,。
一般來說,,一個(gè)伺服系統(tǒng)運(yùn)轉(zhuǎn)需要配置一個(gè)上位機(jī),所以本系統(tǒng)采用西門子S7-200PLC作為上位機(jī)控制器,。通過高速脈沖輸出,、EM253位置控制模塊、自由口通信三種方式控制伺服電機(jī)運(yùn)動(dòng),。
2,、高速脈沖輸出模式
西門子CPU224XP配置兩個(gè)內(nèi)置脈沖發(fā)生器,它有脈沖串輸出(PTO)和脈沖寬度調(diào)制輸出兩種脈沖發(fā)生模式可供選擇,。這兩個(gè)脈沖發(fā)生器的zui大脈沖輸出頻率為100kHz,。在脈沖串輸出方式中,PLC可生成一個(gè)50%占空比脈沖串,,用于步進(jìn)電機(jī)或伺服電機(jī)的速度和位置的控制,。
2.1硬件構(gòu)成
圖1為高速脈沖輸出方式的位置控制原理圖??刂七^程中,,將伺服驅(qū)動(dòng)器工作定義在脈沖+方向模式下,Q0.0發(fā)送脈沖信號(hào),,控制電機(jī)的轉(zhuǎn)速和目標(biāo)位置,;Qo,發(fā)送方向信號(hào),控制電機(jī)的運(yùn)動(dòng)方向,。伺服電動(dòng)缸上帶有左限位開關(guān)LIM一,、右限位開關(guān)LIM+以及參考點(diǎn)位置開關(guān)REF。三個(gè)限位信號(hào)分別連接到CPU224XP的I0.0~I(xiàn)0.2三個(gè)端子上,,可通過軟件編程,,實(shí)現(xiàn)限位和找尋參考點(diǎn)。
圖1位置控制原理圖
2.2程序設(shè)計(jì)
高速脈沖串輸出(PTO)可以通過Step7Micro/WIN的位置控制向?qū)нM(jìn)行組態(tài),,也可通過軟件編程實(shí)現(xiàn)控制,。PTO輸出方式?jīng)]有專門的位置控制指令,只有一條脈沖串輸出指令,,而且在脈沖發(fā)送過程中不能停止,,也不能修改參數(shù)。為解決以上問題,,可以設(shè)置脈沖計(jì)數(shù)值等于10(或更?。⒛苁姑}沖發(fā)送指令PLS處于激活狀態(tài),。這樣,,就可以在任一脈沖串發(fā)送完之后修改脈沖周期。
圖2為高速脈沖輸出方式位置控制流程圖,??刂扑悸窞椋和ㄟ^PTO模式輸出,可以控制脈沖的周期和個(gè)數(shù),;通過啟用高速計(jì)數(shù)器HSC,,對(duì)輸出脈沖進(jìn)行實(shí)時(shí)計(jì)數(shù)和定位控制,以控制伺服電機(jī)的運(yùn)動(dòng)過程,。
圖2位置控制流程圖
3,、EM253位置控制模塊
EM253位置控制模塊是西門子S7-200的特殊功能位置控制模塊,它能夠產(chǎn)生脈沖串用于步進(jìn)電機(jī)與伺服電機(jī)的速度和位置的開環(huán)控制,。
3.1硬件構(gòu)成
如圖3所示為EM253位置控制原理圖,,定義伺服驅(qū)動(dòng)器工作在脈沖+方向模式下。P0口發(fā)送脈沖,,P1口發(fā)送方向,,DIS端硬件使能放大器,并同時(shí)清除放大器錯(cuò)誤,。LIM-,、LIM+、REF分別為電機(jī)左限位,、右限位以及參考點(diǎn),。
圖3EM253位置控制原理圖
3.2程序設(shè)計(jì)
EM253位置控制模塊可以通過Step7-Micro/WIN進(jìn)行向?qū)渲?,配置完成后系統(tǒng)將自動(dòng)生成子程序,編程簡(jiǎn)單,、可輕松實(shí)現(xiàn)手動(dòng),、自動(dòng)、軌跡運(yùn)行模式,。由于EM253屬于開環(huán)控制,,不能很好地反饋電機(jī)實(shí)際運(yùn)動(dòng)情況。因此,,利用伺服驅(qū)動(dòng)器本身的差分輸出信號(hào),,通過伺服驅(qū)動(dòng)器軟件設(shè)置,反饋給PLC,,實(shí)現(xiàn)閉環(huán)位置控制,。但由于直線伺服電動(dòng)缸與PLE可允許發(fā)送接收信號(hào)存在一定差別,因此,,需要對(duì)輸入到PLC的信號(hào)進(jìn)行電平的轉(zhuǎn)化以及降低伺服驅(qū)動(dòng)器發(fā)送的反饋脈沖頻率,。PLC對(duì)輸入脈沖進(jìn)行累加,從而得到電機(jī)的實(shí)際運(yùn)轉(zhuǎn)位置與運(yùn)轉(zhuǎn)速度,,其脈沖計(jì)數(shù)程序如下,。
①計(jì)數(shù)器初始化程序
LDSMO.1//掃描時(shí)
MOVB16#FC,SMB47//SMB47=16#F4,SMB47為高速計(jì)數(shù)器1的控制字節(jié)
HDEF1,,9//將HSC1配置為正交模式
MOVD0,SMD48//設(shè)置HSCI的新初始值為0
MOVD20000,,SMD52//設(shè)置HSCI的新預(yù)設(shè)值為20000
HSCI//激活高速計(jì)數(shù)器I
?、诿}沖計(jì)數(shù)程序
LDSMO.0
MOVDHC1,,VD600//將高速計(jì)數(shù)器1所記數(shù)值存儲(chǔ)在VD600中
DTRVD600,VD610//VD601〕中的整數(shù)轉(zhuǎn)化為實(shí)數(shù),存人VD610
/RSOOO,VD610//VD610除以5000存入VD610,5001〕為電機(jī)旋轉(zhuǎn)一周編碼器發(fā)送脈沖數(shù)
*R2.54,VD610//VD610乘以2.54存人VD610,2.54為電機(jī)旋轉(zhuǎn)一周移動(dòng)的距離
4,、RS-232串口通信方式
4.1硬件構(gòu)成
西門子CPU22<tXP支持無協(xié)議通信,,即用戶僅需要對(duì)數(shù)據(jù)格式、傳輸速率,、起始/停止碼等進(jìn)行簡(jiǎn)單設(shè)定,,PLC與外部設(shè)備間就可進(jìn)行直接數(shù)據(jù)發(fā)送與接收的一種通信方式。伺服系統(tǒng)和PLC分別作為系統(tǒng)的主從站,。PLC控制器通過該通信功能可實(shí)現(xiàn)對(duì)伺服驅(qū)動(dòng)器進(jìn)行運(yùn)行控制,、參數(shù)讀取、伺服驅(qū)動(dòng)器當(dāng)前運(yùn)動(dòng)狀態(tài)的讀取等操作,。
當(dāng)S7-200系列PLC工作在自由口通信模式下時(shí),,一般通過CPU模塊的集成接口進(jìn)行通信。CPU集成接口采用了PPI硬件規(guī)范,,其接口為RS-485串口,,因此,當(dāng)S7-200系列PLC的CPU與帶有RS-232標(biāo)準(zhǔn)接口的計(jì)算機(jī)或伺服驅(qū)動(dòng)器連接時(shí),需要配套選用S7-200PLC的PC/PPI轉(zhuǎn)換電纜或一個(gè)RS-232/RS-485轉(zhuǎn)換器,。
4.2PLC與伺服系統(tǒng)通信
4.2.1報(bào)文構(gòu)成
S-200PLC在無協(xié)議通信方式工作時(shí),,不需要任何通信協(xié)議,通信參數(shù)需要根據(jù)與其進(jìn)行通信的伺服驅(qū)動(dòng)器的通信格式進(jìn)行設(shè)定,。本伺服系統(tǒng)選用的Xe-nus伺服驅(qū)動(dòng)器可通過RS-232與PLC利用ASCII碼進(jìn)行通信,,其ASCII碼消息命令格式如下:
<命令代碼><命令具體參數(shù)><CR>
其中:<命令代碼>為一個(gè)單字母代碼;<命令具體參數(shù)>表示電機(jī)所要執(zhí)行的任務(wù),;<CR>為一個(gè)回車返回字符,,表示命令結(jié)束。如:sr0x2A21<CR>表示設(shè)置伺服控制器工作在可編程控制模式,。
4.2.2程序設(shè)計(jì)
程序設(shè)計(jì)時(shí),,將伺服驅(qū)動(dòng)器工作定義在可編程位置模式。該模式支持實(shí)時(shí)更改伺服電機(jī)的運(yùn)動(dòng)速度,、位置,,通過RS-232接收來自PLC的ASCII碼命令,執(zhí)行運(yùn)動(dòng),。部分程序如下:
?、?/p>
LDSMO.1//掃描
MOVB9,SMB30//設(shè)置自由端口0通信方式SMB30=9、8位數(shù)據(jù)位,、9600,、PPI
MOVB188,SMB87//設(shè)置自由端口。接收信息控制5MB87=188
MOVB13,,SMB89//設(shè)置自由端口0結(jié)束字符SMB89=13,,即結(jié)束字符=<CR>
MOVW0,SMW90//設(shè)置自由端口0空閑超時(shí)SMB90=0,信息接收始終處于有效
MOVW200,SMW92//設(shè)置自由端口0信息超時(shí)SMB92=200ms
MOVB255,SMB94//設(shè)置自由端口0接收字符zui大數(shù)SMB94=255
ATCHINT_0,,9//發(fā)送完成觸發(fā)中斷事件0
ENI//允許中斷
?、诎l(fā)送信息程序
LDNVD3501.1//VD3501.1為接收延遲,自由端口0沒有處于接收延遲時(shí)
ASM4.5//自由端口0處于空閑狀態(tài),,SM4.5=1
AB=VB18,7//命令字節(jié)VB18=7,,即要求設(shè)置運(yùn)動(dòng)目標(biāo)位置
SCPY"sr0xca',VB3100//"sr0xca',,復(fù)制到VB3100,"sr0xca'為設(shè)置運(yùn)動(dòng)目標(biāo)位置命令SCATB3600,VB3100//VB360()內(nèi)的目標(biāo)位置值連接到設(shè)置目標(biāo)位置命令后
SCATVB3190,VB3100//VB3190內(nèi)的結(jié)束字節(jié)連接到VB3100后;
XMTVB3100,0//通過自由端口0發(fā)送命令至伺服驅(qū)動(dòng)器
?、郯l(fā)送完成中斷程序(接收信息)
LDSM0.0//SM0.0總是為1
SSM87.7,1//置SM87.7=1,SM87.7為允許接收信息位
RCVVB3200,0//通過自由端口0接收信息至VB3200
5、三種控制方式的分析比較
上文分別從硬件結(jié)構(gòu)與軟件編程等方面,,詳細(xì)介紹了三種伺服電機(jī)位置控制方式,。為了更好地理解這三種方式的差異,我們從軟件與控制結(jié)果的角度作如下分析比較,。
?、佘浖幊?/p>
脈沖串輸出方式可以輕松實(shí)現(xiàn)一些簡(jiǎn)單的位置與速度控制,,具有硬件要求簡(jiǎn)單、可取代EM253并節(jié)省系統(tǒng)硬件配置等功能,。但在編寫較為復(fù)雜的運(yùn)動(dòng)程序時(shí)(如運(yùn)動(dòng)需要確定電機(jī)運(yùn)動(dòng)的原點(diǎn)位置),,由于步驟繁瑣,故不能采用該方法加以實(shí)現(xiàn),。
?、诳刂凭?/p>
高速脈沖輸出方式和EM253位置控制方式均屬于開環(huán)位置控制,它們只負(fù)責(zé)發(fā)送脈沖,,但當(dāng)伺服電機(jī)或伺服驅(qū)動(dòng)器出現(xiàn)故障時(shí),,PLC或EM253都沒得到相應(yīng)的反饋信息,仍然在不斷向外發(fā)送脈沖;而采用通信控制方式則是在每次發(fā)送命令結(jié)束時(shí),,伺服驅(qū)動(dòng)器均會(huì)對(duì)發(fā)送的命令做出應(yīng)答,。
③位置控制結(jié)果
伺服電機(jī)的速度等于PLC或EM253的輸出脈沖頻匆電機(jī)每轉(zhuǎn)一圈發(fā)送的脈沖數(shù),,或直接通過RS-232串口發(fā)送ASCII碼控制,。由于S7-200系列PLC(除CPU224XP)高速脈沖輸出口的zui高頻率為20kHz,EM253的zui高輸出頻率為200kHz,RS-232串口通信控制方式則是發(fā)送ASCII碼設(shè)定運(yùn)動(dòng)速度。因此,,對(duì)于要求高速運(yùn)動(dòng),,或高控制精度的伺服驅(qū)動(dòng)器系統(tǒng),RS-232串口通信控制方式*,,而高速脈沖輸出方式則不能滿足要求,。
采用高速脈沖輸出控制和EM253位置控制方式時(shí),伺服驅(qū)動(dòng)器工作在脈沖+方向模式下,,而處于通信控制方式時(shí),,伺服驅(qū)動(dòng)器工作在可編程位置控制模式下。高速脈沖輸出方式不能根據(jù)實(shí)際狀況實(shí)時(shí)更改伺服電機(jī)運(yùn)動(dòng)速度與目標(biāo)位置,,EM253位置控制方式只能在手動(dòng)模式下實(shí)時(shí)更改速度,,采用通信控制方式時(shí),,當(dāng)伺服驅(qū)動(dòng)器設(shè)置電機(jī)在可編程位置控制模式下運(yùn)動(dòng)時(shí),,可通過RS-232串口發(fā)送ASCII碼命令,實(shí)時(shí)更改速度和目標(biāo)位置,。
6,、結(jié)束語
高速脈沖輸出方式主要應(yīng)用于對(duì)速度及位置控制精度要求均不高的簡(jiǎn)單位置控制中,從而節(jié)省硬件資源,。EM253位置控制方式編程簡(jiǎn)單,,它支持高速脈沖輸出、支持線性的加減速功能,、提供可組態(tài)的測(cè)量系統(tǒng),,可以使用工程單位如毫米,,支持、相對(duì)和手動(dòng)的位控方式,,提供連續(xù)操作,。RS-232串口通信方式在三種位置控制方式中優(yōu)勢(shì),它支持閉環(huán)控制,,可實(shí)時(shí)調(diào)節(jié)速度,、位置等;但由于伺服驅(qū)動(dòng)器型號(hào)的不同,所以并不是所有的伺服驅(qū)動(dòng)器都支持串口通信方式,。
在實(shí)際應(yīng)用中,,將EM253位置控制方式應(yīng)用于注塑機(jī)注氣系統(tǒng)中,經(jīng)過反復(fù)實(shí)驗(yàn),,可實(shí)現(xiàn)手動(dòng)控制,、半自動(dòng)控制、全自動(dòng)控制等三種控制方式,,編程簡(jiǎn)單,。觸摸屏操作界面簡(jiǎn)潔、操作靈活,、工作可靠穩(wěn)定,。
經(jīng)過詳細(xì)介紹與分析比較,三種位置控制方式各有優(yōu)缺點(diǎn),,各有其自身所適合的應(yīng)用場(chǎng)合,,這為今后類似的位置控制提供了一定的參考價(jià)值。
來源:藝匠商城http://05i.com.cn/