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

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

用Arduino控制伺服電機(jī)來(lái)演奏樂(lè)器!

話多顯蠢 ? 2023-02-20 10:15 ? 次閱讀

第1篇:用Arduino控制曲別針電動(dòng)機(jī)
第2篇:非接觸式開(kāi)關(guān)的制作與控制
第3篇:自制電磁執(zhí)行器的制作方法
第4篇:享受控制RGB LED燈的樂(lè)趣

pYYBAGPyzJGAeYawAAHQ4kDhDdw318.jpg

我們推出了一項(xiàng)新計(jì)劃,即通過(guò)使用了Arduino的簡(jiǎn)單制作來(lái)學(xué)習(xí)電子制作的原理和基礎(chǔ)知識(shí)。此次為我們分享的嘉賓是伊藤尚未先生,他活躍于媒體藝術(shù)領(lǐng)域,并且在書籍領(lǐng)域以講解“更深層次的原理”而聞名。在第5篇,也就是最后一篇,我們將用Arduino來(lái)控制伺服電機(jī)

目錄

前言

什么是伺服電機(jī)?

與Arduino連接

通過(guò)Arduino控制來(lái)演奏樂(lè)器!

1. 前言

大家好!我是伊藤尚未。

在這個(gè)連載系列中,我們嘗試通過(guò)Arduino控制讓各種作品動(dòng)起來(lái),考慮到還有我沒(méi)有試過(guò)的部件,所以我決定借此機(jī)會(huì)嘗試一下,那就是“伺服電機(jī)”。

說(shuō)起“微控制器+動(dòng)作”,就會(huì)讓人想起機(jī)器人,但就我而言,我用過(guò)一些比較原始的東西(比如田宮齒輪和萬(wàn)寶至電機(jī))來(lái)實(shí)現(xiàn)。當(dāng)然,對(duì)于現(xiàn)代的機(jī)器人而言,使用的運(yùn)動(dòng)部件就是伺服電機(jī)。在我的孩提時(shí)代,曾經(jīng)有一陣電動(dòng)遙控車熱,我記得我經(jīng)常和朋友們一起玩。

當(dāng)然,當(dāng)時(shí)也是超級(jí)跑車熱潮的時(shí)代,品牌包括蘭博基尼、藍(lán)旗亞、保時(shí)捷等豪車。我記得當(dāng)時(shí)由于無(wú)線電控制器的手柄和加速器使用了伺服電機(jī),遙控車會(huì)根據(jù)控制器操縱桿的移動(dòng)而移動(dòng),讓我覺(jué)得很不可思議,從那時(shí)起我對(duì)伺服電機(jī)的表現(xiàn)就佩服得很。

那時(shí),我只能按照“它之所以那樣動(dòng)作,是因?yàn)樗褪悄菢拥臋C(jī)制”來(lái)理解,但現(xiàn)在我深刻意識(shí)到在不可思議中思考“那種機(jī)制”是很重要的。

近年來(lái),機(jī)器人中所用的伺服電機(jī)通常是方形外殼,帶有圓盤或矩形聯(lián)軸器(舵機(jī)),與以前的樣子相比幾乎沒(méi)什么變化,因此能一眼就看出來(lái)。不過(guò)考慮到可能有人對(duì)它的內(nèi)部并不是非常了解,所以我想借此機(jī)會(huì)再重新研究一下。

2. 什么是伺服電機(jī)?

從廣義上講,伺服電機(jī)具有軸旋轉(zhuǎn)檢測(cè)機(jī)構(gòu),并具有旋轉(zhuǎn)角度、旋轉(zhuǎn)位置和速度等的控制功能,因此也用于重型機(jī)械和工廠生產(chǎn)線等應(yīng)用領(lǐng)域。

不過(guò)對(duì)于我們來(lái)說(shuō),各種伺服電機(jī)中,無(wú)線電遙控設(shè)備和模型機(jī)器人等設(shè)備中使用的電機(jī)類型是我們?cè)?a target="_blank">電子制作過(guò)程中最為熟悉的。當(dāng)然,在用Arduino等微控制器來(lái)使運(yùn)動(dòng)部件像機(jī)器人一樣動(dòng)起來(lái)的應(yīng)用中,也會(huì)使用常用的伺服電機(jī)。

