COMX51 基于 STM32 实现 PROFINET 从站开发

供稿:赫优信(上海)自动化系统贸易有限公司

  • 关键词:COMX51,STM32,PROFINET
  • 摘要:comX CA-RE 实时以太网嵌入式模块(如图 1 所示)的主机接口为50根管脚的排针,支持所有主流的实时工业以太网协议(EtherCAT、PROFINET IO、Ethernet/IP、PowerLink、Sercos III、Modbus TCP 等),其协议堆栈作为可装载的 固件存储在内部 Flash中。

blob.png


1.产品简介

1.1 COMX 和 COMXEB 硬件产品介绍

comX CA-RE 实时以太网嵌入式模块(如图 1 所示)的主机接口为 50 根管脚的排针,支持所有主流的实时工业以太网协议(EtherCAT、PROFINET IO、Ethernet/IP、PowerLink、Sercos III、Modbus TCP 等),其协议堆栈作为可装载的固件存储在内部 Flash 中。在系统启动时,comX 模块会自动装载保存在 Flash 中的协议固件。如果要使用其它的实时以太网协议堆栈,可重新通过软件更新协议栈即可。


blob.png

图 1 comX CA-RE 嵌入式模块


COMXEB 是针对 comX 嵌入式模块的评估测试版,可实现通过主机接口或诊断口连接到 PC 或者网络。通过 COMXEB 采用 netHOST 可以进行协议栈的下载与更新,通过 USB 诊断口进行非周期诊断,或者通过 SPM via USB 接口进行周期数据的发送。


1.2 实验目的

本测试采用 COMXEB 的 SPM 接口,通过跳线连接到 STM32 开发板,然后运行 STM32 F7 PROFINET 应用程序配置 comX 51CA-RE。PROFINET 主站采用西门子 PLC1200,并在博途中创建 PROFINET 网络组态,进行通讯测试。


blob.png

图 2 COMXEB 与 STM32 开发板连接图


2. 实验准备

试验所需设备:

blob.png


3.硬件连接图

根据 netX 芯片与 Host CPU 通过 SPI 的连接方式,如下图图 3 所示,将

COMXEB 与 STM32 开发板连接起来。


blob.png

图 3 SPI 连接方式


comX CA-RE 的以太网口通过交换机连接到 PLC1200,然后将 PC 以太网口连接到交换机,以便进行以太网组态。同时,STM32 通过 USB 接口进行供电,comX 嵌入式模块通过 USB 进行协议线的下载和更新,硬件连接框图如下图所示:

blob.png

图 4 硬件连接框图


4. 软件安装

首先,对于下载协议栈的软件 netHOST,无需安装,可直接点击运行。若电脑中未安装 USB 驱动,需要安装 USB 驱动,赫优讯提供相应的驱动安装包,双击安装文件,根据提示进行一步步操作。

安装 STM32 编译环境 System Workbench for STM32,需在 JAVE jdk 环境下安装,可根据系统提示选择并下载安装文件。

安装串口工具 Tera Term ,用来查看 STM32 工程编译后的打印信息。

安装西门子博软件,用于 PROFINET 网络组态。


5. 实例介绍

本文以 comX 51CA-RE 作为 PROFINET 从站,通过 SPI 的方式连接到 STM32

开发板,并通过基于 STM32 开发板的软件程序,实现应用程序的开发。以西门

子 PLC 作为 PROFINET 主站,与 comX 进行数据的接收和发送。


5.1 配置 comX 51CA-RE

comX 51CA-RE 嵌入式模块基于赫优讯 COMXEB 开发板,采用 netHOST 软

件进行协议栈的下载与更新,在 COMXEB 开发板上有两个 USB 接口可以选择,

如下图所示,下面分别介绍通过这两种方式配置 comX 51。

blob.png

图 5 COMXEB 开发板硬件图


(1) 选择(16) X829 为 SPM via USB 接口,首先选择 SPM 的方式对 comX51

进行配置,需要设置滑动开关 S701 和 S302 拨码,设置如下图所示:

① S701 设置

blob.png

图 6 滑动开关 S701 设置


② S302 设置

blob.png

图 7 滑动开关 S302 设置


其次需要对 S700 滑动开关进行设置,因通过 USB 进行配置,所以 X829 设置为具体设置方式如下:

blob.png

图 8 接口方式选择


通过串口选择对 comX 51CA-RE 进行配置,原理图如下图所示:

blob.png

图 9 串口形式


通过 SPM via USB 接口,打开 netHOST 软件,首先选择相应的驱动 SelectnetX SPM USB Driver,然后点击 Open,如下图所示:

blob.png

图 10 选择驱动


打开之后,选择 cifx0,然后点击右下侧 Open 按钮,打开通道,如下图所示:

