- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
MSG指令在SLC500中应用
MSG指令在SLC500中应用 摘 要:根据AB DF1通讯协议的特点,在进行点(主站)对多点(从站)通讯时,主站只能通过程序显式调用,以轮循扫描的方式,对各个分站进行依次逐个通讯。但随着通讯分站数量增加,只能不断增加MSG指令的数量,使得程序反应时间和扫描周期同步线性增长,而在这一过程中,由于异步执行问题,还存在MSG指令占用队列,相互影响的情况。针对这一问题,本文通过改变MSG控制字,实现程序复用;并通过队列(FIFO)的应用,实现系统对通讯操作的自动调度,实现了缩短系统响应时间的目的。
关键词:MSG控制字;FIFO;程序调度
中图分类号:TP273
在应用单主从网络通讯的控制系统中,随着节点数量的增多、导致网络通讯负荷同步上升,出现了系统数据更新周期延长,无法满足控制系统的数据采集实时性、操作安全性要求的情况。
针对这一问题,本文通过对工程实例中通讯程序的优化,实现了对控制系统通讯性能、功能的改进;并且通过对通讯指令的技术处理,简化了程序编写。
1 SLC500通讯指令简介
MSG指令用于在AB PLC通讯网络上的节点之间传送数据。当该指令备使能时,信息传递被挂起。在扫描周期末尾时异步执行数据传送。
RSLogix 500的通讯体系结构。RSLogix 500的通讯体系结构由梯形图扫描(Lader Scan)、通讯缓冲区(Communications Buffers)、通讯队列(Communication Queue)三个基本的部分组成,它们决定了处理器传送消息的动作特征。
RSLogix 500内共4个通讯缓冲区。当在一个通讯指令结束前,它的信息和数据被传送到其余未用的一个通讯缓冲区内。当四个缓冲区全满,第五个通讯指令又要被处理时,通讯信息放在通讯队列中(注意,不是要传送的数据)。通讯队列是另一个信息存储空间,存储了那些还没有被分配缓冲区的通讯指令。通讯队列的操作顺序是先进先出(FIFO),它可容纳梯形图中所有的通讯指令。缓冲区和队列机制都是完全自动执行的。通讯缓冲区被自动分配和释放,当缓冲区满时,后到请求则自动进入队列。
因为通讯队列中不是存储要传送的数据,所以如果一条通讯指令在队列中移出,处理器实际发送的数据和通讯指令第一次被扫描时可能不同。
2 目标控制系统结构
这里以点对多点的通讯方式构建控制系统。中央控制室装有主CUP(主站),就地设备分别配置独立的CPU(从站)。控制系统需完成集中监视并控制就地从站的功能。
2.1 网络结构图
图1
2.2 控制方式。从站CPU采集的数据通过MSG指令,传输到主站CPU,并接收主站CPU操作指令,启停就地设备。
2.3 程序分析。如果对每个站都使用前述所示的通讯设置,每个站按配置最少一个读MSG和一个写MSG通讯计算。那么在主站程序中,要出现200个MSG指令。
根据以上分析,通过联机实验发现:上表中六组控制字,除了Size inElements不能通过赋值语句写入外,其他控制字均可在程序运行时更改。
根据分析结果,在分站程序规划时,设定每个站的情况相同,即上述通讯参数不变,至此,需要改变的数据只剩下分站节点号Local Node Address。
对于写MSG参数设置,除Data Table Address数据填写与工艺要求相关外,与上述完全相同。
2.4 程序改进工作。经过上面的分析,有可能实现这样的目标,即:减少MSG指令的重复。使控制系统需要完成的全部通讯功能,通过重复使用的MSG指令,即只用一个读指令和一个写指令来完成。同时,通过自动写入MSG目标地址实现动态通讯调度,并实现完善的通讯队列溢出、故障处理。
为达到这一目的,进行了如下工作。
(1)通讯调度实现。通过建立操作事件队列(FIFO),实现对分站通讯动态调度,优先满足操作人员监视、操作设备的通讯。如:在操作分站时,优先执行该站通讯,避免了轮询通讯时间延时的影响。(2)数据的存储规划。通过复用MSG指令,完成对所有站通讯功能。因此需要对各个分站的工艺数据存储进行分配,以使MSG和数据传送程序实现复用。(3)通讯故障处理。当从站通讯异常时,为了不影响系统扫描周期,下次扫描时就不再对该站通讯。这要求对从站错误信息进行有效的记录。当需要对这些站进行通讯重试时,通过人工的手动复位来完成。
3 程序编写
3.1 存储空间的分配:(1)MSG控制块地址。根据前述要求,对MSG控制块所用数据地址进行了统一规定,以确保不同的通讯动作共用同一组存储地址,调用同一MSG控制块,完成不同的通讯功能。(2)数据存储地址。根据MSG控制块地址分配情况,设计了所有从站的读、写数据存储格式和地址分
文档评论(0)