Professional Documents
Culture Documents
FN-LINK 3121系列模组软件开发指南 - v1.03
FN-LINK 3121系列模组软件开发指南 - v1.03
软件开发指南
V1.0.03
3121 系列模组软件开发指南
修改记录
文档版本 发布日期 发布人 修改说明
V1.0.00 2019.07.20 wayne 创建
V1.0.01 2019.07.21 wayne 修改部署方案介绍
V1.0.02 2020.02.27 wade 文档结构整理
V1.0.03 2020.04.20 wade 新增 NV 0xf 和 0x10 的描述
目录
1 概述 ............................................................................................................................. 1
1.1 PLC 简介 ............................................................................................................ 1
1.2 PLC 拓扑结构..................................................................................................... 1
2 开发方案 ...................................................................................................................... 2
2.1 应用场景 ............................................................................................................ 2
2.2 应用举例 ............................................................................................................ 2
3 系统调测 ...................................................................................................................... 2
3.1 HiAssitant 的使用 ............................................................................................... 3
3.1.1 连接.........................................................................................................3
3.1.2 网络拓扑 .................................................................................................4
3.1.3 全网命令收发..........................................................................................5
3.1.4 升级.........................................................................................................7
3.1.5 白名单管理 .............................................................................................7
3.1.6 全网写 NV ..............................................................................................8
3.1.7 点对点通信 ........................................................................................... 11
3.1.8 密码修改 ............................................................................................... 11
4 固件升级 .................................................................................................................... 12
4.1 OTA 升级.......................................................................................................... 12
4.1.1 HiAssitant 升级(uart1) ........................................................................... 12
4.1.2 OTATool 升级(uart0).............................................................................. 13
1 概述
3121 系列模块是由 FN-LINK 基于海思 Hi3921SV100 芯片开发的 PLC 通信模块,支持
交流 220V 和直流 12V PLC 通信。
本文档重点描述用户如何使用 3121 系列模组进行评估测试、软件系统集成开发。
本文档适用于:软件工程师、测试工程师、技术支持工程师。
1.1 PLC 简介
CCO:
(Concentrator)主节点模组
STA:
(Station) 子节点模组
PCO:(Proxy Coordinator) 代理子节点模组
3121 系列模组支持 CCO 和 STA 两种工作模式,可通过烧录不同软件实现。网络节点
之间支持自动快速组网,动态路由,多路径寻址等功能。网络节点之间采用 6 字节 MAC
地址寻址,支持广播和单播通信,一个网络中只允许一个 CCO 存在。PCO 是具备代理中
2 开发方案
2.1 应用场景
目前开发方案适用于以下两种应用场景:
应用场景 1
GPIO
STA
PWM
Host CCO
GPIO
?、 STA
Uart PWM
PLC
该方案支持 Host 从 CCO 的 UART0 串口控制和获取所有 STA 的 GPIO/PWM 状态,
STA 可支持设置模组 GPIO 的 0-5,19,20 为控制脚。其中 PIN0-5 可设置为 GPIO 电平模
式和 PWM 模式,PIN19 和 PIN20 只能设置为 GPIO 电平模式。
应用场景 2
STA Mcu
Host CCO U
?、 STA Mcu
Uart
PLC U
该方案支持 CCO UART0 串口数据与 STA UART0 串口数据互相透传。在透传模式下支
持数据的广播通信,在 AT 指令下也可以实现 CCO 和 STA 之间点对点的通信。
以上两种应用场景的具体使用,请参考文档《FN-LINK 3121 系列模组 AT 指令集.pdf》。
2.2 应用举例
3 系统调测
用户可通过工具 HiAssitant 对模组进行系统调测。HiAssitant 作为开源工具,运行在 PC
端,可以方便客户通过 uart1 串口对 PLC 模组进行调测、模组评估及现场运维。可以开放
软件代码对一些常用功能进行客制化开发。
下面主要介绍 HiAssitant 的基本使用方法。
双击 HiAssitant 工具,主界面如下图所示:
由上图可以看到,软件界面可以分为四个区域:
区域 1:快捷功能按钮区,连接,系统版本查询等快捷功能进入;
区域 2:控制面板区,选择切换不同的功能,打开后可在功能操作区上方选择不同
功能标题快速切换;
区域 3:功能操作区,对基本功能进行操作;
区域 4:日志打印区,可以查看指令操作日志打印。
3.1.1 连接
点击快捷功能按钮区红黑相间的按钮 ,弹出串口设置窗口,如下图所示:
点击绿黑相间的按钮 即可断开连接。
3.1.2 网络拓扑
查询网络拓扑信息。点击控制面板区“网络拓扑信息”,在弹出的功能操作区网络拓扑
信息界面右键菜单,选择“刷新”,将出现如下界面:
下面对一些基本拓扑网络信息进行介绍:
拓扑参数 功能
衰减
平均信噪比
保存发现列表和拓扑列表。右键菜单,选择“保存发现列表”和“保存拓扑列表”,将
会在软件同级目录下生成.csv 文件。
3.1.3 全网命令收发
点击控制面板区“全网命令收发”,功能操作区弹出全网命令收发面板,如下图所示:
双击 VALUE 列可详细查看结构体值。
常用命令如下表所示:
命令 功能
osmemshow 查看内存使用统计
ver 查看版本号
macTxstatics 查看发送统计量
macRxstatics 查看接收统计量
macNmAttr 查看本节点组网信息
macrejoin 查看重新入网原因
stat 统计量命令,参数需要填写单板支持的统计量 ID,目前仅
提供一个例子 0xa392,由客户自行开发其他统计量
PlcTestFrame 性能测试命令, 可设置并发数和报文长度,用以通信性能
3.1.4 升级
点击控制面板区“升级”,功能操作区弹出升级面板,如下图所示:
3.1.5 白名单管理
点击控制面板区“白名单管理”,功能操作区弹出白名单管理面板,如下图所示:
3.1.6 全网写 NV
4: 3121N_IEB;5: 3121N_ISC
硬件型号与某些功能有关联,不建议随意修改。
work_mode 工作模式
0:透传模式;1:协议模式(不建议使用);2:AT 模式
multicast_mac 组播地址,暂不支持
baund_rate 串口参数,波特率
支持 2400,9600,38400,115200,380400,921600 等。
data_bits 串口参数,数据位
支持 6,7,8
stop_bits 串口参数,停止位
支持 1,2
parity 串口参数,校验位
0:无校验;1:奇校验;2:偶校验
sta_join_notity 入网通知
0:不开启;1:开启
NV(0x10) 功能
pin_num 引脚编号
可设置为 0-5,16-18,19,20。其中 0-5,16-18 可设置为 GPIO
电平模式和 PWM 模式,19,20 只能设置为 GPIO 电平模
式。
type 引脚类型
1:GPIO 电平模式;2:PWM 模式
state 引脚状态值
当 type 引脚类型为 GPIO 电平模式时,0:低电平;1:
高电平
当 type 引脚类型为 PWM 模式时,可设置 0-100
pwm_freq PWM 频率
当<pwm_ctl_mode> 配置成实时 调频模式 时有效,
GPIO0 和 GPIO5 支 持 配 置 范 围 为 [3-200]KHz,
GPIO1-4 支持配置范围为[1,2,5,10]KHz
当<pwm_ctl_mode>配置成线性渐变调频或对数渐变
调频模式,只支持 5Khz,修改<pwm_freq>无效
pwm_ctl_mode PWM 调频模式
0:实时调频,PWM 信号实时调节到<state>值
1:线性渐变调频,PWM 信号基于<pwm_adjust_time>时
间线性变化到<state>值
2:对数渐变调频,PWM 信号基于<pwm_adjust_time>时
间对数变化到<state>值
pwm_adjust_time PWM 调频渐变时长
当<pwm_ctl_mode>配置成线性或对数调频模式时有效,
该时间表示<state>值从 0-100 渐变所用时间。
例如配置成 3 秒,当前值是 0,目标值是 100,则渐变时
长 3 秒;当前值是 50,目标值是 100,则渐变时长 1.5 秒。
3.1.7 点对点通信
点击控制面板区“点对点通信”,功能操作区弹出点对点通信面板,如下图所示:
3.1.8 密码修改
点击控制面板区“密码修改”,功能操作区弹出密码修改面板,如下图所示:
在原密码, 新密码处填写正确密码,密码有复杂度要求。
点击“提交”,修改完成。
4 固件升级
固件升级有以下几种方式:
升级方法 升级工具 备注
全片烧写 Hiburn/HiburnMP(uart1) 更新目标文件包括 FlashBoot、工厂区
NV 和业务升级文件,一般用于工厂烧
录,烧录完后 NV 参数比如 MAC 地址
等会清除还原成默认值。用户必须要在
FN-LINK FAE 指导下烧录。
OTA 更新 HiAssitant(uart1) 更新目标文件为业务升级文件,用于用
OTATool(uart0) 户当模组出现业务增量更新或修改时更
新。
本文档主要描述两种 OTA 更新方式。
4.1 OTA 升级