鄒海鑫,鄒湘軍
(1.深圳信息職業(yè)技術學院交通與環(huán)境學院,廣東 深圳 518172;2.華南農業(yè)大學工程學院,廣東 廣州 510640)
基于PC+DSP+FPGA的機器人控制系統(tǒng)開發(fā)
鄒海鑫1,2,鄒湘軍2
(1.深圳信息職業(yè)技術學院交通與環(huán)境學院,廣東 深圳 518172;2.華南農業(yè)大學工程學院,廣東 廣州 510640)
控制系統(tǒng)是相當于機器人的大腦,是根據外部傳感器和內部指令等信息控制機器人動作的裝置,是不可或缺的重要組成部分。本文在4自由度機器人樣機的基礎上,提出應用基于PC + DSP + FPGA的控制系統(tǒng),完成硬件和軟件的開發(fā),實現(xiàn)機器人的運動控制系統(tǒng)。
PC+DSP+FPGA;機器人;控制系統(tǒng)
從硬件上來看,控制系統(tǒng)結構形式主要如表1所示[1-6]
表1 各控制結構特點Tab.1 The features of different control system
雖然多DSP系統(tǒng)有很多優(yōu)點,但舍棄PC機的豐富軟硬件資源,使其存在局限性。如當需要采集和存儲大量信息的時候,PC機的硬盤和數(shù)據庫等能提供足夠空間,為產品信息化管理提供所有數(shù)據,因此,PC機將在機器人的開發(fā)中成為必不可少的重要組成部分。另外,采用基于DSP與FPGA的運動控制結構方式能夠實時完成復雜的軌跡運算,利用DSP的高速數(shù)字信號處理功能和FPGA功耗低、主頻高的優(yōu)點,能充分顯示該運動控制器的優(yōu)點。
圖1 自主開發(fā)的機器人樣機Fig.1 The Prototype of the robot
綜合比較并考慮到開發(fā)周期和成本,本文采用基于PC為上位機、DSP運動控制和FPGA外設控制模式實現(xiàn)機器人的控制系統(tǒng)。所述4自由度機器人樣機如圖1所示,包括底座,大臂,小臂和末端執(zhí)行器4個關節(jié)。
1.1 DSP模塊
DSP模塊總體結構如圖2,選用的是TI公司的TMS320C6713型芯片,該芯片是具有高性能32位高速浮點型的DSP。
DSP模塊主要的功能是運動控制計算,完成與上位機的通訊和對FPGA控制信號的發(fā)送。其中Power電路用于提供DSP所需的電源,Reset電路用于復位,SDRAM(容量為4M*32bit)電路用于存儲動態(tài)數(shù)據,F(xiàn)LASH(2M*8bit)電路用于保存永久程序,JTAG電路用于仿真器仿真 調試,接口電路用于與FPGA,PC上位機等的連接。
圖2 DSP總體模塊總體結構圖Fig.2 Structure Chart of the DSP module
1.2 FPGA模塊
FPGA模塊芯片選用Pro ASIC3 Flash的家族成員A3P060和A3P400芯片。
該FPGA模塊總體設計如圖3所示。
圖3 FPGA模塊總體結構Fig.3 Structure Chart of the FGPA module
FPGA模塊的主要功能是高速傳輸數(shù)據,控制伺服控制器和各個外圍的輸入輸出電路,并且與DSP和PC進行通訊。芯片在整個硬件系統(tǒng)設計完畢后還可以通過JTAG接口對硬件進行重配置,增加了系統(tǒng)設計的靈活性。其中,A3P060的功能主要是管理輸入輸出口和485通訊接口,而A3P400的功能主要是負責發(fā)送4路控制信號到4臺伺服驅動上,并且產生DSP的外部中斷信號。
圖4 輸入輸出電路圖Fig.4 The circuit diagram of output and input
1.3 其他模塊
輸入輸出模塊:為減小外部噪聲的干擾,采用光電隔離電路的方法。輸入的信號主要包括8路限位信號,伺服警報信號等。輸出信號主要有伺服使能信號等。
輸出控制脈沖電路設計:輸出控制脈沖信號是伺服電機的4路脈沖控制輸出信號。由于本控制系統(tǒng)使用的是位置控制模式,采用“方向+脈沖”的指令模式。輸出控制信號由FPGA輸出,由于電機接收的脈沖和方向需要差分信號,因此需要經過差分處理。本文應用差分驅動器AM26LS31芯片實現(xiàn)信號差分處理后,再輸入到伺服驅動器。如圖5所示,F(xiàn)PGA輸出控制信號,經AM26LS31芯片差分處理后輸出到電機的伺服驅動中。
反饋脈沖處理電路設計:伺服電機編碼器信號直接接入伺服驅動器里,控制器可以通過三對正負差分信號來獲取電機的轉向以及脈沖反饋信息,分別是A+和A-,B+和B-,Z+和Z-;其中A+,A-,B+和B-信號可以給出轉向等信息,而Z+和Z-信號可以給出是否轉過一圈的信息,也就是每轉過一圈給出一個Z的差分信號。利用AM26LS32芯片,把上述三對差分信 號轉化為單路信號A、B、Z輸出,然后讓FPGA讀取,獲得反饋信息,其電路如圖6所示。
通訊電路設計:上位PC機與A3P060的通訊是通過485通訊模塊來完成,電路設計如圖7所示,兩者間形成兩線制的半雙工通訊網絡。
圖5 機器人四路伺服電機控制電路Fig.5 The servo control of the 4 DOF robot
圖6 差分信號控制電路Fig.6 The differential signal of the control circuit
圖7 485通訊模塊電路圖Fig.7 The circuit diagram of the 485 communication module
除了上述模塊,本系統(tǒng)還包括了上位PC機模塊和雙目視覺模塊,其中PC機模塊的主要功能是提供人機交互界面、進行圖像處理、對DSP和FPGA仿真調試等功能;雙目視覺模塊主要用于環(huán)境的圖像信息獲取等。
根據機器人硬件系統(tǒng)的特點,其軟件系統(tǒng)總體結構設計如圖8所示。軟件總體結構分為三層:PC層,DSP層和FPGA層。PC層是最高級的層,主要的功能包括提供人機界面進行接收用戶命令,通訊;完成視覺系統(tǒng)的數(shù)據采集與處理;完成路徑規(guī)劃,為DSP層提供路徑點信息等。DSP層主要完成機械手的運動控制計算,包括軌跡規(guī)劃等,把電機控制參數(shù)發(fā)送到FPGA層。FPGA層主要接收DSP層控制參數(shù)數(shù)據,完成對電機的驅動,并發(fā)送電機參數(shù)信息給DSP層。
圖8 軟件系統(tǒng)總體結構Fig.8 The overall structure of the software system
2.1 DSP層控制模塊程序的設計
DSP層的編譯是在TI公司提供的集成開發(fā)環(huán)境Code Composer Studio (CCS)中完成,使用的實時操作系統(tǒng)是DSP/BIOS。DSP/BIOS是CCS中集成的一個簡易的嵌入式實時操作系統(tǒng),其功能包括任務的調度,任務間的同步和通信,內存管理,實時時鐘管理,中斷服務管理等。在DSP/BIOS中,本文主要設置了一個系統(tǒng)周期為2ms的主函數(shù)和一個中斷服務程序,DSP層的程序在初始化完成后即進入2ms循環(huán)運行,首先檢測外圍設備的開關信號量,主要檢測限位開關的觸碰狀態(tài);然后與PC機進行通訊,接收數(shù)據包,如果PC機沒有發(fā)送任何 數(shù)據,則檢測機械手當前狀態(tài)并反饋信息如位移量和末端執(zhí)行器位置等,如果有數(shù)據包傳送下來,則分解數(shù)據包并提取信息;然后按照數(shù)據包的內容執(zhí)行相應的子程序;子程序執(zhí)行完畢后把電機的控制參數(shù)寫入緩沖區(qū),然后檢測機械手當前狀態(tài)并反饋信息給上位機。中斷程序由FPGA段觸發(fā),當緩沖區(qū)有數(shù)據且電機Over信號有效時進入中斷程序,取出緩沖區(qū)的電機控制參數(shù),送到伺服電機控制器中,然后返回到主程序。
PC發(fā)送一次信息到DSP并得到一次應答表示完成一次通訊,包含固定的65個字節(jié)的內容。下位機DSP對數(shù)據的讀取并應答,也包含共65個字節(jié)的內容,其數(shù)據表具體含義如表2所示。最后PC對應答的數(shù)據進行解析,獲取有用的反饋信息。此時,一次通訊完畢,接著重復上述過程進行下一次通訊。
表2 PC與DSP之間的通訊數(shù)據包定義Tab.2 The definition of the communication data between PC and DSP
2.2 人機界面設計
圖9 上位機控制通訊界面Fig.9 The interface of the control software
與DSP層連接的人機界面如圖9所示,主要包括機器人虛擬仿真窗口和機器人通訊窗口。前者是接收目標點的三維坐標位置和進行運動仿真;后者把目標點的三維坐標位置轉換為機器人各關節(jié)相應的關節(jié)變量,然后通過通訊接口傳送到機器人控制系統(tǒng)的DSP層。
人機界面主要由以下部分構成:1,信息反饋窗口;2,操作框;3,串口設定窗口;4,信息反饋窗口;5,仿真窗口。
界面操作流程如下:首先在串口設定框處設定和DSP層通訊的串口參數(shù),按下“打開串口”按鈕建立通訊,然后按下“SERVO ON”給電機發(fā)送就緒信號,松開電機抱閘,若按下“SERVO OFF”則啟動抱閘,鎖緊電機,機械手處于停止狀態(tài);其次,在操作框處選擇運動模式,如選擇“Run”模式,則機械手按照給定的參數(shù)進行PTP運動。反饋信息框用于顯示運動過程中機械手的相關參數(shù),如運行速度,位移等;信息反饋框的作用在于顯示機械手運行狀態(tài),當出現(xiàn)錯誤時給出錯誤代碼。仿真窗口主要用于虛擬機器人在虛擬場景下根據操作窗口給出的關節(jié)運動參數(shù)進行運動,用于演示。
本文提出了基于PC+DSP+FPGA的采摘機器人控制系統(tǒng),在廣州市某數(shù)控公司提供的DSP+FPGA等核心硬件的基礎上進行二次開發(fā),完成了DSP控制程序和定義了相關的通訊協(xié)議;從硬件和軟件出發(fā),對所設計的控制系統(tǒng)各個模塊進行了設計與說明,實現(xiàn)了機械手的基本運動控制功能。
References)
[1]王燕.黃瓜采摘機器人運動規(guī)劃與控制系統(tǒng)研究[D].浙江:浙江工業(yè)大學,2010.WANG Yan.Research on motion planning and control system of the cucumber picking robot [D].Zhejiang:Zhejiang University of Technology,2010.(in Chinese)
[2]武傳宇.基于 PC+ DSP 模式的開放式機器人控制系統(tǒng)及其應用研究 [D].杭州:浙江大學,2002.WU Chuanyu.Study of the PC+DSP based open architecture control system of robotic manipula tor and its applications [D].Hangzhou:Zhejiang University,2002.(in Chinese)
[3]聶磊.基于 CAN 總線的機器人嵌入式控制系統(tǒng)設計[D].哈爾濱:哈爾濱工程大學,2006.NIE Lei.Embedded control system design of the robot based on CAN bus [D].Harbin:Harbin Engineering University,2006.(in Chinese)
[4]張曉宇.基于 PC 和雙 DSP 的噪聲分布控制系統(tǒng)的設計[J].測控技術,2013,32(1):76-79.Zhang Xiaoyu.Design of multi-channel active noise decentralized control system based on PC and Dual-DSP [J].Measuremeng &Control Technology,2013,32(1):76-79.(in Chinese)
[5]Monmasson E,Cirstea M N.FPGA design methodology for industrial control systems—a review[J].Industrial Electronics,IEEE Transactions on,2007,54(4):1824-1842.
[6]Shao X,Sun D.Development of an FPGA-based motion control ASIC for robotic manipulators[C]//Intelligent Control and Automation,2006.WCICA 2006.The Sixth World Congress on.IEEE,2006,2:8221-8225.
Development of the robot control system based on PC+DSP+FPGA
ZOU Haixin1,2,ZOU Xiangjun2
(1.School of traffic and environment,Shenzhen Institute of Information Technology,Shenzhen 518172,P.R.China;2.College of Engineering,South China Agricultural University,Guangzhou 510640,P.R.China)
The control system presented at this paper is the brain of robots,which is the indispensable device that works based on the external sensors and internal instructions.This paper has developed a robot control system based on PC + DSP + FPGA,and its hardware and software system is described in details.Finally,with the control system,the motion control of the 4 DOF robot was realized.
PC+DSP+FPGA;robot;control system
TP242
A
1672-6332(2015)01-0079-04
【責任編輯:楊立衡】
2015-02-10
國家自然科學基金(31171547,51175189);華南農業(yè)大學合生珠江教育基金博士生科技創(chuàng)新計劃(出國培植)(H2011004)
鄒海鑫(1984-),男(漢),廣東豐順人,講師,博士,主要研究方向:機器人控制、汽車底盤電控技術。E-mail:zouhaixin123@163.com