核心技术优势/方案详细规格/产品实体图/PCB/方块图Datasheet/测试报告/Gerber/Schematics/User manual +一键获取
目标:
1. 电力控制
i. 透过继电器模组控制电力开关来控制是否供应电力
ii. 整合网路校时进而提供定时开启与关闭
2. 电流监控
i. 透过 ACS712 电流感测器模组进行使用电流之监控
ii. 透过 ACS712 电流感测器模组进行电流负载控制
4. 整合云端系统
i. 整合 Node-Red,提供云端控制电力开关的能力
ii. 整合 Node-Red,提供云端使用电流之监控
使用元件:
实作:
一、感应器端硬体分析与设置一:
电流侦测:
一般来说要侦测电流,主要的重点当然是电流侦测电路,但是以常用的50A来说,都必须将之等比例下降到安全范围内(约500mA)来侦测,一来比较安全,二来就可以使用一般的元件,不用特制元件,降低成本。
为了做到这一点一般电流侦测元件都会用类比数位转换 IC,就 是所谓的 ADC,然后从线上的电阻分压取出压降,再从 ADC 转换出相对的数值,因为要记录数值与曲线,所以我们采用这样的做法。
电流感测模组数值的误差与校正:
为了测试方便我们采用Allegro ACS712 电流感测模组来加快速度与简化流程,但是一般的电流侦测模组都无法读取电压的负值,以至于数值都会不正确,要解决这个问题有硬体跟软体两种解决方案,硬体为输入端加一个桥氏整流电路将频率变为两倍,来解决这个问题,软体方案就是,直接利用程式做校正,我们这里使用软体方案:我们利用电压差来计算补偿电压频率周期变化与消除杂讯,成功将误差压到30mA,但是还是太高,参考网路资料后,决定使用使用 方平均数(Quadratic mean),简称方均根(Root Mean Square,缩写为 RMS), 是 2 次方的广义平均数的表达式,也可叫做 2 次幂平均数。来计算,修正后差异值已经降到满意的10以内,于是利用电流均方差来计算最终耗电的瓦特值
(资料来源可以参考 WiKi 平方平均数
http://zh.wikipedia.org/wiki/%E5%B9%B3%E6%96%B9%E5... %95%B0)
请参考图片
修正前每次量测的数值差异很大,最多可以相差到30
利用电压差来计算补偿电压后, 误差已经低于10以内
Sensor_宣告+设定
电流读取子涵式
计算方均根子涵式
二、感应器端硬体分析与设置二:电源控制
一般来说,要做电源控制使用继电器是一个简单、低成本整合性强的解决方案,利用小电力来控制大电力的开关在日常生活到处见的到。例如:电风扇的切换、灯泡的开关切换等等,在工业的应用上为了维护与安装的方便,会使用插拔试继电器模组配合继电器底座使用,我们这里为了方便演示,使用的是市面上买的继电器模组,这个模组还有包含光耦合隔离线路,以免110V的大电影响到5V的控制设备
内部接线图如下:
接线示意图如下
实际接线图如下
三、S76S设定:
S76S使用的是群登P2P的程式码
这个程式码的特点是已经定义好他的群组为1个Master对32个Slave,每一个Slave占用的时间为0.5秒,所以询问完一个群组为16秒钟
32个Slave的设计是适合智慧家庭的
架构图如下:
设定如下:
详细设定可以参考第一集或是可以看附件的手册
我们这里直接写好子函式,呼叫就可以设定设定
四、ATMEGA328+电流计+固态继电器+LoRa:
以上全部设定完成之后,Arduino端就需要同时做两件事情,一是将计算过的耗电资料透过S76S送出,二是监听与分析S76S收到的资料是否包含控制指令,如果有收到控制指令,则透过固态继电器去控制智慧插座的开关,并同时将状态反馈
资料传送子函式
感应器端主程式
五、接收器端硬体设置:
将S76S的3.3V与GND分别接到ESP-32S左右两边的pin19,再将S76S的TX、RX分别接到ESP-32S的pin17与pin16
接线示意图如下
实际接线图如下
六、S76S设定:
S76S的设定同上,差别是,改成设定为Master,在启动即可
一样已经写成子函式直接呼叫即可设定
S76S_Master设定子函式
七、ESP-32S设定:
ESP-32S的部分,一样可以利用ARduino编辑程式,
实际操作说明:
宣告设定
启动设定
网路校时子函式
网路传送子函式:
主程式:
展示:
因为这个方案是利用ESP-32S将资料用UDP的方式丢出 所以接收端就非常自由,只要可以接收UDP讯号的设备都可以当作 接收界面
在这里是用IBM开发的Node-Red去做画面演示
第一步:先将流程图一一拉出来设定好:
如下图
第二步跟第三部 就是将资料显示出来并且利用Node-red做反向控制
利用按下Switch的按钮,手动关闭电源,下图分别代表开启跟关闭