我需要用VB把直接把所需要设定的运动过程的速度和时间等参数写入运动工艺对象数据块中(commandtable)。我建立了一个数据类型为To_Struct_Command的数组,用于传递参数给工艺对象的commandtable这个数组,数据块为非优化数据块。之所以这样做是因为工艺对象的commandtable这个数组为优化数据块,我不知道上位机VB能不能直接对其寻址操作。现在遇到了两个问题需要请教下各位老师
1.如何直接通过VB或者其它编程语句直接对我建立的中转数据块进行寻址操作,就是直接修改参数,我目前用的是UDP通讯,该如何发送命令对其操作。2.假如前面操作成功,那么另一个问题是我自己建立的To_Struct_Command的数组为非优化,我用MOVE_BLK_VARIANT将其直接传递给优化的数组时,会不会有问题,从结构上看,是一模一样的。
其实我的主要目的是通过上位机编写VB程序,把所需的参数直接写入到工艺对象数据块中,以上是我想到的办法和遇到问题,不知道有没有更好的操作解决方案
图片说明:
最佳答案
您这就是自己开发程序与PLC通讯啊,可以使用OPC访问PLC里面的数据,然后VB或者C#之类的在通过OPC服务器读写PLC里面的数据
参考:
如何在C#中实现OPC数据访问
https://support.industry.siemens.com/cs/cn/zh/view/109481353
通过 C# 编程用于 SIMATIC NET OPC UA 服务器的 OPC UA .NET 客户机
https://support.industry.siemens.com/cs/cn/zh/view/42014088
基于PC的自动化:通过C# .net编程的,使用OPC-XML的开放接口进行数据库连接
https://support.industry.siemens.com/cs/cn/zh/view/21576581
OPC:使用 OPC 且基于 Microsoft? .NET 和 C# 编程语言的单独工业可视化
https://support.industry.siemens.com/cs/cn/zh/view/21043779
在VC中如何实现OPC数据访问
https://support.industry.siemens.com/cs/cn/zh/view/109481335
通过SEND/RECEIVE协议与Visual Basic .NET OPC客户端的OPC通信
https://support.industry.siemens.com/cs/cn/zh/view/21523291
如何通过OPC 连接PC站和S7-1500 CPU或固件版本V4以上的S7-1200 CPU
https://support.industry.siemens.com/cs/cn/zh/view/109474300
Communication between SIMATIC NET OPC Server and S7-1500
https://support.industry.siemens.com/cs/cn/zh/view/85195192
或者通过prodave
通过PRODAVE V6.2与S7-1500建立通信
http://bbs.chuandong.com/Detail.aspx?id=9289
提问者对于答案的评价:
谢谢啊,我研究一下。顺便再请教一下,我图片中的这种直接传输数据块的方式是否是可行的,就是MOVE_BLK_VARIANT这个命令,我前面有提到,带传送是非优化的DB,目标区域是优化的DB。我不知道是否是我这个命令没用对还是这样用是不行的,我的参数值,没有传递成功。
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc126340.html