精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

電子發燒友App

硬聲App

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示
電子發燒友網>電子資料下載>電子資料>通過以太網控制的機械臂

通過以太網控制的機械臂

2022-11-03 | zip | 0.29 MB | 次下載 | 2積分

資料介紹

描述

介紹

我喜歡機器人手臂。我喜歡你只需要一些簡單的機械部件、一些伺服器或電機、一個好的軟件,你就可以獲得一個不僅壯觀有趣而且真正有用的設備。我想建立一個,因為我有一個我非常喜歡的機器人課程。

當你建造一個機械臂時,你可以學到很多東西,所以我認為這是一個很好的中級項目,可以加深你在機器人方面的知識。開始吧!

機械臂

你可以從大約 20 美元購買機器人手臂。為了進行實驗,我想從更便宜的開始。稍后我將建造或購買更強大的機器人手臂,但現在我將在Banggood 制作這款25 美元的 DIY 機器人手臂。

這是一個 4DoF(自由度)機械臂,其中 3 個伺服器用于移動,一個用于執行器(我在項目中將其稱為夾具)。這意味著夾具可以移動到特定區域的任何位置,但其角度不能改變。這是一個很大的限制,但現在還可以,它仍然適用于很多事情。

DIY 套件帶有 4 個伺服器,因此實際上除了控制器之外,您還可以獲得構建機器人手臂的每個組件。這些伺服器還不錯,但我更喜歡這些:

這些伺服系統比藍色的伺服系統快,并且使用金屬齒輪而不是塑料。

機器人零件有 4 個塑料片。您必須從這些表中刪除零件。

?
poYBAGNiUYiAB8rhAAncu09Sc98365.jpg
組裝機械臂
?

由一堆零件組成的機械臂套件。我建議您觀看以下視頻。在這段視頻中,一個俄羅斯人正在建造相同類型的機械臂。建筑部分于7:43開始。

?

我在包裝上獲得了有關如何構建機械臂的鏈接,但圖像和說明的質量都非常低。那個視頻好多了 可能你可以弄清楚什么是什么,但如果你這樣做,你最終會陷入組裝、拆卸、重新組裝的幾乎無限循環。

插入舵機時要非常小心。當您擰緊螺絲時,這種塑料的設計很容易折斷。螺釘的最佳緊固度對機器人的其他部分也很重要。把它們弄得太緊,你就不能用伺服系統移動機器人手臂的各個部分。

經過一番搭建后,您將擁有自己的機械臂。

?
poYBAGNiUZWAbLhiAAqgBB-CNmg389.jpg
?

定位伺服系統有足夠長的電纜,但夾具需要更長的電纜。我拆開了那個伺服器,拆掉了舊電纜,我使用了至少兩倍長的電纜。

好吧,機器人手臂已經準備好了,但很可能你想以某種方式控制它。為此我需要一個微控制器,因此我選擇了我的Arduino 101來完成這項工作。

?
poYBAGNiUZeAP0LSAABXpagkdAY172.jpg
Arduino 101
?

它是唯一使用英特爾微控制器(英特爾居里)的官方 Arduino 板。它具有內置陀螺儀和加速度計。它也有藍牙,所以它讓我有可能在未來通過 BLE 控制機器人。該板的另一個非常有用的功能是串行通信的工作方式。與大多數 Arduino 不同,USB 串行和引腳 1 和 0(TX 和 RX)上的 UART 并不相同。它有它的好處,比如當我重新編程 Arduino 時,我不必從引腳 0 和 1 斷開任何其他通信電路。它也可用于調試目的。

如果你想使用 USB 端口的串口,那么你必須使用“Serial”,如果你想使用 GPIO0 和 GPIO1 引腳,那么你有“Serial1”

?
pYYBAGNiUZqAGgujAADsebBcjp0234.png
?

Arduino 101 有 4 個支持 PWM 的 GPIO(GPIO3、GPIO5、GPIO6 和 GPIO9),我用它們來控制舵機。

溝通

