| |
---|---|
(点击题目可以在互联网中搜索该题目的相关内容) 日期:2007-8-28 21:12:12 来源: 作者: 点击: | |
PLC与其它控制系统的不同,主要就在CPU模块上。而开放式PLC与普通PLC的区别,也主要体现在CPU模块上。许多人认为,PLC就是微型或小型的DCS,或者将工控机的物理结构改变一下就是PLC。这是大错而特错的。PLC之所以能够经历这么多年而长盛不衰,就是因为它的独特的CPU模块的机构和内部程序的运行方式。 1 CPU 程序扫描周期 1.1 CPU的内部结构 不同阶段的开放式PLC的CPU的配置和结构都不尽相同,但它们还是有共性的。所有的OpenPLC的CPU模块的内部结构可以列举如下: [color=#FF0000]图3.1 CPU模块的内部结构[/color] CPU的功能是命令并统治整个PLC系统的活动。这是通过对系统程序的解释和执行来进行的。这个系统程序通常称为执行程序或应用程序,也叫FIRMWARE或固件。执行程序是由一组程序构成的,永久储存在CPU内部,并视作是CPU本身的一部分。该程序执行,使CPU可以进行控制、处理、通讯、和其它的内部管理功能。OpenPLC与其它的PC-based控制系统、专用控制器、各类嵌入式控制系统、DCS系统的不同,就在于FIRMWARE的独特性。 执行程序也负责CPU和编程器件的通讯,同样也支持其他外部设备的通讯,如现场器件的监控;电源的诊断信息,I/O模块的信息,和内存信息等,以及与操作员界面的通讯。 CPU模块的核心是处理器(MPU),处理器硬件是用来处理数字算法和逻辑功能的。CPU模块的核心是微处理器芯片,称为MPU。MPU内部包括几种类型的寄存器,用来存放信息,这些信息是执行程序是要用到的。这些寄存器包括: 累加器 存放MPU要处理的数据字,PLC的编程语言通常只允许直接使用一到两种累加器。累加器的位数是有CPU可处理的最大位数决定的。OpenPLC的累加器有16位和32位的。 状态寄存器 存放MPU所处理的数据所影响的状态位。有些PLC将这些状态寄存器的位直接拷贝到可寻址内存中,这样用户程序可以直接对其进行访问。PLC的程序员可以使用的状态位包括: 零状态位:最新处理的数据为零时,该位置1。 符号位:表示最近所处理的数据的最高位(MSB)的状态。 CARRY BIT:如果最新处理的数据产生的位数超出MPU的处理能力(因此结果不正确),则置为1。 溢出位:如果一个最大的数的结果的最高位从0变为1,或者一个最小数的结果的标志位从1变为0,表示数据溢出。 逻辑操作位(RLO):作为复杂布尔逻辑的每一步的运算的结果。 图3.2 MPU的数据处理模型 地址寄存器 MPU用地址寄存器作为目前正在使用的内存的起始地址,包括用户程序的内存区域和各种可寻址内存区域。 MPU的功能是接收、分析、处理和传送数据,处理器的数据模型如下图: MPU的能力通常由两个指标判定:位数和时钟速度。位数目前有8-,16-,32-,也有64位的。时钟从1MHZ到300MHZ,大部分PLC是8位和4M的,有一些是16位和33MHZ的。OpenPLC采用的比较多的是INTEL的处理器,INTEL的各种MPU的能力如下: Micro-Processor Bit Size(bit) Clock Speed(MHz) 8085 8 1 8086 16 4.77 80186 16 8 80286 16 12.5 80386 32 33 80486 32 50 Pentium 32/64 200 图中的CONTROL SECTION是处理器的心脏,由控制单元、算法逻辑单元和一些临时寄存器组成,控制SECTION决定了操作的功能、顺序和运行时间。 输入扫描区将扫描输入区的状态并将单个的输入状态放在RAM中,分析后,逻辑扫描功能(通过梯形图程序)将输出扫描区更新为合适的值,然后,输出将被扫描,并更新。输出的状态根据逻辑分析的结构确定是改变或保留,输出状态取决于CPU的输出状态信号。 本新闻共2页,当前在第1页1 2
|
|
上一篇: READ_RTC/SET_RTC 上下班工作电铃定时控制 下一篇: OpenPLC常见的数据类型与寻址方式 |