COM组件技术在现场总线控制系统组态软件中的应用
//包含其它头文件
…………
PARAMS pDIOCParams
{
PMAPDEVREQUEST pRea; //自己定义的结构体
switch(pDIOCParams->dioc_IOCtlCode)
{
case DIOC_OPEN:
case DIOC_CLOSEHANDLE:break;
case MDR_SERVICE_MAP:
pReq=*(PMAPDEVREQUEST*)pDIOCParams->dioc_InBuf;
pReq->mdr_LinearAddress=MapPhysToLinear
(pReq->mdr_PhysicalAddress,pReq->mdr_SizeInBytes,0);
if(pReq->mdr_LinearAddress==NULL)
pReq->mdr_Status=MDR_STATUS_ERROR;
else
pReq->mdr_Status=MDR_STATUS_SUCCESS;
break;
case MDR_SERVICE_UNMAP:break;
default:
return ERROR_INVALID_FUNCTION;
}
return DEVIOCTL_NOERROR;
}
在现场总线控制系统中使用COM组件技术,不仅可以使数据传输部分的功能独立于客户端程序,减小开发难度,而且使其可以被任何支持二进制代码的程序如Excel电子表格等直接调用。当系统中采用服务器和客户端方式时,代码更加易于维护。即使要升级服务器端程序,只要接口不变,其客户端程序也完全不需要修改,大量后续工作被减轻。象服务器端一样,客店端也只需关心服务器的接口,而不必考虑其如何实现数据交换。也就是说,COM服务器或客户机中的一端功能发生改变,只要其接口保持不变,另一端不需修改就可以工作。本文所介绍的技术已在胜利油田某注水站等实际工程项目中得到成功的应用。
关键词: 现场总线 组态软件 COM VxD
COM(Component Object Model)组件技术是构造二进制兼容软件的规范 通过它可以建立能够相互传输数据的组件 其服务器-客户机结构非常适合工控软件应用程序的开发。由于工控软件不仅包括PC机上的HMI(人-机界面)程序 还包括与各种基于ISA或PCI总线的数据采集卡进行数据交换的程序 这部分程序对开人员的硬件水平要求较高 而且开发难度较大 与HMI程序是相互独立的 所以可以把工
加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW
或用微信扫描左侧二维码