0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

4G开关类设备接入用户服务器的步骤与意义

亿佰特物联网应用专家 2023-09-04 16:15 次阅读

我司开发了4G开关类设备并且不断完善整个系列,目前系列中含有C01/C11/C21/C31几个系列,这几个大型号之间主要是壳体与输入输出方式与数量的区别,主要功能上是带有DO继电器输出,DI输入检测AI输入检测,可以与服务器之间实现控制指令的下发控制与设备主动上报设备的信息。当定制设备接入用户自己的平台后,用户服务器可以自行管控这些设备(甚至包括不同型号),方便自己的整个管理系统搭建。

1f6db668-4afb-11ee-a20b-92fbcf53809c.png1f932f2e-4afb-11ee-a20b-92fbcf53809c.png

后续我司又在4G开关类中补充了智能插座智能空开,它们不仅能够进行DO输出继电器的控制,还可以进行电流检测,电压检测,用电量检测以及实现过电流/过电压保护等功能。

接入说明

一般情况下,4G开关类接入协议都是MQTT协议(部分设备支持TCP协议但是使用面小,基本没有使用),标准品是使用MQTT协议接入到阿里云的服务器上,然后使用阿里的“云智能”APP进行控制。


对于订制品而言,使用MQTT协议接入到用户自己的MQTT服务器上,需要用户提供服务器地址与端口(一般都是1883),大多数用户服务器都是开放式的MQTT接入,不对设备的MQTT三元组进行强校验,设备会以字符串”ebt-”加上设备的出厂ID作为MQTT连接的唯一ClientID,比如设备出厂ID为“S3200278S00047”,那么连接到MQTT服务器上的设备ClientID就是”ebt-S3200278S00047”,Username统一直接使用出厂ID,即为”S3200278S00047”,password要看服务器是否校验,如果需要校验则由用户提供password,如果不校验则不用管这一项。


这样设备出厂就会有唯一的ClientID接入到用户MQTT服务器,方便用户标记每一台设备。其中这些服务器地址,连接信息等在提交定制流程后给到我司即可,我司会按照相关信息更改固件并生产。


发布/订阅Topic

上面说到了用户如何接入到自己的服务器,这里说一下设备的信息上行Topic和控制信息下发的Topic,默认定制的4G开关类设备会订阅”yibaite/xxxxxxxxxxxx-set”,”xxxxx”的部分为设备的出厂ID,就是上面说到的ID,所以服务器下发的控制信息由此Topic下发,设备接收到控制信息进行解析,就会做出相应动作。


默认定制的4G开关类设备发布信息Topic为”yibaite/xxxxxxxxxxxx-post”,也就是说设备会通过这个Topic,上报自身的状态信息。所以如果用户不对订阅和发布Topic作特殊要求,就会使用如上的发布/订阅Topic,如果有特别要求,请联系我司相关人员。(部分用户也会使用订阅发布的统一Topic,比如所有设备都订阅同一个”eq-set”这个Topic,发布都走”eq-post”这个Topic,不过这样用户服务器必须具有向指定ClientID设备发送信息,并根据设备接入信息分辨是哪一台设备发布的信息的能力)。


设备交互的信息协议

以上已经说明了设备的接入过程与发布/订阅Topic的过程,下面说一下设备交互的信息协议,这是设备原有的标准品交互协议,所以设备的固件改动小,所需的定制费用低,如果需要定制自己的协议,需联系我司相关人员,相应的定制费用也更高。

先看一包服务器下发的控制信息最简包

{

"method":"thing.service.property.set",

“id”:”2023-6-12-16_22”

"params":

{

"powerstate":1

}

}

其中method和ID为必要字段,method必须填写thing.service.property.set,id一般使用时间戳,然后就是params也是必要字段,代表控制信息,下面的子json里面就是相应的控制字段,对于所有的4G开关系列而言,第一路开关(包括只有一路的设备,比如空开类和智能插座类)的控制字都是"powerstate",对应值填1就是打开,填0就是关闭,其他的控制字在下面会更详细一些给出,设备其实有很多功能,都可以通过不同控制字段实现控制。

再看一包设备上发的设备信息最简包

{

"id": "000001-0000010",

"version": "1.0",

"method": "thing.event.property.post",

"params":

{

"csq": 71,

"ICCID": "89860495042180775849",

"powerstate": 0

}

}

