赫优信基于 netX90 实现 PROFINET 从站开发操作手册

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

  • 关键词:赫优信,PROFINET,netX90
  • 摘要:netX90 是基于 netX51/52 的成功开发的新一代网络控制器,其安全性是产品的核心价值,可实现具有更高性能的集成,并提高功率效率等级。

blob.png


1.产品简介


1.1 netX 90 介绍


netX90 是基于 netX51/52 的成功开发的新一代网络控制器,其安全性是产品的核心价值,可实现具有更高性能的集成,并提高功率效率等级。在 netX90 SoC中集成了两个独立 CPU 内核 ,其中一个用于实时工业通讯,另一个可实现用户应用程序的开发。这两个 CPU 之间的数据交互仍基于双端口内存 DPM 结构,统一的 API 接口。工业通讯协议栈以可加载固件(LFW)形式提供,经过全面的测试和协议预认证,应用程序软件开发人员能快速的实现驱动的移植和应用程序的开发。


blob.png

图 1 netX90 芯片硬件框图


无论 netX 90 是作为单芯片解决方案,还是作为配有 HOST CPU 的通讯协处理器,基于可加载固件(LFW)形式的协议栈,都可做为单独部件独立运行。其外部 HOST 主机接口,不仅能够满足过程 I/O 数据大吞吐量的高速访问,同时满足网络通讯周期的精确时钟同步。


1.2 NXHX 90-JTAG 介绍


XHX 90-JTAG 是赫优讯基于 netX90 芯片自主研发的开发板,方便客户前期评估测试,本文测试以此开发板为主。


blob.png

图 2 NXHX 90-JTAG 硬件框图


基于 netX90 的开发板 NXHX 90-JTAG,主要特性:


(1) 主机接口:


  • 作为配有 Host MCU 通讯处理器:8 位/16 位的并行 DPM 模式,2xSPI/SQI 串行 DPM 模式;


  • 单芯片解决方案:16 bit SDRAM,用于以太网 PHY 的 MII,定制化模块方案。


(2) 通过 SPI/SQI 为串行 DPM(SPM0)提供额外的主机接口引脚;


(3) 用于调试的 JTAG MIPI-20 接口;


(4) 用于 OpenOCD 的板载 JTAG-to-USB 适配器(FTDI)


(5) 用于诊断和下载协议栈固件的板载 UART-to-USB 的适配器(FTDI)


(6) Mini-B 型 USB 连接器用于通过 FTDI 进行 JTAG-to-USB 调试和UART-to-USB 用于诊断及固件下载;


(7) 带有“Link”和“Activity”LED 灯的两个 RJ45 以太网接口


(8) NXHX 传统现场总线模块的接口(PROFIBUS、CANopen、DeviceNet和 CC-Link)


(9) 4MB 的 SQI Flash


(10)RS-232 串口


(11)具有 Biss、SSI 或 ENDat 连接的编码器接口


(12)模数转换器(ADC)接口


(13)MMIO 连接


(14)配置启动模式(Alternative boot mode 和 Console mode)的开关NXHX 90-JTAG 开发板有不同的 Debug 方式:


(1)JTAG-to-USB:连接开发板上 Mini-USB 接口(X1000),S701Switch1=OFF;


(2)External debugger:连接开发板上 JTAG 接口(X400),S701 Switch1=ON。


1.3 netX Studio CDT 配置软件


netX Studio CDT(C/C++开发工具)是用于 Hilscher netX SoC 的基于Eclipse 的集成开发环境,可用于以下具体操作:


  • 对象定义和映射


  •  设备配置


  • 创建产品文件(构建过程)


  • 将产品文件和可加载固件下载到硬件设备


  • 离线模拟或在线诊断


netX Studio CDT 工具的应用范围仅限于基于 netX 的从属设备,或者使用可加载的固件进行操作,该工具主要用于实时以太网从站设备的开发。


blob.png

图 3 netX Studio CDT 界面


使用这个工具可以对 NXHX 90-JTAG 开发板进行相应的配置,并调试 netX90 应用程序。


2.实验准备


试验所需设备:


blob.png


3. 硬件连接


首先作为单芯片解决方案时,将 NXHX 90-JTAG 开发板连接到电脑,采用netX Studio CDT 对其进行配置。其连接图如下图图 4 所示。


对 NXHX 90-JTAG 开发板进行配置之后,通过以太网口与主站 PLC 连接,然后创建 PLC 工程即可。


blob.png

图 4 NXHX 90-JTAG 开发板与 PC 连接图


