李 哲,洪志輝,涂 玲,楊明輝,鄧曉剛,劉 寶
(中國(guó)石油大學(xué)(華東)控制科學(xué)與工程學(xué)院,山東青島 266580)
實(shí)踐教學(xué)環(huán)節(jié)是培養(yǎng)新工科背景下創(chuàng)新復(fù)合型人才的重要基礎(chǔ)[1]。以往不同專(zhuān)業(yè)內(nèi)的實(shí)踐課程交叉融合少,學(xué)生僅能從本專(zhuān)業(yè)角度理解實(shí)踐內(nèi)容的相關(guān)知識(shí)。為滿(mǎn)足我校機(jī)械、自動(dòng)化、測(cè)控等專(zhuān)業(yè)教學(xué)培養(yǎng)目標(biāo),培養(yǎng)學(xué)生解決復(fù)雜工程問(wèn)題的能力,開(kāi)設(shè)了智能機(jī)器人實(shí)訓(xùn)課程,設(shè)計(jì)開(kāi)發(fā)了全位移視覺(jué)機(jī)器人實(shí)訓(xùn)平臺(tái)。實(shí)訓(xùn)平臺(tái)融合機(jī)械設(shè)計(jì)、電路設(shè)計(jì)、先進(jìn)控制、自動(dòng)識(shí)別、圖像處理等技術(shù),有效提升了學(xué)生多領(lǐng)域知識(shí)交叉融合實(shí)踐能力。
實(shí)訓(xùn)內(nèi)容以SolidWorks[2]為設(shè)計(jì)環(huán)境,設(shè)計(jì)實(shí)現(xiàn)符合工藝要求且穩(wěn)固的機(jī)器人機(jī)械框架結(jié)構(gòu)、減震懸掛結(jié)構(gòu)及云臺(tái)運(yùn)動(dòng)結(jié)構(gòu);以Altium Designer[3]為開(kāi)發(fā)環(huán)境,設(shè)計(jì)、焊接并調(diào)試功能穩(wěn)定且符合控制與功率要求的PCB 板;編寫(xiě)云臺(tái)與電機(jī)控制算法,實(shí)現(xiàn)對(duì)云臺(tái)電機(jī)與底盤(pán)電機(jī)的精準(zhǔn)控制;完成機(jī)器人機(jī)械系統(tǒng)、視覺(jué)系統(tǒng)與軟硬件控制系統(tǒng)的聯(lián)調(diào)與測(cè)試。
平臺(tái)機(jī)械系統(tǒng)設(shè)計(jì)(如圖1)主要包含麥克納姆輪組合設(shè)計(jì),底盤(pán)結(jié)構(gòu)設(shè)計(jì),云臺(tái)結(jié)構(gòu)設(shè)計(jì)及其他連接部件的機(jī)械設(shè)計(jì)等。
圖1 平臺(tái)整體機(jī)械設(shè)計(jì)圖
麥克納姆輪依據(jù)傾斜角度為45°的輥?zhàn)影惭b方向分為互為鏡像關(guān)系的A 輪與B 輪[4]。當(dāng)麥輪正向旋轉(zhuǎn)時(shí),由速度的正向分解,A 輪可分解為沿軸向左與垂直于軸向的前向速度分量,B 輪可分解為沿軸向右與垂直于軸向的前向速度分量[5]。
以右前輪為標(biāo)志輪,沿順時(shí)針?lè)较驗(yàn)锳BAB 的麥輪組合條件下(如圖2),當(dāng)四輪同速向前運(yùn)動(dòng)時(shí),輪子間軸向速度互相抵消,只剩下前向速度,實(shí)現(xiàn)前進(jìn)功能。同理,當(dāng)四輪同速反轉(zhuǎn)時(shí),可實(shí)現(xiàn)后退功能。在四輪同速的情況下,當(dāng)A 輪正轉(zhuǎn),B 輪反轉(zhuǎn)時(shí),輪子間垂直于軸向的速度被抵消,平臺(tái)只剩下向左的速度分量,實(shí)現(xiàn)左移功能;當(dāng)A 輪反轉(zhuǎn),B 輪正傳時(shí),實(shí)現(xiàn)右移功能。
圖2 ABAB型結(jié)構(gòu)麥輪組合圖
平臺(tái)運(yùn)用ABAB 型麥克納姆輪組合結(jié)構(gòu),通過(guò)對(duì)各輪單獨(dú)的轉(zhuǎn)向及速度控制,使機(jī)器人可以在平面的任意方向上形成合力與合速度矢量,進(jìn)而實(shí)現(xiàn)全位移的功能要求。
常見(jiàn)的底盤(pán)設(shè)計(jì)結(jié)構(gòu)有:輪式、足式與履帶式[6-9]。輪式底盤(pán)設(shè)計(jì),具有移動(dòng)靈活且速度快,結(jié)構(gòu)穩(wěn)定、負(fù)載能力強(qiáng)、維護(hù)簡(jiǎn)單等優(yōu)點(diǎn)[10]。根據(jù)機(jī)器人全位移實(shí)現(xiàn)的麥克納姆輪運(yùn)動(dòng)分析,選擇四輪驅(qū)動(dòng)式結(jié)構(gòu)作為底盤(pán)結(jié)構(gòu)設(shè)計(jì)方案。為確保底盤(pán)結(jié)構(gòu)具有充足的魯棒性、穩(wěn)定性,適應(yīng)多種復(fù)雜路況環(huán)境的任務(wù)要求,結(jié)合實(shí)際成本、材料強(qiáng)度以及設(shè)計(jì)水平和實(shí)現(xiàn)難度等因素,平臺(tái)減震結(jié)構(gòu)選擇四輪獨(dú)立雙叉臂式懸掛結(jié)構(gòu)(如圖3)。
圖3 獨(dú)立雙叉臂式懸掛結(jié)構(gòu)設(shè)計(jì)圖
移動(dòng)式云臺(tái)的機(jī)械結(jié)構(gòu)角度可隨控制信號(hào)作用進(jìn)行調(diào)整[11],為提高平臺(tái)視覺(jué)系統(tǒng)在立體空間內(nèi)的檢測(cè)范圍與精度效果,選取雙軸移動(dòng)式云臺(tái)結(jié)構(gòu)作為設(shè)計(jì)方案,雙軸為Pitch(俯仰)軸和Yaw(旋轉(zhuǎn))軸。
雙軸云臺(tái)的機(jī)械結(jié)構(gòu)主要由兩個(gè)云臺(tái)電機(jī)和電機(jī)支撐架構(gòu)成。一個(gè)電機(jī)負(fù)責(zé)控制云臺(tái)整體結(jié)構(gòu)在Yaw 軸方向的轉(zhuǎn)動(dòng),角度范圍0~360°;另一個(gè)電機(jī)負(fù)責(zé)控制載有視覺(jué)系統(tǒng)設(shè)備的云臺(tái)頂部結(jié)構(gòu)在Pitch軸方向的轉(zhuǎn)動(dòng),轉(zhuǎn)動(dòng)范圍-75°~75°。
云臺(tái)結(jié)構(gòu)中電機(jī)支撐架的設(shè)計(jì)除了要考慮重量、強(qiáng)度等因素外,還必須保證云臺(tái)運(yùn)動(dòng)的靈活性。本設(shè)計(jì)采取簡(jiǎn)化的U 型支架組合形式并在連接處采用榫卯結(jié)構(gòu)(如圖4)。這種設(shè)計(jì)保證了整體結(jié)構(gòu)牢固,使云臺(tái)整體能夠承受較大的載荷。云臺(tái)材料選用強(qiáng)度較大且質(zhì)量較輕的碳纖維板材,減輕整體結(jié)構(gòu)的重量,提高系統(tǒng)的可操控性,進(jìn)而緩解云臺(tái)控制系統(tǒng)的操控壓力。
圖4 云臺(tái)機(jī)械結(jié)構(gòu)設(shè)計(jì)圖
控制系統(tǒng)硬件(如圖5)主要由STM32F405 核心板,搭載英偉達(dá)Jetson Nano 視覺(jué)系統(tǒng)組成。
圖5 系統(tǒng)硬件構(gòu)成圖
圍繞STM32F405 最小系統(tǒng)電路,依據(jù)機(jī)器人任務(wù)要求設(shè)計(jì)功能電路。主要包括:數(shù)字/模擬電路、外設(shè)功能電路、接口保護(hù)電路、電源轉(zhuǎn)化電路,電源防反接與短路電路等。
1)電源模塊設(shè)計(jì)
硬件系統(tǒng)采用24 V 鋰電池作為電源供電,經(jīng)LC 濾波后,進(jìn)行并聯(lián)分流處理,為底盤(pán)電機(jī)、云臺(tái)電機(jī)及視覺(jué)模塊等部分提供電流。24 V-5 V(DC-DC)電路選擇MP2482 電源芯片,實(shí)現(xiàn)24 V 到5 V 的電源變換。3.3 V 輸出電源為所有電源電路中對(duì)信號(hào)波紋質(zhì)量要求最高的部分。為保證硬件系統(tǒng)內(nèi)所有3.3 V 芯片高效、穩(wěn)定地工作,該設(shè)計(jì)采用電路信號(hào)波紋穩(wěn)定、結(jié)構(gòu)相對(duì)簡(jiǎn)單的LDO 電源變換芯片MIC3975 實(shí)現(xiàn)5 V-3.3 V(LDO)轉(zhuǎn)換電路。
2)保護(hù)電路設(shè)計(jì)
直流電源輸入通常會(huì)給端口帶來(lái)瞬時(shí)脈沖噪聲。為了消除噪聲對(duì)器件造成的損害,設(shè)計(jì)TVS 保護(hù)電路將瞬時(shí)電流從敏感器件引到地信號(hào)中。
系統(tǒng)存在模電電源與數(shù)字電源兩種電源分量,數(shù)字電源及信號(hào)中含有的高頻分量會(huì)對(duì)模擬信號(hào)產(chǎn)生干擾、損害等不利影響。該設(shè)計(jì)使用LC 低通濾波器,有效地將模電電源與數(shù)字電源進(jìn)行分離,保證系統(tǒng)數(shù)字電源與模擬電源之間互不干擾。
3)外設(shè)電路設(shè)計(jì)
外設(shè)電路設(shè)計(jì)主要包括:ICM20948 傳感器電路(圖6),CAN 通信差分電路(圖7),USART 接口電路,DEBUS 協(xié)議接收電路、PWM 控制電路、蜂鳴器報(bào)警電路,SWD 調(diào)試電路等。
圖6 ICM20948電路原理圖
圖7 CAN通信差分電路
4)PCB 設(shè)計(jì)
在Altium Designer 開(kāi)發(fā)環(huán)境下依據(jù)電路原理圖進(jìn)行4 層PCB 設(shè)計(jì)工作。PCB 規(guī)則設(shè)置是進(jìn)行PCB設(shè)計(jì)、加工制造以及后期調(diào)試的關(guān)鍵[12]。PCB 規(guī)則設(shè)置內(nèi)容主要有走線寬度、走線間距、器件間距、焊盤(pán)過(guò)孔參數(shù)、PCB 層疊設(shè)置以及正片或負(fù)片的鋪銅操作設(shè)置等[13]。
該設(shè)計(jì)PCB 功能偏向功率型電路板,強(qiáng)壓和強(qiáng)電流信號(hào)對(duì)于硬件系統(tǒng)內(nèi)的控制弱電信號(hào)有較大干擾作用,不利于整板功能的穩(wěn)定性,因此對(duì)于電源部分采取了銅皮分割抗干擾措施。硬件成板如圖8所示。
圖8 硬件成板
機(jī)器人搭載的視覺(jué)系統(tǒng)為:Jetson Nano,它是由英偉達(dá)公司開(kāi)發(fā)的新一代AI-GPU 嵌入式開(kāi)發(fā)平臺(tái)[14],可運(yùn)行Ubuntu18.04LTS 系統(tǒng),同時(shí)向開(kāi)發(fā)者提供GPIO、USART 等外設(shè)接口函數(shù),適合配合硬件開(kāi)展圖形處理,識(shí)別及追蹤等算法研究。平臺(tái)以串口協(xié)議的方式實(shí)現(xiàn)核心板與視覺(jué)系統(tǒng)通信。首先配置STM32F405 的USART3 為串口空閑中斷加DMA收發(fā)模式,波特率為115 200,然后在Jetson Nano 上啟用串口THS1,編寫(xiě)串口收發(fā)代碼,完成兩模塊間的通信。
軟件控制系統(tǒng)的設(shè)計(jì)主要包括機(jī)器人主程序邏輯框架設(shè)計(jì)、API 函數(shù)實(shí)現(xiàn)及電機(jī)控制算法的編寫(xiě)。
主程序邏輯框架的設(shè)計(jì),即對(duì)機(jī)器人控制流程與各個(gè)任務(wù)狀態(tài)優(yōu)先級(jí)的梳理,避免因不同任務(wù)執(zhí)行順序以及執(zhí)行時(shí)間沖突造成的程序漏洞、卡死等問(wèn)題[15]。最高級(jí)優(yōu)先任務(wù)為運(yùn)行在STM32F405 基本定時(shí)器6 中斷服務(wù)函數(shù)中的云臺(tái)電機(jī)控制、底盤(pán)電機(jī)控制、無(wú)線操控三組任務(wù);高優(yōu)先級(jí)任務(wù)為CAN總線接收發(fā)送任務(wù)、USART1 與視覺(jué)系統(tǒng)的通信任務(wù)以及其他外設(shè)數(shù)據(jù)接收處理任務(wù);低優(yōu)先級(jí)任務(wù)為各功能模塊監(jiān)視任務(wù)、蜂鳴器警報(bào)任務(wù)等。模塊化API 函數(shù)及功能簡(jiǎn)介如圖9 所示。
圖9 API函數(shù)與功能介紹
1)云臺(tái)電機(jī)控制
云臺(tái)電機(jī)算法控制流程如圖10 所示。云臺(tái)參數(shù)初始化完成后,機(jī)器人等待遙控器信號(hào),此時(shí)云臺(tái)為Relax 模式。當(dāng)遙控器發(fā)送控制指令后,云臺(tái)進(jìn)行位置回中,回中過(guò)程以云臺(tái)電機(jī)作為反饋值。當(dāng)云臺(tái)回到中間位置,云臺(tái)反饋切換到ICM20948 九軸傳感器處理后的角度值,進(jìn)入串級(jí)PID 控制狀態(tài)。
圖10 云臺(tái)電機(jī)算法控制流程圖
此控制狀態(tài)下,云臺(tái)Pitch 軸及Yaw 軸電機(jī)控制的給定值均來(lái)自遙控器。外環(huán)反饋采用ICM20948九軸傳感器輸出的DMP 數(shù)據(jù),內(nèi)環(huán)反饋采用ICM20948陀螺儀加速度計(jì)測(cè)得的角速度值。當(dāng)系統(tǒng)獲取到兩個(gè)反饋值后,進(jìn)入循環(huán)串級(jí)PID 控制(如圖11)。
圖11 云臺(tái)電機(jī)控制邏輯圖
2)底盤(pán)電機(jī)控制
底盤(pán)電機(jī)控制算法完成初始化后,機(jī)器人底盤(pán)系統(tǒng)將等待遙控器控制指令。若無(wú)控制指令,底盤(pán)維持在靜止?fàn)顟B(tài);若接收到移動(dòng)指令,則根據(jù)麥克納姆輪底盤(pán)逆運(yùn)動(dòng)學(xué)模型[16],如公式(1)所示將接收到的遙控器指令進(jìn)行重構(gòu)。全位移功能的實(shí)現(xiàn)需要對(duì)電機(jī)進(jìn)行單獨(dú)的轉(zhuǎn)向及速度控制,重構(gòu)之后,4 條新指令對(duì)應(yīng)4 個(gè)底盤(pán)電機(jī)的設(shè)定值,進(jìn)而形成以速度環(huán)作為外環(huán),角度環(huán)作為內(nèi)環(huán)的串級(jí)PID 控制器。4組串級(jí)PID 的輸出量由STM32F405 CAN2 總線下達(dá)到對(duì)應(yīng)的底盤(pán)電機(jī)中,實(shí)現(xiàn)底盤(pán)控制任務(wù)。
表示X軸運(yùn)動(dòng)速度,即左右方向,定義向右為正;表示Y軸運(yùn)動(dòng)速度,即前后方向,定義向前為正;w表示軸自轉(zhuǎn)的角速度,定義逆時(shí)針為正(通常w=0)。
將機(jī)械零件劃分為實(shí)驗(yàn)室可制作零件和工廠定制零件。實(shí)驗(yàn)室可制作的零件主要包含云臺(tái)U 型架、底盤(pán)骨架、左右擋板、受力較少的結(jié)構(gòu)件以及功能模塊的保護(hù)殼體。云臺(tái)U 型架與機(jī)器人的左右擋板的材料分別為碳纖維板和玻璃纖維板,通過(guò)SolidWorks 導(dǎo)出零件的加工圖紙,經(jīng)專(zhuān)業(yè)軟件轉(zhuǎn)化成G 代碼導(dǎo)入實(shí)驗(yàn)室雙軸銑床完成加工。底盤(pán)骨架由標(biāo)準(zhǔn)鋁方管依據(jù)設(shè)計(jì)圖紙,打下定位孔,再經(jīng)螺絲螺帽的鎖固后構(gòu)成。受力較少的結(jié)構(gòu)件以及功能模塊的保護(hù)殼體,將3D 模型圖紙導(dǎo)入切片軟件后,由3D 打印機(jī)打印完成。
定制零件主要有云臺(tái)與底盤(pán)電機(jī)的聯(lián)軸器和固定件、懸掛系統(tǒng)的上下“A”型擺臂以及受力情況較大的支撐件等,這些零件需將加工圖紙與物料清單交由工廠加工完成。
所有零件與元器件準(zhǔn)備完成后,依據(jù)機(jī)械系統(tǒng)的裝配流程進(jìn)行組裝,進(jìn)行軟硬件聯(lián)合調(diào)試,最終完成機(jī)器人平臺(tái)的構(gòu)建(如圖12)。
圖12 全位移視覺(jué)機(jī)器人實(shí)訓(xùn)平臺(tái)
該文針對(duì)“智能機(jī)器人實(shí)訓(xùn)”課程需求,設(shè)計(jì)開(kāi)發(fā)了一種全位移視覺(jué)機(jī)器人實(shí)訓(xùn)平臺(tái),包括機(jī)械設(shè)計(jì)、硬件構(gòu)建及軟件實(shí)現(xiàn)三大部分,涉及機(jī)械、通信、計(jì)算機(jī)、控制、傳感等多學(xué)科交叉內(nèi)容。平臺(tái)涵蓋機(jī)械設(shè)計(jì)、器件選擇、電路設(shè)計(jì)、傳感技術(shù)、控制技術(shù)等多方面知識(shí)點(diǎn),學(xué)生可以通過(guò)實(shí)訓(xùn)內(nèi)容系統(tǒng)地學(xué)習(xí)機(jī)器人結(jié)構(gòu)、電源供給、電機(jī)驅(qū)動(dòng)、傳感器技術(shù)及典型控制算法等知識(shí),從而為后續(xù)解決復(fù)雜工程實(shí)際問(wèn)題打下堅(jiān)實(shí)的實(shí)踐基礎(chǔ)。平臺(tái)擴(kuò)展性強(qiáng),通過(guò)豐富的軟、硬件接口,可靈活增加各種傳感器或執(zhí)行器,不僅滿(mǎn)足智能機(jī)器人實(shí)訓(xùn)教學(xué)需求,也可以用于機(jī)械結(jié)構(gòu)、系統(tǒng)建模、控制理論、圖像處理、人工智能等課程的教學(xué)研究,并為學(xué)生和教師提供機(jī)器人大賽和科研創(chuàng)新平臺(tái)。