通过 STEP 7 的工具“Hardware Configuration”以及安装的选件包 S7-400H,可对包括 CPU在内的 S7-400H 的特性与行为进行参数化,例如:
多点接口 (MPI):
定义节点地址。
启动/循环行为。
定义大循环时间和通讯负荷。
地址分配:
I/O 模块的编址。保持区域:
定义保持性位存储器、计数器、定时器和时钟存储器。保护级:
定义程序和数据访问授权。系统诊断:
定义诊断报文的处理及范围。监控器中断:
设定周期。组态 H 站。
①输入信号I:输入信号用英文字母I标记,它是指与PLC输入端连接的来自外部设备的外部输入信号。在PLC程序中,一般是使用“输入映像”寄存器中的数据,其内容在一个PLC循环周期内保持不变。
②输出信号Q:输入信号用英文字母Q标记,它是指与PLC输出端连接的用于控制外部设备的外部输出信号,PLC的输出信号送给输出模块,并通过不同的驱动形式驱动外部负载。在PLC程序中,一般使用“输出映像”寄存器中的数据。输出映像寄存器中的内容可以随着程序的执行不断改变(在多重线圈编程时),但终PLC输出的状态总是程序后的处理结果,因此,对外部来说它也是唯一的。 ③直接输入/输出PI/PQ(仅S7-300/400):直接输入/输出是在PLC程序中不受PLC循环扫描约束,进行直接采样的输入与直接刷新的输出信号。通过直接输入/输出,可以在PLC程序中不受PLC循环时间的限制,直接对PLC的输入/输出信号进行读/写。
在直接输入的情况下,PLC程序不再使用输入映像寄存器中的值,而是直接读入当前的瞬时值,而且,PLC执行了直接输入后,并不会影响“输入映像”寄存器中原来的值。在直接输出的情况下,PLC程序不再使用输出映像寄存器中的值,而是直接输出当前的瞬时值,而且,PLC执行了直接输出后,“输出映像”寄存器中的值立即发生变化。
直接输入/输出的表示方法在S7-200与S7-300/400中有所不同。对于S7-200,使用时只需要在指令代码后增加“I”,如LD变成LDI即可。对于S7-300/400PLC,不可以在PLC程序中直接以“二进制位”的形式,对PLC的输入/输出信号进行读/写,只能以字节PIB/PQB、字PIW/PQW或双字PID/PQD的形式进行。
④模拟量输入/输出AI/AQ:模拟量输入/输出只能以“字”的形式指定,不可以使用二进制位的形式进行编程,模拟量输入/输出的地址只能为AIW**/AQW**。模拟量输入/输出的内容直接保存在PLC的模拟量输入/输出模块中,而不是存放在CPU的RAM中,因此,模拟量输入/输出的实质上也是一种对输入/输出的直接读入与输出。
接触到很多同行,他们都说S7-300/400的语句表(即指令表)语言难学,近在西门子的S7-300/400论坛上,看到有网友感叹“语句表好难学啊!”。 梯形图为什么好学?其原因很简单,梯形图来源于继电器电路图,以触点和线圈为主,因此熟悉继电器控制的电气人员感觉很容易学。
1.语句表非学不可
1)语句表的指令比梯形图多,只有语句表才有下列指令:定时器/计数器的FR指令、与地址寄存器、累加器、状态字、数据块有关的大量指令,循环指令(LOOP)和部分跳转指令,块结束指令等。
2)语句表的功能比梯形图更强,例如循环程序和间接寻址等只能用语句表来编程。
3)实际的控制程序(特别是老外编的程序)几乎都有语句表编写的逻辑块。但是语句表程序一般不能用STEP7完全转换为梯形图。不能转换的程序段仍然用语句表表示。
因此在实际工作中语句表是很难回避的,要想学好S7-300/400,必须学好语句表。
2.语句表为什么难学?
1)语句表语言有点类似于Inbbb的51系列单片机的汇编语言,比如它们都有累加器、状态字和地址寄存器等,梯形图并不使用累加器和地址寄存器。
2)语句表程序几乎所有的操作都是在累加器中完成的,因此需要用大量的装入(L)指令来将数据装入累加器,用传送(T)指令来将运算结果从累加器传送到目的地址。比较一下S7-300和S7-200的循环程序,就会发现前者的要复杂得多。
梯形图只需要一条MOVE指令,不需要累加器就可以任意传送数据。
2)S7-300/400的间接寻址比其他PLC的间接寻址复杂得多,只有语句表有间接寻址功能,这也是语句表难学的原因之一。
3.学好语句表的几点建议
1)首先要打牢基础,掌握必备的计算机基础知识,例如二进制数、十六进制数、BCD码、补码、各种数据类型、参数类型、累加器、状态字、地址寄存器、各种寻址方式等的基本概念和应用。
如果在学校学过汇编语言,对学习语句表语言会有好处。有人建议为了学语句表去学汇编语言,我认为倒没有这个必要。
2)多用多练,在实践中学。PLC和计算机的语言就像外语一样,一定要多用多练,主要靠读程序、编程序和调试程序来学习。初学的时候可以找一本好的教材,阅读教材中有大量注释的语句表程序。在此基础上,可以阅读生产中的实用程序。好能自己编一些程序,然后用仿真软件来调试程序。
3)充分利用STEP7的在线帮助功能,用鼠标选中用户程序中的某条指令,按〈F1〉键就可以打开该指令的在线帮助,看到指令的详细使用方法,例如指令的功能描述,指令的输入/输出参数的数据类型、允许使用的存储区和参数的意义,指令的执行对状态字的影响,以及指令应用的实例等。主要性能选择(1)精度等级的选择: ① 一般测量用压力表、膜盒压力表和膜片压力表,应选用 1.5 级或 2.5 级。 ② 精密测量用压力表,应选用0.4 级、0.25 级或 0.16 级。 (2)外形尺寸的选择: ① 在管道和设备上安装的压力表,表盘直径为中Ф100mm 或Ф150mm。 ② 在仪表气动管路及其辅助设备上安装的压力表,表盘直径为 Ф60mm。 ③安装在照度较低、位置较高或示值不易观测场合的压力表,表盘直径 为Ф150mm 或Ф200mm。 (3)测量范围的选择: ①测量稳定的压力时,正常操作压力值应在仪表测量范围上限值的 1/3 ~2/3。 ②测量脉动压力(如:泵、压缩机和风机等出口处压力)时,正常操作 压力值应在仪表测量范围上限值的 1/3~1/2。 ③测量高、中压力(大于 4MPa)时,正常操作压力值不应超过仪表测 量范围上限值的 1/2。 4.2.4 变送器的选择(1)以标准信号传输时,应选用变送器。 (2)易燃、易爆场合,应选用气动变送器或防爆型电动变送器。(3)结晶、结疤、堵塞、黏稠及腐蚀性介质,应选用法兰式变送器。与 介质直接接触的材质,必须根据介质的特性选择。(4)对于测度要求高,而一般模拟仪表难以达到时,宜选用智能 式变送器,其度优于 0.2 级以上。当测量点位置不宜接近或环境条件恶劣时,也宜选用智能式变送器。 (5)使用环境较好、测量精度和可靠性要求不高的场合,可以选用电阻式、电感式远传压力表或霍尔压力变送器。