国产精品成人网站,日韩视频二区,亚洲成人手机电影,怡红院国产

產(chǎn)品推薦:水表|流量計|壓力變送器|熱電偶|液位計|冷熱沖擊試驗箱|水質(zhì)分析|光譜儀|試驗機(jī)|試驗箱


儀表網(wǎng)>技術(shù)中心>應(yīng)用設(shè)計>正文

歡迎聯(lián)系我

有什么可以幫您? 在線咨詢

基于COMX的機(jī)器人伺服控制器設(shè)計

   2012年11月22日 14:10  
  摘要:為了配合EtherCAT協(xié)議在機(jī)器人控制系統(tǒng)上的使用,本文提出了基于COMX和STM32的機(jī)器人伺服控制器解決方案。介紹了COMX模塊的功能及結(jié)構(gòu),設(shè)計了基于FSMC的接口電路來控制COMX,并設(shè)計了COMX驅(qū)動和伺服控制器的應(yīng)用軟件。zui后搭建實驗平臺以測試通信功能和分析轉(zhuǎn)發(fā)延時,驗證了本方案的可行性。
  
  關(guān)鍵詞:機(jī)器人;伺服控制器;EtherCAT;STM32;COMX
  
  引言
  
  目前,機(jī)器人控制系統(tǒng)的研究重點(diǎn)在開放式、模塊化控制系統(tǒng)等方面,機(jī)器人控制器的標(biāo)準(zhǔn)化和網(wǎng)絡(luò)化已成為研究熱點(diǎn);同時,機(jī)器人伺服控制器的研究也具有很大的應(yīng)用價值。在伺服通信方面,傳統(tǒng)的基于模擬信號傳輸?shù)募⒖刂葡到y(tǒng)需采用數(shù)/模轉(zhuǎn)換器,系統(tǒng)構(gòu)成復(fù)雜、分辨率低、可靠性得不到保障且難以擴(kuò)展。為了解決此問題,本系統(tǒng)采用實時工業(yè)以太網(wǎng)EtherCAT協(xié)議作為機(jī)器人伺服系統(tǒng)的底層協(xié)議,同時構(gòu)建伺服從站控制器。實時以太網(wǎng)技術(shù)簡化了一般總線的互操作性和實時性等方面的問題,能滿足控制網(wǎng)絡(luò)傳輸?shù)膶崟r性要求,EtherCAT工業(yè)以太網(wǎng)技術(shù)以其網(wǎng)絡(luò)實時性高、速度快、拓?fù)浣Y(jié)構(gòu)靈活等優(yōu)點(diǎn)得到廣泛關(guān)注。本控制器采用德國赫優(yōu)訊公司開發(fā)的嵌入式實時以太網(wǎng)模塊COMX來完成EtherCAT通信的功能,采用STM32系列單片機(jī)(以下簡稱STM32)為主控制器,由STM32來控制電機(jī)和COMX的工作流程。
  
  1、COMX介紹
  
  嵌入式實時以太網(wǎng)模塊COMX-CA-RE是德國赫優(yōu)訊公司開發(fā)的特殊網(wǎng)卡,支持所有主流的實時工業(yè)以太網(wǎng)協(xié)議(EtherCAT、PROFINETIO、Ethernet/IP、Power-Link、SereosIII、ModbusTCP等)。其協(xié)議棧設(shè)計成可裝載的固件存儲在Flash中;在系統(tǒng)啟動時,COMX模塊會自動裝載保存在Flash中的協(xié)議固件。COMX模塊使用netX500網(wǎng)絡(luò)控制芯片,主機(jī)通過雙端口內(nèi)存DPM接口來進(jìn)行數(shù)據(jù)交互,通過對DPM讀和寫來實現(xiàn)網(wǎng)絡(luò)通信及模塊控制。COMX結(jié)構(gòu)框圖如圖1所示。
  
  COMX模塊與主機(jī)交互的接口是雙端口內(nèi)存DPM,DPM是netX500控制器和主機(jī)之間共享的存儲區(qū),應(yīng)用程序通過DPM來實現(xiàn)EtherCAT數(shù)據(jù)通信、netX系統(tǒng)配置和診斷信息的獲取。在使用COMX模塊進(jìn)行通信時,主要完成主機(jī)對DPM操作程序的編寫以及握手標(biāo)記的設(shè)置等。EtherCAT網(wǎng)絡(luò)上的數(shù)據(jù)是實時地映射到DPM的,同時應(yīng)用程序通過DPM來發(fā)送和接收數(shù)據(jù),整個DPM區(qū)域是16KB的地址空間。
  
  2、硬件設(shè)計
  
  本伺服控制器主要用于機(jī)器人伺服節(jié)點(diǎn)通信、關(guān)節(jié)電機(jī)的控制、I/O控制,以及傳感信息的采集。主要硬件由COMX和STM32來組成。其中COMX負(fù)責(zé)EtherCAT通信,STM32采用FSMC機(jī)制來讀寫COMX。STM32是從站的伺服控制器主控芯片,主要進(jìn)行電機(jī)控制和A/D、D/A轉(zhuǎn)換模塊的控制,以及負(fù)責(zé)管理COMX模塊的運(yùn)行流程。其中,伺服通信功能是基于EtherCAT協(xié)議進(jìn)行組網(wǎng)來達(dá)到各模塊互聯(lián)和數(shù)據(jù)交換的目的,這樣便于伺服節(jié)點(diǎn)的擴(kuò)展和硬件結(jié)構(gòu)的設(shè)計;電機(jī)控制方面,采用RS485接口控制SR518數(shù)字舵機(jī);STM32的I/O口用于基本的輸入/輸出功能;A/D通道可以連接傳感設(shè)備用于機(jī)器人的感知,D/A通道用于對語音、電流等模擬量的輸出;RS232是開發(fā)過程中的調(diào)試接口。其硬件結(jié)構(gòu)框圖如圖2所示。  
  STM32采用FSMC機(jī)制控制COMX,將COMX映射到STM32的內(nèi)存空間中,對COMX的讀寫方式與讀寫SRAM相同。嵌入式模塊COMX通過一個50引腳插槽來連接主控芯片,插槽包含了與主機(jī)通信*的控制線總線、16位數(shù)據(jù)總線和14位地址總線等。COMX與STM32的硬件電路如圖3所示。COMX內(nèi)存映射到FSMC的*個存儲塊的第4個分區(qū)中,起始地址為0x6C000000,并且采用8位數(shù)據(jù)寬度來讀寫DPM存儲區(qū)。
  
  3、軟件設(shè)計
  
  3.1軟件結(jié)構(gòu)
  
  基于COMX的伺服控制器的軟件框架如圖4所示。伺服系統(tǒng)的主控芯片是STM32,在軟件上采用了ST公司開發(fā)的底層固件庫來操作硬件接口。在本系統(tǒng)中,主要有RS485通信模塊、COMX驅(qū)動模塊、A/D轉(zhuǎn)換模塊、D/A轉(zhuǎn)換模塊以及I/O模塊。系統(tǒng)中通過COMX來實現(xiàn)EtherCAT通信,采用RS485來控制SR518舵機(jī),同時采用這些模塊的API來構(gòu)建伺服驅(qū)動的應(yīng)用程序。
  
  3.2COMX驅(qū)動設(shè)計
  
  COMX驅(qū)動的執(zhí)行流程,在硬件電路連接好的前提下,主要任務(wù)是寄存器的配置及通信流程的控制。首先,要配置STM32的相關(guān)引腳,將與COMX相關(guān)的數(shù)據(jù)線、地址線、片選線和讀寫信號線全部設(shè)置成復(fù)用推挽輸出模式;然后,設(shè)置FSMC的相關(guān)寄存器,配置FSMC時鐘、時序邏輯、讀寫模式、數(shù)據(jù)寬度等;接著,就是COMX啟動檢測階段,由于COMX是獨(dú)立網(wǎng)卡,內(nèi)部有獨(dú)立的系統(tǒng),只有在它內(nèi)部系統(tǒng)運(yùn)行就緒后才能正常通信,這就需要檢測COMX提供的一些標(biāo)志寄存器的相關(guān)位,以此來判斷內(nèi)部系統(tǒng)的狀態(tài);zui后,等COMX一切就緒后就可以正常通信,執(zhí)行讀寫操作。
  
  COMX是獨(dú)立的網(wǎng)卡設(shè)備,通過加載不同的固件程序,來實現(xiàn)各種實時以太網(wǎng)通信協(xié)議,本系統(tǒng)中使用的是EtherCAT從站協(xié)議。在COMX使用之前,要保證固件程序下載到Flash中,同時配置文件也要保存在Flash中。
  
  COMX上電啟動時,會自動加載運(yùn)行固件,并讀取配置文件。下載固件時要使用赫優(yōu)訊公司配套的PCI板卡和cifXTest軟件工具,配置文件的下載需要用SYCON.net工具,具體步驟可以查看參考文獻(xiàn)。當(dāng)固件程序和配置文件下載完畢后,就可以使用COMX網(wǎng)卡了。
  
  3.3COMX讀寫操作實現(xiàn)
  
  COMX讀寫模式是基于緩沖的握手方式,在DPM中,主機(jī)和netX500系統(tǒng)通過握手標(biāo)記來劃分DPM的數(shù)據(jù)讀寫權(quán)限,這些握手標(biāo)記在握手通道中。每個通道都有一對CMD和ACK標(biāo)記位,當(dāng)這兩個標(biāo)記位相同時,主機(jī)可以寫相應(yīng)的DPM區(qū)域;當(dāng)不同時,主機(jī)可以讀相應(yīng)的DPM區(qū)域。COMX發(fā)送數(shù)據(jù)的過程如圖5所示。
  
  根據(jù)以上分析過程,可以設(shè)計出COMX發(fā)送數(shù)據(jù)的驅(qū)動程序,其執(zhí)行流程如圖6所示。
  
  COMX接收數(shù)據(jù)的過程如圖7所示。根據(jù)以上分析過程可以設(shè)計出COMX接收數(shù)據(jù)的驅(qū)動程序,其執(zhí)行流程如圖8所示。
  
  3.4伺服控制器軟件流程
  
  伺服從站控制器在啟動后會初始化COMX模塊,然后等待COMX就緒。在控制過程中首先會通過數(shù)據(jù)發(fā)送電機(jī)的設(shè)置參數(shù),在參數(shù)設(shè)置完成后就會發(fā)送過程命令來啟動電機(jī)控制,然后進(jìn)入電機(jī)控制循環(huán)。在電機(jī)控制過程中可以使用數(shù)據(jù)發(fā)送命令來停止電機(jī)控制,在沒接到停止命令時會循環(huán)接收命令,解析后用于控制電機(jī),直到控制結(jié)束。伺服從站控制器的程序流程如圖9所示。
  
  4、實驗測試
  
  本系統(tǒng)主要進(jìn)行的實驗如下:其一,對COMX伺服控制器的協(xié)議兼容性測試;其二,對COMX伺服控制器轉(zhuǎn)發(fā)延時的測試。針對以上測試需求,搭建了相應(yīng)的測試平臺。在PC平臺上安裝netANALYZER應(yīng)用軟件和Wireshark軟件。其中netANALYZER用于數(shù)據(jù)抓取和時間分析;Wireshark用于數(shù)據(jù)報分析和時間抖動分析。在主站上使用德國赫優(yōu)訊公司的cifX50-RE網(wǎng)卡和SYCON.net軟件,在從站上使用STM32和COMX開發(fā)的伺服控制器。采用netANALYZER分析卡抓取數(shù)據(jù)包,并采用Wireshark軟件分析數(shù)據(jù),這樣就可以測試通信的兼容性和功能的實現(xiàn)。同時也可以采用netANALYZER分析卡的時間分析功能去測試控制器的轉(zhuǎn)發(fā)延時。為了分析總線在不同壓力下的轉(zhuǎn)發(fā)延時,進(jìn)行了一組數(shù)據(jù)的測量,并轉(zhuǎn)換為曲線。如圖10所示,從站的轉(zhuǎn)發(fā)延時基本不變。由于總線從站采用了硬件FMMU的映射機(jī)制來獲取數(shù)據(jù),這一過程延時很短,而且每個從站只處理與自己相關(guān)的數(shù)據(jù),因此在轉(zhuǎn)發(fā)過程中數(shù)據(jù)的增加基本不影響轉(zhuǎn)發(fā)延時。
  
  5、結(jié)語
  
  機(jī)器人伺服控制器是機(jī)器人組成的關(guān)鍵部件,在使用EtherCAT作為機(jī)器人控制協(xié)議時,需要關(guān)節(jié)控制器能兼容EtherCAT通信。為了解決這個問題,本文設(shè)計了基于COMX和STM32的伺服控制器,從軟件和硬件兩方面進(jìn)行了設(shè)計,同時實現(xiàn)了基于FSMC接口的COMX驅(qū)動以及EtherCAT通信過程。zui后,采用測試工具分析了伺服控制器在不同BusLoad下的轉(zhuǎn)發(fā)延時,通過實驗分析驗證了基于COMX模塊的伺服控制器方案的可行性。

