和12岁小同志搞创客开发:手撕代码,做一款密室自动门

所谓密室自动门,就是这门不是轻易能打开的,存在着某些玄关需要你去破解。这里设计的这个门,是通过不断晃动手中的传感器才能开。

有人会说,传感器我知道是那个数字震动传感器,那门呢?你没看错就是舵机,它能控制角度。所以,所谓的门的转动,是靠舵机来完成的。做个来看下效果就知道了~

拓展学习:和12岁小同志搞创客开发:遥控舵机_不脱发的程序猿-CSDN博客

项目连线如下所示:

和12岁小同志搞创客开发:手撕代码,做一款密室自动门

实现代码如下所示:

#include              
 
int sensorPin = 3;          //震动传感器 – Digital 3
Servo myservo;                 
int pos = 0;  
 
void setup() { 
    Serial.begin(9600);
    pinMode(sensorPin, INPUT);   
    myservo.attach(9);         //舵机 – Digital 9
}
 
void loop() {
  int sensorState = digitalRead(sensorPin);//读取震动传感器的状态
  Serial.println(sensorState);
  if(!sensorState){  //一旦状态发生变化,舵机加2°,直到加到180°
            pos = pos +2;
            if(pos >=180){      
                pos = 180;                
            } 
            myservo.write(pos);      //写入舵机的角度       
            Serial.println(pos);     //串口同时输出角度值
            delay(100);  
  } else{  //状态不发生变化,舵机减2°,直到减到0°
            pos = pos - 2; 
            if(pos <=0){
                pos = 0;                
            }
            myservo.write(pos);              
            Serial.println(pos);
            delay(100);    
  }
 
  delay(1);        
}

代码的开始先调用库:

 #include 

这个库已经在Arduino IDE中了,可以打开Arduino安装路径,例如我的安装路径:D:\\Arduino\\libraries\\Servo\\src,这就是Servo库所在位置。

和12岁小同志搞创客开发:手撕代码,做一款密室自动门

如果要在代码中用库中函数,是不能直接调用的,需要给库找个中介,让“他”建立代码和库中间的关系,也就是类的使用:

 Servo myservo;

这里的myservo起到的就是这个作用。建立联系,之后调用库中的方法和变量的话,就要按照下面这个模式进行:

 myservo.方法名 myservo.变量

如何定义舵机是接到那个引脚呢?用到就是attach()方法了。

 myservo.attach(引脚ID);         //舵机 – Digital 9

知道了如何定义一个舵机之后,如何把对应的角度写进去呢?

 myservo.write(角度);      //写入舵机的角度   

最后,运行程序,不断的晃动震动传感器,可以看到舵机的角度会随之变大。停止晃动后,舵机角度又开始慢慢减小。好比一扇门慢慢打开,合上。

本站内容及图片来自网络,版权归原作者所有,内容仅供读者参考,不承担相关法律责任,如有侵犯请联系我们:609448834

(0)
华夏门网的头像华夏门网
上一篇 2023年11月12日 12:30:59
下一篇 2023年11月12日 12:33:54

相关推荐

  • 韩国KMG自动门,韩国未来自动门,主打稳定性,质量杠杠…

    哈喽大家好,我是韩国KMG和韩国未来自动门的小刘。今天给自己打个广告为自己代言。韩国KMG自动门主打的是稳定性。它属于加重型的一款门机,单扇门承重二百一十公斤,双开四十八公斤,门高可达四千。 它属于自动门当中的一款加重型的机器,还有一款蓝牙的全程手机来控制的自动门。这款是单扇门,三百公斤,双开六百公斤,全程来手机来控制的,简单方便又快捷。 现在好多做自动门的…

    自动门 2023年10月4日
    770
  • 大廳自動門控制

    控制需求: 當有人進入紅外傳感器橢圓區域時,開門電機啟動,門自動打開,直到碰到開門極限停止。 到達開門極限處7秒後,若無人紅外傳感器橢圓區域內,關門電機啟動,門自動關上,直到 碰到關門極限開關。 若在關門過程中,有人進入紅外傳感器橢圓區域,門應立即停止關閉,執行開門的動作。 動作分析: 時序邏輯: 待機狀態: 系統等待紅外傳感器X0檢測到人員。 人員檢測與開…

    自动门 2024年12月5日
    250
  • 简说蒸烤箱自动门 颠覆创新

    今天福庭来说说市面上目前风头正盛的一款集成灶产品,即美多推出的语音集成灶,此产品带语音控制蒸烤箱自动门。 不得不说美多这款产品在集成灶品类同质化严重的竞争格局下,确实令人眼前一亮。 蒸烤箱自动门,也实属集成灶品类中的一个颠覆创新,可类比之铅笔头加橡皮擦一样的伟大创新。 当然,目前这款产品只能自动打开蒸烤箱玻璃门。那么,我们是否可以脑洞大开一下,发挥天马行空的…

    自动门 2023年10月17日
    200
  • 武漢捷峰自動門門業取得不銹鋼卷簾裝置專利,具有很好的通風透光性

    金融界 2024 年 9 月 27 日消息,國傢知識產權局信息顯示,武漢捷峰自動門門業有限公司取得一項名為“種不銹鋼卷簾裝置”的專利,授權公告號 CN 221761776 U,申請日期為 2023 年 12 月。 專利摘要顯示,一種不銹鋼卷簾裝置,其包括:卷軸、驅動機構、不銹鋼網簾、滑道;驅動機構驅動連接左右方向延伸的卷軸端部,用於驅動卷軸同軸轉動,不銹鋼網…

    自动门 2024年9月30日
    160

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:[email protected]

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信