在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

如何分別對機器人上的多個伺服進行獨立操控

jf_AHleW45b ? 來源:機器人網 ? 作者:機器人網 ? 2022-10-27 15:43 ? 次閱讀

我們已經探索了如何構建機械臂并使用超聲波傳感器對其進行控制。如果您想要實現更多的控制功能(以及了解撥盤和旋鈕的工作原理),您可以在項目中添加一個電位計。這些輸入設備使您可以使用可調撥盤來對您的項目進行控制。在本指南中,我們將向您展示如何分別對機器人上的多個伺服進行獨立操控,其中每個伺服對應一個撥盤。

電位計的工作原理

大多數撥盤和旋鈕下面是一個稱為電位計的設備。這種類型的電阻可以調整通過它的電壓,然后將其轉換為可變值。這對于音量調控、亮度調控,或者我們在今天的指南中將要介紹的伺服位置調控都很有用。

電位計的形式可以是撥盤、旋鈕或者滑塊,選擇哪種取決于您的應用需求。在本指南中,我們將使用撥盤來控制機械臂上的多個伺服。這種類型的電位計通常有三個引腳:兩個引腳在外面,連接電源和接地。

中間的引腳是信號引腳,可以連接到Arduino板上的模擬引腳,以測量電位計信號引腳輸出的值與全5V電壓接近的程度。在極端情況下,兩端電壓為0V,開發板讀取的電壓值為0。另一個極端情況下,通過的電壓為全5V,開發板讀取值為1023。也就是說這可以提供1024個可以測量的阻力級別,所以可以有1024個值傳遞到您的腳本中。

所需組件

該項目所需材料與我們之前的使用超聲波傳感器控制機械臂指南中所需材料大致相似。但是,我們將使用一個簡單的撥盤來代替超聲波傳感器。基本電子套件通常帶有這些撥盤,您也可以單獨進行購買。

Arduino Uno

7d6f390e-55c3-11ed-a3b6-dac502259ad0.png

電位計 &撥盤

7d898eee-55c3-11ed-a3b6-dac502259ad0.png

Arduino IDE

7d99a112-55c3-11ed-a3b6-dac502259ad0.png

機器人套件

我們在之前的機器人指南中使用了the meArm套件,在本指南中將使用相同的套件。該套件的某些版本不帶有伺服,因此請查找您所需要的版本。

7db09188-55c3-11ed-a3b6-dac502259ad0.png

您還需要一個簡單的揚聲器模塊和一根USB數據線,我使用的是一個簡單的單聲道揚聲器。

本指南是基于所使用的meArm套件中的TG9z伺服編寫的。根據您所使用的特定伺服系統,可能會有一些變化,因此請務必閱讀材料的相關文檔。

代碼

我們之前的指南更詳細地介紹了伺服的工作原理,因此我們在此處將重點介紹電位計,但是還是之介紹一些有關基礎知識。如果您想將代碼上傳到Arduino并直接跳到接線部分,那么所有代碼如下所示。

#include


Servo myservo1; // create servo object to control a servo
Servo myservo2; // create servo object to control a servo


int potpinA0 = 0; // Assign analog pin to potentiometer
int potpinA1 = 1; // Assign analog pin to potentiometer
int val0 = 0; // Variable to read value from potentiometer, starts at 0
int val1 = 0; // Variable to read value from potentiometer, starts at 0


void setup() {
myservo1.attach(9); // attaches the servo on pin 9 to the servo object
myservo2.attach(10); // attaches the servo on pin 10 to the servo object
Serial.begin(9600); // This will allow you to read how far away your sensor is later


}
void loop() {
val0 = analogRead(potpinA0); // Reads potentiometer value (between 0 and 1023)
val0 = map(val0, 0, 1023, 110, 150); // Scale value to volume (value between 0 and 50)
val1 = analogRead(potpinA1); // Reads potentiometer value (between 0 and 1023)
val1 = map(val1, 0, 1023, 50, 170); // Scale value to volume (value between 0 and 50)
Serial.print(“Pin 1: “);
Serial.print(val0); // Print dial/volume position
Serial.print(“, Pin 2: “);
Serial.print(val1); // Print dial/volume position
Serial.println();


myservo1.write(val0); // Sets servo 1 according to the scaled value
delay(15); // Waits for the servo to get there


myservo2.write(val1); // Sets servo 2 according to the scaled value
delay(15); // Waits for the servo to get there


}


First, let’s take a look at the variables.


int potpinA0 = 0; // Assign analog pin to potentiometer
int val0 = 0; // Variable to read value from potentiometer, starts at 0

這些是在setup()函數之前定義的(確保您已經創建了伺服對象,并在此處包含了Servo.h庫),第一個變量potpinA0將電位計的信號引腳分配給Arduino上的引腳A0。

第二個變量val0將用于存儲從該引腳接收到的值。

val0 = analogRead(potpinA0); // Reads potentiometer value (between 0 and 1023)
val0 = map(val0, 0, 1023, 110, 150); // Scale value to volume (value between 0 and 50)


