如何让自动化领域的串口设备具备联网能力?本文将基于EsDA平台,带你开发一个串口转TCP服务器业务,快速实现串口联网功能。 引言随着时代的发展,数据上云等需求越来越普遍。设备如何快速实现上云功能,成了用户普遍的需求之一。本章将带大家快速实现如何将MPC-ZC1开发板的串口数据,快速传输至TCP服务器,实现上报与下发功能,工作框架如下。本文基于MPC-ZC1开发板,使用我司test.zlgcloud.com测试服务器,进行演示。开发板通过4G无线模块与服务器建立TCP连接,使用USB转TTL设备将MPC-ZC1串口2与PC上位机串口调试助手建立通信。实验通过PC上位机串口调试助手发送数据至串口,串口接收数据并透传至TCP客户端,TCP客户端将数据上报至服务器。 软硬件资源硬件需求:MPC-ZC1开发板、物联网卡、4G天线、杜邦线若干、USB转TTL设备。 前期准备将天线接到开发板对应接口,插入物联网卡,USB转TTL设备连接相应串口2引脚,并插入电脑USB接口,硬件连接图如下。
首先,我们需要对串口进行配置,配置参数为波特率为115200、数据位为8位、停止位为1位、不启用校验和流控,具体配置过程如下图。此处的COM口,用户可以打开设备管理器进行查看,配置完成后打开串口。
业务开发本流图分为上报和下发两部分,如下图:
- 上报部分由serial_in_ex节点、fscript节点、push节点组成。serial_in_ex节点负责接收串口数据,fscript节点进行格式转换,push节点将数据推送至tcp_client节点,有tcp_client节点上报至服务器。
- 下发部分由tcp_client节点、fscript节点、serial_out_ex节点组成。tcp_client节点负责创建一个TCP客户端,接收push节点传输的数据上报到tcp服务器,并将tcp服务器下发的数据传输至fscript节点,fscript节点进行格式转换后,将数据传输到serial_out_ex节点。
接下来我们需要配置流图节点等相关参数。
2.1 tcp_client节点配置,指定服务器地址和端口信息。
2.2 push节点,将数据推送至tcp_client节点。
2.3 fscript节点,进行数据格式转换。
两个fscript节点配置相同,代码如下:
var str = istream_read_string(msg.istream, 100)
msg.payload=str
ostream_write_string(msg.ostream,msg.payload)
2.4 serial_in_ex节点
2.5 serial_out_ex节点
流图下载
节点配置完成后,确保硬件连接正确,将流图下载到开发板,如下图。
实验现象
本实验使用的测试服务器功能是将接收到的数据回发给客户端,所以实验现象如下图,串口发送什么数据,就接收什么数据。
关联产品
技术交流群长按识别如下二维码可加入“EsDA嵌入式系统设计自动化交流群”,与志同道合的朋友交流,并有专业技术人员为您答疑解惑,如有问题可以咨询小致微信:zlgmcu-888。