在數(shù)控機(jī)床中,,PLC控制伺服電機(jī)系統(tǒng),,一般是通過(guò)高速脈沖輸出口輸出等寬脈沖,通過(guò)脈沖數(shù)來(lái)實(shí)現(xiàn)伺服系統(tǒng)的定位控制,,其中有脈沖量,,脈沖頻率,脈沖方向等參數(shù),,伺服這邊還有電子齒輪比等參數(shù)設(shè)定,。請(qǐng)關(guān)注:容濟(jì)點(diǎn)火器,討論技術(shù)問(wèn)題,。 利用PLC的高速計(jì)數(shù)器指令和旋轉(zhuǎn)編碼器控制三相交流異步電機(jī)實(shí)現(xiàn)的準(zhǔn)確定位,。 1.1 系統(tǒng)工作原理 PLC的高速計(jì)數(shù)器指令和編碼器的配合使用,在現(xiàn)代工業(yè)生產(chǎn)自動(dòng)控制中可實(shí)現(xiàn)精確定位和測(cè)量長(zhǎng)度,。目前,,大多數(shù)PLC都具有高速計(jì)數(shù)器功能,例如西門(mén)子S7-200系列CPU226型PLC有6個(gè)高速計(jì)數(shù)器,。高速計(jì)數(shù)器可以對(duì)脈寬小于PLC主機(jī)掃描周期的高速脈沖準(zhǔn)確計(jì)數(shù),,不需要增加特殊功能單元就可以處理頻率高達(dá)幾十或上百kHz的脈沖信號(hào)。旋轉(zhuǎn)編碼器則可以將電動(dòng)機(jī)軸上的角位移轉(zhuǎn)換成脈沖值,。 利用PLC的高速計(jì)數(shù)器指令和編碼器控制三相交流異步電機(jī)實(shí)現(xiàn)的準(zhǔn)確定位控制系統(tǒng),,其原理是通過(guò)與電動(dòng)機(jī)同軸相連的光電旋轉(zhuǎn)編碼器將電機(jī)角位移轉(zhuǎn)換成脈沖值,經(jīng)由PLC的高速計(jì)數(shù)器來(lái)統(tǒng)計(jì)編碼器發(fā)出的脈沖個(gè)數(shù),,從而實(shí)現(xiàn)定位控制,。 1.2 設(shè)計(jì)與實(shí)施 以對(duì)傳輸帶的定位控制設(shè)計(jì)為例加以說(shuō)明。現(xiàn)需要用傳輸帶運(yùn)送貨物,,從貨物運(yùn)送起點(diǎn)到指定位置(終點(diǎn))的距離為10 cm?,F(xiàn)要求當(dāng)傳輸帶上的貨物運(yùn)行10 cm后,傳輸帶電機(jī)停止運(yùn)行,。該系統(tǒng)硬件設(shè)置主要包括西門(mén)子S7-200CPU226型PLC,、傳輸帶電機(jī)(三相交流異步電機(jī))、OMRON的E6A2-CW5W光電旋轉(zhuǎn)編碼器,、松下VFO系列BFV00042GK變頻器等,。該系統(tǒng)的工作原理是將光電編碼器的機(jī)械軸和傳動(dòng)輥(由三相交流異步電機(jī)拖動(dòng))同軸相連,通過(guò)傳動(dòng)輥帶動(dòng)光電編碼器機(jī)械軸轉(zhuǎn)動(dòng),,輸出脈沖信號(hào),利用PLC的高速計(jì)數(shù)器指令對(duì)編碼器產(chǎn)生的脈沖(采用A相脈沖)個(gè)數(shù)進(jìn)行計(jì)數(shù),,當(dāng)高速計(jì)數(shù)器的當(dāng)前值等于預(yù)置值時(shí)產(chǎn)生中斷,,經(jīng)變頻器控制電動(dòng)機(jī)停止運(yùn)行,從而實(shí)現(xiàn)傳輸帶運(yùn)行距離的準(zhǔn)確定位控制,。很顯然,,該控制系統(tǒng)中實(shí)現(xiàn)準(zhǔn)確定位控制的關(guān)鍵是對(duì)PLC的高速計(jì)數(shù)器的預(yù)置值進(jìn)行設(shè)置,,高速計(jì)數(shù)器的預(yù)置值即為傳輸帶運(yùn)行10 cm時(shí)光電編碼器產(chǎn)生的脈沖數(shù)。該脈沖數(shù)值與傳輸帶運(yùn)行距離,、光電編碼器的每轉(zhuǎn)脈沖數(shù)以及傳動(dòng)輥直徑等參數(shù)有關(guān),。該脈沖數(shù)可以通過(guò)實(shí)驗(yàn)測(cè)量也可通過(guò)計(jì)算得出。計(jì)算得出傳輸帶運(yùn)行10 cm對(duì)應(yīng)的脈沖數(shù)為: 脈沖數(shù)=[(傳動(dòng)輥直徑(mm)×π÷(脈沖數(shù)/轉(zhuǎn))]×傳送帶運(yùn)行距離(mm) 該系統(tǒng)通過(guò)計(jì)算得出脈沖數(shù)為100,,則高速計(jì)數(shù)器的預(yù)置值即為100,。參考程序如圖1所示。 在子程序中,,將高速計(jì)數(shù)器HSC0設(shè)置為模式1,,即單路脈沖輸入內(nèi)部方向控制的增/減計(jì)數(shù)器。無(wú)啟動(dòng)輸入,,使用復(fù)位輸入,。系統(tǒng)開(kāi)始運(yùn)行時(shí),調(diào)用子程序HSC_INIT,,其目的是初始化HSC0,,將其控制字節(jié)SMB37數(shù)據(jù)設(shè)置為16#F8,對(duì)高速計(jì)數(shù)器寫(xiě)入當(dāng)前值和預(yù)置值,,同時(shí)通過(guò)中斷連接指令A(yù)TCH將中斷事件12(即高速計(jì)數(shù)器的當(dāng)前值等于預(yù)置值中斷)和中斷服務(wù)程序COUNT_EQ連接起來(lái),,并執(zhí)行ENI指令,全局開(kāi)中斷,。當(dāng)高速計(jì)數(shù)器的當(dāng)前值等于預(yù)置值時(shí),,執(zhí)行中斷服務(wù)程序,將SMD42的值清零,,再次執(zhí)行HSC指令重新對(duì)高速計(jì)數(shù)器寫(xiě)入當(dāng)前值和預(yù)置值,,同時(shí)使M0.0置位,電動(dòng)機(jī)停止運(yùn)行,。 |
|
來(lái)自: 2457274631 > 《科技》