发布于 2004-04-16 16:10:06
0楼
wincc中利用c语言直接读串口或者利用dll等程序共享数据的办法首先要面临的问题就是时间问题或者中断问题。这一点在wincc本身而言是很不好处理的。我们用wincc调用vc 编写的dll实现了程序级的数据交换。但是这样必须要在wincc启动的时候启动后台的程序。对于时间方面我们是把c动作写在模拟时钟的触发动作中。这样是下下之策。当然,如果使用odk中的付值函数也可以。但是依然要面对可怕的时钟问题。还有,对于分散的模拟采集而言西门子的分布式i/o显得造价太高。20多个点分散在7、8个地方如果采用ET200S平均每个点的成本在2000元左右这样就迫使我们使用非西门子的产品,随之带来的就是一系列的兼容和嵌入问题。我本人对西门子在这一方的服务感觉不是太好。
最坏的打算就是利用单片机做自己的485总线接口实现类似AS-I的连接方式。不过,相当于开发一个新的硬件产品。在软件方面做通用的OPC服务器数据接口。这样整个产品就具有现实意义了。我可以说如果西门子公司在一年内不解决这个问题那么我们会帮助它解决,不过它所付出的代价是在模拟总线方面国内将可能出现可以和它总线绑定使用的替代产品。
如果各位有兴趣不妨我们联合开发。本人信箱:wzg333742@sohu.com