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

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

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

3天內不再提示

怎樣用Arduino和操縱桿控制伺服電機

454398 ? 來源:工程師吳畏 ? 2019-08-01 14:24 ? 次閱讀

電路圖

這個項目的硬件部分非常容易制作。首先,將操縱桿模塊與Arduino連接。操縱桿模塊和Arduino的連接如下:

將操縱桿模塊上的VCC與Arduino上的5V引腳連接

將操縱桿模塊上的GND引腳與Arduino上的GND連接

將操縱桿模塊上的VER引腳與Arduino上的A0連接

將操縱桿模塊上的HOR引腳與Arduino上的A1連接

然后,將伺服電機與Arduino連接。使用Arduino的伺服電機的連接如下:

將兩個伺服電機上的黑線連接到Arduino上的GND

將兩個伺服電機上的紅線連接到Arduino上的5V引腳

將第一個電機上的黃色線連接到Arduino上的引腳8

將第二個電機上的黃色線連接到Arduino上的引腳9

它是如何工作的?

當操縱桿模塊在水平或垂直方向上移動,它給出0到1023之間的值。因此我們可以在代碼中應用一個條件,如果該值小于300或大于700,則伺服器將移動。

當操縱桿沿水平方向移動時,第一個伺服器將向右或向左移動,并在移動樂趣時移動在垂直方向上打勾,第二個伺服將向右或向左移動。

Arduino代碼

#include

Servo servo1;

Servo servo2;

int x_key = A1;

int y_key = A0;

int x_pos;

int y_pos;

int servo1_pin = 8;

int servo2_pin = 9;

int initial_position = 90;

int initial_position1 = 90;

void setup ( ) {

Serial.begin (9600) ;

servo1.attach (servo1_pin ) ;

servo2.attach (servo2_pin ) ;

servo1.write (initial_position);

servo2.write (initial_position1);

pinMode (x_key, INPUT) ;

pinMode (y_key, INPUT) ;

}

void loop ( ) {

x_pos = analogRead (x_key) ;

y_pos = analogRead (y_key) ;

if (x_pos 《 300){

if (initial_position 《 10) { } else{ initial_position = initial_position - 20; servo1.write ( initial_position ) ; delay (100) ; } } if (x_pos 》 700){

if (initial_position 》 180)

{

}

else{

initial_position = initial_position + 20;

servo1.write ( initial_position ) ;

delay (100) ;

}

}

if (y_pos 《 300){

if (initial_position1 《 10) { } else{ initial_position1 = initial_position1 - 20; servo2.write ( initial_position1 ) ; delay (100) ; } } if (y_pos 》 700){

if (initial_position1 》 180)

{

}

else{

initial_position1 = initial_position1 + 20;

servo2.write ( initial_position1 ) ;

delay (100) ;

}

}

}

代碼說明

首先,我們加入了伺服電機庫,這將有助于我們簡化代碼。然后,我們初始化了兩個變量,一個用于兩個伺服電機中的每一個,這將有助于我們使用庫函數。

#include

Servo servo1;

Servo servo2;

然后,我們將引腳初始化我們連接了操縱桿模塊上的垂直和水平引腳以及伺服系統上的信號引腳。

int x_key = A1;

int y_key = A0;

int x_pos;

int y_pos;

int servo1_pin = 8;

int servo2_pin = 9;

int initial_position = 90;

int initial_position1 = 90;

然后我們告訴Arduino我們連接了伺服引腳并移動了伺服電機在初始位置,即90度。之后,我們將操縱桿模塊上的垂直和水平引腳都聲明為輸入引腳。

servo1.attach (servo1_pin ) ;

servo2.attach (servo2_pin ) ;

servo1.write (initial_position);

servo2.write (initial_position1);

pinMode (x_key, INPUT) ;

pinMode (y_key, INPUT) ;

在循環函數中,我們從操縱桿模塊中讀取水平和垂直位置的值并將這些保存在變量中。然后我們應用了一個條件,如果水平位置的值小于300,那么第一個伺服將向右移動。

x_pos = analogRead (x_key) ;

y_pos = analogRead (y_key) ;

if (x_pos 《 300){

if (initial_position 《 10)

{

}

else{

initial_position = initial_position - 20;

servo1.write ( initial_position ) ;

delay (100) ;

}

}

如果水平位置的值大于700 ,然后伺服將向左移動。類似地,對于操縱桿模塊的垂直位置,如果該值小于300,則第二伺服將向左移動,如果該值大于700,則第二伺服將向右移動。

