产品描述
西门子6ES7368-3CB01-0AA0产品齐全
请问PID控制中,当输出出范围后执行 MX = 1.0 - (MPn + MDn ) 和MX = - (MPn + MDn),这两条算法的作用是什么呢?”
答:这两个公式用来对PID的输出限幅。S7-200的系统手册的PID“变量和范围”中有下面的内容:
“输出变量是由PID运算产生的,所以在每一次PID运算完成之后,需新回路表中的输出值,输出值被限定在0.0~1.0之间。
如果使用积分控制,积分项前值要根据PID运算结果新。这个新了的值用作下一次PID运算的输入,当计算输出值过范围(大于1.0或小于0.0),那么积分项前值根据下列公式进行调整:
MX=1.0 –(MPn + MDn) 当计算输出Mn > 1.0
或
MX= –(MPn + MDn) 当计算输出Mn < 0.0
其中:
MX是调整过的偏差的数值
MPn是在采样时间n时回路输出比例项数值
MDn是在采样时间n时回路输出微分项数值
Mn是在采样时间n时回路输出数值”
在系统手册的积分项部分,对积分项公式中的MX的解释如下:“MX是在采样时刻n–1时的积分项的数值(也称为积分和或偏差)。”
“积分和(MX)是所有积分项前值之和。在每次计算出MIn之后,都要用MIn去新MX。”
可见可以将MX视为PID的输出的积分部分MIn。PID的输出Mn= MPn + MIn + MDn= MPn + MX + MDn
上面的两个公式实际上是用来对PID的输出限幅的。
当Mn > 1.0时,令Mn = MPn + MX + MDn= 1.0,所以MX=1.0 –(MPn + MDn
1. 西门子PLC编程软件
西门子公司针对SIMATIC系列PLC提供了很多种的编程软件,主要有STEP MICRO/DOS和STEP MICRO/WIN;STEP mini;标准软件包STEP7
S7系列的PLC的编程语言非常丰富,有LAD、STL、SCL、GRAPH、HIGRAPH、CFC等。用户可以选择一种语言编程,如果需要,也可以混合使用几种语言编程。
2. 程序结构
程序结构主要适用与S7-3000和S7-400,他有线性编程、分步式编程和结构化编程等3种编程方法。
FPI系列可编程控制器是日本松下电工公司的小型PLC产品。
FPI编程软件及指令系统
1.编程方式
NPST-提供了3种编程方式:梯形图方式;语句表方式和语句表达方式。
2.注释功能
NPST-可以为I/O继电器和输出点加入注释,使用户对继电器所对应的设备及继电器的用途一目了然。
3.程序检查
NPST-能查找程序中语法的错误和进行程序校验
4.监控
NPST-能监控用户编制的程序,并可以进行运行测试。用户可以检查继电器、寄存器和PLC工作状态,方便的进行调试与修改。
5.系统寄存器设置
NPST-可设置N0.0-N0.418系统寄存器的内容,根据屏幕的提示信息进行选择或输入,简单方便。
6.I/O和远程I/O地址分配
用NPST-可以为主机扩展板上每个槽分配I/O和远程I/O地址
7.数据管理
数据管理可以将程序或数据存盘,用于数据备份,或在传入PLC之前暂存数据
两者在编程的应用上还有就是西门子的是单母线,而日本松下的是双母线;
还有就是西门子和日本松下的输入和输出也不同的,松下的输入就只有X,输出就只有Y。
其实语言是相通的,就是方法不同,两个可以相互转换。
(1)启动的允许与启动时对 ...
打开该设定对象,显示窗分为“启动的允许与启动时对输出的处理”、“电源接通时的启动方式( Startup after Power On)”、“监控时间设定(Monitoring Time for)”三个区域(参见图14-2.3)。
(1)启动的允许与启动时对输出的处理设定
该区有如下三个选项:
配置的硬件与实际硬件不同时的启动( Startup when expected/actual configuration differ):可以选择如果STEP7中配置的硬件与实际安装不符,是否需要进行启动,当选中该选项后,出现以上情况同样可以进行启动。
热启动时输出( Reset outputs hot restart):可以选择在PLC热启动时是否将输出状态,当选中该选项后,热启动时将输出状态。
禁止操作员或通信方式的热启动( Disable hot restart by operator or communication job):通过选择选项,可以禁止用编程器或MPI接口通信等方式对PLC的热启动。
(2)电源接通时的启动方式(Startup after Power On)设定
该区有如下三个选项:
选项“Hot restart”:用于选择“热启动”方式;
选项“Warm restart”:用于选择“暖启动”方式;
选项“Clod restart”:用于选择“冷启动”方式。
热启动( Hot restart)、暖启动(Warm restart)、冷启动(Clod restart)为S7系列PLC根据EN61131标准定义的、在PLC-CPU重新启动时(如将CPU的工作模式开关从STOP转到RUN或接通电源)
的三种新的启动方式名称。在S7系列PLC中,三种启动方式的启动过程与区别如下:
热启动( Hot restart):在PLC-CPU重新启动时,执行主循环OB1前,处理组织块OB101。启动时全部CPU数据均被备份,所有数据区(包括定时器、计数器、标志寄存器等,不分保持区与非保持区)的内容全部被保留。
暖启动(Warm restart):在PLC-CPU重新启动时,执行主循环OB1前,处理组织块OB100。启动时全部PLC数据块(DB)的内容保留;保持型定时器、计数器、标志寄存器的内容保持不变;非保持区的定时器、计数器、标志寄存器内容被。
冷启动(Clod restart):在PLC-CPU重新启动时,执行主循环OB1前,处理组织块08102。启动时全部PLC数据块(DB)的内容被,并重新从装载存储器(Load Memory)输入原始设定值;CPU的全部定时器、计数器、标志寄存器的内容均被(不分保持区与非保持区)。
(3)监控时间设定(Monitoring Time for)设定
该区有如下三个选项:
模块检测完成时间(“Finished”message by modules):用于设定“模块配置检测完成”信号的回答时间,当过该时间未接收到完成信号时,视为实际硬件配置与STEP7配置不符。该时间设定单位为lOOms,默认设定为650。
参数传送到模块的时间( Transfer of bbbbbeters to modules):用于设定CPU中的参数传送到各模块的大允许时间,时间设定单位为lOOms,默认设定为100。对于有PROFIBUS-DP主站接口的CPU,可以通过本参数来检测从站的启动情况。同样当过本设定时间后尚未完成参数的传送,视为实际硬件配置与STEP7配置不符。
热启动时间(Hot restart):用于设定CPU的热启动时间,本参数只有在选择热启动方式时才能进行设定。
面向多项目的网络视图提供了多项目中所有站的概况,及这些站与各个子网的连接。
跨项目子网只显示在该视图的相关部分(例如子网)。所显示的跨项目子网的名称就是子网组的名称。
用户可打印面向多项目的网络视图,并可从该视图下载内容到所有的站。然而,在该视图中无法编辑或保存项目。
要求
· 该功能只能从多项目中的某个项目启动。
· 对多项目中的项目所作的所有改变都保存。必要时,将提示用户执行保存操作。
· 多项目中的所有项目都是可访问的(这与分布式项目相关)。
· 多项目中的项目不得设置写保护(只读)。
· 在已打开的项目(面向多项目的网络视图意欲从中启动)中不必任何连接状态。
步骤
1. 在网络视图中,使用视图 > 面向多项目的网络视图菜单命令选择一个项目。
之后,使用一个复选框菜单命令。
2. 按照用户的意愿放置对象。也可打印出面向多项目的网络视图。
3. 从该视图中,可下载内容到多项目中的所有站(命令:PLC > 下载...)
4. 为返回到项目的"正常"网络视图,可选择视图 > 面向多项目的网络视图菜单命令。
当关闭项目时,对象的所有位置也都将自动保存。
面向多项目的网络视图的属性
· 当某个项目调用该功能之后,所有的对象均将重新排列。可改变对象的位置。如果取消面向多项目的网络视图,并且多项目中的另一个项目中再次对其进行调用,则对象将按同样的排列再次显示。
· 面向多项目的网络视图的特性,例如缩放因子、子网长度(缩短或不缩短)、有或没有DP从站/IO设备等等,都由调用面向多项目的网络视图的项目决定。
· 当面向多项目的网络视图时,不能对项目进行任何改变。然而,可触发跨项目的一致性测试。因此,不能在面向多项目的网络视图中使用保存命令(网络 > 保存)。如果真的选择了网络 > 保存编译菜单命令,则仅能编译网络组态。
· 在面向多项目的网络视图中,可将组态下载到多项目中的所有站。
· 一次只能打开一个面向多项目的网络视图。如果另一个STEP 7用户试图从另一个项目中启动面向多项目的网络视图,该动作将被取消,并显示一条出错消息。
我接触到很多**,他们都说S7-300/400的语句表(即指令表)语言难学,近在西门子的S7-300/400论坛上,看到有网友感叹“语句表好难学啊!”。 梯形图为什么好学?其原因很简单,梯形图来源于继电器电路图,以触点和线圈为主,因此熟悉继电器控制的电气人员感觉很学。
1.语句表非学不可
1)语句表的指令比梯形图多,只有语句表才有下列指令:定时器/计数器的FR指令、与地址寄存器、累加器、状态字、数据块有关的大量指令,循环指令(LOOP)和部分跳转指令,块结束指令等。
2)语句表的功能比梯形图强,例如循环程序和间接寻址等只能用语句表来编程。
3)实际的控制程序(特别是老外编的程序)几乎都有语句表编写的逻辑块。但是语句表程序一般不能用STEP 7转换为梯形图。不能转换的程序段仍然用语句表表示。
因此在实际工作中语句表是很难回避的,要想学好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)充分利用STEP 7的在线帮助功能,用鼠标选中用户程序中的某条指令,按〈F1〉键就可以打开该指令的在线帮助,看到指令的详细使用方法,例如指令的功能描述,指令的输入/输出参数的数据类型、允许使用的存储区和参数的意义,指令的执行对状态字的影响,以及指令应用的实例等。
产品推荐