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

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

3天内不再提示

快速实现PLC的Modbus数据转换为CAN/CAN FD数据?

ZLG致远电子 2023-11-08 08:25 次阅读

在现代工业自动化中,经常会有PLC直接控制CAN/CAN FD接口设备的需求,但是一般的小型或中型PLC很少有CAN接口,一般标配的是RS485接口,那该如何解决呢?

PXB-6020是致远电子新推出的一款Modbus to CAN FD协议转换器,拥有1路CAN FD接口,1路100M以太网接口和1路RS485接口。该产品可支持Modbus RTU及Modbus TCP,既可以当Modbus主站,也可以当Modbus从站。PXB-6020最大支持128组CAN/CAN FD报文发送和128组白名单接收,支持Modbus所有类型的寄存器。同时还可以自定义方式发送数据,具有毫秒级转换和简单灵活等特点,广泛应用于PLC外扩CAN/CAN FD等场合。

接下来我们将使用PXB-6020协议转换器快速实现西门子S7-200 SMART(以下简称:PLC)的Modbus数据转换为CAN FD数据,达到PLC的RS485接口也可以与CAN FD设备通信的效果。PLC运行为Modbus RTU主站,而PXB-6020协议转换器运行为Modbus RTU从站。

为方便文章说明,PXB-6020的CAN FD接口接入的是一个USBCANFD-200U(USBCANFD接口卡),用户可根据实际需求接入其他CAN/CAN FD设备。


4ec56ff0-7dcd-11ee-9788-92fbcf53809c.jpg  硬件接线

  1. PXB-6020的CAN FD接口的CAN_H和CAN_L分别连接到USBCANFD-200U的CAN FD接口的CAN_H和CAN_L;
  2. PXB-6020的RS485接口的A和B分别连接到PLC的RS485接口的A和B;
  3. PXB-6020和PLC的以太网接口使用以太网线连接电脑
  4. 接上PLC、PXB-6020和USBCANFD-200U的电源

设备接线示意如图1所示:

4ed0f762-7dcd-11ee-9788-92fbcf53809c.jpg

图1设备接线示意图
4edb8704-7dcd-11ee-9788-92fbcf53809c.jpg  PXB-6020参数配置接下来打开AWPX Tools软件对PXB-6020进行配置。

1. 配置Modbus参数,将PXB-6020的工作模式配置为Modbus RTU从站,如图2所示。

4ee674fc-7dcd-11ee-9788-92fbcf53809c.png图2Modbus参数设置2. 配置CAN FD参数,如图3所示。4ef301cc-7dcd-11ee-9788-92fbcf53809c.png图3CANFD参数配置3. 配置发送报文参数,如图4所示。4efe68f0-7dcd-11ee-9788-92fbcf53809c.png图4发送报文配置4. 配置接收报文参数,如图5所示。4f097a42-7dcd-11ee-9788-92fbcf53809c.png图5接收报文配置
4edb8704-7dcd-11ee-9788-92fbcf53809c.jpg  PLC配置打开STEP 7-Micro/WIN SMART软件,使用该软件对PLC进行软件编程、配置和程序下载。

1. 双击页面左侧的“通信”按钮,在弹出的通信界面点击“查找CPU”,查找到对应的CPU后点击“确定”,如图6所示。

4f200d34-7dcd-11ee-9788-92fbcf53809c.png图6查找CPU

2. 使用页面左侧的“指令”->“库”->“Modbus RTU Master(V2.0)”下的“MBUS_CTRL”和“MBUS_MSG”指令使PLC运行为Modbus RTU主站,实现对Modbus RTU从站的读写。

3. MBUS_CTRL指令用于初始化主站,必须在每次扫描时调用MBUS_CTRL指令,否则Modbus主站协议不能正常工作。MBUS_MSG指令用于向Modbus从站发起读或写请求。

4. Modbus RTU Master(V2.0)指令库需要286字节的全局V存储器,所以需要指定该库可使用的V存储器量的地址。点击并右键界面左侧的“程序块”->“库存储器...”,会弹出如图7所示界面。在弹出的界面选择“建议地址”,再点击“确定”即可。建议地址不能与参数“DatePtr”指向的地址有重合。