那么,檢測(cè)電機(jī)旋轉(zhuǎn)的機(jī)構(gòu)到底是怎樣的呢?

從結(jié)構(gòu)圖看,多為下述結(jié)構(gòu),看起來(lái)并不陌生的樣子。

poYBAGPyzJOAZE34AABMhA5PEnk736.png

不管怎樣,我想看看它的真面貌,所以把它拆解開(kāi)了。樣品為大小正合適的GWS公司生產(chǎn)的S03T/2BBMG/FUTABA。

pYYBAGPyzJSAEnAwAAE0RHG3qW0994.jpg

首先,我拆下舵機(jī)和四個(gè)角的螺絲,并將外殼拆下來(lái)。外殼分三部分,拆下頂蓋后會(huì)露出齒輪組。

齒輪是金屬的,用軸承連接,結(jié)構(gòu)上很牢固??雌饋?lái)是4檔減速齒輪,涂了很多潤(rùn)滑脂,可以想像力矩還是蠻大的。

poYBAGPyzJeAYyFWAAF2hhoNBKs227.jpg

拆下中間的外殼后,就可以看到電機(jī)了。照片右側(cè)的圓柱體金屬部分是電機(jī),左側(cè)是控制器部分。左側(cè)有舵機(jī)軸,因此可以推斷通過(guò)這里來(lái)檢測(cè)旋轉(zhuǎn)情況。

poYBAGPyzJmAbbKwAAEow6PjaaQ960.jpg

當(dāng)拆掉舵機(jī)軸后,可以看到軸本身就是一個(gè)旋轉(zhuǎn)傳感器。用手指轉(zhuǎn)動(dòng)這個(gè)軸,從旋轉(zhuǎn)角度和觸感上可以判斷出,這是一個(gè)通過(guò)物理旋轉(zhuǎn)的滑動(dòng)接觸點(diǎn)來(lái)獲得電阻值變化的可調(diào)電阻器、電位器。通過(guò)它可以檢測(cè)舵機(jī)的旋轉(zhuǎn)位置。果真和結(jié)構(gòu)圖是一致的。

pYYBAGPyzJuAK8s2AAFJ8hh5qbU723.jpg

在這個(gè)電位器的底部有電路,通過(guò)讀取其電阻值,并將電阻值與輸入信號(hào)進(jìn)行比較,然后將其停在平衡點(diǎn)上,應(yīng)該可以使其按所需角度旋轉(zhuǎn)。

所以,一共有三個(gè)引腳,一個(gè)是GND,一個(gè)是正電源,一個(gè)是信號(hào)線,可以根據(jù)GND和正電源之間的電壓差(比值)來(lái)控制。使用這種機(jī)制,即使由于電池狀態(tài)等因素造成一些電壓波動(dòng),也可以毫無(wú)問(wèn)題地控制旋轉(zhuǎn)角度。

要從Arduino端控制伺服電機(jī)的話,已經(jīng)有一個(gè)庫(kù)可以用,我會(huì)直接使用這個(gè)庫(kù),其輸出信號(hào)是PWM。PWM是在一個(gè)周期內(nèi)改變脈沖的寬度,最終以電壓變化體現(xiàn)出來(lái)。

poYBAGPyzJ2AWpkKAAAsKR_GNoM525.png

在這里,讓我想起了我的童年回憶。當(dāng)時(shí)的無(wú)線電控制器是否裝有微控制器?那時(shí)候市場(chǎng)上出現(xiàn)的是單板微控制器等較大型的產(chǎn)品。我記得當(dāng)時(shí)我想知道控制器里面都有什么而把它拆開(kāi)了,但不記得里面是否有微控制器了。可能是因?yàn)樗?a href="http://www.nxhydt.com/analog/" target="_blank">模擬的。

