alei643 发表于 2018-1-10 14:08:36

Node Red 系列教程之一 初识Node Red

本帖最后由 alei643 于 2018-1-17 16:36 编辑

为了让大家对Node Red有一个最为直观清晰的了解,请先认真拜读下面两位大神的帖子
SchumyHao大神: [进阶教程] 使用node-red实现自动化
lanhemeng大神: 一个工控屌丝的智能家居

导航帖:
       Node Red 系列教程之一 初识Node Red
       Node Red系列教程之二 使用Node Red建立第一个Flow       Node Red系列教程之三 实现Node Red与Home Assistant之间的联动


这篇文章只是介绍Node Red基础知识,国内关于Node Red介绍甚少,也跟HA也搭不上边,等不及我的文章,英文极好的童鞋,请自己放狗。

一、Node-Red是什么

Node-Red是IBM公司开发的一款的编程工具,使用它可以摒弃以往的、以一种别具风格全新的方式将各类不同协议的设备、不同语言API服务融合在一起。

二、Node-Red可以用来做什么?
      
       看过两位大神的帖子,我相信不需要由我再做过多介绍,已知晓Node Red强大的魅力。但是我还是要啰嗦两句 ,能够实现与HA的交互,与西门子PLC交互也仅仅是Node Red的一部分功能而已。      

      接触智能家居的概念有三年多时间,最初的想法很简单,控制个灯和插座什么,弄几个自动化的场景就觉得很智能了。后来逐步接触HA、esp8266,才发现智能家居DIY这么灵活,HA用了也有1年多了,局限性也是有的,从各类设备的接入方面来说,对我们这类不懂Python、不懂开发的人来说,主要依靠的是官方的组件支持,但官方不可能响应我们每个人的需求,也不可能实现所有人的需求,万物互联还只是构想。现在借助Node Red,可以极大方便快捷帮我们联结更多的设备或者服务。      

       举个简单的例子,我家里的窗帘是杜亚工厂贴牌生产的,支持干接点,强电模式、485通讯,接入HA实现控制是很简单,sonoff挂了两个继电器就实现了,但是没有反馈,不能控制位置,不过这俩功能看似也没啥用处。杜亚的485协议包含这两项功能,此外485协议可以做到群控,什么是群控,一条指令随意控制多个窗帘同时动作。当然,这个问题在HA里用自动化很好解决。采用sonoff控制,需要搞定强电弱电还有代码,使用Node Red控制,仅需要利用几个Node,搭好一个Flow,再发布出去就可以了,并能够实现更多的功能。重要的是有了这个基础,可以通吃485协议的设备啦,什么485继电器控制板,485电表,485水表那都不在话下了啊。
      像485这种比较古老工业协议似乎大家也不感冒,那没啥关系,TCP、UDP、Websocket这些协议Node Red也都支持。

三、Node-Red用来解决什么问题?
       最早接触开源的智能家居系统时,Homeassistant和Domoticz之间犹豫不决,自己是个工科男,代码不是强项,HA对于每一个添加新增的设备、搞个自动化配置都需要通过敲代码实现。Domoticz的代码量稍微少一点,domo自动化采用Blockly的方式是我非常喜欢的,还有Domo和HA的历史图表对比,HA真是丑爆了。碍于大量丰富的组件,我还是投了HA的怀抱。有点偏题,言归正传,虽然花了很长的时间去学习和掌握yaml的语法,自动化写的还算上手了,但使用HA久了,天天敲代码,检查代码,有时候还需要重启HA,烦都烦死了,一直想要打破这种限制,直到发现Node Red,我便知道这是极好的工具。

      下面的动画是我制作的一个非常简单、通过Node Red的虚拟按键控制HA中主卧灯打开的Node Red流程,在这个Flow里面,包含两个Node,一个inject,另外一个是HA的call service。全部的动作只需要三部来完成,拖拽两个Node到Flow的视窗中,然后在call service的node中配置好HA的地址、密码、需要使用的组件,服务和数据,配置完成后,将该Flow应用部署,便可以实现与HA的交互。

    **** Hidden Message *****   


      友情提示:点击放大观看





















27hh 发表于 2018-1-10 14:12:49

不明觉厉:lol

wanyakui520 发表于 2018-1-10 14:14:25

沙发没了,一直想学这个就是不得入门

lidicn 发表于 2018-1-10 14:16:11

;P弃暗投明啊!有具体教程更好,一直没搞懂怎么使用noed red

ivencooli 发表于 2018-1-10 14:19:50

一直觉得node red好难用的样子

hbhzw 发表于 2018-1-10 14:24:12

学习一下

k_xg9 发表于 2018-1-10 14:32:15

谢谢分享

zzx386 发表于 2018-1-10 14:33:12

谢谢 学习了

neroxps 发表于 2018-1-10 14:39:46

感谢大佬辛苦分享~小弟先行拜读。

Gecko 发表于 2018-1-10 14:58:35

好好学习
页: [1] 2 3 4 5 6 7 8 9 10
查看完整版本: Node Red 系列教程之一 初识Node Red