這里的第一行讀取電位計連接到的模擬引腳值并將其分配給val0。默認情況下,該值將介于0和1023之間。然而,這個范圍對我們的伺服來說太大了,它最多只能旋轉180度(實際上甚至更小,我們一會兒將會看到)。所以,第二行用于將從電位計接收到的值轉換到更易于管理的值。

map() 函數對于該工作很有用,但是對于要輸入的值可能需要反復試驗。雖然您的伺服系統最多可以旋轉180度,但是它們所連接部件的運動可能會有更多限制。試驗出它們的運動范圍,以找出這些伺服可以達到的最小值和最大值。就本項目來說,我發現我的第一個伺服在110度到150度之間運動。

考慮到這些信息, map()函數可以把0到1023的范圍重新映射到110到150。現在,如果我將撥盤調到最低點,它將返回110。如果我將它旋轉到最高點,將返回150。中間的度數將按比例映射到這兩個值之間。

Serial.print(“Pin 1: “);
Serial.print(val0); // Print dial/volume position
Serial.print(“, Pin 2: “);
Serial.print(val1); // Print dial/volume position
Serial.println();

此部分將返回串行監視器中電位計的值(重新映射之后)。這對于在連接伺服之前對值進行測試很有用。

myservo1.write(val0); // Sets servo 1 according to the scaled value
delay(15); // Waits for the servo to get there

最后,這個命令會告訴伺服在重新映射電位計信號后旋轉到指定位置。延遲命令會給程序一點時間來完成旋轉動作。

完整代碼包括上述的兩組各種命令,其中為多個伺服分配了變量,每個伺服都可以進行獨立操作。您可以添加盡可能多的伺服,只要您的開發板能夠處理。請記住,每個伺服都需要在map()函數中指定自己特定的運動范圍。

接線

與所有的伺服項目一樣,在連接伺服系統之前,最好進行盡可能多的編碼工作和測試。準備好后,將代碼上傳到您的Arduino,然后按照如下方式連接線路(您可能需要為本項目使用一個面包板):

● 將每個電位計上的第一個引腳連接到GND。
● 將每個電位計上的第三個引腳連接到5V。
● 將第一個電位計上的最后一個引腳連接到Arduino上的引腳A0。如果您使用第二個電位計和伺服組合(像完整代碼里的那樣),請將其連接到引腳A1。對于您所添加的每個電位計都以此類推。
● 將伺服上的電源線連接到5V,將地線連接到GND。
● 將伺服上的黃色信號線連接到引腳9。如果您使用第二個伺服,將其信號線連接到引腳10。

7dd68eb0-55c3-11ed-a3b6-dac502259ad0.png

當完成了所有連接,并上傳代碼后,您應該能夠旋轉撥盤并且從伺服看到相應的運動。每個伺服將通過自己的電位計獨立進行操作。但是,我們也有可能可以通過一個撥盤控制多個伺服,甚至可以編寫一個使其沿預設路徑自動移動的草圖。嘗試在項目中添加更多伺服,并嘗試使用其他方法來對伺服進行控制。

審核編輯 :李倩


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 機器人
    +關注

    關注

    213

    文章

    29553

    瀏覽量

    211884
  • 電位計
    +關注

    關注

    0

    文章

    253

    瀏覽量

    17315
  • 機械臂
    +關注

    關注

    13

    文章

    547

    瀏覽量

    25267

原文標題:機械臂上多個伺服獨立操控的實現