4f2af4d8-7dcd-11ee-9788-92fbcf53809c.png

图7库存储器分配

5. 库存储器设置完成后,使用MBUS_CTRL指令与MBUS_MSG组态PLC,使其作为Modbus RTU主站并对PXB-6020进行读写。一个简单的读写PXB-6020的梯形图如图8-10所示,此梯形图程序仅供参考。

4f352066-7dcd-11ee-9788-92fbcf53809c.png

图8梯形图1

4f3f79bc-7dcd-11ee-9788-92fbcf53809c.png

图9梯形图2

4f468d4c-7dcd-11ee-9788-92fbcf53809c.png

图10梯形图3

6. 以上梯形图实现对Modbus从站保存寄存器的循环读写,读取Modbus从站保持寄存器0地址一个字的数据,并将一个字数据数据写入Modbus从站保持寄存器1地址。


4edb8704-7dcd-11ee-9788-92fbcf53809c.jpg  数据转换将以上梯形图下载至PLC后,点击“启动程序监视”按钮后,即可在如图11所示的“状态图表”页面对Modbus从站进行读写操作。4f5d2b88-7dcd-11ee-9788-92fbcf53809c.png图11 读写Modbus从站数据1. Modbus数据转换为CAN FD数据

根据图4-5的发送报文和接收报文的配置,在“状态图表”里面的VW12地址写入0x1122,可使PXB-6020发送如图12所示的CAN FD标准帧,可在ZCANPRO软件观测PXB-6020发送的CAN FD标准帧。

4f68e072-7dcd-11ee-9788-92fbcf53809c.png图12发送的CANFD帧2. CAN FD数据转换为Modbus数据

使用USBCANFD-200U设备向PXB-6020发送帧ID为0x02,帧数据段为0x8899的CAN FD标准帧,则在“状态图表”里面的VW10地址可读取到数据0x8899,如图13所示。

4f7458f8-7dcd-11ee-9788-92fbcf53809c.png图13读取Modbus从站数据

至此,我们成功实现了PLC的Modbus数据与CAN FD数据的双向转换。

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

    关注

    5006

    文章

    13107

    浏览量

    461409
  • CAN
    CAN
    +关注

    关注

    57

    文章

    2694

    浏览量

    463125
  • MODBUS
    +关注

    关注

    28

    文章

    1757

    浏览量

    76756
