17c在线-av香蕉-变态另类ts人妖一区二区-蜜桃视频污-欧美电影一区-av大西瓜-扒下小娇妻的内裤打屁股-久久视频国产-欧美精品一区三区-韩日视频在线-国产成人免费看-中国黄色一级毛片-国产一区二区视频免费-亚洲精品高清在线-国产成人看片-一本一道久久a久久-黄色网址中文字幕-欧美日韩久久久久久-国产精品ⅴa有声小说-亚洲人免费

蘇州昊瓦智能裝備有限公司
當(dāng)前位置: > 產(chǎn)品展示

快遞分揀機(jī)器人是哪家公司,機(jī)器人控制器的制作教程

點(diǎn)擊:789
倉(cāng)庫(kù)智能分揀機(jī)器人是如何工作的北京分揀機(jī)器人直銷

步驟1:添加抓取器

一開始添加抓手有點(diǎn)讓人困惑,所以我在上一篇文章中跳過(guò)了這一部分。事實(shí)證明,這畢竟不是那么困難。

為我的機(jī)器人修改的URDF文件已附加到此步驟。基本上,它遵循與手臂零件相同的邏輯,我只添加了三個(gè)新鏈接(claw_base,claw_r和claw_l)和三個(gè)新關(guān)節(jié)(joint5是固定的,joint6,joint7是旋轉(zhuǎn)關(guān)節(jié))。

修改URDF文件后,還需要使用MoveIt安裝助手來(lái)更新MoveIt生成的軟件包和xacro文件。

使用以下命令啟動(dòng)安裝助手

roslaunchmoveit_setup_assistantsetup_

單擊“

添加新的計(jì)劃組夾持器以及末端執(zhí)行器。我的設(shè)置在下面的屏幕截圖中。注意,您沒(méi)有為夾具選擇運(yùn)動(dòng)學(xué)求解器,這不是必需的。生成軟件包并覆蓋文件。

在catkin工作區(qū)中運(yùn)行

catkinmake

命令。

好吧,現(xiàn)在我們有了一條帶有抓爪的手臂!

步驟2:構(gòu)建手臂

正如我在提到Juergenlessner創(chuàng)建手臂3D模型之前提到的那樣,感謝您所做的出色工作。如果您單擊鏈接,則可以找到詳細(xì)的組裝說(shuō)明。

我不得不修改控制系統(tǒng)。我使用帶有傳感器護(hù)罩的ArduinoUno來(lái)控制伺服器。傳感器屏蔽層在簡(jiǎn)化布線方面有很大幫助,并且還易于為伺服器提供外部電源。我使用通過(guò)降壓模塊連接到SensorShield的12V6A電源適配器。

關(guān)于伺服器的注釋。我使用從淘寶購(gòu)買的MG996HR伺服器,但是質(zhì)量真的很差。絕對(duì)是便宜的中國(guó)仿冒品。用于肘關(guān)節(jié)的那個(gè)沒(méi)有提供足夠的扭矩,甚至在重載下也開始發(fā)煙。我不得不用質(zhì)量更好的制造商的MG946HR替換肘關(guān)節(jié)伺服器。

長(zhǎng)話短說(shuō)-購(gòu)買優(yōu)質(zhì)的伺服器。如果魔術(shù)煙霧從您的伺服器中冒出,請(qǐng)使用更好的伺服器。6V是非常安全的電壓,請(qǐng)不要增加它。不會(huì)增加扭矩,但會(huì)損壞伺服器。

伺服器接線如下:

基座2

shoulder24

快遞分揀機(jī)器人的原理

shoulder13

肘部6

抓爪8

手腕11

隨意更改它,只要您還記得要更改Arduino草圖即可。

生產(chǎn)菜鳥分揀機(jī)器人

使用完硬件后,讓我們看一看!

步驟3:MoveItRobotCommander界面

那么,現(xiàn)在呢?為什么仍然需要MoveIt和ROS?是不是可以直接通過(guò)Arduino代碼控制手臂?

是的。

好吧,現(xiàn)在如何使用GUI或Python/C++代碼提供機(jī)器人姿勢(shì)至?Arduino可以做到嗎?

視覺(jué)分揀機(jī)器人介紹

排序。為此,您將需要編寫一個(gè)反向運(yùn)動(dòng)學(xué)求解器,它將采用機(jī)器人姿勢(shì)并將其轉(zhuǎn)換為伺服的關(guān)節(jié)角度消息。

盡管您可以自己做,但要做的工作卻很艱巨。因此,MoveIt和ROS為IK求解器提供了一個(gè)不錯(cuò)的接口,可以為您完成所有繁重的三角提升。

簡(jiǎn)短的回答:是的,您可以做一個(gè)簡(jiǎn)單的機(jī)械臂,它將執(zhí)行一個(gè)硬編碼的Arduino草圖,從一個(gè)姿勢(shì)變?yōu)榱硪粋€(gè)姿勢(shì)。但是,如果您想使機(jī)器人更加智能并增加計(jì)算機(jī)視覺(jué)功能,則必須使用MoveIt和ROS。

