《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > 基于STM32的機械手運動控制器的實現(xiàn)
基于STM32的機械手運動控制器的實現(xiàn)
李向如,,俞建定,,汪 沁
(寧波大學(xué) 信息科學(xué)與工程學(xué)院,,浙江 寧波 315211)
摘要: 本文以五軸機械手的設(shè)計實現(xiàn)為背景,,提出了一種基于以Cortex-M4為內(nèi)核的微處理器STM32F407構(gòu)成的嵌入式運動控制器,。本設(shè)計方案引入現(xiàn)場總線的通信方式,,利用其高可靠性和高通用性的特點,,使得運動控制器具有高開放性和模塊化的特點,。文中提供的以CAN總線控制多個私服電機的設(shè)計方法,使得硬件電路的設(shè)計大大簡化,,也使得通信的效率和可靠性大幅提升,。測試表明,控制器的性能穩(wěn)定可靠,,能夠滿足機械手控制的需求,,同時本設(shè)計對工業(yè)控制領(lǐng)域有著實際的應(yīng)用指導(dǎo)意義。
Abstract:
Key words :

  摘  要: 本文以五軸機械手的設(shè)計實現(xiàn)為背景,,提出了一種基于以Cortex-M4為內(nèi)核的微處理器STM32F407構(gòu)成的嵌入式運動控制器,。本設(shè)計方案引入現(xiàn)場總線的通信方式,利用其高可靠性和高通用性的特點,,使得運動控制器具有高開放性和模塊化的特點,。文中提供的以CAN總線控制多個私服電機的設(shè)計方法,使得硬件電路的設(shè)計大大簡化,,也使得通信的效率和可靠性大幅提升,。測試表明,控制器的性能穩(wěn)定可靠,,能夠滿足機械手控制的需求,,同時本設(shè)計對工業(yè)控制領(lǐng)域有著實際的應(yīng)用指導(dǎo)意義。

  關(guān)鍵詞: CAN,;多電機系統(tǒng)控制,;現(xiàn)場總線

0 引言

  現(xiàn)代科學(xué)技術(shù)的不斷發(fā)展,極大地推動了不同學(xué)科的交叉與滲透,,導(dǎo)致了工程領(lǐng)域的技術(shù)革命與改造,。機械手是近代自動控制領(lǐng)域出現(xiàn)的一項新技術(shù),并已成為現(xiàn)代機械制造生產(chǎn)系統(tǒng)中的一個重要組成部分,。運動控制技術(shù)作為其中的核心組成部分,,得到長足的發(fā)展,目前已成為自動化技術(shù)的一個重要分支[1],。隨著現(xiàn)代控制技術(shù)的提高,,運動控制器的出現(xiàn)在某種意義上滿足了新型數(shù)控系統(tǒng)的標準化、開放性的要求,,為各種工業(yè)設(shè)備,、國防設(shè)備以及智能醫(yī)療裝置自動化控制系統(tǒng)的研制和改造提供了一個統(tǒng)一的硬件平臺。運動控制器是運動控制技術(shù)中最具代表性的產(chǎn)品,,其性能優(yōu)劣直接關(guān)系到生產(chǎn)的效率和質(zhì)量[2],。在此背景下,本文設(shè)計了一種基于STM32F407,,采用以太網(wǎng),、CAN總線通信方式的五軸機械手運動控制器。

1 機械手運動控制器總體方案

  目前市場上的運動控制器依據(jù)不同的原則有不同的分類。按照運動控制器的核心技術(shù)方案,,主要有基于模擬電路型,、基于微控制單元型、基于可編程邏輯(FPGA/CLPD)型,、基于數(shù)字信號處理(DSP)型等,;按照運動控制器的系統(tǒng)結(jié)構(gòu),可分為基于總線的運動控制器和獨立應(yīng)用的運動控制器以及混合型的運動控制器[3],。本設(shè)計方案采用基于微控制單元型和現(xiàn)場總線的設(shè)計方案,,機械手運動控制器的系統(tǒng)結(jié)構(gòu)如圖1所示。

001.jpg

  由上圖可以看出該系統(tǒng)主要是由手持器,、控制電路,、電機驅(qū)動器及電機等幾部分組成。本文主要討論其中的控制電路的設(shè)計,,其運行過程大致是手持器通過以太網(wǎng)接口把相應(yīng)的動作指令發(fā)給控制電路,,該過程采用LWIP協(xié)議。然后控制電路在接收到指令之后,,開始解析指令,,再通過CAN接口給伺服電機驅(qū)動器發(fā)送指令,該過程采用CANopen協(xié)議,。伺服驅(qū)動器在得到指令后開始驅(qū)動電機,,在電機到達指定位置后停止。在整個系統(tǒng)運行過程中,,如何實現(xiàn)對五個電機的實時控制是整個系統(tǒng)的關(guān)鍵,。為了保證數(shù)據(jù)在傳輸過程中的可靠性和實時性,系統(tǒng)在設(shè)計時采用了CAN接口和以太網(wǎng)接口,。