作为基于 STM32 的配套芯片解决方案时,需通过 SPI/SQI 接口,跳线连接到 STM32 开发板的 SPI 接口上,如下图所示:


blob.png

图 5 与 STM32 开发板连接图


4. 软件安装


安装配置软件 netX Studio CDT , 双击安装包 netX Studio CDTV1.XXXX.X.XXXX xXX Setup.msi 直接安装,如下图所示:


blob.png

图 4 netX Studio CDT 安装界面


可参考文档:netX Studio CDT-netX90 development GS 04 EN.pdf安装完 netX Studio CDT 软件,根据电脑的设置会出现安装 USB 的界面:


blob.png

图 5 USB 安装界面


点击 Install 安装 USB 驱动。


5. 单芯片解决方案实例介绍


netX90 作为单芯片解决方案,即同时采用内部负责 Communication 和Application 的内核,两个核通过 DPM 建立连接。此时,只需要通过 netX StudioCDT 配置 NXHX 90-JTAG 板,然后,通过以太网口连接主站 PLC 即可建立通讯。


5.1 配置 NXHX 90-JTAG 板


通过 miniUSB 端口,将 NXHX 90-JTAG 连接至电脑进行配置,需设置开发板上 S701 Switch1=OFF,并且启动模式为 Stand boot Mode,所以 S400 Switch 5= OFF,Switch 6 = OFF。


(1)创建整个工程

硬件开发板设置完毕之后,打开 netX Studio CDT 软件,在欢迎界面中选择Open project , 进入工程文件选择界面 , 选择netXStudio_PNSV5_simpleConfig_V2.1.0.0,打开。


blob.png

图 1 netX Studio CDT 欢迎界面


blob.png

图 2 打开工程文件


导入工程文件之后,需要先构建整个工程,选择 Build,点击 Build Solution,如下图所示:


blob.png

图 3 选择 Build 整个工程


blob.png

图 4 Build 过程


(2)构建 Doxygen html 文档


选择 Doxygen,点击 Build Documentation,如下图所示:


blob.png

图 5 构建 Doxygen html 文件


构建万 Doxygen html 文件之后,在 Doc 文件夹下会自动生成一个 Html 文件夹,如下图所示:


blob.png

图 6 生成 Html 文件夹


(3)生成硬件配置二进制文件


在赫优讯提供的工程文件中,包含硬件设置文件的 xml 文档,可在 netXStudio CDT 软件中生成二进制文件,在单芯片解决方案中,需要启动内部 idpm,所以需要选择hardware_config_idpm.xml,右键点击 Build Hardware Configuration命令,如下图所示:


blob.png

图 7 生成二进制格式硬件配置文件


文件生成完毕之后,会弹出一个保存窗口,首先生成基于 LMF 的配置文件,hardware_config_idpm.hwc,点击 OK 即可,如下图所示:


blob.png

图 8 保存文件


保存过后,还会继续弹出窗口,生成基于 MFW 的二进制硬件配置文件,点击 OK 保存即可,如下图所示:


blob.png

图 9 保存文件


(4)烧写硬件配置文件和协议栈固件,点击 Tool,选择 Flasher,如下图所示:


blob.png

图 10 选择 Flasher 工具


或者可以直接点击上侧导航栏的小闪电按钮,进入之后,会自动扫描所连接的开发板,如下图所示:


blob.png

图 11 扫描设备


扫面到设备之后,点则,点击 Next,进入 Flasher,如下图所示:


blob.png

图 12 进入 Flasher 工具


选择 Brower Project,选择硬件配置文件,因本测试选择的 Loadable Firmware,所以选择硬件配置文件时选择 hardware_config_idpm.hwc,点击 OK 即可:


blob.png

图 13 选择硬件配置文件


选择好硬件配置文件之后,Flash Type 自动选择为 Internal Flash 01(COM),

点击 Write 按钮即可:


blob.png

图 14 烧录硬件配置文件


烧写好硬件配置文件会跳出一个选择框,因还要继续烧写协议栈,点击 Yes即可,如下图所示:


blob.png

图 15 选择继续烧写


选择协议栈文件 X090D000.nxi,如下图所示:


blob.png

图 16 选择协议栈文件


与之前烧写硬件配置文件一样,点击 Write 进行烧写即可,如下图所示:


blob.png

图 17 烧写协议栈文件


协议栈烧写完毕之后也会出现一个选择框,因烧写工作已完成,点击否即可,如下图所示:


blob.png

图 18 选择完成


NXHX 90-JTAG 配置工作已完成。


5.2 调试工程文件


