亲,“电路城”已合并升级到更全、更大、更强的「新与非网」。点击查看「新与非网」

本网页已闲置超过3分钟,按键盘任意键或点击空白处,即可回到网页

自制可定时开关

发布时间:2021-04-18
分享到:

自制可定时开关

发布时间:2021-04-18
分享到:

该项目是为交流负载创建定时器开关,此开关可用于灯泡,水泵,风扇等。

硬件:    

  • Arduino UNO ----1个    
  • 按钮 ---- 5    
  • 电阻10k欧姆 ---- 5    
  • 跳线(通用)---- 1个    
  • 5伏继电器  ---- 1个    

在此项目中,定时器使用四个按钮,一个用于开/关。当我们按下第一个按钮时,它会打开交流负载,当再次按下时,它会关闭交流负载;当我们按下第二个按钮时,它会打开交流负载30分钟;当我们按下第三个按钮时,它将打开交流负载20分钟;当我们按下第四个按钮时,它会打开交流负载10分钟;当我们按下第五个按钮时,它会打开交流负载5分钟;

可以从代码中更改计时器值。

代码:

int 继电器 =  12 ;
int  btn1  =  4 ;
int  btn2  =  5 ;
int  btn3  =  6 ;
int  btn4  =  7 ;
int  btn5  =  8 ;

int  relay1  = 低电平;

无效 设置(){
pinMode (继电器,输出);
pinMode (btn1 ,INPUT );
pinMode (btn2 ,INPUT );
pinMode (btn3 ,INPUT );
pinMode (btn4 ,INPUT );
pinMode (btn5 ,INPUT );
}

无效 循环()
{
如果(digitalRead (btn1 ) ==  HIGH )
{
digitalWrite (Relay ,HIGH );
延误(300000 );                    // 5分钟
digitalWrite (Relay ,LOW );
}
否则 if (digitalRead (btn2 ) ==  HIGH )
{
digitalWrite (Relay ,HIGH );
延迟(600000 );                    // 10分钟              
digitalWrite (Relay ,LOW );
}
否则 if (digitalRead (btn3 ) ==  HIGH )
{
digitalWrite (Relay ,HIGH );
延误(1200000 );                   // 20分钟,20x1000x60
digitalWrite (Relay ,LOW );
}
否则 if (digitalRead (btn4 ) ==  HIGH )
{
digitalWrite (Relay ,HIGH );
延误(1800000 );                  // 30分钟
digitalWrite (Relay ,LOW );
}
否则 if (digitalRead (btn5 ) ==  HIGH )
{
继电器1  =  〜 继电器1 ;              // 开关
digitalWrite (继电器,继电器1 );
延误(500 );
}}

加入微信技术交流群

技术交流,职业进阶

关注与非网服务号

获取电子工程师福利

加入电路城 QQ 交流群

与技术大牛交朋友

讨论