肖永強 方華杰 方 明
(埃夫特智能裝備股份有限公司,安徽 蕪湖 241000)
近年來,隨著機器人技術的不斷發(fā)展,不同類型、不同功能的工業(yè)機器人相繼誕生[1]。機器人控制器是影響機器人性能的關鍵部分之一,在很大程度上會對機器人的發(fā)展造成影響[2]。
機器人控制器是根據(jù)指令以及傳感信息控制機器人,以完成作業(yè)任務的裝置[3]。目前,隨著人工智能、計算機科學、傳感器技術以及其他學科的進步,打磨機器人的研究水平也逐漸提高,與此同時,也對控制器的性能提出了更高的要求。為滿足打磨機器人對控制器性能的要求,該文設計了新型機器人控制器,該機器人控制器結構簡單、運行可靠。
控制器與本體連接,如圖1所示。機器人控制器控制6個運動軸與相關I/O端口的輸入、輸出,控制器通過CAN和Ethercat總線與外部進行通信,利用計算機進行調(diào)試。具體需求包括與6路脈沖和1路以太網(wǎng)伺服接口、40路數(shù)字輸出與輸入端口和4路AD和DA轉(zhuǎn)換接口、1個485總線接口、1路CAN總線進行通信以及對1路232總線進行調(diào)試5個部分[4-5]。
圖1中,機器人控制器與計算機通過232總線進行通信,與示教編程器通過CAN進行通信,與伺服控制器通過485總線的脈沖接口進行通信,與機器人本體通過I/O接口進行通信。經(jīng)過調(diào)試,機器人執(zhí)行程序,通過末端執(zhí)行器控制外部目標,從而通過控制器對機器人本體進行操控。
針對不同應用場景,控制系統(tǒng)采用嵌入式硬件[6-7]。嵌入式系統(tǒng)采用ARM Cortex-A8 AM3517處理器,具有以下特點:1) 整型和浮點運算機制,適用于機器人位姿解算。2) 運行速度達1 GHz,功耗不到300 mW,執(zhí)行程序速度為2 000 DMIPS,保證處理器發(fā)熱小,可以長時間工作,滿足機器人對控制算法計算能力的要求。3) 多類型外擴接口,例如SPI、MMC、USB、UART以及GPI/O等,可以實現(xiàn)機器人控制器的各種設計功能。
控制器分為示教盒和主控制器2個部分,如圖2所示。示教盒通過CAN總線與主控制器的以太網(wǎng)收發(fā)器進行通信,控制器內(nèi)部通過高速總線控制器(FPGA)連接控制器內(nèi)部高速總線,并與高性能FPGA(高速以太網(wǎng)接口)、專用CAN總線接口、高性能FPGA(各種協(xié)議接口)和高性能FPGA(開關量/模擬量接口)進行連接,通過相關連接設備與機器人本體進行連接通信,達到通過機器人控制器對機器人本體進行控制的目的。
圖2 機器人控制原理圖
示教器與主控制器采用ARM Cotex A8 3517處理器和Linux操作系統(tǒng),可以滿足示教器對實時性的要求[8-9]。設計系統(tǒng)時,根據(jù)Linux常用版本的運行要求,采用1 GB的nand flash儲存程序。程序包括啟動程序uboot、內(nèi)核linux、系統(tǒng)文件和qt應用程序等相關數(shù)據(jù)文件。內(nèi)存采用2 GB的DDR2內(nèi)存。為避免不會因某部分程序原因而導致按鍵出現(xiàn)不能用的情況,輸入方式采用機械鍵盤和觸屏輸入,機械鍵盤具有可靠性高、實用性強的特點。機械鍵盤接口采用STM32單片機作為外擴芯片,通過I2C總線與核心芯片進行信息交互,能減輕核心芯片的接口資源和任務壓力。觸屏輸入可以方便用戶直接輸入信息,具有較強的直觀性。示教盒與主控制器通過CAN總線進行通信。顯示軟件界面采用QT技術,在ARM外接接口有LCD(Liquid Crystal Display,液晶顯示屏)顯示接口。具體系統(tǒng)硬件結構如圖3所示。
圖3 示教盒核心板配置圖
主控制器采用ARM+FPGA接口,ARM負責運算數(shù)據(jù)和處理信息,F(xiàn)PGA連接相關I/O和伺服接口[10]。示教盒與主控制器通過CAN進行連接,為便于調(diào)試,主控制器通過串口與計算機進行連接。機器人控制器通過脈沖接口與伺服進行連接,脈沖接口具有實時性強的優(yōu)點,是主流的伺服驅(qū)動器接口,通用性較強;缺點是接線多,不便于管理,而且它是單通道通信,無法直接獲得驅(qū)動器的速度和力矩等信息。因此,控制器設有485總線伺服通信,可以外接伺服總線接口,其缺點是速度慢、延時性強。為了便于擴展,系統(tǒng)采用AM3517以太網(wǎng)接口實現(xiàn)擴展,達到總線型控制的要求。
最小系統(tǒng)配置與示教盒的核心板一樣,采取相同的配置。根據(jù)這個需求建立主控制器配置圖,如圖4所示,包括2 GB內(nèi)存、4個通信串口、1個LCD接口、2個網(wǎng)口通信、2個CAN通信口、40路輸入、40路輸出、4路AD/DA處理和8個伺服脈沖軸接口等。
圖4 控制器核心板接口資源配置圖
PCB經(jīng)設計和焊接后,分別有模式轉(zhuǎn)換接口(I/O)、DDR2內(nèi)存、AM3517、nand flash、復位按鍵、STM32的JTAG口、3.3 V電源測試口、CAM接口(預留)、STM32外接鍵盤接口、蜂鳴器接口、SD啟動卡槽接口、STM32、TTL型LCD接口、LVDS類型LCD接口、串口調(diào)試口和停止啟動接口等。
控制器硬件電路分為核心板、接口板和電源板3個部分。該控制板采用臥式一體化結構,將芯片焊接在PCB板,整體實物圖如圖5所示。
核心板插在接口板背面,具有程序控制、指令發(fā)出和指令接受3個作用。核心板的2個模塊分別為AM3517和FPGA。其中,AM3517是程序處理中樞模塊,具有對大量I/O接口進行一定處理,再通過總線將I/O信號傳輸?shù)紽PGA模塊的功能,滿足機器人對大量I/O口的控制需求。同時,F(xiàn)PGA也是多軸控制器,具有良好的伺服電機控制效果。通過FPGA的PWM功能模塊實現(xiàn)控制AD和DA的功能,滿足機器人外圍接口的多樣性要求,具有較高的可靠性。利用VHDL語言和Quartus軟件實現(xiàn)FPGA芯片編程和下載的功能,F(xiàn)GPA為Altera Corporation公司的EP2C8F256C6型號。
通過電源轉(zhuǎn)換芯片將電源轉(zhuǎn)換成所需要的電壓,包括3.3 V、5.0 V以及15.0 V等,可以為控制器芯片供電,并輸出穩(wěn)定的電流。電源板通過雙倍厚度銅箔來增強其電流和散熱能力。電源板電路部分示意圖如圖6所示。
由圖6可知,電源板采用24 V電源輸入,通過并聯(lián)3個電容器(C223、C235和C237)來改善電壓質(zhì)量。經(jīng)過U24轉(zhuǎn)換后,通過串聯(lián)電感(L9、L8)實現(xiàn)平滑電流的功能,最后經(jīng)VCC_3V3接口輸出轉(zhuǎn)換后的電源。
圖6 電源板電路部分示意圖(3.3 V)
接口板有連接核心板與電源板、隔離和放大控制接收信號以及提供外部部件接插口3個功能。為達到上述目的,將接口板外部接插口分成電源與總線通信接口、伺服脈沖接口、DA輸出、Output輸出、Input輸入以及AD輸入6個部分。
電源接口和總線通信接口的詳情如下:藍色的接口為接入24 V外接電源,其他9針DB口為串口、232總線、485總線以及2路CAN總線。在機器人接線中,串口起調(diào)試作用,232總線、485總線預留了額外通信,例如485總線通信的伺服等。在2路CAN中,1路接示教器,1路預留。
伺服脈沖接口包括8路伺服軸輸出,能控制8軸機器人,根據(jù)打磨機器人的需求,6軸即可滿足要求。伺服接口分為脈沖接口和總線接口,脈沖接口用來接收控制器發(fā)來的脈沖信號,實現(xiàn)對伺服驅(qū)動的位置控制,其優(yōu)點是速度快,缺點是沒有反饋,只能形成開環(huán)回路??偩€接口是伺服驅(qū)動器用來接收控制器總線信號的接口,接收信號后控制電機進行運動,其優(yōu)點是有位置反饋,可以形成閉環(huán)回路,缺點是總線通信速度慢,無法達到機器人控制的要求。該部分設計為脈沖接口,接口定義如圖7所示。
在圖7中,脈沖接口有5路輸出信號和5路輸入信號。其中,輸出信號分別為1、9、2、10和7,輸入信號分別為3、11、4、5和6。輸入的脈沖信號A_P±和方向信號A_D±采用差分形式,A_EN+代表使能信號,接到伺服的抱閘端。
圖7 脈沖口定義圖
DA輸出有4路DA輸出,接口為9針DB母口。其中,BX_BOUT為模擬信號輸出,輸出范圍為-12 V~+12 V。DA采用型號為AD7243的轉(zhuǎn)換芯片,通過AM3517SPI總線的4個通道控制4片AD7243。
Output輸出有3個DB25的母口接口,通過電平的高低輸出控制機器人相關的繼電器和指示燈,設計有40路輸出OUT0~OUT39。由于機器人有大量的傳感器和控制機構,因此需要大量的I/O口,采用額外增加相應的FPGA控制模塊的方式來擴展I/O。
Input輸入有3個DB25的公共接口,通過電平的高低輸入返回機器人相關的傳感器狀態(tài)。每個傳感器都是1個開關量,通過接入控制器的I/O來反饋當前機器人的運行狀態(tài)。
AD輸入有4路AD輸出,接口為9針DB公口。其中,ADCIPUT0為模擬信號輸入,輸入范圍為-12 V~+12 V。內(nèi)部AD采用TLC2574芯片,該芯片具有多通道功能,1款芯片有4個通道,彌補了AM3517第二路SPI總線通道不足的問題。
在上述接口的定義中,除了總線接口以外,其他I/O、伺服、AD和DA接口都是高于FPGA的輸出輸入電平,中間必須采用隔離電路。針對高速電路隔離采用6N137芯片組成的隔離電路,該光耦是一款用于單通道的高速光耦合器,轉(zhuǎn)換速率高達10 Mbit/s。
針對低速電路隔離采用PS2805的隔離電路,該光耦是一款用于四通道的光耦合器,可以根據(jù)控制其引腳OUT_COMMON的高低電平來控制其輸出端為高電平有效或者低電平有效,適用于I/O的電平轉(zhuǎn)換和驅(qū)動。
打磨機器人控制器作為機器人控制的核心部分,其性能的好壞很大程度決定了該機器人的特性和功能。以打磨機器人為研究對象,對嵌入式處理器、控制器和核心板電路進行設計。介紹了打磨機器人控制器的功能需求,分析了ARM Cortex-A8 AM3517處理器的特點,對比了示教器輸入方式的優(yōu)缺點,闡述了核心板電路設計的設計流程,列舉了控制器硬件結構原理圖和相應的外部接線,并設計控制器電路布局與端口布局。該文設計的機器人控制器能夠滿足打磨機器人的使用要求,具有硬件結構簡單、核心部件易更換、普適性和經(jīng)濟性較強的特點。