实时数据库和驱动程序开发接口-解析.doc

实时数据库和驱动程序开发接口-解析.doc

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实时数据库和驱动程序开发接口-解析

实时数据库与驱动程序开发接口 V1.0 2006/12/29发布 引言 根据整个组态的结构描述,在驱动程序与实时数据库之间交换的内容包括采集的实时数据及由实时数据库向驱动发送的控制命令串,驱动程序要求实时数据库或其他驱动支持的功能。 实现方式 具体的实现方式是能过共享内存的方式进行数据传送。系统驱动所使用的共享内存全部编号使用,编号从0开始顺序递增,不同的驱动使用不同的共享内存编号,一般一个驱动使用一个共享内存,特殊情况下一个驱动可以使用一个以上的共享内存号。系统提供若干函数对共享内存的创建及使用进行支持。并且提供完整的温巡驱动程序,使用纯C语言编写。二次开发人员可以阅读,参照完成其他驱动的编写工作。另外对每一个驱动的开发需要在drive目录下建立一个单独的文件存储驱动的应用程序与设置文件.以omron为例,需在drive下建立omron目录.对每一个驱动程序写一个readme.txt文件和一个config.txt文件来描述开发的目的及驱动的用法及驱动程序的参数设置. 系统占用的共享享内存编号有如下几个, 其他程序请不要占用. 100 声音驱动使用 102 短信程序使用 103 电话语音报警使用 web驱动使用 驱动程序编写说明 共享内存的分配 命令标志 命令接收区 数据区 上传结构变量个数 上传结构变量内容 下传结构变量个数 下传结构变量内容 数据区 驱动程序采集的量一般分为两种形式一种是实时数据量如遥信,遥测与遥脉等. 另一种类型是结构量,如SOE, 保护动作记录等。 实时数据量采用 0 - 1999进行编号, 驱动程序开发人员可自行安排其中的某一段为遥信,遥测或遥脉, 例如 0 - 100 为遥信, 101-200 为遥脉, 201 - 300 为遥测.对于遥信多的,将更多的编号分配给遥信,对于遥测多的将更多的编号分配给遥测。采集上来的量在组态的参数配置中按驱动编写的情况进行配置. 上传结构变量 结构型变量采用如下方法进行传送,系统提供若干个结构串位置,当将指定形式的若干个结构串放入结构串中时,同时将串个数告诉实时数据库。则实时数据库程序读入所有的串,并根据指定的格式进行存盘操作或命令操作。结构串的格式一般为一个特征码附加若干有效字串参数。 命令区 驱动程序从实时数据库中接收的内容一般是命令串,命令串中包括命令特征码及命令附带的数据,当收到退出命令时驱动程序应自动安全地退出. 退出命令是命令字符串 EXIT。 下行结构变量 下传结构变量一般是由实时数据库传送到驱动程序的下行结构变量。接收下行结构变量的程序一般有声音报警,电话报警,及调度程序等。 类接口说明 支持函数文件列表 1)ramdrive.h 2)ramdrive.c 使用步骤 1)使用方法bool CreateRam( int ramid ); 完成共享内存的建立,参数为数据共享区的编号. 2)设置实时数据 void SetValue( int id, int iValue ) id 编号 iValue 实时值 3)设置结构串 void SetStruct( int iNum , char * chStruct ) iNum 串内容编号 chStruct 串内容 4)设置结构串个数, 当实时数据库读完之后会置0 void SetStructNum( int iStructNum ) iStructNum 结构串个数 实时数据库接收的命令 命令组成: 一般是一个标识开头,跟随着是一些参数 Synax0 = CONC 站号 开出号 Descr0 = 发出一个控制命令 Synax1 = COND 站号 命令编号 数字串 Descr1 = 发出一个带数字的控制命令 Synax2 = CONS 站号 命令编号 使用字符串代替参数设置内的内容下发 Descr2 = 发送指定的字符串下去 字符串中可能有空格 Synax3 = CONVALUE 站号 命令编号 数字串 Descr3 = 用于定值更改,会保存原始定值. 有默认取默认值,无则根据关联取出默认值, 如都没有则空出等输入 Synax4 = ASSIGNSYS 编号 值 save Descr4 = 给系统总线上的某一个量赋值 Synax5 = SQL SQL语句 Descr5 = 执行一个可执行的sql语句 Synax6 = SOE yyyy mm dd hh mm ss ms ramid istate Descr6 = 执行一个SOE语句 年 月 日 时 分 秒 微秒 遥信在共享内存内的编号 动作后的状态值 Synax7 = BPACT netaddr gztype yyyy mm dd hh mm ss ms data1 data2

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档