在这篇文章中,我们将使用Arduino制作一个LCD 220v市电操作计时器,它的倒计时时间可以通过16 × 2 LCD显示。
介绍
所提出的液晶定时器电路是一种通用定时器,具有显示功能,并且设置时间的按钮很少。
一旦时间设置输出高,并开始倒计时的时间,当它达到00:00:00(小时:分钟:秒)输出低。您可以根据自己的需求修改此项目。
现在回到项目上来。
我们总是担心我们的电器或电子设备运行太长时间,只是因为我们忘记关掉它们。
时间关键的电器和电子设备,如电饭煲,低调的电池充电器,加热器等,需要关闭在适当的时候,否则我们可能会减少器具的寿命,或加工终端项目,如食物将不愉快消费。
低调的电池充电器可能没有定时器或电池监测系统,这可能会损害电池的寿命,如果我们留下充电很长时间。
我们可以说有数百个这样的例子,为了避免这样糟糕的结果,可以使用计时器套接字。
定时器插座是一个简单的定时器,连接到交流插座,时间关键设备将连接在定时器插座的输出端。用户必须使用按键或拨盘输入连接设备的供电时间。
一旦达到预先设定的时间,设备将被切断电源。
设计:
提出的LCD插座定时器项目由Arduino组成,Arduino作为项目的大脑,一个16 x 2的LCD显示显示剩余时间,三个按钮设定时间和继电器连接和断开输出交流电源。
线路图:
上面的电路就是arduino来的液晶显示器连接时,提供一个10K电位器来调节显示器的对比度。以上其余的连接是不言自明的。
电路需要电源来运行,因此提供了一个简单的稳压电源;可输出恒9V到arduino和继电器。
S1、S2、S3为按键,用户可通过按键设置时间。S1为时键,S2为分钟键,S3为启动键。
继电器终端连接一个1N4007二极管,在开关时从继电器吸收高压反电动势。
使用至少5A继电器和5A输出插座。在输入电源处连接5A保险丝。始终使用3脚插头在输入;不要跳过接地线,不要互换带电和中性线。
电路设计:
程序代码:
//------- r.g riish开发的程序---------//
# include < LiquidCrystal.h >
LiquidCrystal液晶(12、11日5、4、3、2);
const int hbtn = A0;
const int mbtn = A1;
const int start = A2;
Const int relay = 7;
Unsigned int HRS = 0;
unsigned int Min = 0;
Unsigned int SEC = 60;
boolean Hrs = false;
boolean Minlt = true;
无效的设置()
{
lcd.begin(16日2);
pinMode (hbtn、输入);
pinMode (mbtn、输入);
pinMode(开始,输入);
pinMode(继电器、输出);
digitalWrite (hbtn、高);
digitalWrite (mbtn、高);
digitalWrite(开始、高);
digitalWrite(继电器、低);
lcd.clear ();
lcd.setCursor (0,0);
液晶显示器。打印(“请设置时间:”);
lcd.setCursor (0,1);
液晶显示器。print(小时:00分钟:00);
}
无效循环()
{
如果(digitalRead (hbtn) = =低)
{
小时= true;
HRS = HRS + 1;
lcd.clear ();
lcd.setCursor (0,0);
液晶显示器。打印(“请设置时间:”);
lcd.setCursor (0,1);
lcd.print(小时:”);
lcd.print(小时);
液晶显示器。打印(" ");
lcd.print(“分钟:”);
lcd.print(分钟);
延迟(300);
}
if(digitalRead(mbtn) == LOW && Minlt == true); / /输出
{
Min = Min + 1;
lcd.clear ();
lcd.setCursor (0,0);
液晶显示器。打印(“请设置时间:”);
lcd.setCursor (0,1);
lcd.print(小时:”);
lcd.print(小时);
液晶显示器。打印(" ");
lcd.print(“分钟:”);
lcd.print(分钟);
如果(60分钟= =)
{
Minlt = false;
}
延迟(300);
}
如果(digitalRead(开始)= =低)
{
if(currbarscount = 1, currbarscount = 1, currbarscount = 1), colorred;
{
digitalWrite(继电器、高);
如果(Min ! = 0)
{
Min = Min - 1;
}
而(真)
{
lcd.clear ();
lcd.setCursor (5,0);
lcd.print(小时);
lcd.print(“:”);
lcd.print(分钟);
lcd.print(“:”);
lcd.print (sec);
lcd.setCursor (0,1);
液晶显示器。print(" AC OUTPUT: ON");
SEC = SEC - 1;
延迟(1000);
如果(小时= = 0 & &分= = 0 & &秒= = 0)
{
digitalWrite(继电器、低);
lcd.clear ();
lcd.setCursor (5,0);
lcd.print(“0:0:0”);
lcd.setCursor (0,1);
液晶显示器。print(" AC OUTPUT: OFF");
而(真){}
}
如果(sec = = 0)
{
秒= 60;
如果(Min ! = 0)
{
Min = Min - 1;
}
}
if(Min == 0 && Hrs == true)
{
HRS = HRS - 1;
Min = 60;
如果(小时= = 0)
{
小时= false;
}
}
}
}
}
}
//------- r.g riish开发的程序---------//
如何操作这个液晶插座定时器:
•将LCD定时器连接到220v交流电源,并在定时器插座的输出端连接设备。
•显示“Hours: 00 Min: 00”。按小时(S1)或分钟(S2)键设置时间。
•按下按钮将增加计数。
•设置好时间后,按启动键(S3)。输出接通。
•当显示器显示0:0:0时,输出关闭。
注意:定时器显示“60”而不是“00”的分和秒,这是相同的传统定时器和时钟计数00至59为60秒。这里计时器从1数到60秒。
如果你对这个项目有任何问题,请在评论区随意表达。
你好先生,
可以在设计上增加2个usb接口给智能手机充电吗?
问候,
您好Saad,所示的LM338输出可以很容易地用USB连接器完成USB端口。
美好的一天先生
我希望你一切都好
这个网站对我这样的勒纳非常有用
我不是这方面的专家,希望您能理解我的要求
先生,请介绍一下如何使用Arduino带显示的定时器开关来设定编码器控制
我的要求是这样的
我需要使用R1编码器的温度元素,任何他的来源加热
R1函数是这样的,例如,我st温度35°,R1应该在35°切断,低于它颤抖是on
R2我将使用加热器,煮沸的水,我可以得到更好的湿度,例如,我设置湿度在60%65加热器颤抖是
R3我将用于循环风扇
R4为翻蛋电机,24小时内3次开机数秒
R5多一个风扇,需要在东部高温条件下开启
需要调整,因为你显示的cicuit s1 s2 s3等
我认为这很容易调整时间
先生需要Arduino电路的编程和设计
你知道哪个更好
我希望你能更好地回应我
你好Imran,很抱歉我的Arduino编码不是很好,所以在这方面我无法帮助你。
好吧先生
但是你可以参考
R.GR爵士
是的,我能做到,但是你的解释不太好理解。如果你能用好的英文写出来,我肯定会把它交给GR先生。
亲爱的先生
非常抱歉
你能告诉我哪里我解释不清楚吗?
有多少我知道将托盘解释得更好。
伊姆兰,
请使用正确的单词拼写,并以循序渐进的方式解释你想从电路中得到什么功能,如1)2)3)....
嗨,伊姆兰,
请看我的回答是否正确:
1)培养箱温度保持在35℃。
2)通过蒸发水分,使湿度保持在60 ~ 65%。
3)使用保温箱内部的风机扩散温度和湿度。
4)温度升高时需要另一个风扇来控制(它将散热在外)。
你的要求我说对了吗?如果没有,请在回复中提及。
问候
是的,先生,是正确的
但还有一件事需要加进去,那就是鸡蛋转动马达
马达需要在24小时内运行3次,只需要3到5秒,
我想问一下是否可以在这个电路中加入开关?
开关指的是S1,S2,S3,就像你上面使用的定时器电路一样
例如,编程之后,准备好一切
当我们需要调节温度和湿度时,我们可以通过这个开关来调节?
我是说手动?