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

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

3天内不再提示

【EsDA应用】串口转UDP服务器

ZLG致远电子 2023-03-06 13:55 次阅读

如何让自动化领域的串口设备具备联网能力?本文将基于EsDA平台,带你开发一个串口转UDP服务器业务,快速实现串口联网功能。6e871d38-b943-11ed-ad0d-dac502259ad0.jpg  简介串口服务器在物联网中的应用十分广泛,数据采集上报、远程控制等网络化项目都需要用到串口服务器,本文基于EsDA开发平台,为您介绍如何快速搭建一个串口转UDP服务器。

基本工作原理:通过搭建UDP客户端,实现串口与UDP服务器的双向透传通信

本实现选用MPC-ZC1开发板,该板卡内嵌高集成度的4G Cat.1 ZC1智能网联模块,便于建立UDP客户端;拥有多路串口外设(232,485,TTL等),串口资源丰富。该实验用到了serial_in_ex,fscript,push,tcpudp_client和serial_out_ex节点。

6e871d38-b943-11ed-ad0d-dac502259ad0.jpg  前期准备

若是刚开始接触EsDA MPC-ZC1 ,可先阅读EsDA MPC-ZC1系列文章,从零开始搭建环境和掌握基本开发流程,已有基础的可以跳过:

EsDAMPC-ZC1入门(一)——软件安装

【EsDA应用】如何使用5分钟搭建一个串口通信业务

EsDAMPC-ZC1 应用——串口服务器(一)

EsDAMPC-ZC1应用——串口服务器(二)

【EsDA应用】串口转zws物联网云平台

硬件相关准备工作:

1. 准备一个USB转TTL串口工具(文中使用的是ch340芯片作为主控一款工具,选用其它等效型号亦可),如下图所示:

6ea2c56a-b943-11ed-ad0d-dac502259ad0.jpg

2. 准备好MPC-ZC1开发板,并按照下图所示连接好硬件。

6eb07688-b943-11ed-ad0d-dac502259ad0.png

将MPC-ZC1开发板引出的TX2与RX2分别与USB转TTL串口工具的RX与TX连接,并将USB转TTL串口工具插到PC机USB口上。6e871d38-b943-11ed-ad0d-dac502259ad0.jpg  业务处理

支持串口和UDP进行双向数据传输:本实验实现串口通过UDP客户端向UDP服务器透传数据,UDP服务器接收到数据后回发给UDP客户端再转发给串口助手的业务,实现串口数据的云端通信功能。业务逻辑图如下所示。

6ed6f074-b943-11ed-ad0d-dac502259ad0.png

1. 添加节点并连线

本实验实现串口通过UDP客户端向UDP服务器透传数据,UDP服务器接收到数据后回发通过UDP客户端透传到串口设备。采用的节点有serial_in_ex,fscript,push,tcpudp_client和serial_out_ex。

6eeb0712-b943-11ed-ad0d-dac502259ad0.png2.配置节点

双击serial_in_ex节点,并点击配置节点名旁边的铅笔图标去配置串口的属性。

6efcec02-b943-11ed-ad0d-dac502259ad0.png

根据MPC-ZC1的硬件资料表,选择所使用的串口设备对应的端口号,根据需要依次配置波特率,字节大小,奇偶校验,停止位等属性参数

6f0b64bc-b943-11ed-ad0d-dac502259ad0.png

双击serial_in_ex的消费者节点fscript,将从串口接收到的数据打印并传递给tcpudp_client节点。

因为tcpudp_client节点是pump类型的节点无输入,在这里通过push节点,将udp客户端定时发送的数据作为tcpudp_client节点的输入参数payload进行传递。双击push节点,在目标节点这一栏属性参数中输入tcpudp_client。

6f19686e-b943-11ed-ad0d-dac502259ad0.png

双击tcpudp_client节点,因为使用的是UDP传输协议,且这里的主机号和端口号是UDP测试服务器的网址和端口号。配置相应的属性参数如下:

6f2b8594-b943-11ed-ad0d-dac502259ad0.png

双击tcpudp_client的消费者节点fscript,读取从服务器发送过来的数据通过组包,再传递给后续的串口节点。

varstr=istream_read_string(msg.istream,100)
output.payload=join(":","datareceivedfromtheserveris",str)output.payloadLength=len(output.payload)

双击serial_out_ex节点,并点击配置节点名旁边的铅笔图标去配置串口的属性。

6f3c58e2-b943-11ed-ad0d-dac502259ad0.png

与serial_in_ex节点一样,根据MPC-ZC1的硬件资料表,选择所使用的串口设备对应的端口号,根据需要依次配置波特率,字节大小,奇偶校验,停止位等属性参数。这里因为是自发自收,所以串口设备的端口号与serial_in_ex一致。

6f4cecb6-b943-11ed-ad0d-dac502259ad0.png

3. 下载验证

保证硬件连接正确后,下载流图可知:将串口助手的数据通过搭建的UDP客户端发送给UDP测试服务器的数据,最终原样回发给UDP客户端,这边通过查看流图可知有一个组包的操作再发送给串口助手,由下图测试结果图可知在此搭建的串口服务器已发挥了他的作用,让串口数据可以通过网络传输。

6f5bed56-b943-11ed-ad0d-dac502259ad0.png

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

    关注

    12

    文章

    8929

    浏览量

    85047
  • 串口
    +关注

    关注

    14

    文章

    1540

    浏览量

    76014
  • ESDA
    +关注

    关注

    0

    文章

    28

    浏览量

    7496