blob.png

图 11 打开通道


打开通道之后,选择 Device,点击 Download,进行协议栈的下载,如下图 所示:

blob.png

图 12 点击下载


进入下载界面之后,在 Download Mode 的下拉界面选择 Firmware Download,如下图所示:

blob.png

图 13 选择 Firmware 下载模式


Download Mode 选择好之后,点击路径按钮,选择相应的协议栈,点击打开按钮,如下图所示:

blob.png

图 14 选择相应的协议栈


选择好相应的协议栈,点击 Download 即可,如下图所示:

blob.png

图 15 下载协议栈


blob.png

图 16 下载完成


当下面的 Progress 的进度条显示完全之后,就是完成了协议栈的下载。将通道Close 即可,点击 Device,选择 Close,如下图所示:


blob.png

图 17 关闭通道


协议栈下载之后,可重新启动 comX 51CA-RE,然后打开通道可以看到已经 下载的协议栈,如下图所示:

blob.png

图 18 协议栈显示


(2) 选择 17 口 X611 对 comX 51CA-RE 进行协议栈下载时,只需要通过USB 口连接到电脑即可,如下图所示:

blob.png

图 19 通过 USB 方式


具体的设置步骤与通过串口的方式一样,只是在第一步需要选择 USB 的驱动,如下图所示。其余的下载步骤请参考通过串口的方式。

blob.png

图 20 选择 USB 驱动


若需要更换其他协议栈,需先将原来的协议栈删除,重新下载,删除协议的方式如下图所示,选择 Device,点击 File Explorer,选择文件资源管理器。

blob.png

图 21 选择文件资源管理器


进入文件资源管理器之后,选择协议栈,点击右侧的 Delete 按钮即可,如下图所示:

blob.png

图 22 删除协议栈


删除协议栈之后,按照之前的下载步骤,选择相应的协议栈进行下载即可。


5.2 组态 PROFINET 网络

在博图软件中创建工程文件,对 PROFINET 网络进行组态。首先需要将COMX 51XX-RE/PNS 的设别描述文件导入到博图软件中,在博途中创建的网络结构如下图所示,注意,PLC 和电脑的 IP 地址在同一个网段之内。


blob.png

图 23 网络组态


组态好网络之后,将所有配置信息下载到 PLC 中,如下图所示:

blob.png

图 24 装载配置信息


下载完之后,直接点击完成即可。


5.3 运行软件程序

打开 System Workbench for STM32 软件,选择上侧导航栏 File→Import,导入工程文件,如下图所示:

blob.png

下载完之后,直接点击完成即可。


5.3 运行软件程序

打开 System Workbench for STM32 软件,选择上侧导航栏 File→Import,导

入工程文件,如下图所示:

blob.png

图 26 选择将文件保存


然后进入具体的工程文件选项,如下图所示:

blob.png

图 27 选择文件


点击 Brown,根据相应的路径选择 STM32 文件夹中的 Project,如下图所示:

blob.png

图 28 工程文件


赫优讯提供的资料中包含多种以太网实例,用户可根据自己的测试选择相应的文件,本文测试 PROFINET,所以可只选择 PROFINET 工程文件。导入文件之后,需要更改热启动参数,因原有工程文件是基于 netSHIELD 模块的,将热启动参数与设备描述文件的各项参数匹配起来。更改之后,首先选择工程文件,编译整个工程,点击 File→Build,如下图所示:

blob.png

图 29 编译


编译好整个文件,进入程序调试模式,选择 Run→Debug,如下图所示:

blob.png

图 30 程序调试


5.4 通讯测试

程序运行起来之后,即可以进行通讯测试,首先通过串口工具查看代码运行起来之后的打印信息,打开串口工具,设置其连接方式为串口连接模式,如下图所示:

blob.png

图 31 串口工具连接模式


然后设置波特率,点击 Setup,将波特率改为 115200,如下所示:

blob.png

图 32 设置波特率


此时,可手动拨动一下 STM32 开发板上的 SETUP 按钮,可以在串口工具看到相应的打印信息,如图所示:

blob.png

图 33 打印信息


由打印信息可以看出程序已经运行起来,可以打开博图软件,是 PLC 处于在线状态,进行通讯测试,如下图所示:

blob.png

图 34 通讯测试


6 总结

本次测试是选择 comX 51CA-RE 嵌入式模块基于 STM32 开发板实现PROFINET 从站开发,采用赫优讯提供的 STM32 Demo 程序。同样的,做其他实时以太网测试的话,流程一样,只是不同的协议栈需要更改的参数不同,另外,再需选择相应的主站设备即可。


发布时间:2019年12月6日 10:30  人气:   审核编辑(王静 )
相关链接

我有需求