ERTEC200P-2 PROFINET设备完全开发手册(2-1)
2. 入门指导:第一个PN IO设备
开发之前的准备,需要的软件:
- TIA Portal V16、V17
- 串口终端软件 (MobaXterm或Putty或TeraTerm)
- Win10 并且安装64位JAVA运行环境
- J-Link的驱动软件
- Proneta(推荐使用)
需要准备的硬件
- 性能好一些的PC (核数越多编译越快,否则编译会很慢)
- 评估板 (默认PN-CORE及底板)
- S7-1500 PLC (1200也可以,但是无法使用IRT)
- USB UART/TTL(注意不是RS232,淘宝上可以很容易买到)
- J-Link仿真器
2.1开发环境与协议栈的编译
V47协议栈的eclipse工程是基于64位Java运行环境的,需要确认已安装64位JDK/JRE,例如jdk-8u231-windows-x64。
为了方便使用,笔者将代码适配到PN-CORE评估版,并且将相关的工具重新打包,请从西门子官方代理商处获取压缩包。
解压后的协议栈内容如下表所示:
目录 |
内容简介 |
|
contributions |
BBB_xhif_device_tree |
Beagle bone black 设备树文件,配合minimal design v3 |
GSDML |
DEVKIT47的GSDML文件 |
|
Simatic_TIA |
TIA博图示例项目 |
|
SNMP_MIBS |
SNMP MIB文件 |
|
doc |
HW |
Minimal design,NANO,CORE的设计文件,EB200P的设计文件和手册,ERTEC200P-2的datasheet和参考手册 |
SW |
开发指导: Guideline_EvalKit_ERTEC200P_V4.7.0.pdf 协议栈接口: Interface_Description_PN_IO_DevKits_V4.7.0.pdf GSDML文件概述: GSDML_GettingStarted_V1_5.pdf |
|
Installed_tools |
eclipse |
64位 eclipse 开发环境 |
Mingw |
工具链,交叉编译环境,ecos源代码 |
|
pn_ioddevkits/src |
application |
用户程序 (RT、IRT、PROFIDRIVE) |
projects |
项目目录和编译输出(e.g. projects\\pnio_proj\\ertec) |
|
source |
协议栈源码 |
|
tools |
ecos配置工具 |
|
pn_run |
src |
协议栈源码 |
setup |
/ |
开发环境自动下载工具 |
tools |
DebugTool |
JLINK 烧写NOR flash配置文件 |
PNConfigLib |
替代TIA博图生成PN-driver配置文件的工具 |
|
PN-driver controller example |
PN-driver 控制器程序,可以用PC机连接PN设备,读写IO,读写数据记录,发送周期32ms。在没有PLC的情况下可以用来模拟控制器(需要安装WinPCAP) |
|
TcpFwLoader |
通过TCP下载烧写固件的工具 |
|
USB to RS232 driver |
EB200P-2 评估板USB驱动 |
新建一个文件夹作为eclipse工程的workspace,如\\Devkit47\\Installed_tools\\eclipse\\wsp
双击eclipse图标打开软件,在Workspace栏中选择新建好的路径:
点击Launch之后的界面如下:
接下来导入开发包中的ECOS和EK_ERTEC工程项目,点击菜单File -> Import
选择General 下的Existing Projects into Workspace
点击Next,在Select root directory栏中选择开发包中提供的工程的路径
勾选ECOS和EK_ERTEC两个工程即可:
(如果不使用标准的主机接口方案(MinimalDesign VAR2 + VAR3 + BBB),可以不导入 BBB(AM3358) Linux的项目HOST_XHIF。)
导入项目后,Eclipse的界面如下图:
首先编译ECOS操作系统,在Eclipse右侧的窗口双击"build ecos-native EB200P SDRAM 1x32bit NOR-FLASH 32bit",这是针对EB200P-2的配置。如果不是首次编译,需要先运行“fullclean ecos-native”清除中间文件。
编译的输出可以在“Console”中看到,编译会需要一段时间,如果配置正确会看到如下输出结果
在PN协议栈中,包含5个示例程序APP:
APP |
说明 |
EXAMPL_DEV_CONFIG_VERSION |
App1_STANDARD |
标准接口(SI)示例程序 |
1 |
App2_DBAI |
直接内存访问(DBAI)示例程序 |
2 (本手册用不到) |
App3_IsoApp |
IRT同步示例程序 |
3 |
App4_XHIF |
Minimal design V3 XHIF示例程序 |
4 (本手册用不到) |
App44_PROFIDrive_AC4 |
PROFIDrive AC1/AC4 示例程序 |
44 |
通过改变EXAMPL_DEV_CONFIG_VERSION宏来切换不同的APP。在编译协议栈前确认我们使用APP1。
再编译PN协议栈,右键点击EK_ERTEC项目,选择配置Bulid Configurations -> Set Active -> EB200P_Debug_EcosNative(EB200P-2 Debug Firmware)
配置好后就可以进行协议栈的编译了,右键点击EK_ERTEC项目 -> Build Project
编译结束之后可以在Console界面看到如下结果:
可以看到编译输出有两个文件:
PNIO4ECOS是包含调试信息的elf文件,可以用来下载到SDRAM调试运行。EB200P_Debug_EcosNative.bin是2进制固件文件,可以烧写到flash中运行。
这两个文件可以在\\Devkit47\\pn_ioddevkits\\src\\projects\\pnio_proj\\ertec\\EB200P_Debug_EcosNative中找到。
下一篇:2.2调试协议栈