我的機械臂可以通過串口進行控制(具體為 Serial1)。為此,我使用了最新的通信模塊WIZ750SR

?
poYBAGNiUbOAeyE3AA68aJUpYkw989.jpg
WIZ750SR
?

這是一個帶有 Cortex-M0 MCU 的小型以太網模塊。它的基本功能是串行轉以太網模塊,但您可以輕松地重新編程模塊以滿足您的需求。如果你愿意,你可以把這個板變成一個 I2C 到以太網板。

一個非常酷的功能是板載 TCP 服務器(或客戶端)。使用 TCP 服務器,您可以遠程控制 Arduino,就像您通過 USB 串行所做的一樣,但可以在世界任何地方!在 Arduino 方面,它是完全透明的。您無需在草圖中添加任何額外代碼即可使用此模塊。

?

?
pYYBAGNiUdSAKtkiABHcjhtt7Pc728.jpg
WIZ750SR 在其評估板上
?

?

我還有一個 WIZ750SR-TTL-EVB 評估板。我可以為 WIZ750SR 供電并有一個調試 USB 端口,但除了一些早期的實驗外,我沒有使用它。

?
poYBAGNiUdiAHa9KAADaPoTnnag839.png
WIZ750SR 的引腳排列
?

Arduino 101 和 WIZ750SR 都使用 3.3V,因此我不必對 TX 和 RX 引腳使用電平轉換。Arduino 還通過其電源為以太網模塊供電。該電路非常簡單,您可以在本項目的原理圖部分找到它。舵機有自己的 5V 電源。

?
pYYBAGNiUfuAAosBABCjy2B1Fm8771.jpg
?

設置模塊

要使用此板,您必須先對其進行配置。我不會重新記錄這部分,因為 WIZnet 的人已經在這里完成了,你可以確定你總是在那里獲得最新的文檔。

他們的文檔很棒,但我有一些值得了解的信息,并且我有一些(已解決的)問題值得分享。

首先,您可以從評估板的 USB 端口為開發板供電,但除此之外,此端口主要用于調試和刷寫。我相信您無法使用 USB 端口與 WIZ750SR 的 TCP 服務器通信,但如果您連接到此 COM 端口,您將收到調試信息。這讓我一開始有些困惑,因為我不知道會發生什么。

?
poYBAGNiUgGAUeagAAM4KlRnWkI071.jpg
用跳線短接 RX TX 引腳,以測試與回波的連接
?

其次,如果 WIZ750SR 連接到您的網絡時藍色 LED 亮起,那么您的板應該正常工作,繼續使用配置工具,它應該找到板。

當我嘗試在配置工具中搜索設備時,我最大的問題發生了。第一次它工作得很好,但后來我沒有時間,所以我停在那里。兩周后,我再次嘗試執行此操作,但在多個操作系統和多個網絡上的計算機下再也找不到板子了。

我使用最新固件通過評估板的調試 USB 端口進行了重新刷新,并且它工作正常。我的 Windows PC 仍然找不到它,但 Ubuntu 下的 Python 版本可以。我不確定是什么問題,但這些步驟最終解決了我的問題。成功配置 WIZ750SR 后,我的 Windows PC 也可以再次找到它,所以我繼續工作。

正如我所讀到的,帶有虛擬網絡適配器調用的虛擬機也會弄亂搜索,所以如果你在搜索時遇到問題,你應該看看。

測試 TCP 通信的一個很好的工具是NetCat 使用此軟件,您可以連接到 WIZ750SR 上的 TCP 服務器。安裝 NetCat 后,使用此命令進行連接:

nc [tcp_server_ip] [tcp_server_port]  

之后,您可以直接從 WIZ750SR 發送和接收數據。我經常使用這個工具。

從 A 移動到 B

要移動機械臂,您必須告訴控制器您想要什么。最簡單的方法是直接更新所有舵機的角度。更新關節角度可以通過一些試驗和錯誤來完成,它實際上可以很好地工作。

