西门子推出了Eigen Engineering Agent(Eigen工程智能体),论坛里有朋友已经在试用了,在它的主页看了看几大功能演示小视频,看起来应当是很好用,可惜,没申请到试用名额,只好等有机会有预算再用了。
不能使用Eigen Engineering Agent,可是活还是得一样干,只能退而使用AI+MCP+TIA Portal openness API+TIA Portal的模式了,使用的MCP Server是下面两个:
1、https://github.com/bulaofen0036-coder/TIA_Portal_Openness_MCP
2、https://github.com/a4webdev/tiacommander-mcp
经过近一周的使用,感觉还可以,效率能提高不少。
这里想着重说一下TIA_Portal_Openness_MCP提供的命令行模式,简单地说,就是配置好项目的Spec.json文件,然后在命令行中输入一条指令tia-v20 gen Spec.json(这里使用的TIA Portal V20),就可以按步就班地生成/编辑工程项目了,这里不同的项目就使用不同的Spec.json,类似于一个一个项目就是一个工单,而工具只有一个。
这也就实现了“代码即项目”,至于后者“项目即代码”则是上述操作的反向操作,同样是在命令行模式下,只需要输入一条指令tia-v20-extract projectName.ap20,即可以将一个项目转换成代码形式的projectName_Spec.json文件,这个功能,西门子官方有一个ProjectInsight工具,不过好久没更新了,现在的版本好像最高支持V19的项目,另外,它输出的json文件只能是部分的,还是零散的,而不是一个整体的json文件,这里就不能说这种想法是独创的了。
到此,便可以借助AI的智能,让其辅助生成json文件,这样,要检查项目是否发生了改变,或者说两个项目是否一样,只需要比较两个json文件就可以了,如此,则轻松了不少。
另外,对项目的维护可以方便地在github上处理了。
项目到(json)代码的转换,原型我已经实现了,只是受限于Openness的功能,部分操作还需要在TIA Portal UI中进行“打补丁”,不过,这已经占了不少便宜了。
如果有和我一样采用上述模式提升效率的朋友,可以一起讨论一下使用中的问题和解决方法。
最后有个疑惑,看官方智能体的功能演示,有些功能好像是Openness不能实现的,不知道是通过什么方式实现操作的?