收藏 人收藏

    评论

    相关推荐

    CAN FD与传统CAN的区别是什么

    随着汽车电子、工业自动化的蓬勃发展,CAN总线上的设备数量、数据量都大大增加,给CAN总线带来了极大的挑战。为满足更高的带宽及数据吞吐量,CAN
    的头像 发表于 10-22 10:47 224次阅读
    <b class='flag-5'>CAN</b> <b class='flag-5'>FD</b>与传统<b class='flag-5'>CAN</b>的区别是什么

    从替代到创新,国产CAN FD芯片持续突破

    是一样的,都是将3.3V/5V的逻辑信号转换成差分信号。不过,传统CAN的最高速率是1Mbps,最多支持8个数据字节;而CAN FD的最高速
    的头像 发表于 09-02 08:13 5991次阅读

    CANModbus TCP主站协议网关(YC-CAN-TCP)

    的关键环节。例如,可以发送一组模拟的CAN数据,观察其在转换为Modbus TCP数据后的变化,是否符合预期的
    的头像 发表于 08-26 11:29 260次阅读
    <b class='flag-5'>CAN</b>转<b class='flag-5'>Modbus</b> TCP主站协议网关(YC-<b class='flag-5'>CAN</b>-TCP)

    CAN FD如何满足工业设备对高效数据通信的需求?

    电子发烧友网报道(文/吴子鹏)作为CAN总线的升级版,CAN FDCAN with Flexible Data rate)在数据长度和带宽
    的头像 发表于 08-22 18:08 6104次阅读

    CAN/CAN FD/CAN XL三大总线协议解读,是逐步替代关系吗?

    电子发烧友网报道(文/吴子鹏)在软件定义汽车逐渐成为主流的当下,数据传输的速度和效率成为打造智能汽车的瓶颈,在这种大背景下,传统CAN总线应对一些需求已经相当吃力,因此CAN FD
    的头像 发表于 08-12 01:12 4110次阅读

    CAN FD盒基本功能包括哪些

    议,将用户发送的数据帧正确地发送到CAN FD总线上。 实时捕获CAN FD总线上的数据帧,并将
    的头像 发表于 07-02 16:21 821次阅读

    TCAN1051具有CAN FD和故障保护功能的CAN收发器数据

    电子发烧友网站提供《TCAN1051具有CAN FD和故障保护功能的CAN收发器数据表.pdf》资料免费下载
    发表于 07-01 10:25 0次下载
    TCAN1051具有<b class='flag-5'>CAN</b> <b class='flag-5'>FD</b>和故障保护功能的<b class='flag-5'>CAN</b>收发器<b class='flag-5'>数据</b>表

    TCAN33x具备CAN FD(灵活数据速率)的3.3V CAN收发器数据

    电子发烧友网站提供《TCAN33x具备CAN FD(灵活数据速率)的3.3V CAN收发器数据表.pdf》资料免费下载
    发表于 06-24 11:15 0次下载
    TCAN33x具备<b class='flag-5'>CAN</b> <b class='flag-5'>FD</b>(灵活<b class='flag-5'>数据</b>速率)的3.3V <b class='flag-5'>CAN</b>收发器<b class='flag-5'>数据</b>表

    TCAN1042具有CAN FD和故障保护功能的CAN收发器数据

    电子发烧友网站提供《TCAN1042具有CAN FD和故障保护功能的CAN收发器数据表.pdf》资料免费下载
    发表于 06-19 12:30 1次下载
    TCAN1042具有<b class='flag-5'>CAN</b> <b class='flag-5'>FD</b>和故障保护功能的<b class='flag-5'>CAN</b>收发器<b class='flag-5'>数据</b>表

    CANmodbus转换器要满足哪些需求

    CANModbus转换器主要满足以下需求: (1)通信协议转换CANModbus
    的头像 发表于 06-13 17:29 670次阅读

    汽车CAN FD总线测试原理及应用

    CAN FD总线报文周期一致性测试方法,可自动实现监控测试并快速生成测试报告,主要根据CAPL语言设计建立测试应用工程。
    发表于 04-01 12:53 772次阅读
    汽车<b class='flag-5'>CAN</b> <b class='flag-5'>FD</b>总线测试原理及应用

    如何使用DSLogic分析CAN/CAN-FD 信号?

    一文档介绍本文将一步步介绍如何使用DSLogic逻辑分析仪采集并分析CAN/CAN-FD信号,因为CAN信号的测量和CAN-FD的大致一样,所以下文以
    的头像 发表于 01-08 14:54 1110次阅读
    如何使用DSLogic分析<b class='flag-5'>CAN</b>/<b class='flag-5'>CAN-FD</b> 信号?

    Modbus转CANopen协议相互转换在工业中的作用

    Modbus协议的消息解析为原始数据,例如传感器/执行器的状态或PLC的指令。2. 消息转换:将原始数据
    发表于 12-08 17:02

    CAN FD的降噪措施

    CAN FD的降噪措施
    的头像 发表于 12-07 10:48 580次阅读
    <b class='flag-5'>CAN</b> <b class='flag-5'>FD</b>的降噪措施

    CANedge1 - 2路CAN FD/LIN 数据记录仪 (SD + RTC)

    即插即用 2x CAN/LIN 记录器将带时间戳的 CAN 数据(经典/CAN FD)记录到可提取的 8 GB 工业 SD 卡中。它易于使用
    的头像 发表于 11-14 09:14 742次阅读
    CANedge1 - 2路<b class='flag-5'>CAN</b> <b class='flag-5'>FD</b>/LIN <b class='flag-5'>数据</b>记录仪 (SD + RTC)