收藏 人收藏

    评论

    相关推荐

    使用NS1串口服务器HTTP模式上传服务器数据

    HTTP协议工作于客户端-服务端架构之上。浏览作为HTTP客户端通过URL向HTTP服务端即Web服务器发送所有请求。Web服务器根据接收
    的头像 发表于 08-30 12:36 242次阅读
    使用NS1<b class='flag-5'>串口服务器</b>HTTP模式上传<b class='flag-5'>服务器</b>数据

    串口服务器的定义和功能

    串口服务器,作为一种重要的网络设备,在现代通信和数据传输中扮演着至关重要的角色。以下是对串口服务器的详细解析,包括其定义、功能、工作原理、应用领域以及未来发展等方面。
    的头像 发表于 08-25 17:21 1409次阅读

    PLC连接串口服务器RS485以太网步骤

    连接RS485端口 :使用适当的电缆将PLC的RS485端口连接到串口服务器的RS485端口。 连接以太网 :使用以太网线缆将串口服务器的以太网端口连接到网络交换机或路由上。
    的头像 发表于 07-18 09:11 1572次阅读
    PLC连接<b class='flag-5'>串口服务器</b>RS485<b class='flag-5'>转</b>以太网步骤

    如何打开UDP服务器

    4、封闭式 Where the answer packet should be: (\"RA151[s11=+21.5]+[s12=+20.2]+[s13=+20.3]45\") 有人可以告诉我如何打开UDP服务器吗?或者我必须做些什么才能获得
    发表于 07-15 07:22

    ESP8266连接UDP服务器失败的原因?

    { os_printf(\"rn发送成功!rn\"); } 现在的问题是,手机上的UDP服务器一直没有接收到数据,并且提示“没有客户端连接”,但是8266的串口发送出来的数据提示“发送成功”。 是我的IP地址设置不对还是什
    发表于 07-09 08:28

    如何利用ESP32C3做UDP服务器

    请教一下,我利用了ESP32C3 建立了Soft AP ,我想利用ESP32C3做UDP服务器。热点的建立,参考例程都没有问题。关键是如何形成UDP服务器。教程有教如何制作成TCP
    发表于 06-12 08:18

    ESD管 AZ5825-01F型号ESDA05CPX参数对比

    ESD管 AZ5825-01F型号ESDA05CPX参数对比
    的头像 发表于 05-11 08:03 724次阅读
    <b class='flag-5'>ESD</b>管 AZ5825-01F型号<b class='flag-5'>ESDA</b>05CPX参数对比

    串口服务器——小巧精致的高性能串口以太网/WIFI服务器

    本周推荐WIFI版/以太网版串口服务器博达智联——工业级WIFI版/以太网版串口服务器,博达智联最新推出的串口服务器系列产品,可实现串口与以太网口/WIFI数据间的双向透明传输,提供博
    的头像 发表于 05-01 08:34 489次阅读
    <b class='flag-5'>串口服务器</b>——小巧精致的高性能<b class='flag-5'>串口</b><b class='flag-5'>转</b>以太网/WIFI<b class='flag-5'>服务器</b>

    二代串口服务器模组焕新

    串口服务器模组作为一种重要的通信接口转换设备,极大地促进了传统串口设备与现代网络技术的融合,为实现设备远程管理、数据透明传输及物联网应用提供了便捷解决方案。什么是串口服务器模组?串口服务器
    的头像 发表于 04-19 08:19 339次阅读
    二代<b class='flag-5'>串口服务器</b>模组焕新

    工业串口设备通讯神器:串口服务器CS64J

    在当今工业物联网应用中,串口服务器的应用非常普遍。无论是RS485还是RS232串口通讯,串口服务器都能够轻松实现虚拟串口串口以太网双向数
    的头像 发表于 03-21 17:09 427次阅读
    工业<b class='flag-5'>串口</b>设备通讯神器:<b class='flag-5'>串口服务器</b>CS64J

    串口服务器作用与实际应用实例详解

    串口服务器是什么串口服务器是一种将串口设备连接到网络的设备,它充当了串口设备和网络之间的桥梁,能够摆脱物理电缆长度的限制,无论位于任何地方,都可以通过以太网连接
    的头像 发表于 03-12 14:59 753次阅读
    <b class='flag-5'>串口服务器</b>作用与实际应用实例详解

    就这么简单!串口服务器升级指南

    为了便于后期维护、功能升级和固件替换,串口服务器(如NA11x系列、NB114、NS1、NT1等)支持在线升级以及串口升级。通过提供的升级固件,用户可以使用上位机对当前固件进行升级或替换。所有串口服务器
    的头像 发表于 01-05 08:20 599次阅读
    就这么简单!<b class='flag-5'>串口服务器</b>升级指南

    具有mDNS功能的串口服务器

    1.概述: 通过mDNS协议可以获得设备的ID、mac、IP、port等信息,方便计算机在同一个局域网内连接到具有该服务的模块。支持产品有串口服务器串口以太网模块、RS485
    的头像 发表于 11-16 14:35 543次阅读
    具有mDNS功能的<b class='flag-5'>串口服务器</b>

    16路RS485串口以太网串口服务器NB1A1简介

      NB1A1串口服务器是亿佰特自主研发的工业级串口服务器系列产品,可实现16路RS485串口到以太网口数据的双向透明传输。该串口服务器的16路通道,采用3.81mm凤凰端子RS485
    的头像 发表于 11-10 17:19 555次阅读

    EsDA 应用】快速实现串口HTTP请求

    本文将基于EsDA开发套件快速实现将串口数据转换为HTTP请求的应用开发,实现串口设备与网络服务的互联互通,提供便捷和高效的串口数据转换功能
    的头像 发表于 11-09 08:25 775次阅读
    【<b class='flag-5'>EsDA</b> 应用】快速实现<b class='flag-5'>串口</b><b class='flag-5'>转</b>HTTP请求