之前有用西门子ET200SP-PC2 做过一个项目,当时使用的是Debian 9系统 ,然后安装的1505S-F, C++的算法和STEP 7 之间是用的Socket通讯,这种方式也适合完全独立的普通PLC和工控机;
西门子为软PLC 提供一套ODK 程序,方便生成直接在PLC 内运行的高级语言程序,也就是说高级语言编写的程序最终会作为一个FB功能块,生成在TIA 中;具体可以分两种,一种是非同步的Windows 环境下运行,可以选择visual studio 编写,使用ODK 作为模板,支持多种语言,c++,c#,VB。另外一种是使用Eclipse 编写的实时的,和PLC CPU 同一周期运行的FB,只支持C/C++语言;据说后续会有SIMULINK 的支持;
测试的话可以用变量表来操作,工程上可以连接具体的变量引脚;
这样的话可以充分利用软PLC的性能,完成复杂的算法和数据处理,但最好是调试好的,比较稳定的算法;
比较具有性价比的是把高级语言+PLC+WINCC Adv/Professional 三者放到一台设备里。比如西门子的Panel PC 或者ET200SP PC2;