我对 Codesys 平台还很陌生,在尝试将 Windows IPC 上的 RTE 用作目标设备时遇到了一些问题。
我正在使用具有以下运行时版本的 IPC(Windows 7 Embedded)-> CODESYS Control RTE V3 v3.5.17.0
我在笔记本电脑上运行 Codesys 环境(也是版本 v3.5.17.0),通过选择正确的目标 PLC 设备(CODESYS Control RTE V3 x64)连接到 IPC 运行时没有问题。
我在我的项目中添加了一个“Ethercat Master SoftMotion”设备,并分配了堆栈将在其中运行的相应 IEC 任务(Bus Cycle Task),并选择堆栈使用的 NIC,没有大问题。正如文档中所述-> https://help.codesys.com/webapp/_ecat_tutorial;product=core_EtherCAT_Configuration_Editor;version=4.1.0.0
当我登录并下载项目以便开始扫描网络以查找不同的 Ethercat 从站时,我收到以下消息:
- [致命错误] 未解决的参考:'SYSETHERNETADAPTERCLOSE'
- [致命错误] 未解决的参考:'GETNUMBEROFADAPTERS'
- [致命错误] 未解决的参考:'GETADAPTERINFO'
- [致命错误] 未解决的参考:'SYSETHERNETADAPTEROPEN'
- [致命错误] 未解决的参考:'SYSETHERNETETHFRAMESEND'
- [致命错误] 未解决的参考:'SYSETHERNETETHFRAMERECEIVE'
- [致命错误] 未解决的参考:'SYSETHERNETFRAMERELEASE'
- [致命错误] 未解决的参考:'GETIPETHFRAME'
- [致命错误] 未解决的参考:'SYSETHERNETIPFRAMESEND'
- [致命错误] 未解决的参考:'SYSETHERNETIPFRAMERECEIVE'
我也得到我的对话框,说明:
“下载时出错:10 个未解决的引用,0 个签名不匹配,0 个版本不匹配找到
硬件上的设备版本似乎与项目中使用的设备版本不同。尝试升级/降级项目中的设备以匹配硬件的实际版本。
请查看消息视图以获取更多详细信息”。
此错误消息似乎具有误导性,因为这是一个新安装环境中的新项目,其中 Codesys 开发和运行时都具有完全相同的版本,因此该项目是为正确版本的运行时创建的。
我看了一下手册,我必须选择正确的驱动程序-> https://help.codesys.com/webapp/_cds_rtev3_startup_cifx_hil;product=core_codesys_control;version=3.5.17.0
此时是我发现问题的时候:
根据文档,我需要在我所做的 PLC 配置的组件管理器选项卡中添加 CmpHilscherCIFX 组件,然后重新启动 IPC。
稍后,必须通过修改“CODESYSControl.cfg”文件来选择引导加载程序和正确的固件。这也是我在附件中看到的一个步骤,我只是添加了 Ethercat,根据我在“C:\Program Files\CODESYS\CODESYS Control RTE3\”中找到的“_cifX firmware.txt”选择 Ethercat 固件文件HilscherCIFX\固件":
[CmpHilscherCIFX]
TraceLevel=0xFFFFFFFF
InterruptMode=0
DMAMode=1
Device.0.BootloaderFilePath=$Firmware$\HilscherCIFX\Firmware\NETX100-BSL.bin
Device.0.Channel.0.FirmwareFile=$Firmware$\HilscherCIFX\Firmware\cifxecm.nxf
[SysFile]
|PlcLogicPrefix=1
PlaceholderFilePath=C:\Program Files\CODESYS\CODESYS Control RTE3, $Firmware$
应用这些更改后,我再次重新启动了 IPC。但是,我仍然收到此未解决的参考错误,我注意到“C:\Program Files\CODESYS\CODESYS Control RTE3\HilscherCIFX\Firmware”中没有任何 Ethercat 固件文件(cifxecm.nxf):
选择在 IPC 上运行 Ethercat 堆栈的 NIC 是 Intel I211,因此理论上支持 Chipset。
这怎么可能?我不确定这是我问题的原因,但它肯定看起来很奇怪。此外,文档似乎与我使用的运行时版本不是最新的,我相信它是最新的。
我希望有人有一些建议,如果您需要进一步澄清,我会提供更多细节。