文章出處:【微信號:旺材伺服與運動控制,微信公眾號:旺材伺服與運動控制】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦
    熱點推薦

    盤點#機器人開發平臺

    地瓜機器人RDK X5開發套件地瓜機器人RDK X5開發套件產品介紹 旭日5芯片10TOPs算力-電子發燒友網機器人開發套件 Kria KR260機器人開發套件 Kria KR260-
    發表于 05-13 15:02

    【「# ROS 2智能機器人開發實踐」閱讀體驗】機器人入門的引路書

    ROS的全稱:Robot Operating System 機器人操作系統 ROS的 目的 :ROS支持通用庫,是通信總線,協調多個傳感器 為了解決機器人里各廠商模塊不通用的問題,讓機器人
    發表于 04-30 01:05

    【「# ROS 2智能機器人開發實踐」閱讀體驗】+內容初識

    、軟件開發、系統集成等環節,讓讀者能夠全面了解一個完整的機器人應用開發過程。 實踐項目:除了案例分析,書中還設計了一些實踐項目,供讀者進行動手實踐。這些實踐項目涵蓋了從簡單的傳感器數據處理到復雜的多機器人系統開發等
    發表于 04-27 11:24

    ABB擬分拆機器人業務獨立上市

    一石激起千層浪,ABB擬分拆機器人業務獨立上市在機器人圈子掀起軒然大波。
    的頭像 發表于 04-21 10:00 ?346次閱讀

    其利天下技術·伺服電機在機器人技術中的應用

    伺服電機作為機器人運動控制的核心部件,其高精度、高響應速度和高負載能力等特點,為機器人的精確運動提供了有力保障。在工業機器人、醫療機器人、服
    的頭像 發表于 03-07 16:38 ?1175次閱讀
    其利天下技術·<b class='flag-5'>伺服</b>電機在<b class='flag-5'>機器人</b>技術中的應用

    伺服電動缸在人形機器人中的應用

    集成高精密減速器、高性能電機、絲桿機構、傳感器以及伺服控制系統,伺服電動缸在保證更小體積的基礎實現了驅控一體化,從而滿足了人形機器人復雜場景的應用需求。四、提升性能與可靠性德邁傳動
    發表于 02-06 09:04

    【「具身智能機器人系統」閱讀體驗】2.具身智能機器人的基礎模塊

    非常重要的地位。 先說這個自主機器人的計算系統。計算系統是自主機器人的關鍵部件。自主機器人通過智能計算系統與物理世界交互,自主地完成任務。通常會包括幾個關鍵的模塊,分別是傳感模塊,感知
    發表于 01-04 19:22

    開源項目!能夠精確地行走、跳舞和執行復雜動作的機器人—Tillu

    學習者和愛好者的理想伙伴。 創新設計 Tillu的設計靈感來自廣受歡迎的Otto DIY機器人,其設計過程包括在Fusion 360中進行CAD建模和精確的3D打印,以實現從堅固的伺服驅動腿部到模塊化
    發表于 01-02 17:24

    【「具身智能機器人系統」閱讀體驗】2.具身智能機器人大模型

    近年來,人工智能領域的大模型技術在多個方向上取得了突破性的進展,特別是在機器人控制領域展現出了巨大的潛力。在“具身智能機器人大模型”部分,作者研究并探討了大模型如何提升機器人的能力,大
    發表于 12-29 23:04

    伺服系統在機器人中的作用 伺服系統與傳統電機對比

    伺服系統在機器人中的作用 機器人技術是現代工業自動化的重要組成部分,它涉及到機械、電子、計算機科學、控制理論等多個學科。在這些技術中,伺服
    的頭像 發表于 12-10 10:18 ?1438次閱讀

    國產可編程硅振在機器人伺服系統中的應用,替換SiTime

    國產可編程硅振在機器人伺服系統中的應用,替換SiTime
    的頭像 發表于 09-26 10:09 ?578次閱讀
    國產可編程硅振在<b class='flag-5'>機器人</b><b class='flag-5'>伺服</b>系統中的應用,替換SiTime

    伺服控制機器人的控制方式有哪些

    伺服控制機器人是一種高度精確的自動化設備,它能夠執行復雜的任務,如精確定位、重復運動和力控制。伺服控制系統是機器人技術中的核心部分,它負責接收指令、處理信息并驅動
    的頭像 發表于 09-04 09:16 ?963次閱讀

    開源項目!用ESP32做一個可愛的無用機器人

    巧妙設計的杠桿將開關推回“關”位置。這種玩具很常見,許多人已經制作并上傳到YouTube。 作者每年都會挑戰自己制作一個技術產品,今年他決定制作這個復雜的項目——可愛無用機器人。這個機器人參考了日本
    發表于 09-03 09:34

    開源項目!用ESP32做一個可愛的無用機器人

    巧妙設計的杠桿將開關推回“關”位置。這種玩具很常見,許多人已經制作并上傳到YouTube。 作者每年都會挑戰自己制作一個技術產品,今年他決定制作這個復雜的項目——可愛無用機器人。這個機器人參考了
    發表于 08-30 14:50

    Al大模型機器人

    理解能力強大: AI大模型機器人可以理解和生成自然語言,能夠進行復雜的對話和語言任務。它們能夠識別語言中的語義、語境和情感,并據此作出適當的回應。廣泛的知識儲備: 這些模型基于大規模的數據集進行訓練,擁有
    發表于 07-05 08:52
    主站蜘蛛池模板: 色在线视频观看 | 毛片8| 亚洲αv久久久噜噜噜噜噜 亚洲аv电影天堂网 | 色多多在线观看高清免费 | 中文字幕一区2区3区 | 秋霞特色大片18入口私人高清 | 欧美亚洲在线 | 国产美女主播在线 | 亚洲第一区视频 | 免费在线观看大片影视大全 | 美脚连裤袜老师正在播放 | 黄色在线视频免费 | 六月婷婷综合 | 久久综合狠狠综合久久 | 女人张开腿 让男人桶个爽 免费观看 | 欧美成人性色区 | 亚洲欧美在线观看 | 天堂男人网 | 视频在线一区 | www.色播| 日本高清免费aaaaa大片视频 | 午夜在线视频观看 | 大尺度在线 | 新天堂网| 久久久国产精品免费看 | 一级免费视频 | 2018国产精品 | 色天天综合色天天看 | 日操夜操 | 亚洲五月六月丁香激情 | 四虎午夜剧场 | 乱高h亲女| 狠狠综合欧美综合欧美色 | 好黄好猛好爽好痛的视频 | 大尺度在线播放 | 色妞视频资源在线观看 | 国产大片免费观看中文字幕 | 免费精品美女久久久久久久久久 | 黄色视屏在线免费播放 | 台湾久久 | 日本.www |