13397158231   jevian_ma@worldflying.cn

4G版IO控制器说明

2021-11-15 12:25:26


使用方法

将外部控制回路一 一接入继电器所对应的端子,插上物联网卡后,接通电源,即可开机运行,之后通过电脑串口配置设备的服务器相关信息,重启后,设备上线后会给服务器发送上线通知,收到上线通知后,用户即可控制设备,具体控制指令见指令说明。

软件配置流程如下

 

1)通过USB转TTL模块将电脑和设备连接,T接usb转换器的RX,R接usb转换器的TX,G接usb转换器的GND.

需要确保usb转uart模块驱动已安装,如果驱动未安装,请联系usb转uart模块的购买方提供驱动程序,否则无法继续下去。

QQ图片20211203171141.jpg

2)打开软件点击左上方运营商网络设备选择对应的设备

QQ图片20211203170814.png

3)选择对应的com端口

QQ图片20211125155517.png

mqtt模式设置的url需要注意,协议必须是tcp,url必须添加端口号。


4)填写MQTT地址和用户名密码

5)点击设置,然后显示设置成功

6)重启设备


网络控制说明如下:


服务器需要监听的topic

/wf/smartsocket/server

设备上线会收到的msg消息

{"act":"deviceonline","type":"cat1socket","buildtime":"Sep 13 2021, 17:17:14","sn":"EUK2ppECWEUJqb2t"}
事件为deviceonline
buildtime为编译时间,可以作为系统版本号使用
sn为设备序列号,最长32位
type为设备类型

设备下线会收到的msg消息

{"act":"deviceoffline","sn":"EUK2ppECWEUJqb2t"}
事件为deviceoffline
sn为设备序列号,最长32位
说明:由于mqtt服务器判断下线事件会有一定的延时,可能设备掉电后过了2-3分钟才会发出掉电通知。但是这个期间很有可能设备已经再次重启上线了。因此下线时比较时间戳,确认这次收到的下线通知一定是当前收到的上线是很重要的。

直接改变设备开关状态命令

向topic为/wf/smartsocket/device/EUK2ppECWEUJqb2t发送
act=ctrlio&sw=0&swid=1
事件为ctrlio
sw为希望的开关状态,1为启动,0为关闭
swid为所选择的开关号

设备的开关状态发生变化时会收到的msg消息

{"act":"deviceswchange","sn":"EUK2ppECWEUJqb2t","swid":0,"sw":1}
事件为deviceswchange
sn为设备序列号,最长32位
swid为开关号
sw为最新开关状态
同时还会向设备状态广播topic发送mqtt消息
设备广播自己状态的topic为/wf/smartsocket/device/status/EUK2ppECWEUJqb2t
其中/wf/smartsocket/device/status/为固定字符串,EUK2ppECWEUJqb2t为设备sn

获取设备的最新状态数据

向topic为/wf/smartsocket/device/EUK2ppECWEUJqb2t发送
act=getallmsg&mode=0
事件为getallmsg
mode为0或是无mode参数是给服务器

为1是发送给设备的/wf/smartsocket/device/status/EUK2ppECWEUJqb2t  
为2两个都发。

接收到设备返回自己的数据信息

{"act":"allmsg","type":"cat1socket","buildtime":"Sep 13 2021, 17:17:14","sn":"EUK2ppECWEUJqb2t","sw0":1,"sw1":0,"sw2":0,"sw3":0,"sw4":0,"sw5":1,"sw6":0,"sw7":0}
事件为allmsg
buildtime为编译时间,可以作为系统版本号使用
sn为设备序列号,最长32位
sw为对应当前开关状态
type为设备类型

添加定时器与修改定时器

向topic为/wf/smartsocket/device/EUK2ppECWEUJqb2t发送
act=settimer&swid=1&ID=0&hour=10&minute=30&sw=0&enable=true&mode=1&MON=true&TUE=false&WED=false&THU=false&FRI=false&SAT=false&SUN=false
事件为settimer
swid为对应设定的开关
ID为0为添加,ID不为0,为对应的定时器ID则为修改,如果找不到对应的定时器id,则以送的ID为id新建定时任务。

  • ID为定时器ID

  • hour为定时器定时的小时

  • minute为定时器定时的分钟

  • enable为当前定时器是否启动

  • mode为区分定时模式还是延时模式,定时模式为1,延时模式为0

  • sw为时间到了后控制设备开还是关

  • MON为周一,如果为true则每周一触发

  • TUE为周二,如果为true则每周二触发

  • WED为周三,如果为true则每周三触发

  • THU为周四,如果为true则每周四触发

  • FRI为周五,如果为true则每周五触发

  • SAT为周六,如果为true则每周六触发

  • SUN为周日,如果为true则每周日触发
    如果星期都为false则为单次模式,触发一次后enable自动由true变为false
    一共可以添加5个定时器

    删除定时器

    向topic为/wf/smartsocket/device/EUK2ppECWEUJqb2t发送
    act=deltimer&ID=2&swid=1
    事件为deltimer
    swid为对应设定的开关
    ID为定时器ID,如果找不到,什么事情也不做。

    代码更新

    向topic为/wf/smartsocket/device/EUK2ppECWEUJqb2t发送
    act=update&imgurl=http://47.91.225.92/Downloads/smartsocket.bin.ota&buildtime=Jan 6 2021, 21:50:27
    事件为update
    imgurl为用于更新的代码下载路径
    buildtime为代码版本,用于防止重复更新,当设备检查到版本与系统当前版本一致,则什么都不做,可选参数,如果没有这个参数,则一定更新。

    设备重启

    向topic为/wf/smartsocket/device/EUK2ppECWEUJqb2t发送
    act=restart
    事件为restart

