和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

Like (0)
华夏门网的头像华夏门网
Previous 2023年11月12日
Next 2023年11月12日

相关推荐

  • 智能科技的杰作 – 自动门(南京阔尔特自动门)

    欢迎来到未来世界,科技改变生活,今天我们为您带来一款梦幻级的自动门。此款自动门融合了最尖端的技术和卓越的设计理念,为您打造无比便捷、高效的出入体验。 首先,这款自动门具有自动识别功能,能根据您的步行速度和方向自动开启或关闭,无需您动手操作。无论是匆忙的上班族,还是悠然自得的购物者,都能在通过时享受到无障碍的便利。 其次,这款自动门还配备了防撞功能。当检测到有…

    自动门 2023年12月6日
    110
  • 望周知!10大医院自动门注意事项

    自动门始于新世纪30时代的美国,20新世纪70时代我国经济发展迅速发展趋势的促进下,自动门被广泛应用,特别是商超、酒店、医院、机场、写字楼等建筑出入处,随处可见它们的身影。 在医院这种特殊公共场所里,医院自动门的使用更要留意: 1. 自动门开启情况下不可以终止步伐,以防全自动合上产生夹伤; 2. 自动门在关上全过程中不可以强行通过,以防被夹伤; 3. 感应器…

    自动门 2024年6月12日
    230
  • 昆明海顿自动门回应舆论质疑无扭簧即“断头台”设计

    昆明海顿自动门回应舆论质疑无扭簧即“断头台”设计 近日,昆明海顿车库门在一医药产业园区安装的无扭簧工业电动提升门安装好以后,宣传视频发到网上,引发广发关注,一时间成为同行热议的话题。但是也有网友质疑,没有扭簧的电动门,在停电状态下可能引发直接砸下来的风险,就像是电机没有机械急停装置会变成“断头台”一样。所以,网友担心的是“没有扭簧、不够安全”。 对此,昆明海…

    自动门 2024年1月17日
    130
  • 如何选门——自动门售后服务常遇到的痛点?

    1、售后服务不能及时响应 大多数商家,没有专门的售后服务人员,都是一人兼多职,自然没办法及时为客户服务。要选用有专门的售后服务团队,并且多年实践经验的工程师担当,数字服务运营的自动门运营机构 。 2、过保修期后费用高,乱“宰”客 上门费高,且每次都轮着更换配件,配件费更是几百、几千元甚至上万元。严重损害用户权益。最好要和专业自动门服务机构按年签订维保服务,包…

    自动门 2023年11月4日
    90
  • 安徽菲勒自動門制造有限公司取得自動門抗沖擊改性復合保護薄膜制備方法專利

    金融界2024年10月25日消息,國傢知識產權局信息顯示,安徽菲勒自動門制造有限公司取得一項名為“一種自動門抗沖擊改性復合保護薄膜的制備方法”的專利,授權公告號CN 118620261 B,申請日期為2024年8月。 本文源自金融界

    自动门 2024年11月4日
    20

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:[email protected]

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

关注微信