我制作了一個(gè)非常簡(jiǎn)化的圖表,說(shuō)明MoveIt框架的工作原理。在我們的情況下,它將變得更加簡(jiǎn)單,因?yàn)槲覀儧](méi)有來(lái)自伺服器的反饋,而是要使用/joint_states主題為機(jī)器人控制器提供伺服器的角度。我們只缺少一個(gè)組件,那就是機(jī)器人控制器。

我們還等什么呢?讓我們寫一些機(jī)器人控制器,以便我們的機(jī)器人可以……更加可控。

第4步:機(jī)器人控制器的Arduino代碼

在我們的情況下,使用rosserial運(yùn)行ROS節(jié)點(diǎn)的ArduinoUno將成為機(jī)器人控制器。Arduino草圖代碼已附加到此步驟,也可以在GitHub上使用。從弧度到度,然后使用標(biāo)準(zhǔn)庫(kù)將其傳遞給舵機(jī)。

該解決方案有點(diǎn)笨拙,而不是工業(yè)機(jī)器人的解決方案。理想情況下,應(yīng)該在/FollowJointState主題上發(fā)布運(yùn)動(dòng)軌跡,然后接收關(guān)于/JointState主題的反饋。但是在我們的手臂上,業(yè)余伺服器無(wú)法提供反饋,因此我們將直接訂閱由FakeRobotController節(jié)點(diǎn)發(fā)布的/JointState主題。基本上,我們將假設(shè)傳遞給伺服器的任何角度都可以理想地執(zhí)行。

有關(guān)rosserial如何工作的更多信息,請(qǐng)查閱以下教程

將草圖上傳到ArduinoUno之后,您需要使用串行電纜將其連接到運(yùn)行ROS安裝的計(jì)算機(jī)。

要啟動(dòng)整個(gè)系統(tǒng),請(qǐng)執(zhí)行以下命令

roslaunchmy_arm_xacrorviz_tutorial:=truesudochmod-R777/dev/ttyUSB0rosrunrosserial_pythonserial__port:=/dev/ttyUSB0_baud:=115200

現(xiàn)在,您可以在RVIZ中使用交互式標(biāo)記將機(jī)器人手臂移動(dòng)到一個(gè)姿勢(shì),然后按計(jì)劃并執(zhí)行,使其實(shí)際移至該位置。

魔術(shù)!

現(xiàn)在,我們可以編寫用于斜坡測(cè)試的Python代碼了。好吧,差不多。..

第5步:生成IKfast插件

默認(rèn)情況下,MoveIt建議使用KDL運(yùn)動(dòng)學(xué)求解器,它不會(huì)少于6個(gè)自由度臂真的可以工作。如果您緊跟本教程,那么您會(huì)注意到RVIZ中的手臂模型無(wú)法達(dá)到某些手臂配置應(yīng)支持的姿勢(shì)。

推薦的解決方案是使用OpenRave創(chuàng)建自定義運(yùn)動(dòng)學(xué)求解器。并不是那么困難,但是您必須構(gòu)建它,并且它是來(lái)自源的依賴項(xiàng),或者使用docker容器。

該過(guò)程在本教程中有很好的記錄。確認(rèn)可以在運(yùn)行Ubuntu16.04和ROSKinetic的VM上運(yùn)行。

我使用以下命令生成了求解器

--databaseinversekinematics--robot=--iktype=translation3d--iktests=1000

然后運(yùn)行

自動(dòng)分揀機(jī)器人的構(gòu)成

rosrunmoveit_kinematicscreate_ikfast_moveit_test_robotarmmy_arm_xacro_1_2_

生成MoveItIKfast插件。

整個(gè)過(guò)程比較耗時(shí),但是如果您仔細(xì)閱讀本教程,并不是很困難。如果您對(duì)此部分有疑問(wèn),請(qǐng)?jiān)谠u(píng)論或PM中與我聯(lián)系。

第6步:斜坡測(cè)試!

現(xiàn)在我們可以嘗試進(jìn)行漸變測(cè)試了,我們將使用ROSMoveItPythonAPI執(zhí)行該測(cè)試。

該步驟附帶了Python代碼,該代碼也可以在github存儲(chǔ)庫(kù)中找到。如果您沒(méi)有坡道或想嘗試其他測(cè)試,則需要在代碼中更改機(jī)器人的姿勢(shì)。為此,在已經(jīng)運(yùn)行RVIZ和MoveIt的情況下,首先在終端中執(zhí)行

rostopicecho/rviz_moveit_motion_planning_display/robot_interaction_interactive_marker_topic/feedback

。然后將帶有交互式標(biāo)記的機(jī)器人移動(dòng)到所需位置。位置和方向值將顯示在終端中。只需將它們復(fù)制到Python代碼即可。

要在運(yùn)行RVIZ和rosserial節(jié)點(diǎn)的情況下執(zhí)行

rosrunmy_arm_xacropick/pick_2.py

進(jìn)行斜坡測(cè)試。

瓜果分揀機(jī)器人方案物流分揀機(jī)器人是誰(shuí)發(fā)明的實(shí)驗(yàn)室垃圾分揀機(jī)器人