SIEMENSPLC伺服控制
摘要:伴隨著工業(yè)自動(dòng)化的發(fā)展,對(duì)其 中的位置控制精確度也逐步的提高,如何能方便,準(zhǔn)確的實(shí)現(xiàn)位置控制,是一個(gè) 重大的問(wèn)題,本文講述了如何采用 PLC 可編程控制器來(lái)實(shí)現(xiàn)精確控制。
分別列 舉了三項(xiàng)方法,以及他們之間的相互比較。
引言 隨著自動(dòng)化水平的不斷提高,越來(lái)越多的工業(yè)控制場(chǎng)合需要精確的位置控 制。
因此,如何更方便、更準(zhǔn)確地實(shí)現(xiàn)位置控制是工業(yè)控制領(lǐng)域內(nèi)的一個(gè)重要問(wèn) 題。
位置控制的精確性主要取決于伺服驅(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ù)雜程度不是很高,這就沒(méi)有必要選 擇那些昂貴的運(yùn)動(dòng)控制系統(tǒng)。
S7-200 系列 PLC 是一種體積小、編程簡(jiǎn)單、控制方便的可編程控制器,它 了多種位置控制方式可供用戶選擇,因此,如何利用該系列 PLC 實(shí)現(xiàn)對(duì)伺 服電機(jī)運(yùn)動(dòng)位置較為精準(zhǔn)的控制是本文的研究重點(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), 并接收來(lái)自編碼器的反饋信號(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è)行星滾珠絲杠組成, 用來(lái)實(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)位置控制。
一般來(lái)說(shuō), 一個(gè)伺服系統(tǒng)運(yùn)轉(zhuǎn)需要配置一個(gè)上位機(jī),所以本系統(tǒng)采用西門子 S7-200PLC 作為上位機(jī)控制器。
通過(guò)高速脈沖輸出、EM253 位置控制模塊、自 由口通信三種方式控制伺服電機(jī)運(yùn)動(dòng)。
2、高速脈沖輸出模式 西門子 CPU224XP 配置兩個(gè)內(nèi)置脈沖發(fā)生器,它有脈沖串輸出(PTO)和脈沖 寬度調(diào)制輸出兩種脈沖發(fā)生模式可供選擇。
這兩個(gè)脈沖發(fā)生器的脈沖輸出頻 率為 100kHz。
在脈沖串輸出方式中,PLC 可生成一個(gè) 50%占空比脈沖串,用于 步進(jìn)電機(jī)或伺服電機(jī)的速度和位置的控制。
2.1 硬件構(gòu)成
圖 1 為高速脈沖輸出方式的位置控制原理圖。
控制過(guò)程中,將伺服驅(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è)端子上, 可通過(guò)軟件編程, 實(shí)現(xiàn)限位和找尋參考點(diǎn)。
圖 1 位置控制原理圖 2.2 程序設(shè)計(jì) 高速脈沖串輸出(PTO)可以通過(guò) Step7Micro/WIN 的位置控制向?qū)нM(jìn)行組態(tài), 也可通過(guò)軟件編程實(shí)現(xiàn)控制。
PTO 輸出方式?jīng)]有專門的位置控制指令,只有一 條脈沖串輸出指令,而且在脈沖發(fā)送過(guò)程中不能停止,也不能修改參數(shù)。
為解決 以上問(wèn)題,可以設(shè)置脈沖計(jì)數(shù)值等于 10(或更小),并能使脈沖發(fā)送指令 PLS 處 于激活狀態(tài)。
這樣,就可以在任一脈沖串發(fā)送完之后修改脈沖周期。
圖 2 為高速脈沖輸出方式位置控制流程圖。
控制思路為:通過(guò) PTO 模式輸 出,可以控制脈沖的周期和個(gè)數(shù);通過(guò)啟用高速計(jì)數(shù)器 HSC,對(duì)輸出脈沖進(jìn)行 實(shí)時(shí)計(jì)數(shù)和定位控制,以控制伺服電機(jī)的運(yùn)動(dòng)過(guò)程。
圖 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 位置控制模塊可以通過(guò) 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),通過(guò)伺服驅(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
伺服系統(tǒng)和 PLC 分別作為系統(tǒng)的主從站。
PLC 控制器通過(guò)該 通信功能可實(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í),一般通過(guò) 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 在無(wú)協(xié)議通信方式工作時(shí),不需要任何通信協(xié)議,通信參數(shù)需要 根據(jù)與其進(jìn)行通信的伺服驅(qū)動(dòng)器的通信格式進(jìn)行設(shè)定。
本伺服系統(tǒng)選用的 Xe-nus 伺服驅(qū)動(dòng)器可通過(guò) RS-232 與 PLC 利用 ASCII 碼進(jìn)行通信,其 ASCII 碼消息命 令格式如下: <命令代碼><命令具體參數(shù)> 其中:<命令代碼>為一個(gè)單字母代碼;<命令具體參數(shù)>表示電機(jī)所要執(zhí)行 的任務(wù);為一個(gè)回車返回字符,表示命令結(jié)束。
如:sr0x2A21表示設(shè) 置伺服控制器工作在可編程控制模式。
4.2.2 程序設(shè)計(jì) 程序設(shè)計(jì)時(shí), 將伺服驅(qū)動(dòng)器工作定義在可編程位置模式。
該模式支持實(shí)時(shí)更 改伺服電機(jī)的運(yùn)動(dòng)速度、位置,通過(guò) RS-232 接收來(lái)自 PLC 的 ASCII 碼命令,執(zhí) 行運(yùn)動(dòng)。
部分程序如下:
①初始化程序 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é)束字符= MOVW0,SMW90//設(shè)置自由端口 0 空閑超時(shí) SMB90=0,信息接收始終處于 有效 MOVW200,SMW92//設(shè)置自由端口 0 信息超時(shí) SMB92=200ms MOVB255,SMB94//設(shè)置自由端口 0 接收字符數(shù) SMB94=255 ATCHINT_0,9//發(fā)送完成觸發(fā)中斷 0 ENI//允許中斷 ②發(fā)送信息程序 LDNVD3501.1//VD3501.1 為接收延遲,自由端口 0 沒(méi)有處于接收延遲時(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//通過(guò)自由端口 0 發(fā)送命令至伺服驅(qū)動(dòng)器 ③發(fā)送完成中斷程序(接收信息) LDSM0.0//SM0.0 總是為 1 SSM87.7,1//置 SM87.7=1,SM87.7 為允許接收信息位
