大家好!
我准备进入一个小公司公司做 OPC,第一次接触这个行业,国庆这几天,学习了一下OPC。很多地方云里雾里的,不是很明白,在此向各位前辈请教了。
公司大概要实现的功能:
有一个监测生产线, 有一组检测设备-这里叫设备AC100,检测仪用的是RS485协议返回信号。这种设备大概有3种属性:《当前检测温度》《当前受检设备状态》《当前受检设备id》。
理解1:每个受检设备做成一个组(就有n个组),然后组设置3个item代表3个属性。 感觉这里理解错了。
理解2:所有的受检设备都是通过一条线路进来的,这一组受检设备应该只有1个group+3个item,每个受检设备变化了,也只修改到这3个item。 至于谁变化了,那是OPC-client的事情,客户端来解析读取到的数据是什么意思,然后用图表反应给客户。
理解3:和2差不多,只不过只有一个item,这个item仅仅反应的是COM端口上读取到的数据。
这3中理解方式,感觉也都合理似的, 是不是都有可能,只在乎OPC server如何编写的?
问题1:OPC 服务器
我运行HuaFu的VCsvr,里面有3个Tag,这Tag是不是就是item?他里面没有用到组这个概念呢? 然后我用了一个通用的Vcclient访问他, 在AddGroup时,随意我取什么名字,但是访问item时,还是要和Tag的名称匹配上。 这个时候我增加的group是什么意思? 是不是相当于一个数据库记录集,只是给我用的?
为什么取名叫 AddGroup 和 AddItem? 而不是GetItem?
问题2:OPC 客户端
一般我们做OPC client 开发,是不是都得针对某个设备的参数,读取item数据用图形模拟出来。 也就是不购买组态软件或者组态软件没有满足需求的情况下,才会做OPC client开发?
问题3: OPC HAD 历史记录
这个一直搞不懂,OPC server读取设备数据后,由谁将信息写入SQL server。是由一个OPC-client监听改变,写入SQL server, 还是 OPC server 读取后就直接写数据库呢?
按照一些采集设备,每秒产生100个数据,那存入数据库的记录量也太大了吧? 大家的实际应用情况都是怎么处理这种问题的?
问题4: OPC-A&E 事件报警
报警的意思应该是针对每个设备对于每个厂家的要求不同而去开发吧? 这个时候OPC-A&E 对于OPC-server, 他就是一个 OPC-client客户端吧? 通过实时监听OPC server的item数据变化,如果报警规则符合设置要求, 就做一些声光 短信报警之类的处理?
问题5: OPC 安全问题
局域网要能修改OPC, 通常要配置OPC的DCOM属性,也就是大家都可以读写。如何做到根据用户的不同权限可以读写。 这方面资料好像很少似的。
另外请问一下: WinCC 这种组态软件贵吗?一般的小公司会购买不? 还有现成的OPC server开发包,不知道哪种比较好,价格还能接受的。 觉得自己去开发一个 server, 真的是巨麻烦,那个lightOPC,初步看了一下,文档不是很多。
---第一次接触工控行业, 问题有些多, 描述也有些不准确, 请见谅!