直播推薦
企業(yè)動態(tài)
- 紛享銷客發(fā)布首個企業(yè)級智能CRM平臺ShareAI
- 揭秘西企業(yè)數字化+低碳化轉型“工具箱”:西門子Xcelerator
- 企業(yè)AI賦能數智制造,用友U9 cloud世界級云ERP煥新升級
- 《“智“領石化,“質“造未來——威圖石化行業(yè)數智化實踐白皮書》隆重發(fā)布
- 攜手共贏!德國Agfa搭載瑞典IPCO鋼帶,實現印刷設備振動銳減6倍,提升印刷速度與精度
- 創(chuàng)四方集團榮獲“知名商標品牌閃亮”證書,助力品牌戰(zhàn)略升級
- 皇冠CAD(CrownCAD)2025 R3版本來了,率先開啟C“Ai”D時代!
- 電費砍半!中國制冷展:海爾發(fā)布AI建筑最新成果
推薦展會
摘要:根據機器人控制性能的要求,設計了一個基于CAN總線的分布式機器人控制系統(tǒng),該控制系統(tǒng)由上位主控計算機、通訊部分和下位各關節(jié)控制器組成,具有連線簡單,擴充方便,通訊穩(wěn)定可靠,控制實時性高等特點。并對機器人關節(jié)控制器的硬件電路設計和控制軟件設計作了詳細闡述。該控制系統(tǒng)已用于研制的6DOF機械手,控制效果良好。
關鍵詞:CAN總線;Motorola DSP;分布式控制;機器人控制器
0 引言
機器人控制系統(tǒng)是機器人信息處理和控制的主體,其設計好壞將決定機器人系統(tǒng)的整體行為和性能。機器人控制系統(tǒng)結構一般可分為三種類型:(1)集中控制方式,利用一臺微型計算機實現全部功能,這種方式具有結構簡單、經濟的特點,但處理能力有限,難以滿足高性能控制要求并且控制風險高度集中。(2)主從控制方式,用主從兩個CPU進行控制,主CPU擔當系統(tǒng)管理,機器人語言編譯和人機接口功能,同時也利用它的運算能力完成坐標變換、軌跡插補;從CPU完成全部關節(jié)位置數字控制,主從CPU間通過公用內存交換數據,對采用更多的CPU進一步分散功能比較困難。(3)分布式控制,普遍采用上、下位機二級分布式結構,上位機負責整個系統(tǒng)管理以及運動學計算、軌跡規(guī)劃等,下位機由多個CPU組成,每個CPU控制一個關節(jié)運動,這些CPU和上位機通過總線形式相。這種結構的控制器工作速度和控制性能明顯提高,是一種比較理想的機器人控制方式[1]。傳統(tǒng)的機器人控制器采用MCU作為控制芯片,其運算速度和處理能力難以滿足日益復雜的機器人控制。在通訊方式上,常用的是RS422或RS485通訊,通訊的實時性較差,故障率較高,出現故障時,不容易排查[2]。本文所設計的機器人控制系統(tǒng)采用分布式控制方式,上位機采用高性能的工業(yè)PC機,下位關節(jié)控制器選用集成DSP的高速運算處理能力和MCU的控制特性于一體的Motorola DSP56F807作為控制芯片,上位機和下位各關節(jié)控制器之間采用了有效地支持分布式控制和實時控制的CAN(Controller Area Network)總線通訊方式,既能快速地實現機器人控制的復雜算法,又具有較高的控制實時性,是一個高性能的機器人控制系統(tǒng)。
1 控制系統(tǒng)結構
機器人是一個多自由度系統(tǒng)。機器人控制本質上是對各個關節(jié)的運動進行控制,使其協(xié)調運動,從而完成一些相對復雜的動作。該控制系統(tǒng)采用分布式控制方式,由上位主控計算機模塊、通訊模塊和下位關節(jié)控制器模塊組成,如圖1 所示。上位主控計算機負責整個系統(tǒng)的調度管理、在線運動規(guī)劃、故障診斷和人機交互等功能;通訊模塊負責上位計算機與下位各關節(jié)控制器之間的實時信息交換;各關節(jié)控制器和驅動直流無刷電機集成在一起,各個關節(jié)的運動由各關節(jié)控制器發(fā)出PWM信號驅動直流無刷電機實現。
圖1控制系統(tǒng)簡圖
1.1 上位主控計算機模塊
上位計算機是控制系統(tǒng)的中樞,要求體積小,運算速度快,滿足機器人實時控制的要求,通常采用高性能工業(yè)控制計算機。上位機應用程序在可視化編程環(huán)境VC++6.0下編制,分為程序界面、通訊初始化部分和控制部分。控制部分是整個上位機軟件控制的核心,可實現單關節(jié)控制和多關節(jié)協(xié)調控制,圖2為單關節(jié)控制部分流程圖,單關節(jié)控制是從上位機輸入關節(jié)應該運動的期望位置值,然后向下位關節(jié)控制器發(fā)送單關節(jié)控制指令,并從下位關節(jié)控制器接受關節(jié)實際位置信息;下位關節(jié)控制器從上位機接收位置信息并加以運算處理,輸出PWM信號驅動直流無刷電機運動到期望位置。上位計算機的控制周期為20ms,它通過CAN總線接口卡連接到通訊總線上,與通訊總線上的各關節(jié)控制器交互信息。
圖2上位機單關節(jié)控制程序流程圖
1.2 通訊模塊
機器人的分布式控制系統(tǒng)中,對通信方式的選擇至關重要,上位計算機和下位各關節(jié)控制器間的通信既要滿足硬件連接簡單,擴充方便,又要滿足通信的高可靠性和實時性。本設計采用CAN總線作為通信標準,CAN總線是一種有效支持分布式控制和實時控制的串行通訊網絡,與一般的通信網絡相比具有可靠性高、實時性和靈活性好的優(yōu)點,非常適合作為機器人控制系統(tǒng)中的通訊方式[3]。
本控制系統(tǒng)中,上位計算機通過周立功單片機公司的USBCAN-II智能CAN接口卡連接到CAN網絡,在上位機中調用隨卡提供的ZLGVCI驅動庫函數,來實現CAN通信的管理和監(jiān)控。CAN網絡各設備間通過雙絞線連接,因為雙絞線的特性阻抗為120歐,為了增強CAN通信的可靠性和抗干擾性,在CAN網絡的兩個端點加入120歐的抑制反射的終端匹配電阻。
1.3 下位關節(jié)控制器模塊
下位關節(jié)控制器模塊是整個控制系統(tǒng)的底層,與各關節(jié)驅動電機集成在一起,實際上是一個單關節(jié)運動控制和驅動模塊,主要用來控制各個關節(jié)運動具體執(zhí)行過程。關節(jié)控制器接收主控計算機的控制命令,對各個關節(jié)的運動進行控制,同時把底層信息反饋給上位計算機,便于上位計算機協(xié)調規(guī)劃,統(tǒng)一管理。所有的下位關節(jié)控制器在硬件結構上*相同,根據各關節(jié)運動控制的差異,內部灌注的軟件程序有所不同。關節(jié)控制器是整個控制系統(tǒng)的核心,也是本文研究的重點,它的性能好壞直接關系到機器人的整體性能。
2 控制器硬件系統(tǒng)設計
控制器硬件系統(tǒng)按結構和功能可分為主處理器單元、電源電路、電機驅動電路、CAN接口電路、欠壓保護電路、過流檢測電路等模塊,具體電路如圖3所示。
圖3控制器硬件電路原理簡圖
2.1 主處理器芯片
本設計核心控制芯片采用Motorola DSP56F807,該芯片混合了DSP 的高速運算能力與MCU 的控制特性于一體,提供了許多于電動機控制的外設,包括兩個脈寬調制模塊(PWMA、PWMB)、2個相位檢測器模塊(quadrature decoder)、12位精度的模數轉換模塊(ADC)、4個定時器模塊、通訊外設模塊(SCI、SPI、CAN)等,因此非常適合于對實現機器人各關節(jié)運動的直流無刷電機進行數字控制[4]。
2.2 CAN接口電路
DSP56F807芯片內集成了CAN控制器,要完成數據幀的收發(fā)還需外加CAN驅動器芯片,本設計采用Philips公司的PCA82C250為CAN驅動器。為了增強抗外部干擾,在DSP56F807的MSCAN_TX和MSCAN_RX引腳與CAN驅動器之間加兩個高速光電耦合器6N137。
2.3 電機驅動電路
電機驅動采用Motorola公司的MPM3003,它內部由上橋臂的3個P-溝道功率型MOSFET 和下橋臂的3個N-溝道功率型MOSFET組成三相橋式電路,是理想的伺服電機驅動集成電路芯片[5]。因PWM輸出電壓不能直接推動MPM3003,在PWM輸出口和MPM3003之間加一個TTL到CMOS轉換芯片MC14504B。
2.4 電源電路
控制器上同時需要5.0V 和3.3V 兩種電源。外部采用的是直流24V電源,通過MAX724將24V 穩(wěn)壓到5.0V,再通過MAX604將5.0V穩(wěn)壓到3.3V。為了減少電磁干擾,使用磁珠隔離3.3V 的數字電源和模擬電源。
因篇幅有限,其它的電路模塊不再一一介紹。
3 控制器軟件設計
控制器軟件設計是在Codewarrior6.0集成開發(fā)環(huán)境下進行的,采用模塊化設計,可分為初始化模塊、主循環(huán)模塊和中斷子程序模塊,整個控制功能由各中斷子程序實現,如圖4所示。初始化模塊的作用是初始化DSP 及控制參數,主循環(huán)模塊是一個死循環(huán),主要是查詢是否有中斷產生,如果有中斷則轉而去執(zhí)行相應的中斷服務子程序。數字PID控制子程序是實現控制功能的主體,完成對關節(jié)的位置、速度PID控制,通過定時器中斷實現。
圖4控制器軟件結構簡圖
對于數字PID控制子程序中的PID算法,采用了一種改進的變速積分PID算法,有效地克服了常規(guī)PID算法中出現積分飽和時,造成超調量增加,使調節(jié)品質變壞的缺點。變速積分法的基本思想是設法改變積分項的累加速度,使其與偏差大小相對應,偏差大時,減弱積分作用,反之則加強。
常規(guī)PID算法數字離散化為:
式中,KP,KI,KD分別為調節(jié)器的比例、積分和微分系數;E(k),E(k-1)分別為第k次和k-1次的期望偏差值;U(k)為第k次的調節(jié)器輸出。
改進后的變速積分PID算法為:
f[E(k)]是E(k)的函數,當|E(k)|≤B時,進行常規(guī)的PID控制;當|E(k)|>(A+B)后,不再進行積分項的累加;而當B<|E(k)|>(A+B)時,f[E(k)]隨E(k)的減小而增大,累加速度加快。其中,A,B為分離區(qū)間。
4結論
本文設計的機器人分布式控制系統(tǒng),采用CAN總線作為通信方式,和過去機器人控制中常用的RS485總線相比具有通訊穩(wěn)定可靠、實時性高等優(yōu)點。在下位關節(jié)控制器中選用了Motorola DSP56F807作為控制芯片,既能方便地利用豐富的外圍模塊實現控制功能,又能以較快的運算速度實現復雜的控制算法,克服了過去利用MCU作為控制芯片時,難以實現復雜的控制算法的缺點。在控制器軟件中采用了改進的變速積分PID算法,對關節(jié)位置、速度進行數字PID控制。該控制系統(tǒng)即插即用,功能擴展和故障處理方便;連線簡單,過去對6DOF的機械手進行控制,需118根線纜(包括電機線、傳感器線和其它開關量控制線),現在只需一根雙絞線,外觀也很美觀;另外,各關節(jié)控制器直接分布在控制現場,使模擬信號傳輸距離明顯縮短,有效地改善了抗*力。
參考文獻:
[1] 范永,譚民. 機器人控制器的現狀及展望. 機器人. 1999,21
[2] 劉華,程莉等. 機器人控制器與被控機器人的通訊方法研究. 機器人技術與應用.2002,4
[3] 鄔寬明. CAN總線原理和應用系統(tǒng)設計. 北京:北京航空航天大學出版社,1996
[4] DSP56F800 User Manual. Rev.6.0 Motorola Inc,2004
[5] 陳粵初. Motorola 單片機及集成芯片應用系統(tǒng)設計. 北京:北京航空航天大學出版社,1994
[6] 楊飛,鄭貴林. 基于CAN總線的監(jiān)控系統(tǒng)設計. 微計算機信息.2005,21(7)
免責聲明
- 凡本網注明"來源:智能制造網"的所有作品,版權均屬于智能制造網,轉載請必須注明智能制造網,http://towegas.com。違反者本網將追究相關法律責任。
- 企業(yè)發(fā)布的公司新聞、技術文章、資料下載等內容,如涉及侵權、違規(guī)遭投訴的,一律由發(fā)布企業(yè)自行承擔責任,本網有權刪除內容并追溯責任。
- 本網轉載并注明自其它來源的作品,目的在于傳遞更多信息,并不代表本網贊同其觀點或證實其內容的真實性,不承擔此類作品侵權行為的直接責任及連帶責任。其他媒體、網站或個人從本網轉載時,必須保留本網注明的作品來源,并自負版權等法律責任。
- 如涉及作品內容、版權等問題,請在作品發(fā)表之日起一周內與本網聯(lián)系,否則視為放棄相關權利。
2025第十一屆中國國際機電產品交易會 暨先進制造業(yè)博覽會
展會城市:合肥市展會時間:2025-09-20