设备上发的信息json中的method固定为thing.event.property.post,然后params中就是设备的自身信息,比如上方的csq代表的是设备的信号强度,ICCID代表的是SIM卡的标识,powerstate就是第一路开关的当前状态。上面的只是最简包,方便最快理解,上报信息中还有很多其他的信息字段,代表的是其他部分功能,比如智能插座/空开的电流/电压/用电量读取值这类参数

一些关键字段(不同设备有一些不同的功能,所以有不同的字段,但是设备没有的功能,不会上发相应的控制字段,也不会响应相应的控制信息)

powerstate:第一路开关的当前状态(部分设备有powerstate_currunt字段,功能一样)

ch2:第二路开关的当前状态(部分设备有多路DO输出)

ch3:第三路开关的当前状态

ch4:第四路开关的当前状态


ICCID:SIM卡标识

csq:信号强度

mode:IO的工作模式,分别是自锁/点动/互锁(只有部分设备有此功能)

dtime:点动时间(部分设备有此功能)

dstatus:设备上电状态,默认值为2,代表维持断电前状态

IN_CH1/IN_CH2/IN_CH3/IN_CH4:分别代表4路DI输入的值,当为1时代表接通(只有部分设备有DI功能)

S_Version:软件版本号

is_warning:是否产生断电报警,0为关闭,1为打开(只有部分设备有断电报警功能,设备发生断电,会上发一包数据,里面带有powerWarning这个关键字,用户可以自己查看数据包自然明白)

以下参数只有智能插座/空开这类带电流电压检测功能的设备才有这部分控制字段:

power_read:功率读取值,单位W

electric_read:电流读取值,单位A

voltage_read:电压读取值,单位V

power_usage:用电量,单位千瓦时

over_protect_up_sw:过电流上阈值保护启用

over_protect_up:过电流保护上阈值,当启用过电流上阈值保护,电流值大于这个值自动关断

is_enable_reclose:是否启用重合闸(智能空开特有功能)

is_enable_v_protect_up:是否启用过压保护(智能空开特有功能)

is_enable_v_protect_down:是否启用欠压保护(智能空开特有功能)

v_over_range:过压阈值,当启用过压保护,电压大于这个值,开关自动关闭

v_down_range:欠压阈值,当启用欠压保护,电压小于这个值,开关自动关闭

以上就是主要的一些控制,虽不是全部功能,但是已经包含了所有的主要功能,其他一些功能都不常用,比如还有带AI输入的设备的AI相关读取与联动控制等。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 4G
    4G
    +关注

    关注

    15

    文章

    5376

    浏览量

    117136
  • 物联网
    +关注

    关注

    2870

    文章

    41659

    浏览量

    358430
  • 设备
    +关注

    关注

    2

    文章

    4172

    浏览量

    69296