if (x_pos 》 700){

if (initial_position 》 180)

{

}

else{

initial_position = initial_position + 20;

servo1.write ( initial_position ) ;

delay (100) ;

}

}

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

    關注

    86

    文章

    2092

    瀏覽量

    59020
  • Arduino
    +關注

    關注

    188

    文章

    6485

    瀏覽量

    189801
  • 操縱桿
    +關注

    關注

    0

    文章

    69

    瀏覽量

    8674
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    TMAG5170操縱桿附件組裝指南

    電子發燒友網站提供《TMAG5170操縱桿附件組裝指南.pdf》資料免費下載
    發表于 11-28 14:28 ?0次下載
    TMAG5170<b class='flag-5'>操縱桿</b>附件組裝指南

    其利天下技術·伺服電機編碼器的作用及工作原理·低壓伺服電機驅動方案開發

    電機系統中起著至關重要的作用,是實現高效、穩定和精確控制的核心組件。編碼器的作用是什么呢?它的工作原理又是怎樣的?其利天下·伺服電機驅動方案
    的頭像 發表于 11-02 10:38 ?754次閱讀
    其利天下技術·<b class='flag-5'>伺服</b><b class='flag-5'>電機</b>編碼器的作用及工作原理·低壓<b class='flag-5'>伺服</b><b class='flag-5'>電機</b>驅動方案開發

    伺服電機原理及控制應用

    伺服電機(Servo Motor)是一種高精度、高性能的電動機系統,廣泛應用于需要精確控制位置、速度和加速度的場合。 一、伺服電機的工作原理
    的頭像 發表于 10-22 16:58 ?2142次閱讀

    伺服電機有什么,伺服電機可以當普通電機

    一、伺服電機的作用與特點 伺服電機(Servo motor),作為伺服系統中的關鍵組件,扮演著控制
    的頭像 發表于 10-22 16:16 ?1225次閱讀

    什么是伺服電機?伺服電機的工作原理是什么?

    伺服電機是一種高精度的電機,廣泛應用于自動化控制、機器人、精密機械等領域。它能夠根據輸入的控制信號,精確地
    的頭像 發表于 10-22 10:58 ?1656次閱讀

    步進電機伺服控制系統的作用

    步進電機伺服控制系統是一種精密的電機控制系統,它通過精確控制
    的頭像 發表于 09-04 09:46 ?1013次閱讀

    PLSY指令怎樣控制伺服正反轉

    PLSY指令(PLC中的脈沖輸出指令)通常用于控制伺服電機的正反轉和速度。 1. 伺服電機概述 伺服
    的頭像 發表于 08-19 14:51 ?3276次閱讀

    怎樣用Arduino測試鋰電池容量

    本文詳細介紹了如何用Arduino測量鋰電池的容量。并附有電路圖和Arduino的程序代碼。
    的頭像 發表于 07-30 09:14 ?1418次閱讀
    <b class='flag-5'>怎樣用</b><b class='flag-5'>Arduino</b>測試鋰電池容量

    伺服電機也是脈沖控制嗎為什么

    伺服電機是一種高精度、高響應速度的電機,廣泛應用于工業自動化、機器人、航空航天等領域。伺服電機控制
    的頭像 發表于 07-14 10:37 ?1418次閱讀

    伺服驅動器對伺服電機控制要求

    伺服驅動器對伺服電機控制要求是一個復雜而深入的話題。以下是關于伺服驅動器對伺服
    的頭像 發表于 06-14 15:24 ?1145次閱讀

    運動控制伺服電機如何控制

    運動控制伺服電機控制是現代工業自動化領域中一項重要的技術,它涉及到運動控制卡、伺服
    的頭像 發表于 06-12 14:13 ?1318次閱讀

    plc控制伺服電機的指令有哪些

    PLC(可編程邏輯控制器)是一種廣泛應用于工業自動化領域的控制設備。伺服電機作為執行元件,可以通過PLC進行精確控制。以下是關于PLC
    的頭像 發表于 06-12 11:39 ?3280次閱讀

    伺服電機可以當普通電機

    伺服電機和普通電機在很多方面都有所不同,因此不能簡單地將伺服電機當作普通電機使用。
    的頭像 發表于 06-12 10:05 ?1989次閱讀

    伺服電機最簡單控制方法是什么

    伺服電機是一種高精度、高響應速度的電機,廣泛應用于工業自動化、機器人、航空航天等領域。伺服電機控制
    的頭像 發表于 06-05 15:49 ?1212次閱讀

    伺服電機控制器怎么調參數

    伺服電機控制器參數調整是確保伺服系統正常運行和達到預期性能的關鍵步驟。本文將詳細介紹伺服電機
    的頭像 發表于 06-05 15:47 ?3003次閱讀
    主站蜘蛛池模板: 日本v片免费一区二区三区 日本www.色 日本wwwwww | 西西人体www303sw大胆高清 | 色噜噜亚洲男人的天堂 | 很黄很黄叫声床戏免费视频 | 禁漫羞羞a漫入口 | 夜夜爱夜夜操 | 丁香六月综合网 | 国产成人免费无庶挡视频 | 亚洲综合区图片小说区 | 亚洲网站在线看 | 在线亚洲欧美性天天影院 | 特级中国aaa毛片 | 色综合天天色 | 欧美视频精品在线 | 午夜男人天堂 | 91亚洲免费视频 | 日韩三级免费看 | 91久久人澡人人添人人爽 | 黄色三级网站免费 | 成人精品人成网站 | 人人澡人人澡人人看青草 | 国产一级特黄高清免费大片 | 一区二区三区精品国产欧美 | 欧美夜夜| 亚洲综合在线一区 | 九九re | 国产成都一二三四区 | 轻点灬大ji巴太粗太大了小说 | 天天躁狠狠躁夜夜躁 | 久久性色 | 精品视频在线视频 | 国产午夜精品理论片 | 天天摸天天碰色综合网 | 手机看片福利日韩国产 | 色综网| 亚洲伊人久久大香线蕉结合 | 老师今晚让你爽个够 | 97伊人| 亚洲一级毛片中文字幕 | 日本免费黄色网 | 国产高清视频免费最新在线 |