在圣诞节假期,我将去我父母家旅行,由于最近在附近发生了一些家庭入侵,我决定留下一个 DIY 警报系统,里面放着一些我躺在身边的东西。
该项目包含一个 Arduino Uno,其中 SeeedStudio GPRS Shield V2.0 连接到超声波传感器 HC-SR04。
这背后的想法很简单,当超声波传感器检测到正在测量的距离有差异时,我会在手边接听电话。然后我可以回电以“重新武装”系统。
您将需要:
将没有 PIN CODE的 SIM 卡放入GPRS Shield。
将 GPRS Shield 放在 Arduino UNO 的顶部。
通过将两个跳线更改为左侧,将引脚 7 和 8 定义为 GPRS Shield 中的通信引脚。
将 HC-SR04 中的 VCC 和 GND 连接到 Arduino 中的 5V 和 GND 引脚。
将 HC-SR04 中的 Trig 和 Echo 连接到 Arduino 中的针脚 3 和针脚 4。
我使用 SIM900 库。可在此处下载。在正确的 Arduino 文件夹中安装库后,您可能需要更改一些内容。
设置通信引脚。
GPRS Shield V2.0 使用 Arduino 上的引脚 7 和 8。使用文本编辑器打开库的 GSM.cpp 文件。更改 #define _GSM_TXPIN_ to 7
和 #define _GSM_RXPIN_ to 8
。
//De-comment this two lines below if you have the
//second version og GSM GPRS Shield
#define _GSM_TXPIN_ 7
#define _GSM_RXPIN_ 8
保存文件。
调试模式
使用文本编辑器打开 GSM.h 文件。通过注释关闭以下代码行中库中的调试模式。
GSM_ON
在同一个文件中,您需要将 GSM_ON 引脚更改为引脚 9。
// pins definition
#define GSM_ON 9 // connect GSM Module turn ON to pin 77
//#define GSM_RESET 9
注释所有其他 pin 9 #define 语句。
保存文件。
下载 Arduino 代码
从这个项目的代码部分获取我的代码。下载后将代码中的“XXXXXXX”替换为您的电话号码。
char user_phone_number[] = "XXXXXXXXXXXXX"; //DEFINE YOUR USER CELLPHONE NUMBER
编译和上传。
注意:确保您插入的电话号码与您拨打电话时串行监视器中显示的号码相同。
ATTESO: Your_Phone_Number_to_insert_in_the_XXXXXXX
打开串行监视器窗口
上传后,在 Arduino IDE 中打开串行监视器窗口。程序将首先显示与 GPRS shield 的连接尝试。
盾牌准备好后,您仍然可以收到消息, Waiting for Network Registration
. 如果出现此问题,您将需要等待几分钟才能将 Shield 连接到 GSM 网络。在此期间,绿色 LED 将快速闪烁。
测试一下
当程序运行时,将您的手放在 HC-SR04 前面。您应该在串行监视器中收到消息“运动”,并在您方便的情况下拨打电话。
拨打您的系统号码,警报应再次“重新启动”。
我还没有在系统上进行过长时间的测试,但我已经注意到,如果您测量长距离,有时显示的测量值可能会出现问题。
未来更新:
对于这个项目,PIR 传感器可能会比超声波传感器获得更好的结果。
还应包括一个输出电路(继电器或 MOSFET),这将允许我连接警报器或远程激活任何其他系统。
如果您发现任何错误,如果您有任何建议/改进或问题,请写信给我。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
全部0条评论
快来发表一下你的评论吧 !