瑣事:使用關節角度控制機器人手臂存在一個問題:很難找到特定 XYZ 坐標的最佳關節角度,以及可選的 Roll、Pitch 和 Yaw 角度(世界坐標)。從關節角度和線段長度獲取世界坐標是一個非常簡單的計算,但從世界坐標獲取關節角度是一個復雜得多的過程。一種稱為逆運動學的解決方案就是這樣做的工具。

在我的下一個機器人手臂項目中,我將使用逆運動學來控制具有世界坐標的機器人手臂,但現在我將僅使用關節角度來控制機器人。

?
pYYBAGNiUhyAauP_AA5WzZCQ9vM899.jpg
?

系統的速度是這里的一個關鍵點。伺服系統非常快,但它們仍然需要時間才能到達接收到的位置。另一方面,跳線不喜歡快速移動,所以我不得不放慢速度。無論是在硬件部分還是軟件部分。

我通過為系統創建路徑計算并插入延遲來做到這一點。當您為機器人手臂發送新的關節角度時,您必須提供一個額外的參數:速度(mDelay)。基本上,您是在告訴機械臂控制器循環的最小步進時間。路徑計算器將計算每個定位伺服系統的可選步長。這意味著所有舵機將在大約同一時間達到其目標,并且速度取決于延遲。結果是每次都非常漂亮和平滑的線性運動。

效應器以不同的方式工作。基本上它只能有打開或關閉(具有3個不同級別的關閉強度)狀態,沒有平滑過渡。顯然你會想盡快抓住物體,同時移動應該是平滑和漂亮的。

該系統目前有兩種類型的命令。這是他們兩個的示例:

  • G 1 --> 輕輕合上夾具。0 表示打開
  • A 10 130 120 110 --> 以 10 毫秒的步進時間、130o 上關節角度??、120o 下關節角度和 110o 基礎旋轉器角度移動機器人手臂。

用于遠程控制的 Android 應用程序

好的,所以此時我可以從世界任何地方控制機械臂,但我必須手動編寫每個新命令。這種方式并不好玩。我需要一種更加用戶友好的方式來控制機械臂,所以我制作了一個 Android 應用程序來做到這一點。

?

該應用程序有一個 TCP 客戶端,因此它可以直接連接到 WIZ750SR 的 TCP 服務器。機械臂不存儲舊動作和未來動作的圖。它只知道當前的目標位置。這意味著應用程序不僅將整個運動圖發送到機械臂,而且會根據位置反饋定期向機械臂發送新位置。如果您關閉應用程序或斷開與 WIZ750SR 的連接,則機械臂將在到達最后接收到的位置后立即停止移動。

連接到機械臂后,您將進入配置屏幕。它包含 3 頁。第一個是 Run(稍后會詳細介紹),第二個是 Init,第三個是 Loop。Init 和 Loop 基本相同,它們唯一的區別是它們保存位置的位置。

?
pYYBAGNiUiGAfjGxAAD59y6zHqw754.png
在初始化頁面上配置屏幕
?

除了保存按鈕外,屏幕還包含 4 個搜索欄和一個抓手按鈕。這些滑塊用于設置移動的位置和速度,而夾具按鈕用于打開或關閉效應器。所有更改都是瞬時的,因此您會立即看到機器人手臂上的新位置,但是您必須單擊保存按鈕才能將其添加到繪圖中。這是一個簡短的演示:

?

如果同時更改夾具狀態和機械臂位置,則會將其保存為兩個不同的命令。首先是夾具命令,然后是位置命令。

?
poYBAGNiUiOAWYwKAADovEkTMUE066.png
帶有 init 和 loop 塊的示例控制圖
?

如您所料,情節的運行將從 init 開始。初始化和循環就像 Arduino 的設置和循環功能一樣工作。Init 適用于以后不會重復的動作。當初始化命令完成后,循環命令將隨之而來。循環命令將永遠重復,或者至少在您停止繪圖之前重復。如果您不需要循環或初始化,則只需將該字段留空。

這些字段是 EditText 字段,這意味著您可以輕松地編輯或刪除它們的內容。如果您不想使用滑塊,您可以手動編寫命令。您也可以復制和粘貼該圖。該應用程序將記住您運行的最后一個繪圖以供以后使用。

“配置”下的第一行用作測試的視覺反饋。左側部分顯示機器人手臂的最新目標位置(S - 發送),而右側字段是它的當前位置(R - 接收)。只要目標和當前位置相同,應用程序就會向機械臂發送一個新的目標位置。

Received command explanation:
5 0 100 116 60 --> Speed: 5, Gripper: open (0), upper joint angle: 100, lower joint angle: 116, base rotator angle: 60

?

如您所見,當只有 init 時,機械臂在執行完 init 命令后立即停止。

使用我的應用程序,您可以做很多事情,但未來還有很多改進的可能性。我計劃在圖中使用函數、條件控制、帶參數的循環等。

?

如果你想構建一個類似的機器人,你可以在這個項目的代碼段中找到 Arduino 代碼和機器人手臂控制器應用程序。

結果

我同時使用了 init 和 loop 命令,它允許我執行一些中等復雜的任務。這是一個關于我的機器人手臂如何設置一些橡皮鴨(init)然后開始一個接一個地移動它們的視頻,永遠(循環)。

?

正如您所看到的,如果您考慮到這是一個非常便宜的機械臂,具有嚴重的硬件相關限制,運動非常流暢、連續和準確。

結論

我的軟件運行得很好,將來我一定會努力改進這個機械臂,或者我會建造一個更先進的。我實現了我為這個項目計劃的一切,沒有任何嚴重的阻塞問題。

Arduino 101 非常適合這個用途。該板的唯一限制是僅有 4 個支持 PWM 的 GPIO。如果我將來構建一個自由度更高的新機械臂可能會成為問題,但是單獨的 USB 串行和 GPIO 串行在開發過程中非常有用,并且該板還可以提供大量計算能力。

我認為 Android 應用程序是個好主意,但是我必須使它更健壯、用戶友好并增加其功能。目前它是一個 alpha 版本。

WIZ750SR 是一個非常好的驚喜。我擔心這塊板會出現更多問題,但在配置之后,它工作得很好。它是完全透明的,我對此沒有任何問題。這是一個非常易于使用的設備,也是我曾經與我的任何微控制器一起使用過的最好的以太網模塊。

使用機械臂工作非常有趣,所以我一定會更多地了解它,然后與您分享我的知識!感謝您的閱讀!

?
?
?

?


下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數據手冊
  2. 1.06 MB  |  532次下載  |  免費
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費
  5. 3TC358743XBG評估板參考手冊
  6. 1.36 MB  |  330次下載  |  免費
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費
  9. 5元宇宙深度解析—未來的未來-風口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費
  11. 6迪文DGUS開發指南
  12. 31.67 MB  |  194次下載  |  免費
  13. 7元宇宙底層硬件系列報告
  14. 13.42 MB  |  182次下載  |  免費
  15. 8FP5207XR-G1中文應用手冊
  16. 1.09 MB  |  178次下載  |  免費

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費
  3. 2555集成電路應用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費
  7. 4開關電源設計實例指南
  8. 未知  |  21549次下載  |  免費
  9. 5電氣工程師手冊免費下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費
  11. 6數字電路基礎pdf(下載)
  12. 未知  |  13750次下載  |  免費
  13. 7電子制作實例集錦 下載
  14. 未知  |  8113次下載  |  免費
  15. 8《LED驅動電路設計》 溫德爾著
  16. 0.00 MB  |  6656次下載  |  免費

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費
  3. 2protel99se軟件下載(可英文版轉中文版)
  4. 78.1 MB  |  537798次下載  |  免費
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費
  11. 6電路仿真軟件multisim 10.0免費下載
  12. 340992  |  191187次下載  |  免費
  13. 7十天學會AVR單片機與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費
  15. 8proe5.0野火版下載(中文版免費下載)
  16. 未知  |  138040次下載  |  免費