如果使用的是PWM,那么應(yīng)該是通過(guò)硬件進(jìn)行處理的吧。如果這樣想的話,伺服電機(jī)不僅可以用通過(guò)PWM進(jìn)行控制,應(yīng)該也可以通過(guò)模擬進(jìn)行控制。如果按照前面提到的控制信號(hào)是GND和正電源之間的電壓比來(lái)考慮的話,當(dāng)然模擬也應(yīng)該沒(méi)有問(wèn)題,也就是說(shuō),伺服電機(jī)本身和以前的模擬輸入時(shí)幾乎沒(méi)有什么變化。

沒(méi)有變化的東西屬于“老物件”,但這里的“老物件”不等于“壞東西”,而是“穩(wěn)定的東西”,所以伺服電機(jī)在技術(shù)方面的評(píng)價(jià)是很高的。

不過(guò),由于IC也在日益小型化,所以伺服電機(jī)的控制電路部分也已經(jīng)改進(jìn),應(yīng)該可以更適當(dāng)?shù)靥幚鞵WM了。

3. 與Arduino連接

現(xiàn)在,我們嘗試將伺服電機(jī)與Arduino連接起來(lái)。GND、電源、信號(hào)的引腳排列會(huì)因伺服電機(jī)而異,所以讓我們來(lái)確認(rèn)一下。

這次我用的是GWS的S03T/2BBMG/FUTABA,也就是前面拆卸用的那種。引腳排列如下所示:

poYBAGPyzJ6AdLA5AACOIJB6ubk316.jpg

從照片左側(cè)開(kāi)始,引線依次是黑色、紅色和白色,它們分別連接到GND、5V(正電源)和信號(hào)線。

與Arduino的連接方法如下:

pYYBAGPyzKCAC8SKAABGAYemVkE790.png

我使用現(xiàn)有的庫(kù)嘗試編寫了如下草圖:

讀取伺服電機(jī)的庫(kù)程序并輸出到引腳9。myServe.write的括號(hào)里面表示角度,所以我將其設(shè)置為90度是中間位置,并以此為基準(zhǔn)向左右擺動(dòng)45度。從伺服電機(jī)的功能上來(lái)看,可以以中間位置為基準(zhǔn)向左右擺動(dòng)90度,但如果改變數(shù)值時(shí)像“0”、“180”那樣的角度太多,電機(jī)就會(huì)顫抖。我不知道具體原因,可能是由于旋轉(zhuǎn)傳感器是模擬的,所以數(shù)值上有些問(wèn)題。鑒于此,我決定在不受影響的范圍內(nèi)使用。

如果在舵機(jī)上安裝一個(gè)搖臂,那么擺動(dòng)幅度也會(huì)變大,所以我在這個(gè)搖臂頂端安裝了之前自制的執(zhí)行器。這種執(zhí)行器的機(jī)制是將漆包線纏繞在吸管上,做成線圈,將釘子插入吸管中,當(dāng)有電流流過(guò)時(shí),釘子就會(huì)彈上去。也就是一種自制的螺線管。

為了驅(qū)動(dòng)這個(gè)執(zhí)行器,我使用了之前用過(guò)的ROHM生產(chǎn)的“2SD1866”。通過(guò)20kΩ電阻器連接到底座并通過(guò)Arduino來(lái)控制ON和OFF。執(zhí)行器驅(qū)動(dòng)用的外接電源由兩節(jié)干電池分別提供3V電。

現(xiàn)在,可以在一些特定部位上輕輕敲擊了。

poYBAGPyzKKAC0-nAAFvsticcVI722.jpg

poYBAGPyzKWAPq9aAABG2pE6Rdw855.png

整體電路圖如上圖所示。通過(guò)引腳13驅(qū)動(dòng)自制執(zhí)行器,通過(guò)引腳9驅(qū)動(dòng)伺服電機(jī)。

外部電路只有用來(lái)驅(qū)動(dòng)自制執(zhí)行器的晶體管和電阻器,所以我把它們組裝在一個(gè)小面包板上了。

pYYBAGPyzKaAWGEJAAHVl3bwpYk255.jpg

