9
上海庆惜自动化设备有限公司
FM为功能模块,CP为通信处理器模块。
电源模块总是安装在机架的较左边,CPU模块紧靠电源模块。如果有接口模块,它放在CPU模块的右侧。信号模块和通信处理器模块可以不受限制地插到任何一个槽上,系统可以自动分配模块的地址。每个机架较多只能安装8个信号模块、功能模块或通信处理器模块。如果系统任务需要的这些模块**过8块,则可以增加扩展机架,有的低端CPU没有扩展功能。
各模块上集成有背板总线,通过模块机壳背后的U形总线连接器将总线连成一体,如图4-2所示。除了模块之外,用户所要做的是将模块固定在DIN标准导轨上,导轨是一种专用的金属机架,只需将模块安装在DIN标准的安装导轨上,然后用螺栓锁紧即可。这种结构既可靠又可以满足电磁兼容的要求。
除了带CPU的*机架(CR),较多可以增加3个扩展机架(ER),每个机架可以插CPU模块和IM模块,4个机架较多可以安装32个模块。电源模块总是在1号槽的位置。*机架(0号机架)的2号槽上是CPU模块,3号槽是接口模块。这3个槽号被固定占用,信号模块、功能模块和通信处理器使用4~11号槽。
因为模块是用总线连接器连接的,而不是像其他模块式PLC那样,用焊在背板上的总线插座来安装模块,所以槽号是相对的,在机架导轨上并不存在物理槽位。例如在不需要扩展机架时,*机架上没有接口模块,此时虽然3号槽位仍然被实
际上并不存在的接口模块占用,*机架上的CPU模块和4号槽的模块实际上是相邻的。
如果有扩展机架,接口模块占用3号槽位,负责与其他扩展机架自动地进行数据通信。
如果只需要扩展一个机架,可以使用价格*的IM 365接口模块对,两个接口模块用1m长的固定电缆连接,由于IM 365不能给机架1提供通信总线,机架1上只能安装信号模块,不能安装通信模块和其他智能模块,如图4-3所示。扩展机架的电源由IM 365提供,两个机架的5VDC电源的总电流应在允许值之内。
使用IM 360/361接口模块可以扩展3个机架,*机架使用IM 360,扩展机架使用IM 361,各相邻机架之间的电缆较长为10m,如图4-4所示。每个IM 361需要一个外部24V电源,向扩展机架上的所有模块供电,可以通过电源连接器连接PS 307负载电源。所有的S7-300模块均可以安装在扩展机架上。接口模块是自组态的,*进行地址分配。
S7-300系列PLC共有20种性能档次不同的CPU可供控制使用。从范围广泛的基本功能(指令执行、I/O读写、通过MPI模块或CP模块通信)、集成功能和集成I/O模块,到广泛的通信选项,总有一种CPU可以满足需求。S7-300系列CPU大致分为以下几类。
·紧凑型:CPU 312C、CPU 313C、CPU 313C-2PtP、CPU 312C-2DP、CPU 314C-2PtP、CPU 312C-2DP(带集成的技术功能和I/O,CPU运行时需要微存储器卡)。
西门子S7-300概述
新标准型:CPU 312、CPU 314、CPU 315-2DP(适用于对处理速度中等要求的小规模应用,CPU运行时需要微存储器)。
·户外型:CPU 312IFM、CPU 314IFM、CPU 315-2DP(可在恶劣环境下使用)。
·高端型:CPU 317-2DP、CPU 318-2DP。
·故障安全型:CPU 315F-2DP。
·其他类型:CPU 313、CPU 314、CPU 315、CPU 315-2DP、CPU 316-2DP,为另外5种功能不同的CPU。
S7-300系列的CPU机器时钟时间命令执行时间缩短到原有的1/3或1/4,因而可以降低机器时钟时间和为更高生产率奠定基础。由于采用了更大容量的构架(如大容量的RAM),因此为面向任务的STEP 7工程工具的应用构建了一个平台,例如SCL高级语言和Easy Mo-tion Control(轻松的运动控制)。S7-300系列的CPU采用微型存储器卡(MMC),没有后备电池,因此减少了成本和维护费用。另外,其宽度只有40mm,而不是以前的80mm,这就意味着控制器以及开关柜将更为紧凑。由于提供更强的联网能力,因此允许更多的CPU以及操作员控制和监视设备能连接在一起。作为开放系统,使用由DP V1功能支持的PROFI-BUS,S7-300系列的CPU可以对所连接的第三方系统进行更全面的参数化和诊断。
在指令方面,S7-300的指令集包含普通STEP 5、TISOFT和其他附加指令在内的350多条指令。在所有的程序块中(OB,FC,FB),全部指令均可以使用。
的350多条指令。在所有的程序块中(OB,FC,FB),全部指令均可以使用。S7-300的高性能指令系统可以提供诸如中断处理和诊断信息这样的功能,由于这些功能集成在操作系统中,因此节省了很多RAM空间。
4.1.3 程序设计
使用STEP 7-LITE或STEP 7软件包可以对S7-300进行编程,并可以用简单、用户友好的方式使用S7-300的全部功能。该软件包含了自动化项目中的所有阶段(从项目组态到调试、测试以及服务)的功能。
1.STEP 7-LITE
STEP 7-LITE是一种低成本、高效率的软件,使用SIMATIC S7-300可以完全独立使用。STEP 7-LITE的特点是能非常*地进入编程和简单的项目处理。但STEP 7-LITE不能和辅助的SIMATIC软件包(如工程工具)一起使用。
2.STEP 7
STEP 7可以完成较大或较复杂的应用,例如,使用高级语言或图形化语言进行编程,或需要使用功能以及通信模块。STEP 7与辅助的SIMATIC软件包(例如工程工具)兼容。
3.工程工具
工程工具以用户友好、面向任务的方式对自动化系统进行附加的编程。工程工具提供S7-SCL(结构化语言,一种基于PASCAL的高级语言)、S7-Graph(对顺序控制进行图形组
序控制进行图形组态)、S7-HiGraph(使用状态图对顺序或异步生产过程进行图形化描述)、CFC(连续功能图,通过复杂功能的图形化内部连接生成工艺规划)。
4.1.4 通信
1.全集成自动化
全集成自动化是用单个集成系统就可以完成用户的所有自动化任务。所有的功能部件都集成在一个环境之下。将智能部件移植到I/O系统中,使工厂和机器的结构均采用模块化结构形式设计方案。这种设计方案带来很多好处,比如软件可以重复使用,加快启动速度和提高工作效率。
通信网络是系统内部的一个重要模块,通信网络包括工业以太网(供区域或基层单位联网用的**标准)、PROFIBUS(供基层单位现场使用的**标准)、AS-Interface(与传感器和执行机构进行通信的**标准)、EIB(供楼宇安装系统和楼宇自动化用的**标准)、MPI(多点接口,供CPU、PG/PC以及TD/OP间相互通信使用)、点到点连接(供两个节点之间,以专用的通信协议进行通信。点到点连接是较简单的通信方式,有多种通信协议可以使用,例如RK512、3963及ASCII)。
2.过程或现场通信
过程或现场通信用于将执行机构和传感器连接到CPU。这种连接通过集成在CPU上的接口或接口模块、功能模块和通信模块来实现。另外AS-i接口和PROFIBUS-DP网也支持过程或现场通信。
PROFIBUS-DP网也支持过程或现场通信。
3.数据通信
数据通信是指可编程控制器相互之间的数据传送,或一台可编程控制器与智能设备(PC、计算机等)之间的数据传送。数据通信是由MPI、PROFIBUS或工业以太网完成的。
4.2 S7-400系列PLC
在PLC产品领域,SIMATIC S7-400被设计成生产和过程自动化系统解决方案。S7-400的主要特色为:较高的处理速度、强大的通信性能和**的CPU资源裕量。S7-400可以与SIMATIC组态工具配套使用,从而可以进行高效率的配置和编程,尤其是应用于工程量较大的自动化解决方案中。例如,高级语言SCL和用于顺序控制、状态图和面向工艺的图形组态工具等。S7-400能够保存整个项目数据,包括CPU的符号和说明等,因此,有助于便捷地进行检修和维护。此外,功能强大的集成系统的诊断功能可以增强控制器的实用性并提高其工作效率。为此,增加了可以设置的过程诊断功能,可以据此分析过程问题,从而减少停机时间并进一步促进生产效率。
4.2.1 整体设计
S7-400自动化系统采用模块化设计,系统通常包括:一个*机架、一个电源模块和一个CPU组成,如图4-5所示。它所具有的模块的扩展和配置功能使其能够按照每个不同的需求灵活组合。模板能带电插拔
功能模块(FM):专门用于计数、定位、凸轮控制等任务。
根据用户需要还提供以下部件。
·接口模块(IM):用于连接中央控制单元和扩展单元。SIMATIC S7-400中央控制器较多能连接21个扩展单元。
·SIMATIC S5模块:SIMATIC S5-135/155U,135U和155U的所有I/O模块都可和相应的SIMATIC S5扩展单元一起使用。另外,专用的IP和WF模块可用于S5扩展单元,也可直接用于中央控制器(通过适配器盒)。
如果用户需要比中央控制器更多的功能,S7-400还可以扩展。S7-400较多有21个扩展单元(EU),这21个扩展单元都可以连接到中央控制器(CC)。中央控制器CC和扩展单元EU通过发送IM和接收IM连接。中央控制器可插入较多6个发送IM,每个EU可容纳1个接收IM。每个发送IM有2个接口,每个接口较多可支持4个EU。其扩展方式如图4-6所示,所使用的连接模块和能达到的连接距离如表4-1所示。
S7-400系列PLC有CPU 412-1、CPU 412-2、CPU 414-2、CPU 414-3、CPU 414-4H、CPU 416-2、CPU 416-3、CPU 417-4、CPU 417-4H共9种性能档次不同的CPU可供控制使用。
所有CPU都有一个组合的编程和PROFIBUS-DP接口,即它们在任何时间都可以被OP、编程器/工控机所访问或与各种控制器联网。该接口也可以连接分布式PROFIBUS-DP设备,这意味着,CPU能直接与分布式I/O一起执行。所有的CPU,除基本型CPU 412-1外,都配备PROFIBUS-DP接口,其主要功能是作为连接分布式I/O的接口,也可通过组态,用于与OP或编程器/工控机的通信。高端CPU还有空余的插槽,用于安装PROFIBUS-DP接口模块,以便连接到附加的DP线路。另外,各级CPU之间的一区别是性能范围,例如RAM容量、地址范围、可以连接的模块数量以及指令处理时间。
一台S7-400中央控制器中可以运行多个CPU,多CPU意味着S7-400的整体性能可以被分解。例如控制、计算或通信可以分离并分配给不同的CPU,每个CPU可赋予其本地的I/O。多CPU可使不同的功能彼此分工运行。例如一个CPU可完成实时处理功能,而另一个CPU可完成非实时处理功能。在多CPU模式下
上海庆惜自动化设备有限公司
S7-300/400系列PLC的每种模块都有其特定的所写,如PS为电源模块,CPU为处理器模块,SM为信号模块,IM为接口模块,DM为占位模块,FM为功能模块,CP为通信处理器模块。每个缩写后面一般就是模块的型号,如PS3XX表示S7-300系列PLC的电源模块,PS4XX表示S7-400系列PLC的电源模块,最后两位“XX”为具体型号,通过查阅产品手册可得其具体性能。
另外,S7-300/400系列PLC在放置模块时,有特定的要求,如电源模块总是安装在机架的较左边,CPU模块紧靠电源模块。如果有接口模块,它放在CPU模块的右侧。另需注意的是,S7-300/400系列PLC每个机架上所能容纳的模块数量是有限的,如果一个机架上所容纳的模块数量不够用,可考虑扩展机架。
4.4 思考与练习
1.画图说明S7-300/400系列PLC机架扩展方式。
2.S7-300和S7-400系列PLC都可以用哪几种语言编程?
*5章 S7-300/400系列PLC的硬件组成
本章介绍S7-300/400系列PLC的硬件组成,包括S7-300系列、S7-400系列以及分布式I/O的处理器模块、输入/输出模块及电源模块等常用模块。
5.1 S7-300的硬件组成S7-300系列PLC采用模块化结构,一般由处理器模块(CPU)、负载电源模块(PS)、信号模块(SM)、功能模块(FM)、通信模块(CP)和接口模块(IM)组成。各个模块以搭积木的方式在机架上组成系统,灵活性好,便于维修。
5.1.1 处理器模块
S7-300有多种型号的CPU,CPU内的元件封装在一个紧凑的塑料机壳内,机壳的面板上有状态和故障指示LED、模式选择开关、通信接口、后备电池盒和存储器(MMC)插槽。
下面以CPU 315-2 PN/DP为例对处理器模块进行说明。CPU 315-2 PN/DP面板如图5-1所示。
HOLD(保持)。在所有的模式中,都可以通过MPI接口与其他设备通信。
·S**模式:CPU模块通电后自动进入S**模式,在该模式不执行用户程序,可以接收全局数据和检查系统。
·RUN模式:CPU扫描用户程序,刷新输入和输出,处理中断和故障信息服务。
·STARTUP模式:启动模式,可以用模式选择开关或编程软件启动CPU,如果模式选择开关在RUN或RUN-P位置,则通电时自动进入启动模式。
·HOLD模式:在STARTUP和RUN模式执行程序时遇到调试用的断点,用户程序的执行被挂起(暂停),定时器被冻结。
3.模式选择开关
有的CPU的模式选择开关(模式选择器)是一种钥匙开关,操作时需要插入钥匙,用来设置CPU当前的运行方式。钥匙拔出后,就不能改变操作方式。这样可以防止未经授权的人员非法删除或改写用户程序;还可以使用多级口令来保护整个数据库,使用户有效地保护其技术机密,防止未经允许的复制和修改。钥匙开关各位置的意义如下。
1)RUN-P(运行-编程)位置:CPU不仅执行用户程序,在运行时还可以通过编程软件读出和修改用户程序,以及改变运行方式,在这个位置不能拔出钥匙开关。
2)RUN(运行)位置:CPU执行用户程序,可以通过编程软件读出用户程序,但是不能修改用户程序,在这个位置可以取出钥匙开关。
3)S**(停止)位置:不执行用户程序,通过编程软件可以读出和修改用户程序,在这个位置可以取出钥匙开关。
4)MRES(清除存储器):MRES位置不能保持,在这个位置松手时开关将自动返回S**位置。将模式选择开关从S**状态扳到MRES位置,可以复位存储器,使CPU回到初始状态。工作存储器、RAM装载存储器中的用户程序和地址区被清除,全部存储器、定时器、计数器和数据块均被删除,即复位为零,包括有保持功能的数据。CPU检测硬件,初始化硬件和系统程序的参数,系统参数、CPU和模块的参数被恢复为默认设置,MPI(多点接口)的参数被保留。如果有快闪存储器卡,CPU在复位后将它里面的用户程序和系统参数复制到工作存储区。
存储器卡被取出或插入时,CPU发出系统复位请求,“S**”LED以0.5Hz的频率闪动。此时应将模式选择开关置于MRES位置,执行复位操作。
4.微存储器卡
SIMATIC微存储器卡(MMC)是CPU的存储模块,可以扩展CPU的存储器容量,用于在断电时保存用户程序和某些数据。在使用CPU时总需要MMC。用户程序(所有功能块)、归档和配方、组态数据(STEP 7项目)和操作系统更新及备份数据均可保存在MMC中。如果在写访问过程中拆下SIMATIC微存储器卡,卡中的数据会被破坏。在这种情况下,必须将MMC插入编程器中删除它,或在CPU中格式化存储器卡。只有在断电状态或CPU处于“S**”状态时,才能取下存储器卡。当CPU请求一个存储器复位时(“S**”LED缓慢闪亮),应运用下述开关程序对它进行格式化。
1)将开关置为MRES位置,并保持,直至LED停止闪亮(即大约9秒后一直亮着)。
2)在随后的3秒内,释放开关,并再次切换为MRES位置。“S**”LED闪亮,指示正在进行格式化。
一定要使用规定的操作顺序。否则,MMC就不能进行格式化,而是返回存储器复位状态。只有出于某种特定原因,才能对MMC进行格式化,例如在更换模块后出现存储器复位请求时就不能格式化MMC。在这种情况下,如果切换为MRES状态,只能进行正常的存储器复位操作,同时保留现有MMC数据。
5.通信接口
MPI(Multi Point Interface,多点接口):用于CPU和PG/OP之间的接口,或用于MPI子网中的通信接口。每个CPU都安装有一个RS 485 MPI接口。一般(默认)传输速率为187.5kb/s。如果与S7-200进行通信,也可以*19.2kb/s的传输速率。不能*其他传输速率。在多点接口,CPU可以自动传播其总线参数组态(如波特率)。然后,编程器可以自动检索正确的参数,并连接至一个MPI子网。
PROFIBUS-DP接口:带有DP后缀的CPU配备了PROFIBUS接口(如CPU 315-2 DP)。PROFIBUS-DP接口主要用于连接分布式I/O。使用PROFIBUS-DP可以创建扩展子网,较大传输速率为12 Mb/s。设置主站模式时,CPU会通过PROFIBUS-DP接口传播其总线参数(如传输率),例如,PG可以接收正确的参数并自动连接到PROFIBUS子网。在组态中,可*禁用总线参数传播。
PROFINET(工业以太网)接口:带有PN后缀的CPU配备了PROFINET接口(如CPU 315-2 PN/DP或CPU 319-3 PN/DP)。PROFINET接口或通信处理器可用于在S7-300 CPU系统中实现工业以太网通信。在开放的多供应商通信系统中,工业以太网代表过程和单元级上的SIMATIC网络。然而,PROFINET CPU也支持现场级的实时通信。该结构还支持S7通信。工业以太网适用于高速大容量的数据交换,以及通过网关进行的远程网络操作。PROFINET有PROFINET IO和PROFINET CBA两个版本可用。
PtP(点对点)接口:该接口可以连接安装有串口的设备,例如条码阅读器、打印机等非西门子设备。此时,在全双工模式(RS 422),可以实现传输速率19.2kb/s;在半双工模式(RS 485),可以实现传输速率38.4kb/s。CPU 313C-2 PtP和CPU 314C-2 PtP都安装有一个PtP接口。
ASI(执行器/传感器接口):ASI代表自动化系统中较低过程级别上的子网系统。它专用于联网数字传感器和执行器。较大数据量为每个从站4个位。S7-300 CPU需要用于ASI连接的通信处理器。
电池盒是安装锂电池的盒子,在PLC断电时,锂电池用来**实时钟的正常运行,并可以在RAM中保存用户程序和更多的数据,保存的时间为1年。有的低端CPU(如312IFM与313)因为没有实时钟,没有配备锂电池。
7.电源接线端子
电源模块的L1、N端子接220VAC电源,电源模块的接地端子和M端子一般用短路片短接后接地,机架的导轨也应接地。
电源模块上的L+和M端子分别是24VDC输出电压的正极和负极。使用专用的电源连接器或导线连接电源模块和CPU模块的L+和M端子。
8.实时钟与运行时间计数器
CPU 312 IFM与CPU 313因为没有锂电池,只有软件实时钟,PLC断电时停止计时,恢复供电后,从断电瞬时的时刻开始计时。有后备锂电池的CPU有硬件实时钟,可以在PLC电源断电时继续运行。运行小时计数器的技术范围为0~32767h。
9.CPU模块上的集成I/O
有的CPU模块上有集成的数字量I/O,有的还有集成的模拟量I/O。图5-2为集中在CPU的数字量/模拟量I/O。
紧凑型CPU技术参数如表5-1所示;标准型CPU技术参数如表5-2所示;故障安全型CPU技术参数如表5-3所示;技术功能型CPU技术参数如表5-4所示。
5.1.2 输入/输出模块
输入/输出模块统称为信号模块(SM),包括数字量输入模块和输出模块、模拟量输入模块和输出模块。S7-300的输入/输出模块的外部接线接在插入式的前连接器的端子上,前连接器插在前盖后面的凹槽内。不需断开前连接器上的外部连线,就可以*地更换模块。
1.数字量输入模块
数字量输入模块分为直流输入模块和交流输入模块。S7-300系列PLC的数字量输入模块型号主要有6S7E 321系列和6S7E 131系列,后者主要用于ET 200
S7-300/400系列PLC的指令系统
本章介绍S7-300/400系列PLC的编程语言和存储区,并详细描述S7-300/400系列PLC的梯形图指令系统。PLC的编程语言与一般计算机语言相比,具有明显的特点,它既不同于高级语言,也不同于一般的汇编语言,它既要满足易于编写,又要满足易于调试的要求。目前,还没有一种对各厂家产品都能兼容的编程语言。
S7-300/400系列PLC支持梯形图、语句表(即指令表)和功能块图三种编程语言,本章以比较*理解的梯形图为主,配合实例详细介绍15类梯形图的使用方法。
6.1 S7-300/400的编程语言
STEP 7是S7-300/400系列PLC的编程软件。梯形图、语句表(即指令表)和功能块图是标准的STEP 7软件包配备的3种基本编程语言,这3种语言可以在STEP 7中相互转换。下面主要介绍适合于初学者的梯形图。
6.1.1 编程语言的**标准
S7-300/400的编程语言
STEP 7是S7-300/400系列PLC的编程软件。梯形图、语句表(即指令表)和功能块图是标准的STEP 7软件包配备的3种基本编程语言,这3种语言可以在STEP 7中相互转换。下面主要介绍适合于初学者的梯形图。
6.1.1 编程语言的**标准
IEC(**电工**)是为电子技术的所有领域制定**标准的世界性组织。IEC 61131是PLC的**标准,IEC于1979年成立了IEC 61131工作组,1992~1995年发布了IEC 61131标准,我国参照IEC 61131标准,在1995年11月发布了PLC的国家标准GB/T 15969。该标准基本上采用了IEC 6113l标准的前4部分。
IEC 61131由以下5部分组成。
1)通用信息。
2)设备要求与测试。
3)编程语言。
4)用户指南。
3.功能块图
功能块图(FBD)使用类似于布尔代数的图形逻辑符号来表示控制逻辑。一些复杂的功能(如数学运算功能)用指令框来表示,有数字电路基础的人很*掌握。功能块图用类似于与门、或门的方框来表示逻辑运算关系,方框的左侧为逻辑运算的输入变量,右侧为输出变量,输入、输出端的小圆圈表示“非”运算,方框被“导线”连接在一起,信号自左向右流动。
4.编程语言的相互转换与选用
在STEP 7编程软件中,如果程序块没有错误,并且被正确地划分为网络,在梯形图、功能块图和语句表之间可以转换。用语句表编写的程序不一定能转换为梯形图,不能转换的网络仍然保留语句表的形式,但是并不表示该网络有错误。
语句表可供习惯用汇编语言编程的经验丰富的程序员使用,在运行时间和存储空间方面较优。语句表的输入方便快捷,还可以在每条语句的后面加上注释,便于复杂程序的阅读和理解。在设计通信、数学运算等高级应用程序时建议使用语句表。
梯形图与继电器电路图的表达方式较为相似,适合于熟悉继电器电路的用户使用。语句表程序较难阅读,其中的逻辑关系很难一眼看出,在设计和阅读复杂的触点电路的程序时较好使用梯形图语言。功能块图适合于熟悉数字电路的用户使用S7-300/400的存储区
S7-300/400系列PLC的存储区用于存储系统程序和用户程序。根据使用功能的不同,存储区通常还被分为若干个区域,了解这些区域的作用是进行PLC编程的基础。
6.2.1 数制
1.二进制数
二进制数的1位(bit)只能取0和1这两个不同的值,可以用来表示开关量(或称数字量)的两种不同的状态,例如触点的断开和接通、线圈的通电和断电等。如果该位为1,表示梯形图中对应的位编程元件(例如位存储器M和输出过程映像Q)的线圈“通电”,其常开触点接通,常闭触点断开,以后称该编程元件为1状态,或称该编程元件ON(接通)。如果该位为0,对应的编程元件的线圈和触点的状态与上述的相反,称该编程元件为0状态,或称该编程元件OFF(断开)。二进制常数用2#表示,例如2#1111 0110 1001 000l是16位二进制常数。
2.十六进制数
十六进制的16个数字是0~9和A~F(对应于十进制数10~15),每个数字占二进制数的4位。B#16#、W#16#、DW#16#分别用来表示十六进制字节、字和双字常数,例如W#16#13AF。在数字后面加“H”也可以表示十六进制数,例如16#13AF可以表示为13AFH。
1.基本数据类型
(1)位
位(bit)数据的数据类型为BOOL(布尔)型,在编程软件中BOOL变量的值1和0常用英语单词TURE(真)和FALSE(假)来表示。
位存储单元的地址由字节地址和位地址组成,例如I3.2中的区域标示符“I”表示输入(Input),字节地址为3,位地址为2。这种存取方式称为“字节.位”寻址方式。
(2)字节
8位二进制数组成1个字节(BYTE),其中的*0位为较低位(LSB),*7位为较高位(MSB)。
(3)字
相邻的两个字节组成一个字(WORD),字用来表示无符号数。MWl00是由MBl00和MBl01组成的1个字,MBl00为高位字节。MWl00中的M为区域标示符,W表示字,100为字的起始字节MBl00的地址。字的取值范围为W#16#0000~W#16#FFFF。
(4)双字
两个字组成1个双字(Double Word),双字用来表示无符号数。MDl00是由MBl00~MBl03组成的1个双字,MBl00为高位字节,D表示双字,100为双字的起始字节MB100的地址。双字的取值范围为DW#16#0000 0000~DW#16#FFFF FFFF。
(5)16位整数
整数(Integer,INT)是有符号整数,其较高位为符号位,较高位为0时为正数,为1时为负数,取值范围为-32768~32767。用补码来表示,正数的补码就是它的本身,将一个正数对应的二进制数的各位求反后加1,可以得到**值与它相同的负数的补码。
(6)32位整数
32位整数(Double Integer,DINT)的较高位为符号位,取值范围为-2147483648~2147483647。
(7)32位浮点数浮点数又称实数(REAL),浮点数可以表示为1.m×2E,例如123.4可表示为1.234×102。符合ANSI/IEEE标准754_1985的基本格式的浮点数可表示为:
浮点数=1.m×2E
式中,指数e=E+127(1≤e≤254),为8位整数。
ANSI/IEEE标准浮点数共占用一个双字(32位)。较高位(*31位)为浮点数的符号位,较高位为0时为正数,为1时为负数;8位指数占23~30位;因为规定尾数的整数部分总是为1,只保留了尾数的小数部分m(0~22位)。浮点数的表示范围为±1.175495×10-38~±3.402823×1038。
浮点数的优点是用很小的存储空间(4B)可以表示非常大和非常小的数。PLC输入和输出的数值大多是整数(例如模拟量输入值和模拟量输出值),用浮点数来处理这些数据需要进行整数和浮点数之间的相互转换,浮点数的运算速度比整数运算速度慢得多。
(8)常数的表示方法
常数值可以是字节、字或双字,CPU以二进制方式存储常数,常数也可以用十进制、十六进制ASCII码或浮点数形式来表示。
B#16#、W#16#、DW#16#分别用来表示十六进制字节、字和双字常数。2#用来表示二进制常数,例如2#11011010。
1.装载存储器
装载存储器可能是RAM和FEPROM,用于保存不包含符号地址和注释的用户程序和系统数据(组态、连接和模块参数等)。有的CPU有集成的装载存储器,有的可以用微存储卡(MMC)扩展,CPU 3lxC的用户程序只能装入插入式的MMC。
断电时数据保存在MMC存储器中,因此数据块的内容基本上被*保留。
下载程序时,用户程序(逻辑块和数据块)被下载到CPU的装载存储器,CPU把可执行部分复制到工作存储器,符号表和注释保存在编程设备中。
2.工作存储器
它是集成的高速存取的RAM存储器,用于存储CPU运行时的用户程序和数据,例如组织块、功能块、功能和数据块。为了**程序执行的快速性和不过多地占用工作存储器,只有与程序执行有关的块被装入工作存储器。
STL程序中的数据块可以被标识为“与执行无关”(UNLINKED),它们只是存储在装载存储器中。有必要时可以用SFC 20“BLKMOV”将它们复制到工作存储器。复位CPU的存储器时,RAM中的程序被清除,FEPROM中的程序不会被清除。
3.系统存储器
系统存储器是CPU为用户程序提供的存储器组件,划分为若干个地址区域。使用指令可以在相应的地址区内对数据直接进行寻址。系统存储器为不能扩展的RAM,用于存放用户程序的操作数据,例如过程映像输入、过程映像输出、位存储器、定时器和计数器、块堆栈(B堆栈)、中断堆栈(I堆栈)和诊断缓冲区等。
系统存储器还提供临时存储器(局域数据堆栈,即L堆栈),用来调用存储程序块时的临时数据。访问局域数据比访问数据块中的数据更快。用户生成块时,可以声明临时变量(TEMP),它们只在执行该块时有效,执行完后就被覆盖了。
4.外设I/O存储区
通过外设I/O存储区(PI和PQ),用户可以不经过过程映像输入和过程映像输出,直接访问输入模块和输出模块。不能以位为单位访问外设I/O存储区,只能以字节、字和双字为单位访问。
6.2.4 系统存储器
S7 CPU的系统存储区域分为表6-1中列出的地址区域。在程序中可以根据相应的地址直接读取数据。
与直接访问I/O模块相比,访问过程映像表可以**在整个程序周期内,过程映像的状态始终一致。即使在程序执行过程中接在输入模块的外部信号状态发生了变化,过程映像表中的信号状态仍然保持不变,直到下一个循环被刷新。由于过程映像保存在CPU的系统存储器中,访问速度比直接访问信号模块快得多。
输入过程映像在用户程序中的标识符为I,是PLC接收外部输入的数字量信号的窗口。输入端可以外接常开触点或常闭触点,也可以接多个触点组成的串并联电路。PLC将外部电路的通/断状态读入并存储在输入过程映像中,外部输入电路接通时,对应的输入过程映像为ON(1状态);反之为OFF(0状态)。在梯形图中,可以多次使用I的常开触点和常闭触点。
输出过程映像在用户程序中的标识符为Q,在循环周期开始时,CPU将输出过程映像的数据传送给输出模块,再由后者驱动外部负载。如果梯形图中Q0.0的线圈“通电”,继电器输出模块中对应的硬件继电器的常开触点闭合,使接在Q0.0对应的输出端子的外部负载工作。输出模块中的每一个硬件继电器仅有一对常开触点,但是在梯形图中,可以多次使用输出位的常开触点和常闭触点。
除了操作系统对过程映像的自动刷新外,S7-400 CPU可以将过程映像划分为较多15个区段,这意味着如果需要,可以独立循环,刷新过程映像表的某些区段,用STEP 7*的过程映像区段中的每一个I/O地址不再属于OBl过程映像输入/输出表。需要定义哪些I/O模块地址属于哪些过程映像区段。
可以在用户程序中用SFC(系统功能)刷新过程映像。SFC 26“UPDAT_PI”用来刷新整个或部分过程映像输入表,SFC 27“UPDAT_PO”用来刷新整个或部分过程映像输出表。
某些CPU也可以调用OB(组织块)由系统自动地对*的过程映像分区刷新。
2.内部存储器标志位存储器区
内部存储器标志位(M)用来保存控制逻辑的中间操作状态或其他控制信息。虽然名为“位存储器区”,表示按位存取,但是也可以按字节、字或双字来存取。
3.定时器存储器区
定时器(T)相当于继电器系统中的时间继电器。给定时器分配的字用于存储时间基值和时间值(0~999)。时间值可以用二进制或BCD码方式读取。
4.计数器存储器区