等级考试四级学习小组 加入小组

288个成员 29个话题 创建时间:2019-02-21

实操搭建摇头风扇

发表于09-21 423次查看

怎么用芝麻豆的教具搭建摇头风扇,舵机如何固定呢

2回复
  • 2楼 李猛 09-22

    9g舵机在师资培训的时候都有搭建的案例,最新的积木舵机应该更好搭了。9g舵机的搭建样式如下:

  • 3楼 李猛 11-11

    给大家一个示例程序

    /*************************************************
     * 本示例程序是2019年9月四级等级考试实操真题示例程序
     * 由于四级考察内容没有按键消抖,所以本程序并没有对按键进行消抖
     * Date:2019-10-17
    ***************************************************/
    #include<Servo.h>
    Servo myservo;
    const int D1=6;//电机主引脚
    const int D1f=5;//电机辅助引脚
    const int D2=10;//按键IO引脚
    const int D3=11;//舵机IO引脚
    const int D4=13;//LED引脚
    const int ZMDA1=A0;//旋钮电位器引脚
    int keyNum=0;//设置按键初始值为0
    int pos=90;//定义舵机角度
    void scanKey(){
        if(digitalRead(D2)){
          keyNum++;
        if(keyNum==2){
          keyNum=0;
        }
        }
      }
    void setup() {
      pinMode(D1f,OUTPUT);//设置D1辅助管脚接电机
      pinMode(D1,OUTPUT);//设置D1主管脚接舵机
      pinMode(D2,INPUT);//按键输入
      pinMode(D3,OUTPUT);//舵机为输出
      pinMode(ZMDA1,INPUT);//旋钮电位器输入
      Serial.begin(9600);
      myservo.attach(D3);
      digitalWrite(D1f,LOW);
      digitalWrite(D1,LOW);
      myservo.write(pos);  
    }
    
    void loop() {
      scanKey();
      if(keyNum==1){
        analogWrite(D1f,map(analogRead(ZMDA1),0,1023,0,255));
        digitalWrite(D4,1);
        for(;pos<=170;pos+=5){
          myservo.write(pos);
          delay(20);
          scanKey(); 
          if(keyNum==0){
            break;
          }     
        }
        for(;pos>=0;pos-=5){
          myservo.write(pos);
          delay(20); 
          scanKey(); 
          if(keyNum==0){
            break;
          }
        }
        Serial.println(map(analogRead(ZMDA1),0,1023,0,255));
        Serial.println(keyNum);
      }
      else{
        digitalWrite(D1f,0);
        digitalWrite(D4,0);
        }
       }

     

发表回复
你还没有登录,请先 登录或 注册!