我將草圖添加到之前的草圖中,并添加了執(zhí)行器的工作部分。我讓釘子在伺服電機(jī)移動(dòng)到特定角度時(shí)彈上去。

#include Servo myServo; void setup() { myServo.attach(9); pinMode(13, OUTPUT); } void loop() { myServo.write(90); delay(500); digitalWrite(13, HIGH); delay(100); digitalWrite(13, LOW); delay(1000); myServo.write(45); delay(500); digitalWrite(13, HIGH); delay(100); digitalWrite(13, LOW); delay(1000); myServo.write(135); delay(500); digitalWrite(13, HIGH); delay(100); digitalWrite(13, LOW); delay(1000); }

在實(shí)際操作時(shí),必須考慮到搖臂的移動(dòng)時(shí)間,所以角度越大時(shí)間點(diǎn)越難把握。

4. 通過(guò)Arduino控制來(lái)演奏樂(lè)器!

現(xiàn)在,我想用它來(lái)演奏樂(lè)器。我在100日元商店找到了這樣的一把鐘琴,我決定把它改造一下。

poYBAGPyzKuAJ7T8AAFJBP8GqjM298.jpg

首先,取下鐵片并將它們安裝在另一個(gè)框架上。

pYYBAGPyzK2AIEUvAAGSdpC-K8E462.jpg

poYBAGPyzK6AQwXXAAHHa9tTtEQ985.jpg

我用橡膠皮筋將這些鐵片固定在框架上,這樣在敲擊后振動(dòng)就不會(huì)停止。在框架的下方安裝了前面做的帶搖臂的執(zhí)行器。通過(guò)Arduino同時(shí)控制伺服電機(jī)和執(zhí)行器。

pYYBAGPyzLGAUk9wAAHQkA4APUI197.jpg

在這個(gè)框架中,do、re、mi、 fa、sol、la、si、do的位置分別對(duì)應(yīng)122、112、102、95、85、77、67、57的角度,我讓伺服電機(jī)根據(jù)這些角度旋轉(zhuǎn)并敲擊鐵片。
這些角度值是我通過(guò)實(shí)際調(diào)整得出的。接下來(lái),怎么演奏呢……我暫時(shí)調(diào)整了位置,嘗試讓它演奏出do、re、mi、 fa、sol、la、si、do的聲音。

這樣一來(lái),使我有了讓它演奏一首歌的興致。

哎呀,好像彈出曲調(diào)了,只是有點(diǎn)像我,沒(méi)有節(jié)奏感(笑)。只要能享受聲音就好了,知足了!

這一次,我用Arduino控制伺服電機(jī)嘗試了演奏樂(lè)器。在這個(gè)連載系列中,我們介紹了使用Arduino來(lái)控制各種設(shè)備的一些方法。怎么樣?有收獲嗎?

我想您已經(jīng)了解到了,即使是身邊熟悉的設(shè)備,也可以用Arduino進(jìn)行控制,也可以制作出更有趣的電子作品!盼望大家也想出各種創(chuàng)意,享受電子制作的樂(lè)趣!

本系列連載一覽

第1篇:用Arduino控制曲別針電動(dòng)機(jī)
第2篇:非接觸式開(kāi)關(guān)的制作與控制
第3篇:自制電磁執(zhí)行器的制作方法
第4篇:享受控制RGB LED燈的樂(lè)趣
第5篇:用Arduino控制伺服電機(jī)來(lái)演奏樂(lè)器?。ū菊拢?/p>

poYBAGPyzLKAGv1yAAAV18XocdQ862.jpg

伊藤 尚未

日本電子制作普及推進(jìn)委員會(huì)代表、媒體藝術(shù)家。作為科普作家、假扮動(dòng)物園管理員的電工、理科實(shí)驗(yàn)課堂講師、工作坊講師、教材開(kāi)發(fā)人員等,積極參與各種活動(dòng)。 在月刊《兒童科學(xué)(誠(chéng)文堂新光社)》連載電子制作項(xiàng)目長(zhǎng)達(dá)19年,代表著書有《電子制作大圖鑒》、《電子制作完美指南》。

