home-automation, 基于NodeJS的基于 树莓派 3的家庭自动化和

分享于 

4分钟阅读

GitHub

  繁體 雙語
Raspberry Pi 3 based home automation with NodeJS and React Native.
  • 源代码名称:home-automation
  • 源代码网址:http://www.github.com/deepsyx/home-automation
  • home-automation源代码文档
  • home-automation源代码下载
  • Git URL:
    git://www.github.com/deepsyx/home-automation.git
    Git Clone代码到本地:
    git clone http://www.github.com/deepsyx/home-automation
    Subversion代码到本地:
    $ svn co --depth empty http://www.github.com/deepsyx/home-automation
    Checked out revision 1.
    $ cd repo
    $ svn up trunk
    
    使用RPi和Javascript实现基于的家庭自动化

    更新文章:https://viktorkirilov.me/post/home-automation-raspberry-pi/

    Intro

    电子邮件链接到视频

    https://youtu.be/wh0OoLUTeM8

    Alt text

    简介

    因为一个孩子我对电子和不同类型的机械有热情。 在arduino之前,我用arduino做过不同的小项目,比如我的游戏方向盘。汽车的定制LED转速表。声控LED等等。 最近我买了 树莓派 3,围绕着所有的IoT炒作,我决定开始自动化我的主页。

    技术栈

    我非常熟悉javascript及其生态系统,我决定通过 react native 创建自己的手机应用程序,并通过 websockets 将它的连接到 NodeJS 后端。 我使用immutablejs记录数据结构的一致性和应用程序的性能。 数据通过JSON字符串在客户端和服务器之间发送,当双方接收到数据时,这些数据被转换为不可变记录。 我已经将共享模块( 客户端与服务器之间) 分离到一个单独的本地npm包- home主记录和主配置。 对于GPIO控制( 树莓的针),我使用 pi-blaster 库,以及 wiringPi。 因为我找不到交流的代码,所以我自己记录下来并将它们添加到 lirc 配置文件中。 因为我不需要重新编译整个应用程序或者每次更改配置,所以 Duckdns cron被用作动态 dns,因为我的IP地址会定期改变。 服务器将更改广播到所有已经连接的用户实时。 手机应用位于 /电话应用文件夹,服务器位于收费/服务器。 你为什么不看看?

    硬件

    Raspberry Pi 3 是控制单元。 高功率器件,如LED条,通过外部供电12V 5A power supply ( 与引脚共享地)。 交流电通过 950nm 红外LED控制。 加热系统通过继电器 ( 打开和关闭) 和伺服系统连接在一起,因为我避免拆卸 disassembling。白光LED带条带通过逻辑晶体管连接至引脚。 还有红外线接收器,以防我想记录其他的东西。 温度通过DS18B20温度传感器测量。

    配线看起来像:

    Schematic

    新想法

    我为不同的模块开放了所有的想法。 如果你有一些想法,我将感谢你将它添加到问题跟踪器中,并将它的标为 Idea

    软件相关性
    • node &协议
    • 引脚冲击
    • WiringPi
    • Lirc

    AUTO  react  NAT  Native  HOME  RAS