深谷產(chǎn)品課堂——開(kāi)源六軸協(xié)作機(jī)械臂
發(fā)布日期:2022-11-10 瀏覽次數(shù):4342
大家好,歡迎關(guān)注深谷學(xué)院《深谷產(chǎn)品課堂》系列文章,從本篇開(kāi)始,深谷小助將帶你學(xué)習(xí)和操作各種有趣的深谷人工智能與機(jī)器人產(chǎn)品,本期為大家?guī)?lái)的是開(kāi)源六軸協(xié)作機(jī)械臂。
環(huán)境版本
· 主機(jī)系統(tǒng)版本:Windows10 64位
· 處理器型號(hào):Intel-i7
· Matlab版本:Matlab R2020b
· 上位機(jī)軟件(免安裝):RobotGUI_DH20220328
學(xué)習(xí)目標(biāo)
知識(shí)儲(chǔ)備
1、首先學(xué)習(xí)六軸機(jī)械臂本體結(jié)構(gòu)。
六軸機(jī)械臂本體由6個(gè)可重組的關(guān)節(jié)模組、連接部件、底座、末端部件組成。圖從上到下簡(jiǎn)單地說(shuō)明了六軸機(jī)械臂的兩大組成部分。最上面是防撞保護(hù)套和連桿,下面是關(guān)節(jié)模組。
其中六軸機(jī)械臂本體上有一個(gè)EtherCAT接口,對(duì)應(yīng)接線上分布著EtherCAT通訊線和機(jī)械臂的電源線。
2、六軸機(jī)械臂的重要組成-關(guān)節(jié)模組
關(guān)節(jié)模組是由伺服驅(qū)動(dòng)器、無(wú)框力矩電機(jī)、諧波減速機(jī)、傳感器包括光電編碼器(減速機(jī)前)和絕對(duì)值編碼器(減速機(jī)后,測(cè)量機(jī)械臂的輸出軸的絕對(duì)角度)、繼電器抱閘等部件組成。
3、CSPACE控制箱
(1)控制箱簡(jiǎn)介該產(chǎn)品基于 ARM Cortex-A9、實(shí)時(shí) Linux 和 MATLAB/Simulink 開(kāi)發(fā),擁有 AD、DA、IO、Encoder、PWM CAN、SPI 等豐富的硬件外設(shè)接口,包含一套功能強(qiáng)大 的監(jiān)控軟件。該產(chǎn)品軟件上支持 MATLAB/Simulink 進(jìn)行模塊化編程開(kāi)發(fā),結(jié)合計(jì)算機(jī)仿真和嵌入式實(shí)時(shí)控制技術(shù),能實(shí)現(xiàn)硬件在回路(HIL)和快速控制原型(RCP) 設(shè)計(jì)的功能,是基于模型設(shè)計(jì)(MBD:Model-Based Design)典型的產(chǎn)品,是國(guó)內(nèi)可對(duì)標(biāo)國(guó)際控制與仿真產(chǎn)品的本土化快速控制原型與半實(shí)物仿真系統(tǒng)。
(2)控制箱接口資源110~220V 交流電輸入接口及開(kāi)關(guān) 、緊急制動(dòng)開(kāi)關(guān)、控制器電源復(fù)位按鈕、機(jī)械臂接口(含電源線,EtherCAT 通信線)、EtherCAT 接口、1 路 RS232 接口電路(方便用戶 debug 調(diào)試)、LAN 網(wǎng)口和USB 網(wǎng)口。
任務(wù)實(shí)施包括以下內(nèi)容。接下來(lái)分別進(jìn)行講解與演示。
1、六軸機(jī)械臂和控制箱硬件接線
(1)網(wǎng)線接前面板Etherenet1網(wǎng)口,用于和上位機(jī)通訊。
(2)USB通信線,接前面板USB調(diào)試口(DEBUG),用于調(diào)試和監(jiān)測(cè)
(3)機(jī)械臂電纜接在后面板Robot接口,里面包含48V電源線和EtherCAT通訊線
(4)線性直流穩(wěn)壓電源三角供電插頭,給控制器系統(tǒng)供電
2、使用上位機(jī)軟件和matlab軟件下載PTP程序操作步驟
第一步:首先打開(kāi)PTPTecat.slx,Simulink整個(gè)控制框圖如圖2-1所示。主要包含6部分:全局變量定義部分、系統(tǒng)初始化、上位機(jī)指令接收子系統(tǒng)、獲取關(guān)節(jié)反饋數(shù)據(jù)、控制邏輯與算法、發(fā)送關(guān)節(jié)控制命令。
第二步:產(chǎn)生離線仿真數(shù)據(jù)。需要產(chǎn)生離線笛卡爾空間直線軌跡,按照右圖2-2所示,打開(kāi)文件夾內(nèi)的DiKaEr.m文件,并點(diǎn)擊“運(yùn)行”,經(jīng)過(guò)一段時(shí)間后,在工作區(qū)內(nèi)產(chǎn)生6個(gè)關(guān)節(jié)的軌跡點(diǎn)。
第三步:點(diǎn)擊Matlab上方的編譯按鈕或者按Ctrl+B,將模型下載到機(jī)械臂控制器中,編譯下載完后,會(huì)出現(xiàn)右圖2-3的界面,點(diǎn)擊下方的Simulink模塊會(huì)自動(dòng)跟蹤對(duì)應(yīng)生成的代碼,可視化效果比較好。另外在Simulink仿真模型文件路徑中生成新的elf文件如右圖2-4所示。
第四步:配置本地開(kāi)發(fā)電腦IP地址。我們采用UDP實(shí)現(xiàn)上位機(jī)與實(shí)時(shí)控制器之間的數(shù)據(jù)通信,為保證通信正常必須兩個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)在同一個(gè)網(wǎng)段。設(shè)置方法如右圖2-5所示。
第五步:下載用戶可執(zhí)行程序。選擇界面上邊的“設(shè)置”選項(xiàng),然后按照下圖①~④順序進(jìn)行操作。其中第3步為選擇前邊生成的用戶可執(zhí)行代碼。然后點(diǎn)擊“Send File”則電腦開(kāi)發(fā)機(jī)把本地的程序通過(guò)網(wǎng)絡(luò)傳輸?shù)娇刂破髦?,同時(shí)進(jìn)度條會(huì)顯示下載文件的進(jìn)度,當(dāng)顯示100%時(shí)則表示控制器完全接收到程序文件。此時(shí)控制器會(huì)自動(dòng)的把用戶程序運(yùn)行起來(lái) 。
用戶應(yīng)用程序跑起來(lái)之后,過(guò)5s左右(底層服務(wù)程序需要做時(shí)鐘同步處理),上位機(jī)“監(jiān)控面板”部分會(huì)有動(dòng)態(tài)圖形滾動(dòng)顯示如表明上位機(jī)已經(jīng)能正常的接收數(shù)據(jù),通信是正常的。
第六步:PT軌跡規(guī)劃上位機(jī)操作,操作的步驟是:?jiǎn)?dòng)機(jī)械臂→執(zhí)行GOTO指令→等待到達(dá)軌跡第1個(gè)軌跡點(diǎn)→執(zhí)行PLAY指令→等待全部走完軌跡→執(zhí)行HOME指令→停止機(jī)械臂。操作界面如下圖所示。
3、六軸機(jī)械臂笛卡爾空間直線軌跡運(yùn)動(dòng)實(shí)物圖解
任務(wù)拓展
根據(jù)現(xiàn)有的模型,可以嘗試自己寫(xiě)笛卡爾空間圓軌跡的程序。Matlab仿真圓形軌跡圖如下圖所示。
課堂小結(jié):
1、分析并記錄笛卡爾空間軌跡規(guī)劃M的代碼編寫(xiě)和仿真。
2、分析并記錄如何通過(guò)Simulink搭建PT控制程序并下載。
3、分析并記錄如何使用串口調(diào)試軟件和機(jī)器人上位機(jī)控制。