邵祖光,高 琦,杜宗展
(山東大學(xué) a.機(jī)械工程學(xué)院;b.高效潔凈機(jī)械制造教育部重點(diǎn)實(shí)驗(yàn)室;c.電氣工程學(xué)院, 濟(jì)南 250061)
機(jī)器人在巡檢過(guò)程中需要翻越防震錘、絕緣子、耐張塔等各種障礙物[1]。越障動(dòng)作的多樣性[2]與復(fù)雜性[3]對(duì)巡檢機(jī)器人的運(yùn)動(dòng)控制系統(tǒng)提出了較高的要求。伺服電機(jī)作為巡檢機(jī)器人的關(guān)鍵執(zhí)行機(jī)構(gòu),其體積、重量和動(dòng)態(tài)特性都直接影響到巡檢機(jī)器人的動(dòng)作和續(xù)航,其性能指標(biāo)的優(yōu)劣程度直接影響到機(jī)器人動(dòng)作的精度,一旦出現(xiàn)問(wèn)題,將會(huì)影響巡檢機(jī)器人在架空線路上作業(yè)能力,甚至威脅其安全。伺服電機(jī)的性能已經(jīng)成為制約巡檢機(jī)器人發(fā)展與應(yīng)用的一大瓶頸。
目前大部分伺服控制系統(tǒng)采用的有刷直流電機(jī)或步進(jìn)電機(jī),是以電位器進(jìn)行位置的測(cè)量和反饋。電位器易受干擾,采用電位器式的模擬調(diào)節(jié)器限制了先進(jìn)算法的應(yīng)用,致使其定位精度較差。普通伺服電機(jī)的體積大、重量重、輸出轉(zhuǎn)矩的大小與體積成耦合關(guān)系,這些都使得巡檢機(jī)器人機(jī)械臂對(duì)于靈活性和體積小的需求受到限制。由無(wú)刷直流電機(jī)組成的伺服控制系統(tǒng)為架空線路巡檢機(jī)器人的發(fā)展和應(yīng)用提供了新的方案,大大提高伺服系統(tǒng)的控制性能、可靠性以及使用壽命。
為在保證精度的前提下提高巡檢機(jī)器人機(jī)械臂的靈活性,本系統(tǒng)采用對(duì)位置與速度雙追蹤的優(yōu)化算法,通過(guò)實(shí)時(shí)檢測(cè)給定信號(hào)的位置變化和速度變化,以三環(huán)閉環(huán)控制系統(tǒng)為核心,驅(qū)動(dòng)無(wú)刷直流電機(jī)運(yùn)動(dòng),不僅滿足良好的定位精度、響應(yīng)速度,還兼具良好的速度跟隨特性。
巡檢機(jī)器人機(jī)械臂上使用的伺服系統(tǒng)對(duì)位置跟隨的穩(wěn)態(tài)精度及動(dòng)態(tài)精度要求較高,直接影響到巡檢機(jī)器人動(dòng)作的精度。在巡檢機(jī)器人上應(yīng)用時(shí),伺服系統(tǒng)動(dòng)態(tài)特性更是衡量巡檢機(jī)器人動(dòng)作靈活性優(yōu)劣的重要方面。
為了實(shí)現(xiàn)精確的定位和良好的動(dòng)態(tài)特性, 保證系統(tǒng)的穩(wěn)定、快速,本系統(tǒng)由AVR微處理器、IPM智能功率模塊、位置檢測(cè)、電流檢測(cè)、速度檢測(cè)等構(gòu)成的以電流為內(nèi)環(huán)、速度為中環(huán)和位置為外環(huán)的三環(huán)閉環(huán)控制系統(tǒng)。其中,內(nèi)環(huán)電流環(huán)主要起穩(wěn)定電流和抗電網(wǎng)波動(dòng)的作用;中環(huán)速度環(huán)起滿足轉(zhuǎn)矩需求和抗負(fù)載擾動(dòng)的作用;外環(huán)位置環(huán)起滿足位置精度的作用。
本系統(tǒng)在運(yùn)行過(guò)程中,采用位置、速度雙追蹤的優(yōu)化算法,可以根據(jù)位置給定值變化快慢而實(shí)現(xiàn)不同的實(shí)時(shí)速度變化,在保證精度的前提下極大提升了伺服系統(tǒng)的動(dòng)態(tài)特性,使得巡檢機(jī)器人的機(jī)械臂更加靈活,提高其仿生隨動(dòng)性,在遠(yuǎn)程模擬控制機(jī)械臂時(shí)可以實(shí)現(xiàn)模擬隨動(dòng)控制,符合巡檢機(jī)器人系統(tǒng)的發(fā)展要求。其控制實(shí)現(xiàn)過(guò)程如下:位置給定值與位置反饋輸出值形成位置偏差,經(jīng)位置調(diào)節(jié)后產(chǎn)生速度給定值,它與速度反饋輸出值的速度偏差經(jīng)速度調(diào)節(jié)后形成電流給定值,再與電流反饋輸出值的電流偏差經(jīng)電流調(diào)節(jié),采用定頻調(diào)寬法調(diào)節(jié)PWM的占空比的方式輸出PWM控制信號(hào),控制逆變器開(kāi)關(guān)管的開(kāi)通與關(guān)斷從而控制無(wú)刷直流電動(dòng)機(jī),實(shí)現(xiàn)伺服控制。
位置指令信號(hào)由CAN(Controller Area Networ)總線與上位機(jī)通訊解碼獲取[4],集成在電機(jī)內(nèi)部霍爾傳感器的位置檢測(cè)用于換相控制,連接減速器輸出軸的光電編碼器的位置檢測(cè)用于伺服電機(jī)位置反饋輸出值和產(chǎn)生速度輸出值。
為了減小電機(jī)在運(yùn)行過(guò)程中積分校正產(chǎn)生的飽和效應(yīng)對(duì)控制系統(tǒng)動(dòng)態(tài)性能的影響,對(duì)于位置環(huán)采用積分分離的PI控制算法:當(dāng)上位機(jī)的位置指令給定值與系統(tǒng)位置反饋輸出值之間的偏差較大時(shí),屏蔽積分環(huán)節(jié)的作用;當(dāng)偏差小于一定值時(shí),重新引入積分環(huán)節(jié),以消除靜態(tài)誤差,從而避免振蕩的同時(shí)又保證了控制精度。
本系統(tǒng)由于適用于位置給定值頻繁變化的場(chǎng)合,因此位置調(diào)節(jié)的過(guò)程中使用微分先行法,既可以避免因位置指令信號(hào)給定值頻繁變化所引起的系統(tǒng)振蕩,又可以明顯地改善系統(tǒng)的動(dòng)態(tài)特性。微分先行法PID控制結(jié)構(gòu)圖如圖1所示。
圖1 微分先行法PID控制結(jié)構(gòu)圖
在捕捉到光電編碼器的位置輸出信號(hào)后,利用轉(zhuǎn)子旋轉(zhuǎn)一周的固定位置偏差和動(dòng)態(tài)時(shí)間間隔和來(lái)計(jì)算速度,這種計(jì)算方法,不僅可以滿足測(cè)速頻率,還可以有效抵抗電機(jī)瞬間的抖動(dòng)為速度計(jì)算帶來(lái)的抖動(dòng)影響。當(dāng)前轉(zhuǎn)速可以通過(guò)式(1)計(jì)算得到:
(1)
其中,n—當(dāng)前轉(zhuǎn)速;ΔT—?jiǎng)討B(tài)時(shí)間間隔。
無(wú)刷直流伺服系統(tǒng)的功能主要是對(duì)位置指令信號(hào)、位置反饋信號(hào)進(jìn)行處理,輸出動(dòng)作信號(hào)驅(qū)動(dòng)電機(jī)運(yùn)動(dòng),從而實(shí)現(xiàn)位置跟蹤控制[5]。無(wú)刷直流伺服系統(tǒng)主要由位置傳感器、功率驅(qū)動(dòng)電路和無(wú)刷直流電機(jī)本體三部分組成。
2.1.1 系統(tǒng)電路原理構(gòu)成
伺服系統(tǒng)總體硬件原理框圖如圖2所示,方框內(nèi)的功能由AVR微處理器組成的最小系統(tǒng)實(shí)現(xiàn),其與上位機(jī)系統(tǒng)通過(guò)CAN模塊進(jìn)行實(shí)時(shí)通訊,AVR微處理器(MCU)接收上位機(jī)位置給定值等命令信號(hào),通過(guò)I/O引腳接收位置反饋信號(hào),通過(guò)電流傳感器接收實(shí)時(shí)電流信號(hào),經(jīng)過(guò)運(yùn)算處理后輸出PWM電機(jī)控制信號(hào);功率驅(qū)動(dòng)電路采用IPM智能功率模塊,內(nèi)含的邏輯控制電路對(duì)微處理器輸出的電機(jī)控制信號(hào)、霍爾位置信號(hào)、模塊內(nèi)電流保護(hù)信號(hào)進(jìn)行處理,產(chǎn)生控制功率管開(kāi)/關(guān)的相序,實(shí)現(xiàn)電機(jī)繞組的邏輯換相控制從而驅(qū)動(dòng)無(wú)刷直流電機(jī)運(yùn)動(dòng);無(wú)刷電機(jī)在轉(zhuǎn)動(dòng)時(shí)經(jīng)過(guò)定制的減速器傳遞到輸出軸,光電編碼器實(shí)時(shí)檢測(cè)輸出軸的位置信號(hào),將數(shù)字信號(hào)反饋到AVR微處理器中,實(shí)現(xiàn)無(wú)刷直流伺服系統(tǒng)的閉環(huán)控制。
圖2 系統(tǒng)總體硬件原理框圖
2.1.2 控制電路
本系統(tǒng)使用的芯片ATmega328P是基于增強(qiáng)的AVR RISC結(jié)構(gòu)的低功耗8位CMOS微處理器[6]。由于其先進(jìn)的指令集以及單時(shí)鐘周期指令執(zhí)行時(shí)間,AVR微處理器的數(shù)據(jù)吞吐率高達(dá)1MIPS/MHz,從而可以緩減系統(tǒng)在功耗和處理速度之間的矛盾。AVR微處理器采用了哈佛結(jié)構(gòu),具有獨(dú)立的數(shù)據(jù)和程序總線??焖僭L問(wèn)寄存器包括32個(gè)8位通用工作寄存器,訪問(wèn)時(shí)間為一個(gè)時(shí)鐘周期。
本系統(tǒng)控制板擁有一路UART串口通信,兩個(gè)外部中斷接口,1個(gè)10位PWM輸出引腳和5個(gè)8位PWM輸出引腳用來(lái)控制無(wú)刷直流電機(jī),通過(guò)初始化設(shè)置,使其能自動(dòng)地發(fā)出PWM脈沖波,只有在改變占空比時(shí)CPU才會(huì)進(jìn)行干預(yù)。1路集成MCP2515支持SPI的CAN總線模塊,通信速度可達(dá)1Mb/s,可以方便地與上位機(jī)系統(tǒng)進(jìn)行通信。
2.1.3 功率驅(qū)動(dòng)電路
為了提高逆變橋的可靠性,本系統(tǒng)使用IPM智能功率模塊作為功率驅(qū)動(dòng)電路。它將IGBT與具有信號(hào)處理、自我保護(hù)和各種診斷功能的電流繼承與一體構(gòu)成模塊化器件[7]。與以往IGBT模塊及驅(qū)動(dòng)電路相比,它內(nèi)含逆變電路、過(guò)流保護(hù)(OC)、短路保護(hù)(SC)、驅(qū)動(dòng)電源欠電壓保護(hù)(UV)、過(guò)熱保護(hù)(OH)、報(bào)警輸出(ALM)、制動(dòng)電路等功能,使得電機(jī)控制器具有體積小、重量輕、設(shè)計(jì)簡(jiǎn)單和可靠性高等諸多優(yōu)點(diǎn),是高性能無(wú)刷直流電機(jī)的理想驅(qū)動(dòng)器件。
IPM智能功率模塊可以根據(jù)霍爾位置傳感器的信號(hào)進(jìn)行有規(guī)律的換相,正確選擇哪些相相通,哪些相斷電即可[8]。通過(guò)改變換相的通電順序就可以實(shí)現(xiàn)電機(jī)的正、反轉(zhuǎn)控制。電機(jī)速度可以通過(guò)PWM信號(hào)調(diào)節(jié)。
2.1.4 其他硬件保護(hù)電路
(1)過(guò)流保護(hù)電路
通過(guò)對(duì)電機(jī)的最大電流進(jìn)行限制來(lái)提高系統(tǒng)的可靠性和安全性,避免可能因操作不當(dāng)和負(fù)載過(guò)大等原因造成的線路損壞。本系統(tǒng)采用WCS1800霍爾電流傳感器,不僅具有適用于A/D轉(zhuǎn)換的經(jīng)過(guò)運(yùn)放跟隨的模擬信號(hào),還可以當(dāng)做開(kāi)關(guān)信號(hào):可預(yù)設(shè)限流值,當(dāng)實(shí)際電流值大于預(yù)先設(shè)定的電流值時(shí),開(kāi)關(guān)信號(hào)會(huì)由低電平變?yōu)楦唠娖剑⒂蠰ED指示燈指示。檢測(cè)電流達(dá)到DC35A,線性度為K=60mV/A。
(2) 光耦隔離電路
為避免強(qiáng)電信號(hào)干擾控制回路中的弱電信號(hào)并提高系統(tǒng)的安全性,本系統(tǒng)采用光耦將電路中的強(qiáng)電信號(hào)和弱電信號(hào)隔離開(kāi)來(lái)。如光電編碼器輸出端與控制板管腳之間可用高電平有驅(qū)動(dòng)能力的光耦隔離電路,如圖3所示。
圖3 高電平有驅(qū)動(dòng)能力的光耦隔離電路圖
2.2.1 算法設(shè)計(jì)
為了提高系統(tǒng)的可靠性,本系統(tǒng)不直接使用傳統(tǒng)的連續(xù)型PID控制算法,而使用將其離散化之后得到的數(shù)字型離散PID控制律的差分方程[9],處理方式為:以k作為采樣序號(hào),以T作為采樣周期,則離散采樣時(shí)間kT對(duì)應(yīng)著連續(xù)時(shí)間t,用求和的形式代替積分,用增量的形式代替微分,可作如下近似變換:
t≈kT(k=0,1,2...)
(2)
(3)
(4)
將式(2)~式(4)代入到PID控制器的控制規(guī)律方程中得:
(5)
式中,KI——積分系數(shù);KD——微分系數(shù);T——采樣周期;e(k)、e(k-1)——第k、k-1采樣時(shí)刻輸入的偏差值。
為了減小誤差,提高動(dòng)態(tài)效果,采用增量式PID控制。根據(jù)遞推原理,由式(5)可得增量式PID控制器算法:
Δu(k)=u(k)-u(k-1)=
KP(e(k)-e(k-1))+KIe(k)+KD(e(k)-
2e(k-1)+e(k-2))
(6)
數(shù)字PID控制器參數(shù)的選擇,仍可按連續(xù)型PID參數(shù)整定方法進(jìn)行。通常PID調(diào)節(jié)步驟為先調(diào)節(jié)被參數(shù),后調(diào)節(jié)積分參數(shù),最后調(diào)節(jié)微分參數(shù)。本系統(tǒng)先固定積分環(huán)節(jié)為零,調(diào)節(jié)比例環(huán)節(jié)至系統(tǒng)響應(yīng)穩(wěn)定,然后調(diào)節(jié)積分環(huán)節(jié)來(lái)改善系統(tǒng)的動(dòng)態(tài)響應(yīng)和靜態(tài)穩(wěn)定性能,最后再調(diào)節(jié)微分環(huán)節(jié)來(lái)抑制過(guò)沖和振蕩,抵抗外界的突發(fā)干擾,提高系統(tǒng)的穩(wěn)定性。三個(gè)環(huán)節(jié)不是相互孤立的,而是相互耦合,在整定過(guò)程中經(jīng)過(guò)綜合考慮以達(dá)到最優(yōu)的控制效果。
與連續(xù)控制系統(tǒng)相比,本數(shù)字控制系統(tǒng)具有如下優(yōu)點(diǎn):①控制精度高,易于實(shí)現(xiàn)復(fù)雜算法;②抗干擾能力強(qiáng);③易于實(shí)現(xiàn)與上位機(jī)的通訊互聯(lián),便于實(shí)現(xiàn)控制系統(tǒng)的分布式控制;④可以根據(jù)試驗(yàn)和經(jīng)驗(yàn)在線調(diào)整參數(shù),因此可以得到更好的控制性能。
主程序主要是初始化AVR微處理器需要用到的寄存器、加載庫(kù)文件、初始化I/O管腳、初始化中斷設(shè)置、初始化定時(shí)器設(shè)置、定義初試控制變量和宏替換、初始化CAN總線設(shè)置、初始化串口通信等。主程序框圖如圖4所示。
圖4 主程序框圖
中斷程序主要包括上位機(jī)信號(hào)接收中斷子程序、系統(tǒng)位置輸出值檢測(cè)中斷子程序、調(diào)節(jié)子程序(包括位置調(diào)節(jié)子程序、速度調(diào)節(jié)子程序、電流調(diào)節(jié)子程序)、ADC檢測(cè)驅(qū)動(dòng)電路供給電流子程序等,調(diào)節(jié)子程序程序框圖如圖5所示。
圖5 調(diào)節(jié)子程序框圖
2.2.2 數(shù)字濾波
在數(shù)字閉環(huán)控制系統(tǒng)中,測(cè)量值是通過(guò)對(duì)系統(tǒng)的輸出量進(jìn)行周期性采樣而得到的。偏差是系統(tǒng)給定值和反饋輸出值之間的差值,差值是PID控制系統(tǒng)中的重要數(shù)據(jù)。如果反饋輸出值不能真實(shí)地反映系統(tǒng)的輸出,那控制本身就失去了意義。在實(shí)際中,對(duì)電動(dòng)機(jī)的輸出值?;煊懈蓴_噪聲,它們來(lái)自于被測(cè)信號(hào)的形成過(guò)程和傳送過(guò)程。用混有干擾的輸出值作為控制信號(hào),將引起系統(tǒng)誤操作,在有微分環(huán)節(jié)的系統(tǒng)中還會(huì)引起系統(tǒng)振蕩,因此危害極大[10]。
本系統(tǒng)除了考慮了濾波效果之外,由于本系統(tǒng)要求可以做到實(shí)時(shí)隨動(dòng)性控制,所以還充分考慮了濾波速度。因此,對(duì)于上位機(jī)的給定值和系統(tǒng)的當(dāng)前輸出值采用算數(shù)平均值法、移動(dòng)平均濾波法和防脈沖干擾平均值法相結(jié)合的方法:對(duì)連續(xù)的數(shù)據(jù)進(jìn)行采樣,對(duì)每一個(gè)數(shù)據(jù)進(jìn)行判斷,是否超出合理的瞬間變化值域,若超出,我們認(rèn)為它是受干擾的數(shù)據(jù),則舍棄掉;若未超出,則將連續(xù)的n個(gè)合理數(shù)據(jù)按照采樣時(shí)刻的先后順序排成隊(duì)列存放在數(shù)據(jù)緩存區(qū)中,計(jì)算其算數(shù)平均值,如圖6所示。計(jì)算完成后,進(jìn)行下一次計(jì)算之前,將隊(duì)列前的最先采樣的數(shù)據(jù)移出,然后將最新采樣的數(shù)據(jù)補(bǔ)充到隊(duì)列的尾部,以保證緩沖區(qū)的隊(duì)列中總是有n個(gè)數(shù)據(jù),并且數(shù)據(jù)按采樣的先后順序排列,如圖7所示。
圖6 濾波過(guò)程圖 圖7 緩沖區(qū)數(shù)據(jù)平移圖
為驗(yàn)證本文設(shè)計(jì)的無(wú)刷直流伺服系統(tǒng)的性能,根據(jù)上述原理框圖設(shè)計(jì)成功開(kāi)發(fā)了測(cè)試實(shí)驗(yàn)系統(tǒng)并進(jìn)行性能測(cè)試。該電機(jī)采用HOBBYWING公司的無(wú)刷直流電機(jī),內(nèi)置霍爾位置傳感器。采用自主研發(fā)的減速器,降速增扭,增強(qiáng)控制性能。輸出軸使用梅花聯(lián)軸器連接10位絕對(duì)值式格雷碼光電編碼器,編碼器輸出經(jīng)過(guò)正相放大式光耦隔離器件連接到控制板的10個(gè)管腳。供給電機(jī)12V直流電源,供給編碼器24V直流電源。軟件采用C語(yǔ)言在開(kāi)源電子平臺(tái)Arduino IDE上實(shí)現(xiàn)。無(wú)刷直流伺服系統(tǒng)電流環(huán)采樣頻率是200Hz,速度環(huán)頻率是200Hz,位置環(huán)采樣頻率是200Hz,位置分辨率為0.3516°。圖8是無(wú)刷直流伺服系統(tǒng)搭載在巡檢機(jī)器人機(jī)械臂上面進(jìn)行實(shí)驗(yàn)的實(shí)物圖。
圖8 無(wú)刷直流伺服系統(tǒng)實(shí)驗(yàn)圖
實(shí)驗(yàn)的具體操作過(guò)程為:搭建好電路并供電后,手動(dòng)旋轉(zhuǎn)上位機(jī)連接的電位器作為伺服系統(tǒng)的位置給定值,觀察伺服電機(jī)隨動(dòng)實(shí)驗(yàn)現(xiàn)象,同步讀取給定值和伺服系統(tǒng)編碼器的輸出值。實(shí)時(shí)位置給定值與實(shí)時(shí)位置輸出值對(duì)比如圖9所示。
(a) 順時(shí)針旋轉(zhuǎn)
(b) 逆時(shí)針旋轉(zhuǎn)
(c) 順、逆時(shí)針交替旋轉(zhuǎn) 圖9 給定值與實(shí)時(shí)位置輸出值對(duì)比圖
由圖9無(wú)刷直流伺服位置隨動(dòng)位置實(shí)驗(yàn)圖可以看出,系統(tǒng)輸出值不僅能很好地跟蹤位置信號(hào)的指令值、響應(yīng)速度快,而且能夠隨著位置信號(hào)的變化快慢,自動(dòng)調(diào)節(jié)轉(zhuǎn)速,以滿足在近乎相同時(shí)間內(nèi)無(wú)卡頓地達(dá)到相同位置,具有隨動(dòng)控制的動(dòng)態(tài)特性。
系統(tǒng)性能的測(cè)試結(jié)果表明,本文設(shè)計(jì)的無(wú)刷直流伺服系統(tǒng)采用的三環(huán)控制,不僅能夠達(dá)到滿足伺服控制的精度要求,還能夠?qū)崿F(xiàn)隨動(dòng)變速控制的動(dòng)態(tài)特性要求。本系統(tǒng)結(jié)構(gòu)簡(jiǎn)單,采用全數(shù)字化元件使得其抗干擾能力得到明顯加強(qiáng),易于實(shí)現(xiàn)復(fù)雜的控制規(guī)律。本系統(tǒng)滿足巡檢機(jī)器人對(duì)伺服系統(tǒng)的要求,對(duì)其他類(lèi)型的對(duì)動(dòng)態(tài)特性要求高的系統(tǒng)設(shè)計(jì)也有一定的借鑒意義。