色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

3天內不再提示

用撥盤控制機械臂

chunhuahua ? 來源:DevicePlus ? 作者:DevicePlus ? 2023-02-23 10:19 ? 次閱讀

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

電位計的工作原理

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

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

poYBAGPy0u-ACcApAAAXVO-wcpw700.jpg

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

所需組件

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

Arduino Uno

pYYBAGPy0keAIANsAAA5UDjpMbU093.png

電位計 & 撥盤

poYBAGPy0vSAebDHAAAeXII6pF0616.jpg

Arduino IDE

poYBAGPy0vqAV_yEAABIrYaUTkE508.png

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

pYYBAGPy0v2AD_ErAAG2b71WvPI668.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?,F在,如果我將撥盤調到最低點,它將返回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。

poYBAGPy0uSAZWPUAAAwvHGEGwU981.jpg

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

pYYBAGPbhjqAbi1JAAAGd6_rQT0867.png

DevicePlus 編輯團隊

設備升級版適用于所有熱愛電子和機電一體化的人。

審核編輯黃宇

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

    關注

    0

    文章

    253

    瀏覽量

    16986
  • 機械臂
    +關注

    關注

    12

    文章

    518

    瀏覽量

    24656
收藏 人收藏

    評論

    相關推薦

    LabView控制三維機械模型

    時間,才發現國內開發的成熟的機械控制程序很少!不知大家有沒有興趣,群策群力,共同開發一套國產的通用的機械
    發表于 11-16 16:01

    機械問題

    機械仿真,什么軟件效果比較好?
    發表于 01-18 16:50

    機械仿真控制

    機械仿真控制
    發表于 09-29 19:23

    工業機械的相關資料推薦

    工業機械搬運工第一章緒論1.1 本課題研究的背景及意義1.2 機械在工業的應用現狀1.3 本課題研究內容第二章機械
    發表于 11-29 07:19

    基于單片機的三軸機械控制怎么實現

    文章目錄三軸機械控制原理三軸機械接線三軸機械
    發表于 12-13 07:14

    機械控制學習

    機械控制-------------控制器1.位置控制機器人最傳統,最常用的控制方式就是位置
    發表于 02-23 07:49

    DSP的機械預測控制

    針對機械的實時控制問題,基于約束預測控制,提出了一種機械實時運動
    發表于 03-26 09:33 ?1次下載
    DSP的<b class='flag-5'>機械</b><b class='flag-5'>臂</b>預測<b class='flag-5'>控制</b>

    dfrobotArduino開發實戰-遙控機械套裝簡介

    遙控機械套裝,本套裝可以通過Arduino編程控制一個桌面機械,還可以WII手柄
    的頭像 發表于 11-29 17:19 ?2531次閱讀
    dfrobotArduino開發實戰-遙控<b class='flag-5'>機械</b><b class='flag-5'>臂</b>套裝簡介

    使用EMG信號控制機械

    電子發燒友網站提供《使用EMG信號控制機械.zip》資料免費下載
    發表于 12-29 11:40 ?2次下載
    使用EMG信號<b class='flag-5'>控制</b><b class='flag-5'>機械</b><b class='flag-5'>臂</b>

    控制機械開源

    電子發燒友網站提供《人控制機械開源.zip》資料免費下載
    發表于 01-31 14:43 ?4次下載
    人<b class='flag-5'>臂</b><b class='flag-5'>控制</b><b class='flag-5'>機械</b><b class='flag-5'>臂</b>開源

    Python控制機械開源分享

    電子發燒友網站提供《Python控制機械開源分享.zip》資料免費下載
    發表于 02-03 10:06 ?3次下載
    Python<b class='flag-5'>控制</b>的<b class='flag-5'>機械</b><b class='flag-5'>臂</b>開源分享

    如何完成機械的運動控制模塊

    使用一個桌面型的六軸機械,在機械的末端安裝一個攝像頭,來進行 人臉識別和跟蹤 的一個功能。該功能分為兩個模塊,一個是 人臉識別模塊 ,另一個是
    的頭像 發表于 02-10 16:07 ?1782次閱讀
    如何完成<b class='flag-5'>機械</b><b class='flag-5'>臂</b>的運動<b class='flag-5'>控制</b>模塊

    實現使用語音控制機械運動

    使用語音控制myCobot機械運動
    的頭像 發表于 03-17 18:13 ?1312次閱讀
    實現使用語音<b class='flag-5'>控制</b><b class='flag-5'>機械</b><b class='flag-5'>臂</b>運動

    PC控制機械設計

    電子發燒友網站提供《PC控制機械設計.zip》資料免費下載
    發表于 06-12 10:41 ?2次下載
    PC<b class='flag-5'>控制</b>的<b class='flag-5'>機械</b><b class='flag-5'>臂</b>設計

    如何去提升機械的位置控制性能?

    1.背景介紹 機械的位置控制機械最重要的功能。機械
    的頭像 發表于 03-05 08:43 ?1061次閱讀
    如何去提升<b class='flag-5'>機械</b><b class='flag-5'>臂</b>的位置<b class='flag-5'>控制</b>性能?
    主站蜘蛛池模板: 久久午夜宫电影网| 超碰在线 视频| 国产乱码伦人偷精品视频| 伦理片在线线手机版韩国免费观看| 无限资源在线观看高清| ebc5恐怖5a26房间| 久久精品午夜一区二区福利| 香艳69xxxxx有声小说| 超碰日韩人妻高清视频| 男女XX00上下抽搐动态图| 一二三四在线观看高清电视剧| 国产精品你懂得| 色多多深夜福利免费观看| a免费在线观看视频| 麻1豆传媒2021精品| 英国video性精品高清最新| 含羞草传媒在线观看| 羞羞答答影院在线| 国产成人精品自拍| 日韩视频中文字幕精品偷拍| 99午夜视频| 伦理片 qvod| 伊人久久综在合线亚洲| 黑人巨大交牲老太| 亚洲AV国产国产久青草| 国产精品久久久久久久A片冻果 | 国产永久免费观看视频软件| 色综合伊人色综合网站| 大香伊人久久| 人体内射精一区二区三区| CHINSEFUCKGAY无套| 年轻老师毛茸茸自由性| 60老妇性xxxxhd| 毛片免费观看的视频| 中文成人在线| 久久久性色精品国产免费观看| 亚洲专区中文字幕视频专区| 娇妻归来在线观看免费完整版电影 | 国内精品日本久久久久影院| 午夜片神马影院福利| 国产精品搬运|