摘要: 近日 见同事正在看 高焕堂新书 《UML+OOPC 嵌入式C语言开发精讲》偶然发现他对COR模式存在严重误解。废话少说 ,具体如下: 在他的大作 32.5 章节里 用到该模式代码如下:#include "lw_oopc_kc.h"#include "ex32-il.h"CLASS(LED_P0){ IMPLEMENTS(IL); void (*init)(LED_P0*); IL* next;};... 阅读全文
posted @ 2010-01-05 09:14 wangok 阅读(2324) 评论(9) 推荐(1)
摘要: OPC的基本概念 1. 服务器、组、数据项 OPC服务器由三类对象组成:服务器(Server)、组(Group)、数据项(Item)。服务器对象(Server)拥有服务器的所有信息,同时也是组对象(Group)的容器。组对象(Group)拥有本组的所有信息,同时包容并逻辑组织OPC数据项(Item)。 2. 报警(Alarm)和事件(Event) 报警和事件处理机制增强了OPC客户处理异常的能力。服务器在工作过程中可能出现异常,此时,OPC客户可通过报警和事件处理接口得到通知,并能通过该接口获得服务器的当前状态。 在很多场合,报警(Alarm)和事件(Event)的含义并不加以区分,两者也经常互换使用。从严格意义上讲,两者含义略有差别。 阅读全文
posted @ 2011-05-13 12:55 wangok 阅读(1383) 评论(1) 推荐(3)
摘要: 网上有很多关于OPC 的文章,可惜都很零乱,正好这段有点空,自己就整理下,形成系列文章 ,与大家共分享。今天这是第一篇。 1:什么是 OPC OPC 全称是 Object Linking and Embeding ( OLE ) for Process Control ,它是一个工业标准,管理这个标准的国际组织是 OPC 基金会 2 :为什么需要 OPC 在工业控制系统中,不同的供应商提供的设备之间需要交换数据,例如在实现下图 那样多层生产控制信息系统时,从处理设备数据的现场设备层 阅读全文
posted @ 2011-05-11 16:05 wangok 阅读(721) 评论(0) 推荐(2)
摘要: CStatForServer 本类的作用是计算平均速率 void CStatForServer::RecordCurrentRate(float uploadrate, float downloadrate) { // if reach record interval DWORD dwCurTime = GetTickCount(); if (dwCurTime - m_dwLastRecordTime < RECORD_INTERVAL_MS) return; m_dwLastRecordTime = dwCurTime; if (ULONG_MAX != m_ulRecordTime 阅读全文
posted @ 2011-05-03 16:51 wangok 阅读(525) 评论(0) 推荐(1)
摘要: DCOM设置- WINXP(SP1) [注意] 以下为服务器配置过程。 客户端设置只需完成1-4即可。 1、运行DCOMCNFG进入DCOM设置(在XP中称为组件服务) 1.1、组件服务配置界面 2、打开组件服务\计算机\我的电脑,鼠标右键设置属性 3、注意默认属性的设置 4、注意默认COM安全性设置,设置访问权限和启动权限 4.1、在访问权限编辑界面中添加Everyone 设置允许访问权限。 4.2、在启动权限编辑界面中添加Everyone 设置允许启动权限。 5、设置组件服务\我的电脑\DCOM配置 5.1、设置应用程序DCOM设置,本例应用程序为OPC ASDPDEMO 1,这个名字随应 阅读全文
posted @ 2011-05-03 16:24 wangok 阅读(941) 评论(0) 推荐(0)
摘要: 昨天晚上看书时,又顺手翻了翻 《重构》记的07年第一次看到它的样章时 是那样的震撼,那样的激动。哦 原来我一直苦苦寻找的答案都在这里,原来写程序时,不知道一个函数该多大合适 ,不知道对于逻辑重复的问题 该怎么有效解决,不知道。。。 呵呵 有那么多的未知,那么多的迷惘。最大的痛苦 莫过于 明明知道程序写的不优雅,却苦无解决之道。 对于有很多人把它和《设计模式》放在同一个高度,开始时自己也有很多怀疑... 阅读全文
posted @ 2009-07-01 11:20 wangok 阅读(2792) 评论(34) 推荐(0)
摘要: 意图:提供一种方法顺序访问一个聚合对象中各个元素,而又不需要暴露对象的内部表示。 我想GOF 的意图这次说的很明白了,就是我想遍历一个聚合对象。但又隐藏内部实现。该怎么办呢?本模式主要 就是把遍历算法独立出来,使它和聚合对象去耦合 。 为何使用? 在面向对象设计中,一个难点就是辨认对象的职责。理想的状态下,一个类应该只有一个单一的职责。职责分离可以 ... 阅读全文
posted @ 2009-01-09 16:27 wangok 阅读(1712) 评论(5) 推荐(1)
摘要: 上篇文章里对本模式几乎没有说什么,只是推荐大家读了怪怪的一篇文章,这几天一直在思考本模式。现将自己的总 结写下来,欢迎大家指正。 就像我上一篇文章里提到的一样,这个模式确实很难正确理解。MS很简单,但一写出来就不对。其实这个名字翻译的 不太好,如果翻译为 “响应链模式”我想更好理解一点。应用本模式应该注意以下几点。 1: 动态的响应请求,而且是多个都有可能处理该请求,没有一... 阅读全文
posted @ 2009-01-06 15:20 wangok 阅读(1152) 评论(1) 推荐(0)
摘要: 1 意图:使多个对象都有机会处理请求,从而避免请求的发送者和接受者之间的耦合关系。将这些对象连成一条链,并沿着这条链传递请求,直到有一个对象能处理该请求为止。 2:为何使用? 这个模式,确实是看起来容易,但准确理解却很困难,很多时候我们其实更应该使用表模式而不是它。关于这一点 在总结中会在具体说一说。回到原题吧,A 解耦 请求的发送者与接受者,使发送者不需要知道太多的接受者信息。B... 阅读全文
posted @ 2009-01-03 15:22 wangok 阅读(326) 评论(0) 推荐(0)
摘要: 意图:将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化;对请求排队或记录请求日志,以及 支持可撤消的操作。 很迷惑,看了之后不知道在说什么。如果这样说,我想理解的更清楚些 。本模式把“发出命令的责任和执行命令的责任分割开,委派给不同的对象”。或者我们也可以这样理解: “请求”即 方法,命令 如“打球” 这就是一个方法,一个请求。我们可以把这个方法提到类的层次... 阅读全文
posted @ 2008-12-27 15:01 wangok 阅读(1641) 评论(2) 推荐(0)