4G低功耗摄像头简称 4G-IPC ,由于低功耗、带电池、太阳能(可选)、便携、云存储、易安装等诸多优点,已被广泛应用于通讯、工业控制现场、路桥收费、医疗、环保等领域。
4G-IPC方案在物联网中的位置如下图:
从平台方案上,合宙在CAT4和CAT1 (合宙4G模块)上均支持4G-IPC 对接:
名称 | 方案 | 下行速率 | 上行速率 | 应用场景 |
CAT4 | ASR | 150M | 50M | 多路/单路全高清 |
CAT1 | RDA | 10M | 5M | 单路全高清/高清 |
合宙4G模块目前已经成功对接了多个LINUX /RTT/LITEOS 平台,这些平台简称“主控”,
主控通过USB连接4G模块的RNDIS上网以及视频传输。
先说说NDIS, 它是从4G开始针对ECM虚拟网卡的产物,在linux下4G走ECM可以用dhcpd来做为应用层,windows下4G走ndis协议拨号可以建立连接。 NDIS 是 “网络驱动程序接口规范” 英文的缩写。RNDIS就是Remote NDIS, 就是在USB设备上跑TCP/IP,让USB设备看上去像一块网卡 。下面有几个网址可以参考linux 下RNDIS 网卡的适配:
http://doc.openluat.com/article/453/0
http://doc.openluat.com/article/1850/0
其他参考文章:http://doc.openluat.com/search/linux
对接方式主要有三种:
1.标准型 ,采用标准AT(或扩展AT)指令,对接方式如下:
4G模块有三个作用:A)提供RNDIS 上网 B)提供心跳保活 C)提供对主控的唤醒
标准型CAT1固件:http://openluat-erp.oss-cn-hangzhou.aliyuncs.com/erp_site_file/product_file/sw_file_20210218155152_AirM2M_720U_V1623_LTE_AT.zip
标准型CAT4固件:http://openluat-erp.oss-cn-hangzhou.aliyuncs.com/erp_site_file/product_file/sw_file_20201209121725_AirM2M_720S_V616_LTE_AT.zip
- 扩展型,对接方式和4G模块的功能也和标准型设计框图一致, 但是模块采用LUAT 脚本二次开发,在保活对接协议和多通道保活方面可定制。
3.复合型,对接方式如下:
复合型实际上是除了#1的A)B)C)的等效功能一样之外,将部分原本属于主控的功能迁移到4G模块来, 比如红外探测器,服务器鉴权/负载均衡连接接策略,状态LED等。
上面3种对接方式,修需要做好USB 设备的驱动,包含RNDIS 网卡 和 usbtty0/usbtty1/usbtty2, 其中usbtty1 使用来和模块进行AT交互的虚拟串口(有的主控会用usbtty0来做虚拟串口,根据实际情况来做主控应用)
下面分别介绍 标准型 ,扩展型 和 复合型 的特点
标准型 和扩展型 的硬件对接方式基本一致 ,硬件上都是“设计框图(一)”,模块的软件功能如下:
标准型直接使用现有的AT指令,无需定制,控制指令序列如下:
扩展型 属于LUAT 定制方案,以下是涂鸦对接的实例:
对接方式简单,兼容性强,共有四个AT指令。
指令一: AT+SERVCREATE=CH,IP,PORT,<font color=#ff0000>登录内容</font>,<font color=#00ff00>登录回复</font>,<font color=#0000ff>心跳内容</font>,心跳周期,<font color=#ff7f00>唤醒内容</font>,重要标志,执行方式
序号 | 名称 | 值域 | 必填 | 说明 |
1 | CH | 通道1~5 | 是 | 最多开启五个通道同时保活 |
2 | IP | 服务器 IP 地址 | 是 | 可以是 IP,也可以是域名 |
3 | PORT | 服务器端口 | 是 | 16 位无符号整型数字 |
4 | 登录内容 | HEX 字符串 | 是 | 比如”123” 写成 313233 |
5 | 登录回复 | HEX 字符串 | 否 | 比如”123” 写成 313233 |
6 | 心跳内容 | HEX 字符串 | 是 | 比如”123” 写成 313233 |
7 | 心跳周期 | 单位:秒 | 是 | 建议 30-600 秒之间,通常是 60,120,180 等 |
8 | 唤醒内容 | HEX 字符串 | 否 | 比如”123” 写成 313233 |
9 | 9 重要标志 | 0~1 | 是 | 目前唤醒原因(REASON)枚举如下: |
10 | 执行方式 | 0~n | 是 | 为 0:立刻启动. |
示例(注意对应字段,对应颜色):
AT+SERVCREATE=1,121.26.208.21x,6061,<font color=#ff0000>LoginData</font>,<font color=#00ff00>LoginResponseData</font>,<font color=#0000ff>HeartData</font>,60,<font color=#ff7f00>WakeUpData</font>,1,0
AT+SERVCREATE=1,121.26.208.21x,6061,<font color=#ff0000> 4C6F67696E44617461</font>,<font color=#00ff00>4C6F67696E526573706F6E736544617461</font>, <font color=#0000ff>486561727444617461</font>,60,<font color=#ff7f00>57616B65557044617461</font>,1,0
示例若成功返回: +SERVCREATE:1,OK
如果发送命令格式正确,通用返回格式是: +SERVCREATE:CH,OK
如果发送命令格式错误,通用返回格式是: +SERVCREATE:CH,ERROR
指令二: AT+SERVCLOSE=CH 关闭保活通道,CH 取值范围 0:关闭所有通道,1-5 表示关闭指定通道。
指令三: AT+WAKEVT? 设备被唤醒后,查询唤醒原因,返回 +WAKEVT:CH,REASON (REASON 见上面枚举)
指令四: AT+GETCFG? 可以查看 4G 模块内 5 个保活通道的参数和运行状态的 JSON 字符串,主控业务用不上,但可以协助开发调试。
扩展型 AT指令的用起来更简单:
指令虽然更简单,但兼容性却是更好,体现在: A)多路独立保活,B)保活支持协议灵活
扩展型CAT1 固件:TUYA_CAT1_1.0.6_Luat_V0025_RDA8910_TTS_FLOAT.pac
扩展型CAT4 固件:TUYA_CAT4_1.0.6_Luat_V0019_ASR1802S_FLOAT.blf
复合型 将一部分原本属于主控的业务让模块来实现,主用在非通用、保活逻辑复杂的产品上,复合型实际上是扩展型的 定制开发版,且有LUAT经验的客户可以参考:LUAT_LOWCOST_IPC.rar
此示例是基于CAT1 的AIR724 做的基础演示代码:
串口1,2,3 以及USB 的虚拟AT 口均可以用于 和主控进行AT指令通讯 (默认是USB 虚拟AT口)
主控可以使用普通AT指令,或者自定义AT指令来控制4G模块或者查询状态,等等。
由于客户要熟悉LUAT 并做业务脚本需要一个过程,通常考虑标准型和扩展型。
最新评论