查询定时器

向topic为/wf/smartsocket/device/EUK2ppECWEUJqb2t发送 act=getalltimers&swid=1&mode=0
mode为0或是无mode参数是给服务器
为1是发送给设备的/wf/smartsocket/device/status/EUK2ppECWEUJqb2t
为2两个都发。

接收到设备返回自己的数据信息

{"act":"alltimers","type":"cat1socket","buildtime":"Sep 13 2021, 17:17:14","sn":"EUK2ppECWEUJqb2t","timers1":0}
或是
{"act":"alltimers","type":"cat1socket","buildtime":"Sep 13 2021, 17:17:14","sn":"EUK2ppECWEUJqb2t","timers1": [{"ID":0,"hour":176,"minute":12,"enable":true,"mode":0,"sw":0,"MON":true,"TUE":true,"WED":true,"THU":true,"FRI":false,"SAT":true,"SUN":false}, {"ID":2,"hour":10,"minute":30,"enable":true,"mode":1,"sw":0,"MON":true,"TUE":false,"WED":false,"THU":false,"FRI":false,"SAT":false,"SUN":false}]}
事件为alltimers
type为类型
buildtime为编译时间
sn为序列号
timer1为对应开关的定时器

  • ID为定时器ID

  • hour为定时器定时的小时

  • minute为定时器定时的分钟

  • enable为当前定时器是否启动

  • mode为区分定时模式还是延时模式,定时模式为1,延时模式为0

  • sw为时间到了后控制设备开还是关

  • MON为周一,如果为true则每周一触发

  • TUE为周二,如果为true则每周二触发

  • WED为周三,如果为true则每周三触发

  • THU为周四,如果为true则每周四触发

  • FRI为周五,如果为true则每周五触发

  • SAT为周六,如果为true则每周六触发

  • SUN为周日,如果为true则每周日触发

    若当前开关无定时器则timers值为0

    设置自动循环开关

    向topic为/wf/smartsocket/device/EUK2ppECWEUJqb2t发送
    act=cycle&swid=1&enable=true&uptime=1&downtime=2&cycleduration=0&cycleendsw=0

    act=cycle&swid=1&enable=false
    事件为cycle
    swid为所选开关号
    enable为是否启动,true为启动,false为关闭
    uptime为通电时间,单位为分钟
    downtime为断电时间,单位为分钟
    cycleduration为循环结束时的时间戳(这里只接受以秒为单位的时间戳,不要送字符串),0为永不结束。
    cycleendsw为循环结束时开关的状态,0为断开,1为合并。

说明:循环开关配置掉电就消失,也就是说如果出现了设备断电的情况,这个配置自动消失了。

查询开关循环

向topic为/wf/smartsocket/device/EUK2ppECWEUJqb2t发送
act=getallcycle&mode=0
事件为getallcycle
mode为0或是无mode参数是给服务器
为1是发送给设备的/wf/smartsocket/device/status/EUK2ppECWEUJqb2t
为2两个都发。

接收到设备返回自己的数据信息

{"act":"allcycle","type":"cat1socket","buildtime":"Sep 13 2021, 17:17:14","sn":"5xczczqwe35d5as4d56sa4564q4sd4a2", "cycle0":{"cycleenable":false,"cycleduration":0,"cycleuptime":5,"cycledowntime":15,"cycleendsw":0}, "cycle1":{"cycleenable":false,"cycleduration":0,"cycleuptime":5,"cycledowntime":15,"cycleendsw":0}, "cycle2":{"cycleenable":false,"cycleduration":0,"cycleuptime":5,"cycledowntime":15,"cycleendsw":0}, "cycle3":{"cycleenable":false,"cycleduration":0,"cycleuptime":5,"cycledowntime":15,"cycleendsw":0}, "cycle4":{"cycleenable":false,"cycleduration":0,"cycleuptime":5,"cycledowntime":15,"cycleendsw":0}, "cycle5":{"cycleenable":false,"cycleduration":0,"cycleuptime":5,"cycledowntime":15,"cycleendsw":0}, "cycle6":{"cycleenable":false,"cycleduration":0,"cycleuptime":5,"cycledowntime":15,"cycleendsw":0}, "cycle7":{"cycleenable":false,"cycleduration":0,"cycleuptime":5,"cycledowntime":15,"cycleendsw":0}}
事件为getallcycle
buildtime为编译时间,可以作为系统版本号使用
sn为设备序列号,最长32位
type为设备类型
cycle0为对应开关的循环 cycleenable为是否启动,true为启动,false为关闭
cycleuptime为通电时间,单位为分钟
cycledowntime为断电时间,单位为分钟
cycleduration为循环结束时的时间戳(这里只接受以秒为单位的时间戳,不要送字符串),0为永不结束。
cycleendsw为循环结束时开关的状态,0为断开,1为合并。






 配置软件下载地址   https://github.com/worldflyingct/setdevicetool/releases





优秀产品推荐:可编程网络IO控制器

下一篇:WiFi版IO控制器

联系我们

  • 地址:武汉市东湖高新开发区光谷总部国际1栋2412室
  • QQ:932773931
  • 电话:027-59761089-806
  • 手机:13397158231
  • 邮箱:jevian_ma@worldflying.cn