如果再将控制算法信息分为存储信息与运行信息,会造成一定的重复,产生双倍的RAM需求。这要求控制算法运行信息存放的介质兼有数据存储功能,即掉电数据不丢失。所以,μC/OS-Ⅱ内存管理模块的相关信息也必须得到存储。在程序再次运行时,再次加载控制算法就是将备份区中的信息恢复到内存池中和回路头指针中。......
2023-11-22
在上位机将控制算法传输到控制卡后,控制卡会将控制算法信息暂存到控制算法缓冲区,并不会立即对控制算法进行解析。因为对控制算法的修改操作需要做到在线执行,并且不能影响正在执行的控制算法的运行。所以,控制算法的解析必须选择合适的时机。本系统中将控制算法的解析操作放在本周期的控制算法运算结束后执行,这样不会对本周期内的控制算法运行产生影响,新的控制算法将在下一周期得到执行。
本系统中的控制算法以回路的形式体现,一个控制算法方案一般包含多个回路。在基于功能框图的算法组态环境下,一个回路又由多个模块组成。一个回路的典型组成是输入模块+功能模块+输出模块。其中功能模块包括基本的算术运算(加、减、乘、除)、数学运算(指数运算、开方运算、三角函数等)、逻辑运算(逻辑与、或、非等)和先进的控制运算(PID等)等。功能框图组态环境下一个基本PID回路如图11-17所示。
图11-17 功能框图组态环境下一个基本PID回路
在图11-17中没有看到反馈的存在,但在实际应用中该反馈是存在的。图11-17中的INPUT模块是一个输入采样模块,OUTPUT模块是一个输出控制模块,在实际应用中INPUT与OUTPUT之间存在一个隐含的连接,即INPUT模块用于对OUTPUT模块输出结果进行采样。
图11-17中功能模块下方的标号标示了该模块所在的回路,及该模块在回路中的流水号。如INPUT模块下方的1-2表示该模块在1号回路中,该模块在回路中的流水号为2。上位机在将控制算法整理成传输给控制卡的数据时,会按照回路号由小到大,流水号由小到大的顺序依次整理,而且是以回路为单位逐个回路整理。回路号和流水号不仅在信息传输时需要使用,在控制算法运行时也决定了功能模块被调用的顺序。
上位机下发给控制卡的控制算法包含控制算法的操作信息、回路信息和回路中各功能模块信息。操作信息包含操作类型,如新建、修改和删除;回路信息包含回路个数、回路号和回路中的功能模块个数;功能模块信息包含模块在回路中的流水号、模块功能号和模块中的参数信息。控制卡在接收到该控制算法信息后便将其放入缓冲区,等待本周期的控制算法运行结束后就可以对该控制算法进行解析。
控制算法的解析过程中涉及最多的操作就是内存块的获取、释放,以及链表操作。理解了这两个操作的实现机制就理解了控制算法的解析过程。其中内存块的获取与释放由μC/ OS-Ⅱ的内存管理模块负责,需要时就向相应的内存池申请内存块,释放时就将内存块交还给所属的内存池。一个新建回路的解析过程如图11-18所示。(www.chuimin.cn)
对回路的修改过程与新建过程类似,只是没有申请新的内存块,而是找到原先的内存块,然后用功能模块的参数重新初始化该内存块。对回路的删除操作就是根据回路新建时的链表,依次找到回路中的各个功能模块,然后将其所占用的内存块交还给μC/OS-Ⅱ的内存池,最后将回路头指针清空,标示该回路不再存在。
功能模块对应内存块的初始化操作就是按照该功能模块结构体中变量的位置和顺序对内存块中的相应单元赋予对应的数值。本系统中共有32个功能模块,每个功能模块的结构体由功能模块共有部分和功能模块特有部分组成。以输入模块为例,输入模块的结构体定义如下:
图11-18 一个新建回路的解析过程
每个功能模块都有一个功能号,用于标示该模块的功能和与该模块相对应的功能函数。在执行控制算法运算时,会根据此功能号调用对应的功能函数对各个功能模块进行运算处理。
控制算法的执行以1s为周期,在执行控制算法时,实行先集中运算,将运算结果暂存,再对运算结果集中输出的方式。控制算法的运算即依次执行各个回路,通过对回路头指针的检查,判断该回路是否存在,如果存在则按照回路解析时创建的链表,依次找到该回路中的功能模块,并按照功能模块中的模块功能号找到对应的功能函数,通过调用功能函数对该功能模块进行运算,并将结果暂存到模块的Result中,以便后续模块对该结果的访问。在一条回路执行完毕后,如果该回路需要执行输出操作,则将对应的输出操作加入到输出队列中,等待所有的运算完成后再集中输出。如果检查到回路头指针为空,则表明该回路已经不存在,继续检查下一回路,直至完成对255个控制回路的检查和执行。
有关现场总线及其应用技术的文章
如果再将控制算法信息分为存储信息与运行信息,会造成一定的重复,产生双倍的RAM需求。这要求控制算法运行信息存放的介质兼有数据存储功能,即掉电数据不丢失。所以,μC/OS-Ⅱ内存管理模块的相关信息也必须得到存储。在程序再次运行时,再次加载控制算法就是将备份区中的信息恢复到内存池中和回路头指针中。......
2023-11-22
基金会现场总线,是在过程自动化领域得到广泛支持和具有良好发展前景的技术。屈于用户的压力,这两大集团于1994年9月合并,成立了现场总线基金会,致力于开发出国际上统一的现场总线协议。基金会现场总线分低速H1和高速H2两种通信速率。H1的传输速率为31.25 kbit/s,通信距离可达1900 m,可支持总线供电,支持本质安全防爆环境。H2总线标准也已形成。......
2023-11-22
国际电工技术委员会/国际标准协会自1984年起着手现场总线标准工作,但统一的标准至今仍未完成。同时,世界上许多公司也推出了自己的现场总线技术。上述3种总线于1994年成为并列的欧洲标准EN 50170,其他总线也都形成了各组织的技术规范。FF现场总线正在开发高速以太网,这无疑大大加强了以太网在工业领域的地位。......
2023-11-22
PROFINET运行期方案基于PROFINET部件模型,它制定了一种建立于以太网之上的、开放的、面向对象的通信理念。只要PROFINET对象的印象对外部保持为可视,就允许每种实现。以上充分考虑到PROFIBUS的需求和条件,以保证PROFIBUS和PROFINET之间具有最好的透明性。......
2023-11-20
PROFIBUS是作为德国国家标准DIN19245和欧洲标准EN50170的现场总线,ISO/OSI模型也是它的参考模型。由PROFIBUS-DP、PROFIBUS-FMS和PROFIBUS-PA组成了PROFIBUS系列。PA型的标准目前还处于制定过程之中,其传输技术遵从IEC1158-2标准,可实现总线供电与本质安全防爆。PROFIBUS支持主-从系统、纯主站系统和多主多从混合系统等几种传输方式。按PROFIBUS的通信规范,令牌在主站之间按地址编号顺序,沿上行方向进行传递。PROFIBUS的传输速率为9.6 kbit/s~12 Mbit/s,最大传输距离在9.6 kbit/s时为1200m,1.5 Mbit/s时为200m,可用中继器延长至10km。......
2023-11-22
OPC规范分很多种,每一种规范都针对不同的问题提供对应的解决方案,其中OPC DA规范在OPC各种规范中最为重要。本节只研究OPC数据存取定制接口规范。......
2023-11-22
节省硬件数量与投资由于现场总线系统中分散在设备前端的智能设备能直接执行多种传感、控制、报警和计算功能,因而可减少变送器的数量,不再需要单独的控制器、计算单元等,也不再需要DCS系统的信号调理、转换、隔离技术等功能单元及其复杂接线。......
2023-11-20
PCI总线是由Intel公司提出的。PCI总线不是由ANSI通过的标准,但由于它是由厂家自发制定执行的标准,具有众多的优点,拥护者,执行者众多,成了事实上的标准。PCI总线共有100个引脚,如果只作为目标设备,至少需要47条,如作为主设备则需要49条。本设计使用位命令字,其定义如下:3.PCI总线基本协议PCI上的基本总线传输机制是突发成组传输。......
2023-11-22
相关推荐