- 1、本文档共29页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
浙大中控DCS系统AdvanTrolPro软件培训-编程站间通讯应用
控制站间的数据交换 控制站间的数据交换 对于一个较大的系统,往往无法做到将程序需要调用的位号集中在一个控制站中。这里,就需要进行数据的站间调用。 控制站间的数据交换 为了实现在控制站间交换数据,每个控制站开辟了一片共享数据区,用以存放共享数据。数据区内有128*4个字节描述为 LONG g_msg[128] (在SCControl中数据类型为DWORD)。为了最灵活经济的使用这片数据区,系统定义了一系列函数处理各种数据类型从数据区的放入和取出。通过sendmsg和getmsg执行发送和接收工作。 控制站间的数据交换 假如现在系统中有4个控制站,其中2号站需要调用1号站的一些数据,那么,让我们一起来看看实现数据交换的步骤: 控制站间的数据交换 例子:地址为2的控制站中有以下的一些数据需要在地址为4的控制站中使用,这些数据分别是: TI-101 氧化炉温度 FI-101 空气流量 LI-101 反应罐液位 DI-101 电机1状态 DI-102 电机2状态 DI-103 电机3状态 DI-104 电机4状态 控制站间的数据交换 根据系统规定,模拟量位号在系统内以2字节的半浮点(sfloat)数据类型存放,开关量以布尔(bool)数据类型存放。对于g_msg变量,每一个g_msg分别可以利用它的高16位和低16位存放2个半浮点型或整型的2字节变量;若是布尔型的数据,g_msg的每一位可以存放一个布尔量,也就是每个g_msg变量可以存放32个布尔量(开关量);对于像浮点型(float)这样的本身就占用4个字节的变量,每个g_msg只能存放一个。 控制站间的数据交换 经分析,需要发送的数据有模拟量位号3个,开关量位号4个。 在这里,根据题目要求,我们使用两个g_msg变量,其中的一个g_msg存放题目中要求的2个模拟量位号,正好占用了4个字节,另一个g_msg存放题目中的另一个模拟量位号(2个字节)和4个开关量(4位)。 控制站间的数据交换 发送: 那么,在地址为2的控制站中,编写一段程序,程序中,将3个模拟量和4个开关量分别存放在2个g_msg变量中,为了方便起见,程序中使用了g_msg[0]和g_msg[1] 。然后将这两个g_msg发送出去。 控制站间的数据交换 Setsfloat函数是向长整数中放sfloat数据的函数。 y=setsfloat(长整型数据,半浮点数据,0或1); 长整型数据为被写的数据源, 半浮点的数据为所需存放的数据, 0表示在长整型数据的低位上存放数据, 1表示在长整型数据的高位上存放数据。 函数运算的结果就是向长整数中放sfloat数据。 控制站间的数据交换 Setbit函数是向长整数中放bool数据的函数。 y=setbit(长整型数据,bool数据,0、1…31); 长整型数据为被写的数据源, bool数据为所需存放的数据, 0、1…31表示在长整型数据的哪一位上存放数据, 函数运算的结果就是向长整数中放bool数据。 控制站间的数据交换 Sendmsg为设置向其他控制站发消息的数目的函数。 sendmsg(所需发送msg的数量); 控制站间的数据交换 g_msg[0] = 0; g_msg[1] = 0; g_msg[0] = setsfloat( g_msg[0] , _TAG(TI-101).PV, 0); g_msg[0] = setsfloat( g_msg[0] , _TAG(FI-101).PV, 1); g_msg[1] = setsfloat( g_msg[1] , _TAG(LI-101).PV, 1); g_msg[1] = setbit( g_msg[1] , _TAG(DI-101).PV, 0); g_msg[1] = setbit( g_msg[1] , _TAG(DI-102).PV, 1); g_msg[1] = setbit( g_msg[1] , _TAG(DI-103).PV, 2); g_msg[1] = setbit( g_msg[1] , _TAG(DI-104).PV, 3); sendmsg(2); 控制站间的数据交换 控制站间的数据交换 SETSFLOST模块的功能是在输入的32位DWORD型变量的指定位置设置16位的SFLOAT值,再赋给输出值。其中,SFLOAT型在计算机中以定点法存储,在指定位置设置后,整体以DWORD型传送。 控制站间的数据交换 SETBIT模块的功能与前面的模块类似,是在输入的DWORD型值的指定位置设置开关数据,再赋给输出值。也就是,在已存在的DWORD型值的某一位上设置开关数据,其余不变,然后输出
您可能关注的文档
- 汽车理论课件操纵稳定性(下).ppt
- 汽车构造6发动机有害排放物的控制.ppt
- 汽车的驱动力行驶阻力平衡图.ppt
- 汽车电路维修.ppt
- 汽车的驱动力与行驶阻力.ppt
- 汽车构造课件吴相昆.ppt
- 汽车维修技术前言和目录.ppt
- 汽车行业“十二五”期间重点问题分析师建华.ppt
- 沈丹客运专线32m双线支架现浇梁施工方案.doc
- 沉井专项方案(北部)[论文设计].doc
- 英语人教PEP版八年级(上册)Unit4+writing+写作.pptx
- 人美版美术四年级(上册)8 笔的世界 课件 (1).pptx
- 人美版美术七年级(上册)龙的制作.pptx
- 英语人教PEP版六年级(上册)Unit 2 第一课时.pptx
- 数学苏教版三年级(上册)3.3 长方形和正方形周长的计算 苏教版(共12张PPT).pptx
- 音乐人教版八年级(上册)青春舞曲 课件2.pptx
- 音乐人教版四年级(上册) 第一单元 音乐知识 附点四分音符|人教版.pptx
- 英语人教PEP版四年级(上册)Unit 6 Part B let's learn 1.pptx
- 道德与法治人教版二年级(上册)课件-3.11大家排好队部编版(共18张PPT).pptx
- 人美版美术七年级(上册)《黄山天下奇》课件1.pptx
最近下载
- 党纪学习教育政治纪律研讨发言材料.docx VIP
- SY∕T 0601-2016 采出水中乳化油、溶解油的测定.pdf
- 体质健康成绩测试全自动化计算模板--更新.xlsx
- 装配式建筑概论-第二章部品构配件连接.pptx
- 五年级数学小数乘法试卷.docx
- (新教材)部编人教版四年级上册道德与法治全册期末复习知识点重点题型总结.doc
- 第二课 树立科学的世界观(精品课件)-【中职专用】高二思想政治《哲学与人生》同步精品课堂(高教版2023·基础模块).pptx
- 新改版教科版五年级上册科学教学计划(新整理版).doc
- 绿色建材申报指南、流程、范围.pdf
- 2023清水离心泵能效限定值及能效等级.docx
文档评论(0)