×

使用Arduino和Surilli GSM的智能路灯系统

消耗积分:0 | 格式:zip | 大小:0.50 MB | 2022-12-28

分享资料个

描述

在本教程中,我们将红外传感器与 Surilli GSM 集成以控制路灯的运行。这些传感器将感知车辆的位置并将其信号发送给 Arduino,结果,它将打开 LED。如果这个想法在任何城市实施,将有助于节省足够的电力和金钱。

什么是红外传感器?

该IR接近传感器是一种多用途红外传感器,可用于障碍物检测、颜色检测、火灾检测、线路检测等,也可用作编码器传感器。传感器提供数字输出。在这种情况下,当传感器检测到传感器前面有黑线时,传感器在数字输出端输出逻辑 1 (+5V),当传感器前面有白线时,传感器输出逻辑 0 (0V)。板载 LED 用于指示黑色和白色的存在。此数字输出直接连接到 Surilli GSM。

所需组件

  • 苏里利 GSM。
  • 连接电线。
  • 4 个 LED。
  • 4 个红外传感器。

Surilli GSM、红外传感器和 LED 之间的连接:

IR1(PIN D0)---> SURILLI GSM(PIN 5)

IR1(PIN GND) ---> SURILLI GSM(PIN GND)

IR1(PIN VCC) ---> SURILLI GSM(PIN USB)

IR2(PIN DO) ---> SURILLI GSM(PIN 11)

IR2(PIN GND) ---> SURILLI GSM(PIN GND)

IR2(PIN VCC) ---> SURILLI GSM(PIN USB)

IR3(PIN DO) ---> SURILLI GSM(PIN 6)

IR3(PIN GND) ---> SURILLI GSM(PIN GND)

IR3(PIN VCC) ---> SURILLI GSM(PIN USB)

IR4(PIN DO) ---> SURILLI GSM(PIN 9)

IR4(PIN GND) ---> SURILLI GSM(PIN GND)

IR4(PIN VCC) ---> SURILLI GSM(PIN USB)

LED 1(+ PIN)---> SURILLI GSM(PIN 10)

LED 1 (- PIN) ---> SURILLI GSM(PIN GND)

LED 2(+ PIN)---> SURILLI GSM(PIN 12)

LED 2 (- PIN) ---> SURILLI GSM(PIN GND)

LED 3(+ PIN)---> SURILLI GSM(PIN 0)

LED 3 (- PIN) ---> SURILLI GSM(PIN GND)

LED 4(+ PIN)---> SURILLI GSM(PIN 1)

LED 4 (- PIN) ---> SURILLI GSM(PIN GND)

第 1 步:为 Surilli 设置 Arduino IDE

确保您为 Surilli 选择了正确的端口、电路板和处理器,如下图所示,并且它是可编程的(从文件>示例>数字>Blink 编译并上传“Blink”到您的 Surilli 上,检查是否一切正常).

第 2 步:电路

电路非常简单。按照下图设置您的硬件。

 
poYBAGOriQSAYIMKAACqYM5pQtI769.png
 

第 3 步:将代码上传并刻录到 Surilli

现在您已经完成了硬件和 Arduino IDE 的设置。将下面给出的 Arduino 草图复制并粘贴到您的 Arduino IDE 中并点击上传。上传后,红外传感器将开始工作,当任何车辆通过该红外传感器时,LED 将熄灭。

阿杜诺代码:

int ir1=5;
int ir2=6;
int ir3=9;
int ir4=10;
int led1=11;
int led2=12;
int led3=0;
int led4=1;
int proxy1=0;
int proxy2=0;
int proxy3=0;
int proxy4=0;
void setup() 
{
  pinMode(ir1,INPUT);
  pinMode(ir2,INPUT);
  pinMode(ir3,INPUT);
  pinMode(ir4,INPUT);
  pinMode(led1,OUTPUT);
  pinMode(led2,OUTPUT);
  pinMode(led3,OUTPUT);
  pinMode(led4,OUTPUT);
}
void loop(){
 proxy1=digitalRead(ir1);
 proxy2=digitalRead(ir2);
 proxy3=digitalRead(ir3);
 proxy4=digitalRead(ir4);
if(proxy1==HIGH)
{
 digitalWrite(11,HIGH);
}
else
{
 digitalWrite(11,LOW);
}
if(proxy2==HIGH)
{
 digitalWrite(12,HIGH);
}
else
{
 digitalWrite(12,LOW);
}
if(proxy3==HIGH)
{
 digitalWrite(0,HIGH);
}
else
{
 digitalWrite(0,LOW);
}
if(proxy4==HIGH)
{
 digitalWrite(1,HIGH);
}
else
{
 digitalWrite(1,LOW);
}
}

玩一下这个程序,看看它对不同的值和逻辑有何反应。这将加深您对红外传感器的理解,以便您可以在实际应用中使用它们。

如果您制作了一些有趣的东西,请与我们的社区分享。

目前为止就这样了。如果您有任何疑问,请访问我们的网站 surilli.io 或联系我们的支持人员。与 Surilli 家族保持联系,了解更多精彩内容。:-)


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !