嚴(yán)成武,韓 宇
(深圳技師學(xué)院,廣東深圳 518116)
隨著工業(yè)技術(shù)的發(fā)展,運(yùn)動控制技術(shù)也在不斷發(fā)展,運(yùn)動控制技術(shù)在制造業(yè)領(lǐng)域得到廣泛應(yīng)用。運(yùn)動控制就是對機(jī)械運(yùn)動部件的位置、速度等進(jìn)行實(shí)時(shí)控制管理,使其按照預(yù)期的運(yùn)動軌跡和規(guī)定的運(yùn)動參數(shù)進(jìn)行運(yùn)動[1]。常見的運(yùn)動控制解決方案為工控機(jī)+運(yùn)動控制卡的方式[2],該解決方案具有穩(wěn)定性好、性能強(qiáng)勁、拓展性強(qiáng)等優(yōu)點(diǎn),但是該方案成本較高,結(jié)構(gòu)不夠緊湊,在一些運(yùn)動精度要求相對不高的運(yùn)動控制場景,以及諸如作為初學(xué)者使用的教學(xué)實(shí)驗(yàn)載體,較高的成本往往會制約所述運(yùn)動控制方案的普及。因此,設(shè)計(jì)一種性價(jià)比更高,能滿足一些運(yùn)動精度要求相對不高的運(yùn)動控制場景的運(yùn)動控制方案就很有必要。
為此,本文從技術(shù)和應(yīng)用兩個(gè)維度出發(fā),針對性地設(shè)計(jì)出一套具有更高性價(jià)比的運(yùn)動控制方案。該方案以嵌入式微控制器為控制核心,通過控制器對PWM信號進(jìn)行調(diào)制,以控制伺服電機(jī)(或步進(jìn)電機(jī))。改變PWM 信號頻率,可以調(diào)節(jié)伺服電機(jī)(或步進(jìn)電機(jī))的速度;改變PWM信號個(gè)數(shù),可以控制伺服電機(jī)(或步進(jìn)電機(jī))的位置;此外,還可以通過控制器的數(shù)字輸入/輸出口,采集數(shù)字輸入信號或控制其他數(shù)字設(shè)備[3]。該嵌入式運(yùn)動控制箱成本低、功能強(qiáng)大、體積小,適用于對性價(jià)比要求較高、對運(yùn)動精度要求相對不高的場合。
本文所述的運(yùn)動控制箱以第二代ARM Cortex-M3 為內(nèi)核的32 位微控制器LPC1752 為控制核心單元,內(nèi)置24 V 開關(guān)電源、3.3 V 穩(wěn)壓電路、光電隔離接口電路,所有電氣部件固定在鐵制外殼底座上,I/O接口通過上蓋的香蕉插座接線端子與外圍的伺服電機(jī)驅(qū)動器或步進(jìn)電機(jī)細(xì)分驅(qū)動器連接,以實(shí)現(xiàn)控制功能[4]。系統(tǒng)組成如圖1所示,實(shí)物如圖2所示。
圖1 系統(tǒng)組成
圖2 實(shí)物
基于第二代ARM Cortex-M3 內(nèi)核32 位微控制器(LPC1752)的嵌入式運(yùn)動控制箱通過嵌入式微控制器發(fā)送高低電平信號和PWM 信號,經(jīng)過光電隔離接口電路,將3.3 V輸出電信號轉(zhuǎn)換為24 V輸出電信號,實(shí)現(xiàn)與伺服電機(jī)驅(qū)動器或步進(jìn)細(xì)分驅(qū)動器的通信,以控制伺服電機(jī)或步進(jìn)電機(jī)。通過高低電平信號的變化,可實(shí)現(xiàn)對伺服電機(jī)或步進(jìn)電機(jī)轉(zhuǎn)向的控制;通過調(diào)制PWM信號的周期和數(shù)量,可實(shí)現(xiàn)對伺服電機(jī)或步進(jìn)電機(jī)速度、位置的控制。最多可同時(shí)控制4 個(gè)伺服電機(jī)或步進(jìn)電機(jī)。根據(jù)32 位微控制器(LPC1752)PWM 模塊的工作原理,可由以下公式計(jì)算PWM 定時(shí)器的計(jì)數(shù)頻率FPWM計(jì)數(shù)頻率,計(jì)算公式如下:
式中:Fpclk為系統(tǒng)時(shí)鐘頻率;PWM1PR 為預(yù)分頻寄存器,VPWM1PR為其值。
在32 位微控制器(LPC1752)中,使用匹配寄存器0(PWM1MR0)來控制PWM 的周期、頻率,PWM 輸出頻率fPWM輸出計(jì)算公式如下:
式中:PWM1MR0為匹配寄存器;VPWM1PR0為其值。
通過改變PWM1MR0 或PWM1PR 的值,就可以改變PWM 的輸出頻率,從而調(diào)節(jié)伺服電機(jī)或步進(jìn)電機(jī)的速度。另外,通過控制PWM模塊輸出脈沖時(shí)間,從而控制PWM個(gè)數(shù),就可以控制伺服電機(jī)或步進(jìn)電機(jī)的位置[4]。
該嵌入式運(yùn)動控制箱也可以通過嵌入式微控制器(LPC1752)數(shù)字輸出口,發(fā)送數(shù)字信號,經(jīng)過光電隔離接口電路,將3.3 V 輸出電信號轉(zhuǎn)換為24 V 輸出電信號,實(shí)現(xiàn)對氣缸或其他電氣功能部件的控制,最多可同時(shí)控制16個(gè)氣缸或其他電氣功能部件。
該嵌入式運(yùn)動控制箱還可以通過光電隔離接口電路,將24 V輸入電信號轉(zhuǎn)換為3.3 V輸入電信號,連接到嵌入式微控制器(LPC1752)數(shù)字輸入口,以實(shí)現(xiàn)對傳感器或其他數(shù)字信號的讀取,最多可同時(shí)讀取16個(gè)傳感器或其他數(shù)字信號。該嵌入式運(yùn)動控制箱工作原理框圖如圖3所示。
圖3 工作原理框圖
該嵌入式運(yùn)動控制箱硬件電路分為嵌入式微控制器(LPC1752)管腳圖、功能引腳圖、系統(tǒng)電源框圖、光電隔離接口電路圖,具體如下。
LPC1752采用LQFP80封裝,管腳分布如圖4所示。
圖4 管腳分布
P0.0~P0.31:P0 口是一個(gè)32 位I/O 口,每個(gè)位都有獨(dú)立的方向控制,P0 口引腳的操作取決于引腳連接模塊所選擇的功能。P0 口的引腳P0.4、P0.5、P0.12~P0.14、P0.19~P0.21、P0.23、P0.24、P0.27、P0.28、P0.31不可用。
P1.0~P1.31:P1 口是一個(gè)32 位I/O 口,每個(gè)位都有獨(dú)立的方向控制,P1 口引腳的操作取決于引腳連接模塊所選擇的功能。P1 口的引腳P1.2、P1.3、P1.5~P1.7、P1.11~P1.13、P1.16、P1.17、P1.21、P1.27不可用。
P2.0~P2.31:P2 口是一個(gè)32 位I/O 口,每個(gè)位都有獨(dú)立的方向控制,P2 口引腳的操作取決于引腳連接模塊所選擇的功能。P2口的引腳P2.11~P2.31不可用。
P4.0~P4.31:P4 口是一個(gè)32 位I/O 口,每個(gè)位都有獨(dú)立的方向控制,P4 口引腳的操作取決于引腳連接模塊所選擇的功能。P4 口的引腳P4.0~P4.27、P4.30、P4.31不可用。功能引腳圖如圖5所示。
圖5 功能引腳圖
220 V 交流電經(jīng)過開關(guān)電源,轉(zhuǎn)換成24 V 直流電,再經(jīng)過直流穩(wěn)壓電路,將直流24 V轉(zhuǎn)成直流3.3 V。直流3.3 V為嵌入式微控制器的工作電源,直流24 V為接口電路工作電源。系統(tǒng)電源框圖如圖6所示。
圖6 系統(tǒng)電源框圖
光電隔離接口電路是基于ARM Cortex-M3 的嵌入式運(yùn)動控制器實(shí)現(xiàn)與外圍負(fù)載通信的橋梁,包括輸入接口電路和輸出接口電路。接口電路采用TLP521-4型可控制光電耦合器,實(shí)現(xiàn)ARM Cortex-M3 控制器與外圍信號電平高低的轉(zhuǎn)換和光電隔離[5-8]。
TLP521-4 是一種性能優(yōu)良的可控制光電耦合器元件,其功耗為150 mW,隔離電壓可達(dá)2 500 Vrms,廣泛運(yùn)用在電腦終端機(jī)、測量儀器、影印機(jī)、家用電器等電器設(shè)備中。其主要作用為使控制線路前端與負(fù)載之間完全隔離,增強(qiáng)電路的安全性,減小電壓的干擾,同時(shí)簡化電路的設(shè)計(jì)[9-12]。
3.4.1 輸入接口電路
基于ARM Cortex-M3 的嵌入式運(yùn)動控制器共有數(shù)字量輸入接口20 位,能夠?qū)崿F(xiàn)多通道的數(shù)字量同時(shí)輸入。圖7 所示為輸入接口電路局部,以TLP521-4 型光電耦合器為核心元件,外圍輸入端電壓為DC24 V,當(dāng)有外部信號輸入時(shí),通過輸入接口電路轉(zhuǎn)換,將信號轉(zhuǎn)換為DC3.3 V弱電信號供ARM Cortex-M3處理器采集使用[13-14]。
圖7 輸入接口電路
3.4.2 輸出接口電路
基于ARM Cortex-M3 的嵌入式運(yùn)動控制器共有數(shù)字量輸出接口16 位和PMW 輸出信號4 路。圖8 所示為輸出接口電路局部,以TLP521-4 型光電耦合器為核心元件。當(dāng)系統(tǒng)對外有信號輸出時(shí),通過輸出接口電路,DC3.3 V的弱電信號轉(zhuǎn)換為DC24 V強(qiáng)電信號,控制外圍注入電磁閥、指示燈等強(qiáng)電負(fù)載[15-16]。
圖8 輸出接口電路
下面介紹以基于該嵌入式運(yùn)動控制器為控制核心,以智能機(jī)械手實(shí)訓(xùn)設(shè)備為控制對象的軟件設(shè)計(jì)[8]。軟件設(shè)計(jì)以C 語言為編程語言,按照模塊化編程的原則編寫程序,實(shí)現(xiàn)以下功能。
上電后,檢測料筒是否有工件;無工件則等待,有工件則上料氣缸動作,把工件推到皮帶線上,皮帶線動作;在皮帶線上,通過顏色傳感器判斷工件顏色,通過電容式接近開關(guān)判斷工件是否到位。如為白色工件,則工件到達(dá)皮帶擋板后,皮帶線停止,延伸氣缸伸出,Z軸氣缸下降,吸取工件,Z軸氣缸上升,延伸氣缸縮回;絲桿(伺服電機(jī)驅(qū)動)向右運(yùn)行,根據(jù)倉庫工件傳感器的信號進(jìn)行定位和Y軸氣缸動作,延伸氣缸伸出,Z軸氣缸下降,放下工件;Z軸氣缸上升,延伸氣缸縮回,Y軸氣缸復(fù)位;絲桿(伺服電機(jī)驅(qū)動)復(fù)位。如料筒有工件,則重復(fù)此過程。如為黑色工件,則皮帶擋板松開,工件通過皮帶擋板,到達(dá)皮帶線末端。如料筒有工件,則重復(fù)此過程。智能機(jī)械手實(shí)訓(xùn)設(shè)備實(shí)物如圖9所示。
圖9 智能機(jī)械手實(shí)訓(xùn)設(shè)備實(shí)物
該系統(tǒng)I/O 分配表如表1 所示,主程序流程如圖10所示。
表1 I/O分配表
圖10 系統(tǒng)主程序流程
根據(jù)設(shè)計(jì)方案,制作出嵌入式運(yùn)動控制箱并投入使用。測試結(jié)果如表2所示。
表2 測試結(jié)果
根據(jù)以上功能測試結(jié)果,可以確定預(yù)期的功能都可以實(shí)現(xiàn)。CPU 最大工作頻率達(dá)100 MHz,說明系統(tǒng)能夠以比較高的速度運(yùn)行程序,保證了系統(tǒng)的時(shí)效性;輸入口最大輸入電流達(dá)50 MA,說明輸入口可以承受較大的輸入電流,能適應(yīng)各種情況下的輸入載荷;最大PWM輸出頻率達(dá)20 kHz,說明可以給伺服電機(jī)驅(qū)運(yùn)器(或步進(jìn)電機(jī)驅(qū)動器)提供比較高的PWM信號,以驅(qū)動伺服電機(jī)(或步進(jìn)電機(jī))以高速運(yùn)轉(zhuǎn);PWM 輸出精度達(dá)99.8%,保證了整個(gè)運(yùn)動控制系統(tǒng)的精度能達(dá)到一個(gè)較高的水平;PWM 輸出占空比范圍為0.4%~99.6%,說明可以適應(yīng)各種伺服電機(jī)驅(qū)動器(或步進(jìn)電機(jī)驅(qū)動器)對輸入PWM信號的占空比要求。以上測試結(jié)果證明了該嵌入式運(yùn)動控制箱能達(dá)到預(yù)期的功能和性能,可廣泛應(yīng)用于對性價(jià)比要求比較高、精度要求相對不太高的運(yùn)動控制場景[17-20]。
本文設(shè)計(jì)并實(shí)現(xiàn)了一種嵌入式運(yùn)動控制箱。該運(yùn)動控制箱內(nèi)嵌電源模塊,無需外加電源模塊,具有如下特點(diǎn):使用光電耦合器對模擬信號和數(shù)字信號進(jìn)行隔離,避免了模擬信號干擾數(shù)字信號;通過優(yōu)化設(shè)計(jì),該運(yùn)動控制箱成本低、體積小,性價(jià)比高;以第二代ARM Cortex-M3為內(nèi)核的32位微控制器LPC1752為控制核心,功能強(qiáng)大,可實(shí)現(xiàn)4通道PWM輸出、20通道的數(shù)字輸入和16通道的數(shù)字輸出。
通過實(shí)際驗(yàn)證,基于第二代ARM Cortex-M3 內(nèi)核32位微控制器(LPC1752)的嵌入式運(yùn)動控制箱可以實(shí)現(xiàn)預(yù)期功能,性能良好,性價(jià)比高,已在職業(yè)培訓(xùn)中投入使用,效果良好。