2 運動控制器的硬件電路設(shè)計

  由于本設(shè)計采用現(xiàn)場總線進行通信,,所以硬件電路得到很大簡化。本設(shè)計主要以STM32F407VGT6為處理中心,,通過以太網(wǎng)與手持器通信,,以CAN總線與電機驅(qū)動器通信。由圖2可以看出,,CANopen通信是在控制電路和電機驅(qū)動器之間實現(xiàn)的,。STM32F407VGT6基于高性能ARM CortexTM-M432位RISC內(nèi)核,可在高達168 MHz的頻率下工作,。Cortex-M4內(nèi)核采用單一精密浮點單元(FPU),,支持所有ARM單一精密數(shù)據(jù)處理指令和數(shù)據(jù)類型。該系列還能執(zhí)行全套DSP指令,,執(zhí)行存儲保護單元(MPU),,用以加強應(yīng)用安全性[4],。以太網(wǎng)采用的是PHY控制器DP83848,DP83848是一個強大的,、功能齊全的單端口10/100物理層設(shè)備,,提供低功耗管理,,包括幾個智能功率下降狀態(tài),。這些低功耗模式可以提高整體產(chǎn)品的可靠性,減少功耗,。CAN的硬件實現(xiàn)包括兩個部分:與OSI模型中數(shù)據(jù)鏈路層和物理層分別對應(yīng)的CAN控制器和CAN收發(fā)器,。本文采用基于Cortex-M4內(nèi)核的STM32系列芯片作為控制電路的MCU,該芯片內(nèi)有CAN控制器,,并且完全支持CAN 2.0協(xié)議,。CAN收發(fā)器選用CTM1050T,其內(nèi)部集成了CAN隔離及收發(fā)器件,,將CAN控制器的邏輯電平轉(zhuǎn)換為CAN總線的差分電平,,同時具有隔離功能機ESD保護作用。運動控制器硬件結(jié)構(gòu)示意圖如圖2所示[5],。

002.jpg

3 運動控制器程序設(shè)計

  運動控制器的程序部分主要分為兩個模塊:控制模塊和通信模塊,。控制模塊完成系統(tǒng)控制參數(shù)的計算和控制量的輸出,;通信模塊一方面通過以太網(wǎng)接收手持器發(fā)送的動作命令,,另一方面根據(jù)命令通過CAN總線來控制電機運動。運動控制器程序是整個控制系統(tǒng)的核心,,首先調(diào)用?滋C/OS-II操作系統(tǒng)中的函數(shù)完成任務(wù)調(diào)度和內(nèi)存管理,,然后根據(jù)移植的LWIP協(xié)議完成以太網(wǎng)通信,最后是CAN總線和其他I/O的硬件配置,。整個程序主要分為三個任務(wù):以太網(wǎng)通信,、數(shù)據(jù)處理和CAN通信。以太網(wǎng)任務(wù)主要完成與手持器的通信,,接收上面發(fā)送的數(shù)據(jù)與指令,,采用查詢方式來完成數(shù)據(jù)的接收。數(shù)據(jù)處理任務(wù)根據(jù)以太網(wǎng)傳送過來的數(shù)據(jù)和指令選擇不同的數(shù)據(jù)處理子函數(shù),,通過這些子函數(shù)來執(zhí)行相應(yīng)的動作,。CAN通信任務(wù)主要是與電機驅(qū)動器進行通信,把數(shù)據(jù)處理任務(wù)傳送過來的動作指令轉(zhuǎn)換成CANopen協(xié)議的指令形式進行通信,。在這三個任務(wù)中,,數(shù)據(jù)處理任務(wù)是最為核心部分,其流程圖如圖3所示,。

003.jpg

  上圖中的模式是指機械手的運動模式,,其任務(wù)就是根據(jù)以太網(wǎng)中的指令來判斷機械手需要在什么模式中運行,,然后調(diào)用子函數(shù)運行以太網(wǎng)傳遞下來的數(shù)據(jù),再通過CAN向驅(qū)動器發(fā)送指令,。

4 結(jié)束語

  本文討論了多軸運動控制器的設(shè)計,,給出了基于ARM和現(xiàn)場總線相結(jié)合的控制方案。現(xiàn)場總線集數(shù)字通信,、微機技術(shù),、網(wǎng)絡(luò)技術(shù)于一身,從根本上突破了傳統(tǒng)的點對點式的模擬信號或數(shù)字-模擬信號控制的局限,,為真正的分散式控制集中式管理提供了技術(shù)保證,。ARM處理器具有高性能、低功耗,、體積小等特點,,兩者的結(jié)合可以縮短研發(fā)時間,提高研發(fā)效率,,應(yīng)用前景十分廣泛,。

  參考文獻

  [1] 郗志剛,周宏甫.運動控制器的發(fā)展與現(xiàn)狀[J].電氣傳動自動化,,2005,,27(3):10-14.

  [2] 李澄,趙輝,,聶保錢.基于CANopen協(xié)議實現(xiàn)多電機系統(tǒng)實時控制[J].微電機,,2009(9):53-56.

  [3] 張峰.嵌入式多軸運動控制器的研究與開發(fā)[D].青島:山東科技大學(xué),2008.

  [4] 吳世名.基于ARM的三軸機械手控制系統(tǒng)研究與設(shè)計[D].杭州:浙江工業(yè)大學(xué),,2013

  [5] 王峰.基于嵌入式系統(tǒng)的CANopen協(xié)議分析研究[D].天津:天津理工大學(xué),,2010.


此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載,。