<li id="8g3ty"><tbody id="8g3ty"><th id="8g3ty"></th></tbody></li>
    <label id="8g3ty"><samp id="8g3ty"></samp></label>
  • <span id="8g3ty"></span>

    1. <center id="8g3ty"><optgroup id="8g3ty"></optgroup></center>
    2. <bdo id="8g3ty"><meter id="8g3ty"><bdo id="8g3ty"></bdo></meter></bdo><center id="8g3ty"><optgroup id="8g3ty"></optgroup></center>
      <label id="8g3ty"><samp id="8g3ty"></samp></label>

    3. 電子開發(fā)網(wǎng)

      電子開發(fā)網(wǎng)電子設計 | 電子開發(fā)網(wǎng)Rss 2.0 會員中心 會員注冊
      搜索: 您現(xiàn)在的位置: 電子開發(fā)網(wǎng) >> 基礎入門 >> Arduino開發(fā)學習 >> 正文

      用Arduino作為控制設備讓各種作品動起來吧! 第5篇:用Arduino控制伺服電機來演奏樂器!

      作者:佚名    文章來源:網(wǎng)絡整理    點擊數(shù):    更新時間:2025/1/11

       

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

      1. 前言

      大家好!我是伊藤尚未。

      在這個連載系列中,我們嘗試通過Arduino控制讓各種作品動起來,考慮到還有我沒有試過的部件,所以我決定借此機會嘗試一下,那就是“伺服電機”。

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

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

      那時,我只能按照“它之所以那樣動作,是因為它就是那樣的機制”來理解,但現(xiàn)在我深刻意識到在不可思議中思考“那種機制”是很重要的。

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

      2. 什么是伺服電機?

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

      不過對于我們來說,各種伺服電機中,無線電遙控設備和模型機器人等設備中使用的電機類型是我們在電子制作過程中最為熟悉的。當然,在用Arduino等微控制器來使運動部件像機器人一樣動起來的應用中,也會使用常用的伺服電機。

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

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

       

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

       

      首先,我拆下舵機和四個角的螺絲,并將外殼拆下來。外殼分三部分,拆下頂蓋后會露出齒輪組。

      齒輪是金屬的,用軸承連接,結(jié)構(gòu)上很牢固。看起來是4檔減速齒輪,涂了很多潤滑脂,可以想像力矩還是蠻大的。

       

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

       

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

       

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

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

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

       

      在這里,讓我想起了我的童年回憶。當時的無線電控制器是否裝有微控制器?那時候市場上出現(xiàn)的是單板微控制器等較大型的產(chǎn)品。我記得當時我想知道控制器里面都有什么而把它拆開了,但不記得里面是否有微控制器了。可能是因為它是模擬的。

      如果使用的是PWM,那么應該是通過硬件進行處理的吧。如果這樣想的話,伺服電機不僅可以用通過PWM進行控制,應該也可以通過模擬進行控制。如果按照前面提到的控制信號是GND和正電源之間的電壓比來考慮的話,當然模擬也應該沒有問題,也就是說,伺服電機本身和以前的模擬輸入時幾乎沒有什么變化。

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

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

      3. 與Arduino連接

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

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

       

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

      與Arduino的連接方法如下:

       

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

      #include<Servo.h>
      Servo myServo;  
      void setup() {
        myServo.attach(9); 
      }
      void loop() {
        myServo.write(90);
          delay(1000);
        myServo.write(45);
          delay(1000);
        myServo.write(135);
          delay(1000);
      }
      

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

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

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

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

       

       

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

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

       

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

      #include<Servo.h>
      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);      
      }
      

      在實際操作時,必須考慮到搖臂的移動時間,所​​以角度越大時間點越難把握。

      4. 通過Arduino控制來演奏樂器!

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

       

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

       

       

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

       

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

      這樣一來,使我有了讓它演奏一首歌的興致。

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

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

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

      Tags:Arduino入門,Arduino,電子琴  
      責任編輯:admin
      請文明參與討論,禁止漫罵攻擊,不要惡意評論、違禁詞語。 昵稱:
      1分 2分 3分 4分 5分

      還可以輸入 200 個字
      [ 查看全部 ] 網(wǎng)友評論
      關于我們 - 聯(lián)系我們 - 廣告服務 - 友情鏈接 - 網(wǎng)站地圖 - 版權(quán)聲明 - 在線幫助 - 文章列表
      返回頂部
      刷新頁面
      下到頁底
      晶體管查詢
      主站蜘蛛池模板: 亚洲综合av一区二区三区不卡| 一本色道久久88精品综合| 久久一本色系列综合色| 鲁一鲁一鲁一鲁一曰综合网| 亚洲综合久久成人69| 亚洲综合精品网站| 中文字幕亚洲综合精品一区| 国产精彩对白综合视频| 色欲久久久天天天综合网精品| 色综合视频一区中文字幕| 亚洲中文字幕无码久久综合网| 亚洲av日韩综合一区二区三区| 一本色道久久综合亚洲精品| 一本大道无香蕉综合在线| 亚洲国产综合人成综合网站00| 色久悠悠婷婷综合在线亚洲| 激情婷婷成人亚洲综合| 亚洲第一综合天堂另类专| 五月天婷婷综合网| 亚洲国产精品综合久久20| 色欲综合久久躁天天躁蜜桃| 亚洲乱码中文字幕综合| 国产综合精品女在线观看| 久久精品亚洲综合专区| 久久综合久久综合久久综合| 狠狠色色综合网站| 情人伊人久久综合亚洲| 亚洲综合在线成人一区| 亚洲欧美国产国产综合一区| 97se色综合一区二区二区| 五月天婷五月天综合网站| 一本色道久久综合| 色综合99久久久无码国产精品| 色综合久久加勒比高清88 | 伊人色综合视频一区二区三区| 色综合久久综合中文综合网| 亚洲色欲www综合网| 综合激情区视频一区视频二区| 久久综合久久精品| 婷婷综合久久狠狠色99H| 久久99亚洲综合精品首页|