免責(zé)聲明

  • 凡本網(wǎng)注明“來源:儀表網(wǎng)”的所有作品,均為浙江興旺寶明通網(wǎng)絡(luò)有限公司-儀表網(wǎng)合法擁有版權(quán)或有權(quán)使用的作品,未經(jīng)本網(wǎng)授權(quán)不得轉(zhuǎn)載、摘編或利用其它方式使用上述作品。已經(jīng)本網(wǎng)授權(quán)使用作品的,應(yīng)在授權(quán)范圍內(nèi)使用,并注明“來源:儀表網(wǎng)”。違反上述聲明者,本網(wǎng)將追究其相關(guān)法律責(zé)任。
  • 本網(wǎng)轉(zhuǎn)載并注明自其它來源(非儀表網(wǎng))的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)或和對其真實性負(fù)責(zé),不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個人從本網(wǎng)轉(zhuǎn)載時,必須保留本網(wǎng)注明的作品第一來源,并自負(fù)版權(quán)等法律責(zé)任。
  • 如涉及作品內(nèi)容、版權(quán)等問題,請在作品發(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。
聯(lián)系我們

客服熱線: 15267989561

加盟熱線: 15267989561

媒體合作: 0571-87759945

投訴熱線: 0571-87759942

關(guān)注我們
  • 下載儀表站APP

  • Ybzhan手機(jī)版

  • Ybzhan公眾號

  • Ybzhan小程序

企業(yè)未開通此功能
詳詢客服 : 0571-87759942