收藏 人收藏

    评论

    相关推荐

    【开源】4G_Lora远程一氧化碳监测之【4G接入Mqtt云服务教程】

    配置 上面Part3中的 Mqtt 参数是以接入天翼云(Ctwing)为案例填写的,用户需要根据自己所接的 Mqtt 云服务器做相应的更改。 (5)采集传输工作周期设置 [SysWorkInterval
    发表于 06-27 09:36

    【开源】4G_Lora远程氨气监测之【4G接入Mqtt云服务教程】

    的 Mqtt 参数是以接入天翼云(Ctwing)为案例填写的,用户需要根据自己所接的 Mqtt 云服务器做相应的更改。 (5)采集传输工作周期设置 [SysWorkInterval] 该值设置的越大
    发表于 06-26 10:04

    【开源】4G_Lora远程硫化氢监测之【4G接入Mqtt云服务教程】

    的 Mqtt 参数是以接入天翼云(Ctwing)为案例填写的,用户需要根据自己所接的 Mqtt 云服务器做相应的更改。 (5)采集传输工作周期设置 [SysWorkInterval] 该值设置的越大
    发表于 06-25 15:06

    【开源】4G_Lora远程土壤环境监测之【4G接入Mqtt云服务教程】

    服务器,可选择天翼云(Ctwing),OneNet,阿里云等作为设备 Mqtt 接入的云,这里我们以天翼云中的 Mqtt 透传服务作为例子来演示 Mqtt 的
    发表于 06-15 09:59

    【开源】4G_Lora远程光照监测之【4G接入MQTT云服务教程】

    配置 上面Part3中的 Mqtt 参数是以接入天翼云(Ctwing)为案例填写的,用户需要根据自己所接的 Mqtt 云服务器做相应的更改。 (5)采集传输工作周期设置
    发表于 06-14 10:15

    【开源】4G_Lora 远程紫外线监测之【4G接入Mqtt云服务教程】

    通信配置 上面Part3中的 Mqtt 参数是以接入天翼云(Ctwing)为案例填写的,用户需要根据自己所接的 Mqtt 云服务器做相应的更改。 (5)采集传输工作周期设置
    发表于 06-13 10:29

    【开源】4G_Lora 远程紫外线监测之【4G接入TCP云服务教程】

    功能概述: 参考本文档可实现将传感采集到的数据信息以 Json 格式通过 TCP 传输给远端的云服务器。 Json 消息包含内容如下: Json对象 描述 类型 单位 值域 Uid 设备唯一标识
    发表于 06-13 10:21

    【开源】4G_Lora远程风速监测之【4G接入Mqtt云服务教程】

    配置 上面Part3中的 Mqtt 参数是以接入天翼云(Ctwing)为案例填写的,用户需要根据自己所接的 Mqtt 云服务器做相应的更改。 (5)采集传输工作周期设置
    发表于 06-12 09:44

    【开源】4G_Lora远程雨量监测之【4G接入MQTT云服务教程】

    ; (4)Mqtt 通信配置 上面Part3中的 Mqtt 参数是以接入天翼云(Ctwing)为案例填写的,用户需要根据自己所接的 Mqtt 云服务器做相应的更改。 (5)采集传输工作
    发表于 06-09 10:25

    【开源】4G_Lora远程毫米波雷达水位监测之【4G接入MQTT云服务教程】

    接口接 4G 天线,\"ANT2\" SMA 接口接 GPS 天线(如果ANT2有的话) 步骤二:拷贝代码 首先用 TypeC USB 数据线将设备和电脑连接,然后在电脑上会自动
    发表于 06-08 10:49

    【开源】4G_Lora远程水质监测(COD)之【4G接入Mqtt云服务教程】

    接入天翼云(Ctwing)为案例填写的,用户需要根据自己所接的 Mqtt 云服务器做相应的更改。 (5)采集传输工作周期设置 [SysWorkInterval] 该值设置的越大工作采样和传输间隔时间
    发表于 06-07 10:10

    【开源】4G_Lora远程水质监测(COD)之【4G接入TCP云服务教程】

    ShineBlink 的gitee开源仓库 步骤四:开始工作 上电后观察设备的 LED 指示灯状态: 白色:表明刚上电 红色:表明已检测到 Sim 卡 蓝色:表明已连上附近基站 绿色:表明已和服务器
    发表于 06-07 10:04

    【开源】智慧养殖盒子(4G_GPS)之【4G接入MQTT云服务教程】

    案例填写的,用户需要根据自己所接的 Mqtt 云服务器做相应的更改。 步骤四:开始工作 上电后观察设备的 LED 指示灯状态: 白色:表明刚上电 红色:表明已检测到 Sim 卡 蓝色:
    发表于 06-02 09:55

    【开源】4G远程GPS定位 之 【4G+GPS 接入Mqtt云服务教程】

    )为案例填写的,用户需要根据自己所接的 Mqtt 云服务器做相应的更改。 (4)采集传输工作周期设置 [SysWorkInterval] 该值设置的越大工作采样和传输间隔时间越长,这样可以减少 Sim
    发表于 05-30 11:59

    【教程】4G开关接入私有服务器步骤意义(MQTT)

    ,一般都是绑定在私人的APP账户上进行控制的,如果工业运用100个开关就需要100个账户进行分开控制,非常不方便。所以将我司的4G遥控开关接入私有
    的头像 发表于 05-06 10:40 531次阅读
    【教程】<b class='flag-5'>4G</b><b class='flag-5'>开关</b><b class='flag-5'>接入</b>私有<b class='flag-5'>服务器</b>的<b class='flag-5'>步骤</b>与<b class='flag-5'>意义</b>(MQTT)