審核編輯黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 電源
    +關(guān)注

    關(guān)注

    184

    文章

    17586

    瀏覽量

    249501
  • 伺服電機(jī)
    +關(guān)注

    關(guān)注

    85

    文章

    2029

    瀏覽量

    57705
  • Arduino
    +關(guān)注

    關(guān)注

    187

    文章

    6464

    瀏覽量

    186655
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    如何使用Arduino的藍(lán)牙控制伺服電機(jī)

    使用伺服電機(jī)在機(jī)器人技術(shù)中很常見(jiàn),以實(shí)現(xiàn)精確控制。在這里,在本教程中,我們將向您展示如何通過(guò)藍(lán)牙連接將伺服電機(jī)
    發(fā)表于 11-16 16:19 ?3456次閱讀
    如何使用<b class='flag-5'>Arduino</b>的藍(lán)牙<b class='flag-5'>控制</b><b class='flag-5'>伺服</b><b class='flag-5'>電機(jī)</b>

    如何使用Arduino控制多個(gè)伺服電機(jī)

    在這里,我們將向您展示如何使用Arduino控制多個(gè)伺服電機(jī)。將多個(gè)伺服電機(jī)
    的頭像 發(fā)表于 11-16 17:19 ?6227次閱讀
    如何使用<b class='flag-5'>Arduino</b><b class='flag-5'>控制</b>多個(gè)<b class='flag-5'>伺服</b><b class='flag-5'>電機(jī)</b>

    伺服電機(jī)控制Arduino平臺(tái)

    什么是伺服電機(jī)?它們是如何起作用的?(基本駕駛方法和技術(shù))如何選擇伺服電機(jī)應(yīng)用Arduino平臺(tái)工作
    發(fā)表于 05-02 15:37 ?23次下載

    怎樣Arduino藍(lán)牙控制伺服電機(jī)

    我在DIY Arduino&amp; amp;藍(lán)牙機(jī)器人手臂,使用ESP8266的網(wǎng)絡(luò)控制伺服,Arduino操縱桿界面等等。實(shí)際上,伺服
    的頭像 發(fā)表于 07-29 09:55 ?7175次閱讀

    基于Arduino UNO和HC-05藍(lán)牙模塊控制伺服電機(jī)

    了解如何在移動(dòng)設(shè)備,Arduino UNO和HC-05藍(lán)牙模塊中使用Android應(yīng)用程序控制伺服電機(jī)。
    的頭像 發(fā)表于 04-28 15:25 ?4999次閱讀
    基于<b class='flag-5'>Arduino</b> UNO和HC-05藍(lán)牙模塊<b class='flag-5'>控制</b><b class='flag-5'>伺服</b><b class='flag-5'>電機(jī)</b>

    使用Arduino Uno和POT控制伺服電機(jī)

    電子發(fā)燒友網(wǎng)站提供《使用Arduino Uno和POT控制伺服電機(jī).zip》資料免費(fèi)下載
    發(fā)表于 11-10 14:19 ?0次下載
    使用<b class='flag-5'>Arduino</b> Uno和POT<b class='flag-5'>控制</b><b class='flag-5'>伺服</b><b class='flag-5'>電機(jī)</b>

    基于Arduino UNO的手勢(shì)控制伺服電機(jī)

    本方案能夠使你做出手勢(shì)時(shí)將伺服旋轉(zhuǎn)一個(gè)角度。我們將在 Python 和 Arduino 的幫助下使用手勢(shì)旋轉(zhuǎn)伺服電機(jī)。使用計(jì)算機(jī)視覺(jué)來(lái)跟蹤我
    發(fā)表于 12-21 11:26 ?0次下載

    Arduino和電位器控制伺服電機(jī)的位置

    電子發(fā)燒友網(wǎng)站提供《Arduino和電位器控制伺服電機(jī)的位置.zip》資料免費(fèi)下載
    發(fā)表于 02-06 11:10 ?1次下載
    <b class='flag-5'>用</b><b class='flag-5'>Arduino</b>和電位器<b class='flag-5'>控制</b><b class='flag-5'>伺服</b><b class='flag-5'>電機(jī)</b>的位置

    Arduino/Android藍(lán)牙多伺服電機(jī)控制

    電子發(fā)燒友網(wǎng)站提供《Arduino/Android藍(lán)牙多伺服電機(jī)控制.zip》資料免費(fèi)下載
    發(fā)表于 02-08 15:14 ?0次下載
    <b class='flag-5'>Arduino</b>/Android藍(lán)牙多<b class='flag-5'>伺服</b><b class='flag-5'>電機(jī)</b><b class='flag-5'>控制</b>

    使用Arduino開(kāi)發(fā)板控制伺服電機(jī)

    到達(dá)信號(hào)指定的位置,它將保 持其位置,并抵抗試圖將其從該位置移動(dòng)的任何外力。該電阻稱為伺服的轉(zhuǎn)矩額定值,可在數(shù)據(jù)表中找到。 脈沖寬度調(diào)制PWM: 參考:PWM占空比控制電機(jī)轉(zhuǎn)速 當(dāng)我們使用
    發(fā)表于 05-06 10:15 ?0次下載
    使用<b class='flag-5'>Arduino</b>開(kāi)發(fā)板<b class='flag-5'>控制</b><b class='flag-5'>伺服</b><b class='flag-5'>電機(jī)</b>

    使用Arduino控制伺服電機(jī)

    伺服電機(jī)是一個(gè)閉環(huán)系統(tǒng),它使用位置反饋來(lái)控制其運(yùn)動(dòng)和最終位置。伺服電機(jī)有多種類型,其主要特點(diǎn)是能
    發(fā)表于 05-06 10:08 ?2次下載
    使用<b class='flag-5'>Arduino</b><b class='flag-5'>控制</b><b class='flag-5'>伺服</b><b class='flag-5'>電機(jī)</b>

    Arduino控制伺服電機(jī)的超級(jí)簡(jiǎn)單方法

    電子發(fā)燒友網(wǎng)站提供《Arduino控制伺服電機(jī)的超級(jí)簡(jiǎn)單方法.zip》資料免費(fèi)下載
    發(fā)表于 06-28 09:51 ?0次下載
    <b class='flag-5'>用</b><b class='flag-5'>Arduino</b><b class='flag-5'>控制</b><b class='flag-5'>伺服</b><b class='flag-5'>電機(jī)</b>的超級(jí)簡(jiǎn)單方法

    Arduino和MPU6050控制伺服電機(jī)

    電子發(fā)燒友網(wǎng)站提供《Arduino和MPU6050控制伺服電機(jī).zip》資料免費(fèi)下載
    發(fā)表于 07-03 10:59 ?1次下載
    <b class='flag-5'>用</b><b class='flag-5'>Arduino</b>和MPU6050<b class='flag-5'>控制</b><b class='flag-5'>伺服</b><b class='flag-5'>電機(jī)</b>

    如何使用操縱桿和Arduino控制伺服電機(jī)

    在這篇文章中,我們將學(xué)習(xí)如何使用操縱桿和Arduino控制伺服電機(jī)。我們將看到有關(guān)操縱桿,其銷,其結(jié)構(gòu)和工作的概述。我們將從操縱桿中提取有用的數(shù)據(jù),這些數(shù)據(jù)將成為
    的頭像 發(fā)表于 07-27 11:47 ?1739次閱讀
    如何使用操縱桿和<b class='flag-5'>Arduino</b><b class='flag-5'>控制</b><b class='flag-5'>伺服</b><b class='flag-5'>電機(jī)</b>

    如何使用Arduino UNO板和電位器控制伺服電機(jī)

    在本Arduino伺服電機(jī)教程中,您將學(xué)習(xí)如何使用Arduino UNO板和電位器控制伺服
    的頭像 發(fā)表于 02-11 10:11 ?2585次閱讀
    如何使用<b class='flag-5'>Arduino</b> UNO板和電位器<b class='flag-5'>控制</b><b class='flag-5'>伺服</b><b class='flag-5'>電機(jī)</b>