<acronym id="xonnx"></acronym>
      <td id="xonnx"></td>
    1. <pre id="xonnx"></pre>

      1. 專注電子技術學習與研究
        當前位置:單片機教程網 >> Arduino >> 瀏覽文章

        Arduino機器人第6課:創意風扇

        作者:huqin   來源:本站原創   點擊數:  更新時間:2014年05月04日   【字體:

        《創意風扇》是第二章《智能風扇》的最后一個專題,主要涉及到舵機和紅外避障傳感器兩個器件,并通過舵機制作出搖頭風扇,通過紅外避障傳感器制作出自動跟蹤風扇。最后通過幾種傳感器的介紹,拋磚引玉,試圖引導學生有更多的創意。

         

        本文主要對本次課的重難點、主要教學設計的設計意圖以及學生上課的反應做部分說明。

        相關資源下載地址:http://pan.baidu.com/s/1kTqOYs3

        1.搖頭風扇

        前面所學到的風扇都是面向一個方向的,正當學生產生質疑的時候,搖頭風扇應運而生,學生對此還是很感興趣的。使風扇搖頭需要用到舵機,也稱伺服電機。標準的舵機有3條控制線,分別是電源、地和信號線。舵機的引腳定義為:棕色線——GND,紅色線——5V,橙色線——信號線,而信號線只能是數字口9或者10。我們使用的SG90舵機轉動的最大角度為180°。

        有了上一專題學習的紅外庫為基礎,這一專題趁熱打鐵,繼續引入庫函數,程序如下:

        #include  

        Servo myservo;  // 創建一個伺服電機對象

        int i; 

        void setup()

        {

          pinMode(5,OUTPUT);

          myservo.attach(9);  // 9號引腳輸出電機控制信號

        }

        void loop()

        {

        analogWrite(5,100);

          for(i=0;i<180;i++){

            myservo.write(i);     // 設定伺服電機的位置

            delay(100);         // 等待電機旋轉到目標角度

          }

          for(i=179;i>=0;i--){

            myservo.write(i);

            delay(100);

          }

        }

         

        2.自動跟蹤風扇

        自動跟蹤風扇是通過左右兩個紅外數字避障傳感器檢測障礙物的運動方向的,若左側傳感器檢測到障礙物而右側傳感器沒有檢測到,則舵機向左轉動;若右側傳感器檢測到障礙物而左側傳感器沒有檢測到,則舵機向右轉動;若兩側傳感器同時檢測到障礙物或者都沒檢測到障礙物,則保持原來方向?傊褪,手在哪風扇就可以轉向那(前提是風扇檢測到手并且角度不超過180)。

        用到的紅外數字避障傳感器輸出的信號為數字信號,探測距離為3-18cm,引腳定義為:紅線——5V,黃線——信號,綠線——GND。程序如下:

        #include  //引入lib

        Servo myservo;

        int left=2;

        int right=12;

        int i;

        int j;

        int n=0;

        void setup() {

          myservo.attach(9);

        }

        void loop() {

          analogWrite(5,200);

          i=digitalRead(left);

          j=digitalRead(right);

          while(i==LOW && j==HIGH){//左轉

            if(n<180){

              n++;

              myservo.write(m);

              delay(100);

              i=digitalRead(left);

              j=digitalRead(right);

            }

          }

          while(j==LOW && i==HIGH){//右轉

            if(n>0){

              n--;

              myservo.write(n);

              delay(100);

              i=digitalRead(left);

              j=digitalRead(right);

            }  

          }

        }

         

        3.創意風扇

        創意風扇基本屬于學生自由發揮的階段了,我們只是提供了幾種思路:定時風扇(通過按鈕),溫控風扇(溫度傳感器),傾倒自動停止風扇(傾角傳感器)。然后讓學生小卒討論并嘗試實現,可是由于時間關系,學生并沒有完成自己的創意。所以思考以后上課的時候是否可以單獨拿出一節課上創意風扇。

        下圖是自動跟蹤風扇的實物圖:



                注:大家是否發現,這個工業用的避障傳感器是不是太大了,在這個機器人上顯得是否笨重?是的,專門那兩條粗粗的線我們就很不喜歡,但當時的確找不到更好的選擇。一次閑談中,經葉琛提醒,還有一種防跌落傳感器可以實現近距離的測障(10CM內),剛好符合我做手勢判斷的需求。下一版本就會使用新的傳感器了,可惜防跌落傳感器的價格是55,套件的整體價格要超過600(不包含bluno顯示屏和電池)了……

        關閉窗口

        相關文章

        欧美性色欧美精品视频,99热这里只有精品mp4,日韩高清亚洲日韩精品一区二区,2020国自产拍精品高潮