馬 杰,游有鵬
(南京航空航天大學(xué)機(jī)電學(xué)院,江蘇 南京210016)
近年來,手機(jī)、筆記本電腦等電子產(chǎn)品更新?lián)Q代越來越快,并且不斷向輕薄短小、多功能、高可靠性以及低成本化方向發(fā)展,因此市場對PCB制造技術(shù)提出了更高的要求。PCB數(shù)控鉆孔機(jī)作為PCB制造過程中的主要設(shè)備,為更好的適應(yīng)市場需求,繼續(xù)向高速度、高精度和高可靠性方向發(fā)展[1]。
根據(jù)PCB鉆孔機(jī)運(yùn)動(dòng)系統(tǒng)的性能要求,設(shè)計(jì)了一種基于ARM9和μC/OS-II操作系統(tǒng)的運(yùn)動(dòng)控制器。該運(yùn)動(dòng)控制器著重從軟件架構(gòu)設(shè)計(jì)、速度規(guī)劃和位置控制等角度,提升運(yùn)動(dòng)控制系統(tǒng)的性能,從而滿足PCB鉆孔機(jī)對運(yùn)動(dòng)控制系統(tǒng)的要求。
整個(gè)PCB鉆孔機(jī)數(shù)控系統(tǒng)主要由工控機(jī)和基于ARM9的嵌入式運(yùn)動(dòng)控制器組成,其硬件電路如圖1所示。
圖1 硬件電路
工控機(jī)主要用于人機(jī)界面及對整個(gè)運(yùn)動(dòng)系統(tǒng)的指令生成與協(xié)調(diào)控制,它與運(yùn)動(dòng)控制器之間的信息交換由傳輸速度為100 Mbit/s的以太網(wǎng)提供。ARM9作為運(yùn)動(dòng)控制的主控芯片負(fù)責(zé)接收運(yùn)動(dòng)數(shù)據(jù)并進(jìn)行處理,最終通過FPGA及A/D轉(zhuǎn)換電路對外部電機(jī)及信號量進(jìn)行控制。此外,系統(tǒng)使用網(wǎng)絡(luò)通信,需要計(jì)算機(jī)通過串口向運(yùn)動(dòng)控制器下載IP地址、MAC地址等網(wǎng)絡(luò)參數(shù),這些參數(shù)最終由ARM寫入EEPROM以固化。系統(tǒng)軟件存儲在NOR FLASH中,運(yùn)行時(shí)可將程序及數(shù)據(jù)“搬運(yùn)”到SRAM中,以提高系統(tǒng)運(yùn)行速度。
圖2所示為運(yùn)動(dòng)控制器軟件系統(tǒng)的層次化體系結(jié)構(gòu)。整個(gè)系統(tǒng)共分為3個(gè)層次:數(shù)控軟件層、實(shí)時(shí)操作系統(tǒng)層和硬件驅(qū)動(dòng)層。
圖2 系統(tǒng)的層次化體系結(jié)構(gòu)
數(shù)控軟件層根據(jù)數(shù)控系統(tǒng)的功能應(yīng)用劃分為:通訊模塊、程序解釋模塊、運(yùn)動(dòng)模塊、監(jiān)控模塊和位置控制模塊。其中,通訊模塊主要實(shí)現(xiàn)ARM與工控機(jī)之間的以太網(wǎng)通訊功能;程序解釋模塊主要完成數(shù)控代碼的解釋;監(jiān)控模塊主要對控制對象的運(yùn)動(dòng)狀態(tài)進(jìn)行監(jiān)測,并根據(jù)監(jiān)測的結(jié)果進(jìn)行相應(yīng)處理;運(yùn)動(dòng)模塊主要實(shí)現(xiàn)速度規(guī)劃、插補(bǔ)等功能;位置控制模塊主要完成各坐標(biāo)軸的位置閉環(huán)控制。數(shù)控軟件層的各個(gè)模塊由實(shí)時(shí)操作系統(tǒng)進(jìn)行調(diào)度,在定時(shí)器等外部事件的觸發(fā)下,按照一定的時(shí)序完成數(shù)控系統(tǒng)的各種功能。
處于軟件系統(tǒng)底層的是硬件驅(qū)動(dòng)層,驅(qū)動(dòng)層的作用主要包括:①完成對硬件模塊的初始化;②按照一定的規(guī)則對硬件讀寫操作進(jìn)行封裝,為數(shù)控軟件層提供規(guī)范化操作服務(wù)。通過調(diào)用硬件驅(qū)動(dòng)程序,數(shù)控軟件層模塊可以方便地實(shí)現(xiàn)對底層硬件的操作。
為了提高軟件的模塊化、開發(fā)效率和運(yùn)行效率,軟件系統(tǒng)采用了μC/OS-II實(shí)時(shí)操作系統(tǒng)作為整個(gè)軟件系統(tǒng)的控制核心,實(shí)現(xiàn)對數(shù)控軟件層中各個(gè)功能模塊的統(tǒng)一調(diào)度。它不僅資源開銷小、運(yùn)行效率高,而且易于實(shí)現(xiàn)位控、斷刀處理等任務(wù)的硬實(shí)時(shí)調(diào)度。
鉆孔速度歷來是評價(jià)PCB鉆孔機(jī)控制系統(tǒng)性能的重要指標(biāo),它直接影響生產(chǎn)效率,國內(nèi)、國外現(xiàn)有的水平 400~800孔/min。高速鉆孔要求工作臺移動(dòng)及Z軸頻繁啟停,不可避免引起機(jī)床振動(dòng)、影響鉆孔精度等。因此,高效、平滑的運(yùn)動(dòng)軸升降速性能對PCB鉆孔機(jī)具有特殊重要性[2]。
現(xiàn)有的PCB鉆孔機(jī)控制系統(tǒng)的速度規(guī)劃通常采用直線型加減速算法,使用該方法規(guī)劃的速度曲線如圖3所示。直線型加減速算法計(jì)算簡單,機(jī)床響應(yīng)快、效率高,但其生成的速度曲線不夠平滑,在加減速階段存在著加速度突變的現(xiàn)象,會導(dǎo)致機(jī)床的振動(dòng),影響鉆孔質(zhì)量,可應(yīng)用于要求不高的鉆孔機(jī)控制。為進(jìn)一步改善升降速性能,系統(tǒng)還提供了S型曲線加減速算法,使用該方法規(guī)劃的速度曲線如圖4所示。S型曲線加減速規(guī)劃后的速度曲線平滑,而且加速度變化可控,能有效減少機(jī)床振動(dòng)[3]。
系統(tǒng)提供了兩種切換速度規(guī)劃算法的方式:一種是通過人工選擇速度規(guī)劃算法,可根據(jù)生產(chǎn)的需求和操作人員的經(jīng)驗(yàn)選擇速度規(guī)劃算法并設(shè)置相應(yīng)參數(shù);另一種方式是以充分利用伺服系統(tǒng)性能為原則自動(dòng)選擇速度規(guī)劃算法,具體指標(biāo)為:①速度規(guī)劃算法中使用的最大加速度等于電機(jī)的最大加速度;②速度規(guī)劃算法中使用的最大速度盡量靠近或等于指令速度。
為達(dá)到以上指標(biāo),該方式的算法實(shí)現(xiàn)如下過程。
根據(jù)鉆孔機(jī)運(yùn)動(dòng)特點(diǎn),X、Y軸高速定位運(yùn)動(dòng)以及Z軸快速往復(fù)運(yùn)動(dòng)的起始速度和終止速度都為0。考慮到一般情況下電機(jī)的正向和反向的最大加速度相等,假定最大加速度和最大減速度大小相等,即A=D。因此,整個(gè)加減速運(yùn)動(dòng)過程具有對稱性。
在直線型加減速規(guī)劃中,根據(jù)加減速運(yùn)動(dòng)過程的對稱性,可以得到:
其中,v為指令速度;a為電機(jī)的最大加速度;T2為直線型加減速規(guī)劃中勻速段所占的時(shí)間長度;L為運(yùn)動(dòng)長度。
在S型曲線加減速規(guī)劃中,根據(jù)加減速運(yùn)動(dòng)過程的對稱性,可以得到:
其中,J為加加速度;T4為S型曲線加減速規(guī)劃中勻速段所占的時(shí)間長度;L為運(yùn)動(dòng)長度。
在指令速度v、電機(jī)的最大加速度a、加加速度J保持不變的前提下,根據(jù)運(yùn)動(dòng)段長度L,分為以下3種情況。
使用直線型加減速規(guī)劃算法,由(2)式得到:
使用S型曲線加減速規(guī)劃,由(4)式得到:
經(jīng)計(jì)算得出v′T>v′S,即直線型加減速規(guī)劃出來的最大速度要大于S型曲線加減速規(guī)劃出來的最大速度,因此在時(shí),選擇直線型加減速算法。
位置控制的作用是將移動(dòng)量的給定值與通過傳感器檢測到的位置實(shí)際值進(jìn)行比較,得出位置偏差。根據(jù)位置控制算法得到控制值并輸入FPGA,由FPGA控制A/D模塊完成數(shù)模轉(zhuǎn)換功能[4]。PCB鉆孔機(jī)具有運(yùn)動(dòng)速度快、加工精度高,并且伺服系統(tǒng)復(fù)雜致使精確建模難度大等特點(diǎn),因此采用一般的PID控制方法很難滿足實(shí)際加工需求[5]。提出了一種帶調(diào)整因子的模糊PID控制方法,該方法在加工過程的不同階段改變調(diào)整因子的值,動(dòng)態(tài)改變PID結(jié)構(gòu),以達(dá)到不同的性能指標(biāo)。
PCB鉆孔機(jī)加工過程為4個(gè)部分,具體如下:
a.X,Y軸運(yùn)動(dòng),此時(shí)Z軸靜止。
b.X,Y軸到位后,Z軸開始運(yùn)行。
c.Z軸運(yùn)動(dòng)到加工平面時(shí),會收到CBD信號,該信號標(biāo)志Z軸開始鉆孔。
d.Z軸到達(dá)加工終點(diǎn)后高速返至加工參考點(diǎn),進(jìn)行下一次鉆孔。
根據(jù)PCB鉆孔機(jī)加工時(shí)的運(yùn)動(dòng)特點(diǎn)和位置控制的性能指標(biāo),提出了一種帶調(diào)整因子的模糊PID控制方法,其控制結(jié)構(gòu)如圖5所示。具體控制方法如下:
圖5 位置閉環(huán)控制
a.當(dāng)系統(tǒng)處于X,Y軸運(yùn)動(dòng)過程或Z軸高速返回參考點(diǎn)過程,采用模糊P+PI控制方式,即當(dāng)目標(biāo)值與實(shí)際值的偏差e>設(shè)定值e0時(shí),僅使用比例調(diào)節(jié),此時(shí)α=1,β=0,γ=0,使伺服系統(tǒng)有較快的響應(yīng);當(dāng)目標(biāo)值與實(shí)際值的偏差e<設(shè)定值e0時(shí),加入積分環(huán)節(jié),即α=1,β=1,γ=0,以保證定位精度。
b.當(dāng)系統(tǒng)處于Z軸從加工參考點(diǎn)運(yùn)動(dòng)到加工平面的過程時(shí),采用模糊P控制,即α=1,β=0,γ=0,提高伺服系統(tǒng)的響應(yīng)能力。
c.當(dāng)Z軸接受到CBD信號,即Z軸處于加工工件狀態(tài)時(shí),使用完整的PID控制,即α=1,β=1,γ=1,使系統(tǒng)在加工孔的過程中滿足高精度、高速度以及抗干擾的要求。
這種位置控制方法的主要特點(diǎn)是:在不同的加工階段使用不同的模糊PID控制結(jié)構(gòu)。這種方法不需要受控對象精確的數(shù)學(xué)模型,并能完全滿足系統(tǒng)對位置控制的要求。
討論了基于ARM9和μC/OS-II操作系統(tǒng)的PCB鉆孔機(jī)控制器的設(shè)計(jì)。控制器運(yùn)用軟件層次化設(shè)計(jì)、自動(dòng)切換速度規(guī)劃模式和帶調(diào)整因子的模糊PID位置控制策略等多種手段來滿足系統(tǒng)的性能要求。系統(tǒng)已成功運(yùn)用于某公司的六頭PCB鉆孔機(jī),達(dá)到了預(yù)期效果。
[1] 郭 釗.基于PC的PCB鉆孔機(jī)數(shù)控系統(tǒng)的研究與開發(fā)[D].南京:南京航空航天大學(xué),2012.
[2] 李德亮,舒志兵.基于運(yùn)動(dòng)控制板卡的電路板鉆孔機(jī)控制系統(tǒng)設(shè)計(jì)[J].機(jī)床與液壓,2012,40(8):131-133.
[3] 黃 艷,李 家,霧于東.CNC系統(tǒng)S型曲線加減速算法的設(shè)計(jì)與實(shí)現(xiàn)[J].制造技術(shù)與機(jī)床,2005,(3):55-59.
[4] 高 菲.高精度全閉環(huán)伺服系統(tǒng)研究[D].青島:青島大學(xué),2008.
[5] 郜旭凱.模糊PID變結(jié)構(gòu)控制策略及其仿真[J].科協(xié)論壇,2009,(2):96-97.