使用Arduino的路灯自动强度控制

在这个项目中,我将向您展示如何根据外部大气的时间和光强度控制LED灯的强度。

这是一个惊人,非常有用的项目,因为它可以防止电力的浪费。

这个项目会在晚上自动打开路灯,然后在早上关闭。它还控制了光的强度。根据时间和流量自动调整光强度。12点后车辆数量非常低。例如,晚上的光强度低,它开始增加直到8点在8点之后的灯光在全强度下发光,并且这种强度不会改变。它会在完全强度下发光,直到12点在12点之后的12点开始递减,并且在凌晨6点之后,灯光完全关闭。这种方法可以节省大约30个百分点。

在电路中也使用两个LED,一个是绿色的,另一个是红色。红色LED表示晚上,绿色LED指示午夜时间12AM。Arduino未在实时编程,因为我们无法观察到的变化。因此,时间延迟非常低(1小时等于3秒)。您可以根据您的使用更改时间延迟。您可以根据您的使用在项目中进行许多修改,您还可以在此项目中使用RTC(实时时钟)。

基于Arduino的街灯汽车强度控制
基于Arduino的街灯汽车强度控制

在职的

在电路中,使用LDR(轻依赖电阻),当光的强度在固定值下,LED灯开启时,使用LDR(光相关电阻)。但在光的起始强度下降很低,因为时间是下午5点。现在强度随着时间的推移而在晚上8点在全强度下发光。

arduino和LDR基于街灯的汽车强度控制

通过使用PWM(脉冲宽度调制)来控制光的强度。Arduino和其他数字设备不能提供模拟输出;它们只能给出数字输出(高或低)。意味着它们只能关闭并打开设备,但有时我们需要VCC和GND之间的电压。PWM可以满足这一要求。PWM只需打开并以高频关闭输出设备。以这种方式,输出电压变为VCC下方。输出电压的值取决于“打开”时间和“关闭”时间,这可以通过下面的给定功能来计算

占空比=吨/(吨+ Toff)Vout =占空比* VCC

Arduino Nano.有六个PWM引脚,它们都是8位。换句话说,我们可以将0到255的输出值更改为0,其中0低,255个高。

两个LED也用于电路,它们表示时间,红色LED在LDR交叉阈值时,在我的情况下,我想到时间是5 PM,此时我们的路灯(电源LED)也打开但强度也打开低。强度逐渐增加,它将在晚上8点的完全强度工作。现在强度在12点之前没有改变。

12:00后,绿色LED接通,电源LED的强度变低,此强度不会改变,直到4点。在凌晨4点之后,光的强度开始逐渐减小。此外,它还在凌晨6点变得完全关闭。

组件

组件 规格 数量
arduino. 纳米 1
能量源 直流适配器12伏 1
LDR(轻依赖电阻) 1
引领 绿色,红色 2
电源指示灯 12伏 1
晶体管 BC 547. 1
电阻器 330欧姆 2
电阻器 10k. 1
电阻器 1K. 1
二极管 1N4007 / 1N4004 1

电路

电路非常简单,可以使用下面的电路在Bresboard或零PCB上制作该电路。

如果您在PCB蚀刻中使用,请使用下面给出的图像。

使用Arduino PCB设计的路灯自动强度控制
使用Arduino PCB设计的路灯自动强度控制

PCB设计
PCB设计

在电路中Arduino Nano.使用,PWM引脚D9连接到晶体管的底销(2N2222)发射器销连接到GND。电源LED的阴极引脚连接到晶体管的集电极销,阳极销连接到12伏,二极管平行于反向偏置的电源LED。

LDR通过10K欧姆的电阻连接到VCC和GND,LDR的结点和电阻连接到ARDuino的A5引脚。

两个LED通过330欧姆电阻连接到Arduino的A4和A3引脚。电路由12伏适配器供电,12伏线也通过开关连接到Arduino的VIN引脚。

街灯的自动强度控制 - 视频

代码

下载程序/代码

在代码中声明某些整数,整数“传感器”用于LDR引脚,LED1和LED2用于“红色”,以及“绿色”LED,并且为电源LED声明整数“OUT”。整数“del”用于给出1小时的延迟(3秒)。

在“void setup()”中,传感器被声明为输入,LED1,LED2和OUT被声明为输出,使用“PINMODE”功能。

在“void Loop()”中,首先,使用“如果条件”进行比较LDR传感器的值,当LDR传感器的“Analogread”值小于50“如果条件”变为真实。

下一个“Anivalwwrite(LED1,100)”开启电源LED在低强度下。LED1也使用“DigitalWrite(LED1,高)”打开,并为“del”时间给出延迟。

在此之后,某些功能用于在每一个小时之后改变电源LED强度(延迟3000ms)。在12AM时,LED2(绿色LED)也接通,在码LED1和LED2的结束时关闭。

校准:校准用于正确时间的灯,在线20更改值比较“analogread(传感器)”,在给定的代码中,它可以在示例中使用“analogreadserial”读取该值。

作者

6.注释

  1. Kazi Inzamam Ul Haque

    我为我的最后一年项目进行这个项目。请帮助我总电路图和仿真电路。和编程代码以及哪些软件用于模拟。请回复我。这对我有所帮助。我遇到了努力制作这个项目......使用Ardino自动强度控制

  2. 马哈莎

    你好
    我真的想知道与D2和D3引脚有关的是什么?
    请有人回答我......

  3. 马哈莎

    你好,
    谢谢你的这个伟大的项目。
    我必须制作这个项目,我需要这么多的帮助,如何找到这个项目的示意电路?你能帮我么??

  4. M.H.ch110.

    你好,好时光
    铜丝的长度和宽度是多少?

  5. ewere.

    我希望你能帮助我用电路图,我的项目与住宅化合物的汽车强度路灯照明没有户外交通。我想点亮一旦它是下午7点,那么强度开始从凌晨1点开始下降,最后在早上6:30左右开始。我正在考虑将它编程到正确的时间,也可以使用太阳能和发电机供应为备份时的阳光失败推动它?我需要电路图和少数其他东西

  6. 摩西kaluya

    尊敬的先生
    我是乌干达的kaluya摩西,我在电路建设中有一些经验
    我已经完成了这一点,现在我需要这样做像这样的项目。
    因此,Street Light L的自动强度控制已经喜欢它,因此我想通过你的帮助来尝试,最终我们可能会做其他事情
    主席先生,因为我没有Arduino nano是什么可以使用的等效IC?
    谢谢。