NXHX 90-JTAG 开发板完成之后,可以 netX Studio CDT 软件中调试应用程序,首先,设置调试相关参数,点击 Debug,选择 Set Startup Target,以确定所要测试的为armv7em-none-eabi/4.9.3/netx90_app_iflash 如下图所示:


blob.png

图 19 选择设置调试参数


点击 Start Debugging 之后,出现一个 Debug Setting 选择框,如下图所示,选择目标板为 NXHX-90,Debugger 为 NXHX-90 On-Board Debugger,点击 Debug即可。


blob.png

图 20 设置 Debug 目标


在 Debug 过程中,会出现一个选择框,是否将是否将应用程序烧写至 APP端的 Internal Flash 中,选择 Yes 即可,如下图所示:


blob.png

图 21 选择框


调试完成之后,可以看到应用程序已经运行,如下图所示:


blob.png

图 22 运行应用程序


5.3 通讯测试


关于 NXHX 90-JTAG 开发板那边的设置以及应用程序的调试已经完成,接下来可以与主站建立通讯,本文选择 PROFINET 主站为西门子 PLC1200,在博途中完成组态,从站设备描述文件可以在 netX Studio CDT 中复制出来,如下图所示:


blob.png

图 23 选择 netX90 设备描述文件


在博途中,创建组态工程,首先将从站设备描述文件导入博图软件,然后创建 PN 工程,因 netX90 的设备描述文件与应用程序相匹配,所以无需进行输入输出模块的设置,直接将配置信息下载到 PLC 即可。完成装载之后,可进行在线看通讯状态,如下图所示,NXHX 90-JTAG 与西门子 PLC 成功建立通讯。


blob.png

图 24 与主站建立通讯


6.配有主 CPU 的解决方案实例介绍


netX90 可作为配有主 CPU 的通讯处理器,只采用其内部负责通讯的内核运行协议栈,而不是用应用程序内核。本文中,选择 STM32-F7 开发板作为主 CPU,采用 netX90 基于 STM32 的应用案例作为主应用程序,主站为西门子 PLC 进行测试。


6.1 配置 NXHX 90-JTAG 开发板


配置 NXHX 90-JTAG 开发板与 netX90 作为单芯片解决方案时的步骤一样,前面第(1)(2)步不再做详细介绍。netX90 作为配有主 CPU 的通讯处理器时,不在启用其内部 idpm,而是通过 SPI 的方式连接搭配主机,所以在硬件配置中有不同,需选择hardware_config_spm.xml 生成二进制硬件配置文件,如下图所示:


blob.png

图 25 选择硬件配置 xml 文件


blob.png

图 26 点击生成命令


生成二进制文件时,同样会生成基于 LFW 和 MFW 的两个二进制文件,都点击保存即可。然后将硬件配置文件和协议栈 hardware_config_spm.hwc 和协议栈文件 X090D000.nxi 烧写到开发板,并进行 Debug 即可。


6.2.运行基于 STM32 的应用程序


在选择基于外部 CPU 进行通讯测试时,需要通过 SPI 引脚,与主 CPU 建立连接。然后,打开 System Workbench for STM32 软件,选择上侧导航栏 File→Import,导入工程文件,如下图所示:


blob.png

图 25 导入工程文件


在跳出的界面选择 Existing Projects into Workspace,然后点击 Next,选择将文件保存在 STM32 工作区。如下图所示:


blob.png

图 26 选择将文件保存


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


blob.png

图 27 选择文件


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


blob.png

图 28 工程文件


赫优讯提供的资料中包含多种以太网实例,用户可根据自己的测试选择相应的文件,本文测试 PROFINET,所以可只选择 PROFINET 工程文件。编译整个工程,点击 Build→Build all,如下图所示:


blob.png

图 29 编译


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


blob.png

图 30 程序调试


6.3 通讯测试


与单芯片解决方案一样,在博图软件中创建组态工程,进行通讯测试,由下图可见,当应用程序运行起来之后,通讯成功,同时采用串口工具 Tera Term,可以查看应用程序打印信息,以及周期数据的交换情况,如下图所示:


blob.png

图 31 通讯测试


7. 总结

在本文的测试中,netX90 无论是作为单芯片解决方案还是作为配有主 CPU的通讯处理器解决方案,在赫优讯提供的应用程序上都可以方便快捷的实现PROFINET 从站的开发。此外,赫优讯也提供其他实时以太网开发的应用案例,比如:EtherCAT Slave、Ethernet/IP Adapter、Open Modbus TCP 等。


发布时间:2020年1月7日 13:18  人气:   审核编辑(王静 )
相关链接

我有需求