OPC Da在Word中写入位

时间:2013-06-05 10:54:09

标签: c# plc opc

我正在使用OPC DA Automation Wrapper连接到AllenBradley PLC。

我现在要求在一个字内设置一个位,独立于任何其他位。

我有什么办法可以严格地实现这个功能吗?

我尝试过的两个选项是:

将字设置为OPC服务器(Kepware)中的单独位。换句话说,我有16个标签,其中每个标签都有一个,标签名称如下所示:

[FULLTAGNAME].0
[FULLTAGNAME].1
[FULLTAGNAME].2

然而,这意味着我需要保留许多单独的OPCItem对象

另一种方法是读取整个字,使用BitConverter将其转换为位,更改需要更改的位,然后将保持字写回PLC。

然而,在测试期间,我发现线程1可以读取该单词。 然后线程2将写入该字,更改为第2位。然后,线程1将更改第4位并将整个字写回,并且将更改第2位的更改。

有没有人知道我可以使用单个OPCItem并写入特定位的方法?或者我是否因为有很多与某个位相关的OPCItem而陷入困境?

由于

1 个答案:

答案 0 :(得分:0)

设置OPC驱动程序以使用位数组。 PLC本身将接受对存储器的引用,作为具有偏移的位数组。之后,这只是OPC驱动程序如何实现这一点的问题。我很确定凯美华会以这种方式接受它。