張遠平
摘 要 智能制造業(yè)的發(fā)展受到越來越廣泛的關注,作為智能制造業(yè)核心的工業(yè)機器人,它的發(fā)達程度不僅可以決定當前制造業(yè)的水平,更是可以預見未來智能制造業(yè)的發(fā)展。因此,本文著眼于社會熱點,提出一種基于AM3358的機器人控制系統(tǒng)設計,該控制系統(tǒng)相比于傳統(tǒng)的控制系統(tǒng),具有控制精度高、可拓展性強、性能優(yōu)良等特點。
【關鍵詞】工業(yè)機器人 AM3358 機器人控制系統(tǒng)
1 工業(yè)機器人發(fā)展歷史及現(xiàn)狀
從機器人的發(fā)展歷史來看,機器人已經(jīng)經(jīng)過了兩代的發(fā)展。第一代機器人通過讀取文件或者示教的方式工作;第二代機器人在此基礎上增加了傳感器來達到對工作環(huán)境的感知,它能夠在工作的時候獲得工作環(huán)境和作業(yè)對象的部分相關信息,進行一定的處理之后,引導機器人進行作業(yè)。第二代機器人已進入了實用化,在工業(yè)生產(chǎn)中得到廣泛應用。我國目前使用的機器人大部分屬于第二代機器人。
2 系統(tǒng)設計流程
系統(tǒng)設計總共分為四個部分,分別是:原理圖的設計、電路板的繪制、底層驅(qū)動的編寫、應用程序的編寫。
3 系統(tǒng)硬件設計
整個系統(tǒng)基于ARMA8進行開發(fā),AM3358核心部分電路設計參考TI公司提供的評估板。
3.1 電源電路設計
電源電路部分參考tps65217c以及AM3358的數(shù)據(jù)手冊設計而成,充分考慮了電源部分的濾波和高頻干擾的處理。除此之外,保險管也能有效的防止因為各種原因造成的電流過大而會引起的安全隱患。供電方面,可以采用USB供電和交流供電兩種方式。AM3358的電源部分,爭取每個電源引腳都有一個去耦電容,保證電源干凈的同時濾除雜波。不同的模塊需要不同的電壓,這一點TPS65217C可以完美的匹配。
3.2 時鐘及復位電路設計
晶振方面采用24MHz的無源晶振,實時時鐘(RTC)采用32.768KHz的無源晶振。如圖1所示。
復位電路我們采用如下圖2所示電路圖,除了可以軟復位,我們也可以按下SW1開關進行復位。
3.3 DDR3電路設計
由于DDR3是一個高速設備,所以我們更要保證其每個電源腳都要有一個電容,注意其參考電壓是由AM3358引過來的。由于此處只有一個DDR3,所以不需要考慮增加上拉電阻來增強其驅(qū)動能力。
3.4 PCB電路板的設計
整個系統(tǒng)由于AM3358和DDR3的頻率較高,并且封裝都是BGA,為了減少高速線之間的串擾和板子的穩(wěn)定性、增加一次制版的成功率,因此采用8層線路板布局。電路板采用模塊化的布局方式,減少系統(tǒng)的干擾,同時方便PCB板的繪制。
4 系統(tǒng)軟件設計
系統(tǒng)首先進行U-boot燒錄,在此基礎上進行開發(fā)。在整個開發(fā)過程中,采用TI公司提供的CCS V6.0作為編程工具。
4.1 串口輸入輸出
串口功能的實現(xiàn)非常重要,在移植U-BOOT或者調(diào)試過程當中我們可以通過查看串口的打印信息來判斷程序運行的狀態(tài)。串口調(diào)用AM335X_StarterWare內(nèi)部的函數(shù),對串口進行操作,能成功打印出字符串或者能輸入字符則說明調(diào)試成功。
4.2 示教流程
當通過示教器進行示教的時候,示教器通過串口把數(shù)據(jù)發(fā)送給AM3358,AM3358處理后發(fā)送給機械臂,于是機械臂便朝著我們指定的方向移動,在此過程中,機器人控制系統(tǒng)對機械臂的位置進行采樣并保存在板上的eMMC中。在示教完成之后,控制器控制機械臂回到原點,AM3358開始讀取之前存儲的數(shù)據(jù)并將數(shù)據(jù)發(fā)送給機械臂控制器,完成示教。
4.3 插補算法
模擬信號和數(shù)字信號最大的區(qū)別就是模擬信號是連續(xù)的而數(shù)字信號是離散的。機械臂的運動可以看作是連續(xù)的,但是AM3358對機械臂位置的采樣卻是離散的,因此,當機器人重現(xiàn)我們示教動作的時候,會因為之前采樣的密集程度而呈現(xiàn)出不同程度的抖動,由此可能造成機械損壞或者次品率增加等一系列問題。為了解決這一問題,采用到插補算法。所謂插補,通俗的說,就是在機器人在重現(xiàn)我們教導的動作的過程當中,對讀取到的兩個點進行計算,使得原來只有兩個點的路徑增加更多的點。當這些點的數(shù)量達到一定數(shù)量,機器人再現(xiàn)我們教授的動作會變得很平滑,趨于一條直線。
5 系統(tǒng)測試
系統(tǒng)設計制作完畢后,進行系統(tǒng)測試,主要分為硬件測試和軟件測試。
5.1 硬件測試
印制電路板制作完成、焊接完成之后,首先嚴格按照原理圖檢查是否有短路、虛焊等情況。確定無誤后上電。
電源:系統(tǒng)上電后,檢測輸入以及各個輸出是否正常合理。
晶振:上電后用示波器探頭打晶振的引腳查看信號,確保晶振起震。
5.2 軟件調(diào)試
JTAG:使用仿真器連接電腦和目標版,確保JTAG口能正常工作(通過JTAG口可以查看內(nèi)部寄存器,是其他軟件硬件調(diào)試的基礎)。
UART:測試串口能否正常的輸入輸出數(shù)據(jù),此串口非常重要,之后測試U-BOOT以及其他軟件的時候可以查看打印信息以確定程序的運行狀態(tài)以及實現(xiàn)簡單的人機交互。
eMMC:eMMC是存儲u-boot和應用程序以及相關數(shù)據(jù)的地方。確保eMMC能正確的讀寫。
IO口:調(diào)試過程中最直接,最基本的體現(xiàn)是在IO,通過控制IO的高低電平或者占空比來達到驅(qū)動LED或者電機的目的。也是通過IO高低電平的輸入來進行示教的過程。
6 總結(jié)
在工業(yè)4.0和物聯(lián)網(wǎng)的新興概念的沖擊下,此套系統(tǒng)雖然只是簡單的完成了示教機器人控制系統(tǒng)的功能,實現(xiàn)了最簡單的功能和原理。但是所采用的AM3358多達4組*31個GPIO,板載的256M DDR3和eMMC也提供更強更快的程序處理能力和數(shù)據(jù)存儲能力。此外,AM3358還具有2個千兆工業(yè)以太網(wǎng)接口、6個串口、2個I2C接口以及一個SPI接口,在今后的開發(fā)中可拓展性極強。
參考文獻
[1]克來格.機器人學導論(原書第3版)[M].北京:機械工業(yè)出版社,2006:5-7.
[2]郭彤穎.機器人學及其智能控制[M].北京:人民郵電出版社,2014:101-108.
[3]顧海洲.PCB電磁兼容技術--設計實踐[M].北京:清華大學出版社,2004(29).
作者單位
成都理工大學信息科學與技術學院 四川省成都市 610059