项目简介
本项目是一个用于连接Arduino和esp8266微控制器与DSC PowerSeries安防系统的库。借助该库,能够实现与智能家居系统的集成,接收系统事件通知,同时还可当作虚拟键盘使用。此库支持多种DSC面板和开发板,让移动设备控制安防系统成为可能。
项目的主要特性和功能
- 状态跟踪:可对1 - 8分区的布防、报警、火灾等状态,以及1 - 64个区域的状态进行跟踪。
- 虚拟键盘:支持向1 - 8分区的面板写入按键指令。
- 数据缓冲:避免在代码运行繁忙时丢失Keybus数据。
- 非阻塞代码:不使用
delay
或delayMicroseconds
,保障代码快速运行。 - 多平台支持:支持多种Arduino开发板(如Uno、Mega等)和esp8266开发板(如NodeMCU、Wemos D1 Mini等)。
- 系统集成:可与Home Assistant、Apple HomeKit、Homey等智能家居系统集成,并且能发送推送通知和邮件。
安装使用步骤
安装
- Arduino IDE:在库管理器中搜索
DSC
(Sketch > Include Library > Manage Libraries
)。 - PlatformIO IDE:在PlatformIO库注册表中搜索
DSC
。 - PlatformIO CLI:运行
platformio lib install "dscKeybusInterface"
。 - 也可以使用
git clone
或下载项目压缩包到Arduino/PlatformIO库目录。
使用
- 连接硬件:按照以下方式连接DSC安防系统和开发板:
```
DSC Aux(-) --- Arduino/esp8266 ground
+--- dscClockPin (Arduino Uno: 2,3 / esp8266: D1,D2,D8)
DSC Yellow --- 15k ohm resistor ---| +--- 10k ohm resistor --- Ground
+--- dscReadPin (Arduino Uno: 2-12 / esp8266: D1,D2,D8)
DSC Green ---- 15k ohm resistor ---| +--- 10k ohm resistor --- Ground
Virtual keypad (optional): DSC Green ---- NPN collector --\ |-- NPN base --- 1k ohm resistor --- dscWritePin (Arduino Uno: 2-12 / esp8266: D1,D2,D8) Ground --- NPN emitter --/
Power (when disconnected from USB):
DSC Aux(+) ---+--- Arduino Vin pin
|
+--- 5v voltage regulator --- esp8266 development board 5v pin (NodeMCU, Wemos)
|
+--- 3.3v voltage regulator --- esp8266 bare module VCC pin (ESP-12, etc)
``
2. 配置DSC面板:通过
*8 + 安装代码`配置影响接口的面板选项,如调整摆动关机设置等。
3. 运行示例代码:项目中包含多个示例,可根据需求选择并运行,如状态监控、与智能家居系统集成等示例。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】