plc编程死区 高手总结的西门子PLC的60个常见问题,都知道的一定是老师傅!

小编 115 0

高手总结的西门子PLC的60个常见问题,都知道的一定是老师傅!

1:Step7 Micro/WIN V4.0安装在什么环境下才能正常工作?

Step7 Micro/WIN V4.0的安装、运行环境为:

Windows 2000 SP3以上

Windows XP Home

Windows XP Professional

西门子没有在其他操作系统下测试,不保证能够使用。

2:Step7 Micro/WIN V4.0和其他的版本兼容性如何?

Micro/WIN V4.0生成的项目文件,旧版本的Micro/WIN不能打开或上载。

3:siemens200 PLC硬件版本有什么区别?

二代S7-200(CPU22x)系列也分几个主要的硬件版本。

6ES721x-xxx21-xxxx是21版;6ES721x-xxx22-xxxx是22版。

22版与21版相比,硬件、软件都有改进。22版向下兼容21版的功能。

22版与21的主要区别是:

21版CPU的自由口通讯速率300、600被22版的57600、115200所取代,22版不再支持300和600波特率 ,22版不再有智能模块位置的限制

4:plc的电源改如何连接?

在给CPU进行供电接线时,一定要特别小心分清是哪一种供电方式,如果把220VAC接到24VDC供电的CPU上,或者不小心接到24VDC传感器输出电源上,都会造成CPU的损坏。

5:200PLC的处理器是多少位的?

S7-200 CPU的中央处理芯片数据长度为32位。从CPU累加器AC0/AC1/AC2/AC3的数据长度也可以看出。

6:如何进行S7-200的电源需求与计算?

S7-200 CPU模块提供5VDC和24VDC电源:

当有扩展模块时CPU通过I/O总线为其提供5V电源,所有扩展模块的5V电源消耗之和不能超过该CPU提供的电源额定。若不够用不能外接5V电源。

每个CPU都有一个24VDC传感器电源,它为本机输入点和扩展模块输入点及扩展模块继电器线圈提供24VDC。如果电源要求超出了CPU模块的电源定额,你可以增加一个外部24VDC电源来提供给扩展模块。

所谓电源计算,就是用CPU所能提供的电源容量,减去各模块所需要的电源消耗量。

注意:

EM277模块本身不需要24VDC电源,这个电源是专供通讯端口用的。24VDC电源需求取决于通讯端口上的负载大小。

CPU上的通讯口,可以连接PC/PPI电缆和TD 200并为它们供电,此电源消耗已经不必再纳入计算。

7:200PLC能在零下20度工作吗?

S7-200的工作环境要求为:

0°C-55°C,水平安装

0°C-45°C,垂直安装

相对湿度95%,不结露

西门子还提供S7-200的宽温度范围产品(SIPLUS S7-200):

工作温度范围:-25°C-+70°C

相对湿度:55°C时98%,70°C时45%

其他参数与普通S7-200产品相同

S7-200的宽温型产品,每种都有其单独的订货号,可以到SIPLUS产品主页查询。如果没有找到,则说明目前没有对应的SIPLUS产品。

文本和图形显示面板没有宽温型产品。

还要注意国内没有现货,如需要请和当地西门子办事处或经销商联系。

8:数字量输入/输出(DI/DO)响应速度有多快?能作高速输入和输出吗?

S7-200在CPU单元上设有硬件电路(芯片等)处理高速数字量I/O,如高速计数器(输入)、高速脉冲输出。这些硬件电路在用户程序的控制下工作,可以达到很高的频率;但点数受到硬件资源的限制。

S7-200 CPU按照以下机制循环工作:

读取输入点的状态到输入映像区

执行用户程序,进行逻辑运算,得到输出信号的新状态

将输出信号写入到输出映像区

只要CPU处于运行状态,上述步骤就周而复始地执行。在第二步中,CPU也执行通讯、自检等工作。

上述三个步骤是S7-200 CPU的软件处理过程,可以认为就是程序扫描时间。

实际上,S7-200对数字量的处理速度受到以下几个因素的限制:

输入硬件延时(从输入信号状态改变的那一刻开始,到CPU刷新输入映像区时能够识别其改变的时间)

CPU的内部处理时间,包括:

读取输入点的状态到输入映像区

执行用户程序,进行逻辑运算,得到输出信号的新状态

将输出信号写入到输出映像区

输出硬件延时(从输出缓冲区状态改变到输出点真实电平改变的时间)

上述A,B,C三段时间,就是限制PLC处理数字量响应速度的主要因素。

一个实际的系统可能还需要考虑输入、输出器件的延时,如输出点外接的中间继电器动作时间等

以上数据都在《S7-200系统手册》中标明,这里只是列表比较。CPU上的部分输入点延时(滤波)时间可以在编程软件Micro/WIN的“系统块”中设置,其缺省的滤波时间是6.4ms。

如果把容易受到干扰的信号接到CPU上可改变滤波时间的DI点上,调整滤波时间可能改善信号检测的质量。

支持高速计数器功能的输入点在相应功能开通时不受此滤波时间约束。滤波设置对输入映像区的刷新、开关量输入中断、脉冲捕捉功能同样有效。

有些输出点要比其他点更快些,是因为它们可以用于高速输出功能,在硬件上有特殊设计。没有专门使用硬件高速输出功能时,它们只是和普通点一样处理

继电器输出开关频率为1Hz。

9:S7-200处理快速响应信号的对策有那些?

使用CPU内置的高速计数器和高速脉冲发生器处理序列脉冲信号

使用部分CPU数字量输入点的硬件中断功能,在中断服务程序中处理;进入中断的延时可以忽略

S7-200拥有“直接读输入”和“直接写输出”指令,可以越过程序扫描周期的时间限制

使用部分CPU数字量输入点的“脉冲捕捉”功能捕捉短暂的脉冲

注意: S7-200系统中最小周期的定时任务为1ms。

所有实现快速信号处理的措施,都要考虑所有限制因素的影响。例如,为一个需要毫秒级响应速度的信号选择500μs输出延时的硬件,显然是不合理的。

10:S7-200程序扫描时间和程序大小有关系吗?

程序扫描时间与用户程序的大小成正比。

《S7-200系统手册》中有每个指令所需执行时间的数据。实际上很难事先预先精确计算出程序扫描时间,特别是还没有开始编程序时。

可以看出,常规的PLC处理模式不适合时间响应要求高的数字量信号。可能需要根据具体任务采用一些特别的方法。

11:CPU224 XP高速脉冲输出最快能达到多少?

CPU224 XP的高速脉冲输出Q0.0和Q0.1支持高达100KHz的频率。

Q0.0和Q0.1支持5 - 24VDC输出。但是它们必须和Q0.2 - Q0.4一起成组输出相同的电压。高速输出只能用在CPU224 XP DC/DC/DC型号

12:CPU 224 XP本体上的模拟量输入也是高速响应的吗?

它的响应速度是250ms,不同于模拟量扩展模块的数据。CPU 224 XP本体上的模拟量I/O芯片与模拟量模块所用的不同,应用的转换原理不同,因此精度和速度不一样。

13:CPU 224 XP后面挂的模拟量模块的地址如何分配?

S7-200的模拟量I/O地址总是以2个通道/模块的规律增加。所以CPU 224 XP后面的第一个模拟量输入通道的地址为AIW4;第一个输出通道的地址为AQW4,AQW2不能用。

14:S7-200 CPU上的通讯口支持哪些讯协议?

1)PPI协议:西门子专为S7-200开发的通讯协议

2)MPI协议:不完全支持,只能作从站

3)自由口模式:由用户自定义的通讯协议,用于与其他串行通讯设备通讯(如串行打印机等)。

S7-200编程软件Micro/WIN提供了通过自由口模式实现的通讯功能:

1)USS指令库:用于S7-200与西门子变频器(MM4系列、SINAMICS G110和老的MM3系列)

2)Modbus RTU指令库:用于与支持Modbus RTU主站协议的设备通讯

S7-200 CPU上的两个通讯口基本一样,没有什么特殊的区别。它们可以各自在不同的模式、通讯速率下工作;它们的口地址甚至也可相同。分别连接到CPU上两个通讯口上的设备,不属于同一个网络。S7-200 CPU不能充当网桥的作用。

15:S7-200 CPU上的通讯口都能干什么用?

1)安装了编程软件Micro/WIN的编程电脑可以对plc编程

2)可以连接其他S7-200 CPU的通讯口组成网络

3)可以与S7- 300/400的MPI通讯口通讯

4)可以连接西门子的HMI设备(如TD 200、TP170micro、TP170、TP270等)

5)可以通过OPC Server(PC Access V1.0)进行数据发布

6)可以连接其他串行通讯设备

7)可以与第三方HMI通讯

16:S7-200 CPU上的通讯口是否可以扩展?

不能扩展出与CPU通讯口功能完全一样的通讯口。

在CPU上的通讯口不够的情况下,可以考虑:

购买具有更多通讯口的CPU

考察连接设备的种类,如果其中有西门子的人机界面(HMI,操作面板),可以考虑增加EM277模块,把面板连接到EM277上

17:S7-200 CPU上的通讯口,通讯距离究竟有多远?

《S7-200系统手册》上给出的数据是一个网段50m,这是在符合规范的网络条件下,能够保证的通讯距离。凡超出50m的距离,应当加中继器。加一个中继器可以延长通讯网络50米。如果加一对中继器,并且它们之间没有S7-200 CPU站存在(可以有EM277),则中继器之间的距离可以达到1000米。符合上述要求就可以做到非常可靠的通讯。

实际上,有用户做到了超过50m距离而不加中继器的通讯。西门子不能保证这样的通讯一定成功。

18:用户在设计网络时,应当考虑到哪些因素?

S7-200 CPU上的通讯口在电气上是RS-485口,RS-485支持的距离是1000m

S7-200 CPU上的通讯口是非隔离的,需要注意保证网络上的各通讯口电位相等

信号传输条件(网络硬件如电缆、连接器,以及外部的电磁环境)对通讯成功与否的影响很大

19:S7-200的有实时时钟吗?

CPU221、CPU222没有内置的实时时钟,需要外插“时钟/电池卡”才能获得此功能。CPU224、CPU226和CPU226 XM都有内置的实时时钟。

20:如何设置日期、时间值,使之开始走动?

1)用编程软件(Micro/WIN)的菜单命令PLC > Time of Day Clock...,通过与CPU的在线连接设置,完成后时钟开始走动

2)编用户程序使用Set_RTC(设置时钟)指令设置。

21:智能模块的地址是如何分配的?

S7-200系统中除了数字量和模拟量I/O扩展模块占用输入/输出地址外,一些智能模块(特殊功能模块)也需要在地址范围中占用地址。这些数据地址被模块用来进行功能控制,一般不直接连接到外部信号。

CP243-2(AS-Interface模块)除了使用IB/QB作为状态和控制字节外,AI和AQ用于AS-Interface从站的地址映射。

22:Step7 - Micro/WIN 的兼容性如何?

目前常见的Micro/WIN版本有V4.0和V3.2。再老的版本,如V2.1,除了用于转化老项目文件,已经没有继续应用的价值。

不同版本的Micro/WIN生成的项目文件不同。高版本的Micro/WIN能够向下兼容低版本软件生成的项目文件;低版本的软件不能打开高版本保存的项目文件。建议用户总是使用最新的版本,目前最新的版本是Step7 - Micro/WIN V4.0 SP1。

23:通讯口参数如何设置?

缺省情况下,S7-200 CPU的通讯口处于PPI从站模式,地址为2,通讯速率为9.6K。

要更改通讯口的地址或通讯速率,必须在系统块中的Communicaiton Ports(通讯端口)选项卡中设置,然后将系统块下载到CPU中,新的设置才能起作用。

24:如何设置通讯口参数才能提高网络的运行性能?

假设一个网络中有2号站和10号站作为主站,(10号站的)最高地址设置为15。则对于2号站来说,所谓地址间隙就是3到9的范围;对于10号站来说,地址间隙就是11到最高站址15的范围,同时还包括0号和1号站。

网络通讯中的主站之间会传递令牌,分时单独控制整个网络上的通讯活动。网络上的所有主站不会同时加入到令牌传递环内,因此必须由某个持有令牌的主站定时查看比自己高的站址是否有新的主站加入。刷新因数指的就是在第几次获得令牌后检查一次高站址。

如果为2号站设置了地址间隙因数3,则在2号站第三次拿到令牌时会检查地址间隙中的一个地址,看是否有新的主站加入。

设置比较大的因数会提高网络的性能(因为无谓的站址检查少了),但会影响新的主站加入的速度。如下设置会使网络的运行性能提高:

1)设置最接近实际最高站址的最高地址

2)使所有主站地址连续排列,这样就不会再进行地址间隙中的新主站检测。

25:如何设置数据保持功能?

数据保持设置定义CPU如何处理各数据区的数据保持任务。在数据保持设置区中选中的就是要“保持”其数据内容的数据区。所谓“保持”就是在CPU断电后再上电,数据区域的内容是否保持断电前的状态。在这里设置的数据保持功能靠如下几种方式实现:

在这里设置的数据保持功能靠CPU内置的超级电容实现,超级电容放电完毕后,如果安装了外插电池(或CPU221/222用的时钟/电池)卡,则电池卡会继续数据保持的电源供电,直到放电完毕数据在断电前被自动写入相应的EEPROM数据区中(如果设置MB0 - MB13为保持)

26:数据保持设置与EEPROM有什么关系?

如果将MB0 - MB13共14个字节范围中的存储单元设置为“保持”,则CPU在断电时会自动将其内容写入到EEPROM的相应区域中,在重新上电后用EEPROM的内容覆盖这些存储区

如果将其他数据区的范围设置为“不保持”,CPU会在重新上电后将EEPROM中数值复制到相应的地址

如果将数据区范围设置为“保持”,如果内置超级电容(+电池卡)未能成功保持数据,则会将EEPROM的内容覆盖相应的数据区,反之则不覆盖

27:设置的密码分哪几种?

在系统块中设置CPU密码以限制用户对CPU的访问。可以分等级设置密码,给其他人员开放不同等级的权限。

28:设置了CPU密码后,为何看不出密码已经生效?

在系统块中设置了CPU密码并下载后,因为你仍然保持了Micro/WIN与CPU的通讯连接,所以CPU不会对设置密码的Micro/WIN做保护。

要检验密码是否生效,可以:

1)停止Micro/WIN与CPU的通讯一分钟以上

2)关闭Micro/WIN程序,再打开

3)停止CPU的供电,再送电

29:数字量/模拟量有冻结功能吗?

数字量/模拟量输出表规定的是当CPU处于停机(STOP)状态时,数字量输出点或者模拟量输出通道如何操作。

此功能对于一些必须保持动作、运转的设备非常重要。如抱闸,或者一些关键的阀门等,不允许在调试PLC时停止动作,就必须在系统块的输出表中进行设置。

数字量:在选中“Freeze output in last state”后,冻结最后的状态,则在CPU进入STOP状态时数字量输出点保持停机前的状态(是1仍然是1,是0保持为0),同时下面的b.表不起作用 如果未选中,那么选中的输出点会保持ON(1)的状态,未选中的为0。

模拟量:在选中“Freeze output in last state”后,冻结最后的状态,则在CPU进入STOP状态时模拟量输出通道保持停机前的状态,同时下面的表不起作用,未选中时.在下面表中各个规定模拟量输出通道在CPU进入STOP状态时的输出值。

30:数字量输入滤波器是什么作用,该如何设置?

可以为CPU上的数字量输入点选择不同的输入滤波时间。如果输入信号有干扰、噪音,可调整输入滤波时间,滤除干扰,以免误动作。滤波时间可在0.20 ~ 12.8ms的范围中选择几档 。如果滤波时间设定为6.40ms,数字量输入信号的有效电平(高或低)持续时间小于6.4ms时,CPU会忽略它;只有持续时间长于6.4ms时,才有可能识别。

另外:支持高速计数器功能的输入点在相应功能开通时不受此滤波时间约束。滤波设置对输入映像区的刷新、开关量输入中断、脉冲捕捉功能都有效。

31:模拟量滤波有什么效果?

一般情况下选用S7-200的模拟量滤波功能就不必再另行编制用户的滤波程序。

如果对某个通道选用了模拟量滤波,CPU将在每一程序扫描周期前自动读取模拟量输入值,这个值就是滤波后的值,是所设置的采样数的平均值。模拟量的参数设置(采样数及死区值)对所有模拟量信号输入通道有效。

如果对某个通道不滤波,则CPU不会在程序扫描周期开始时读取平均滤波值,而只在用户程序访问此模拟量通道时,直接读取当时实际值。

32:模拟量滤波死区值如何设置?

死区值,定义了计算模拟量平均值的取值范围

如果采样值都在这个范围内,就计算采样数所设定的平均值;如果当前最新采样的值超过了死区的上限或下限,则该值立刻被采用为当前的新值,并作为以后平均值计算的起始值

这就允许滤波器对模拟量值的大的变化有一个快速响应 。死区值设为0,表示禁止死区功能,即所有的值都进行平均值计算,不管该值有多大的变化。 对于快速响应要求,不要把死区值设为0,而把它设为可预期的最大的扰动值(320为满量程32000的1%)

33:模拟量滤波的设置应该注意哪些?

1)为变化比较缓慢的模拟量输入选用滤波器可以抑制波动

2)为变化较快的模拟量输入选用较小的采样数和死区值会加快响应速度

3)对高速变化的模拟量值不要使用滤波器

4)如果用模拟量传递数字量信号,或者使用热电阻(EM231 RTD)、热电偶(EM231 TC)、AS-Interface(CP243-2)模块时,不能使用滤波器

34:如何让Micro/WIN中的监控响应更快?

可以设置背景通讯时间,背景通讯时间规定用于“运行模式编程”和程序、数据监控的Micro/WIN和CPU的通讯时间占整个程序扫描周期的百分比。增加这个时间可以增加监控的通讯机会,在Micro/WIN中的响应会感觉快一些,但是同时会加长程序扫描时间。

35:cpu上的指示灯可以自定义吗?

可以通过用户自定义指示灯,

23版CPU的LED指示灯(SF/DIAG)能够显示两种颜色(红/黄)。红色指示SF(系统故障),黄色DIAG指示灯可以由用户自定义。

自定义LED指示灯可以由以下方法控制:

1)在系统块的“配置LED”选项卡中设置

2)在用户程序中使用DIAG_LED指令点亮

上述条件之间是或的关系。如果同时出现SF和DIAG两种指示,红色和黄色灯会交替闪烁。

36:在任何时候我都可以使用全部的程序存储区吗?

23版CPU的新功能(运行时编程)需要占用一部分程序存储空间。如果要利用全部的程序存储区,对于特定的一些CPU型号,需要禁止“运行模式编程”功能。

37:如果我忘了密码,如何访问一个带密码的CPU?

即便CPU 有密码保护,你也可以不受限制地使用以下功能:

1)读写用户数据

2)启动,停止 CPU

3)读取和设置实时时钟

如果不知道密码,用户不能读取或修改一个带三级密码保护的CPU中的程序。

38:如何清除设置的密码?

如果你不知道CPU的密码,你必须清除CPU内存,才能重新下装程序。执行清除CPU 指令并不会改变CPU原有的网络地址、波特率和实时时钟;如果有外插程序存储卡,其内容也不会改变。清除密码后,CPU中原有的程序将不存在。

要清除密码,可按如下3中方法操作:

1)在Micro/WIN中选择菜单“PLC > Clear” 选择所有三种块并按"OK"确认。

2)另外一种方法是通过程序“wipeout.exe”来恢复CPU 的缺省设置。这个程序可在STEP7-Micro/WIN 安装光盘中找到;

3)另外,还可以在CPU上插入一个含有未加密程序的外插存储卡,上电后此程序会自动装入CPU并且覆盖原有的带密码的程序。然后CPU可以自由访问。

39:POU加密后我还能正常使用吗?

POU即程序组织单元,包括S7-200项目文件中的主程序(OB1)、子程序和中断服务程序。

POU可以单独加密,加密后的POU会显示一个锁的标记,不能打开查看程序内容。程序下载到CPU中,再上载后也保持加密状态。

西门子公司随编程软件Micro/WIN提供的库指令、指令向导生成的子程序、中断程序都加了密。加密并不妨碍使用它们。

40:我能对整个工程项目文件进行加密吗?

使用Step7 - Micro/WIN V4.0以上版本,用户可以为整个Project(项目)文件加密,使不知道密码的人无法打开项目。

在Micro/WIN的File(文件)菜单中的Set Password(设置密码)命令,在弹出的对话框中输入最多16个字符的项目文件密码。

密码可以是字母或数字的组合,区分大小写。

41:如何打开老版本Micro/Win创建的项目文件?

在正版STEP7 Micro/WIN软件光盘中,都可在Old Realeses文件夹中找到V2.1版本的Micro/WIN安装软件,此版本的Micro/WIN可打开以前老版本创建的项目文件。通过它作为桥梁,另存老版本的软件后,可在最新版本STEP7 Micro/WIN软件中打开。

注:如果打开后发现有的网络显示为红色的invalid(非法),则可能是PLC型号太低、版本太旧了,此时可选择高型号或者新版本的CPU。如:在命令菜单的PLC > Type中将CPU222改为CPU224。

42:如何知道自己所编程序大小?

Micro/WIN中的命令菜单中执行PLC>Compile后,在Micro/WIN下方的显示窗口(消息输出窗口)可找到你所编程序的大小、占用数据块的大小等。

43:编译出错怎么办?

在编译后,如果有错,将不能下装程序到CPU。可在Micro/WIN下方的窗口查看错误,双击该错误即进入到程序中该错误所在处,根据系统手册中的指令要求进行修改。

44:如何知道自己所编程序的扫描时间?

在程序运行过一次以后,可在Micro/WIN中的命令菜单中在线查看PLC>Information可找到CPU中程序的扫描时间。

45:如何查找所使用的程序地址空间是否重复使用?

在对程序进行编译后,可以点击View浏览条中的交叉参考(Cross Reference)按钮进入,可以看到程序中所使用元素的详细的交叉参考信息及字节和位的使用情况。在交叉参考中可直接点击该地址,便进入到程序中该地址所在处。

46:在线监控时,在程序块中为何指令功能块竟然是红色?

如果在程序编辑器中在线监控,发现有红色的指令功能块,说明发生了错误或问题。从系统手册可以查到导致ENO=0的错误。如果是“非致命”故障,可以在菜单PLC > Information对话框中查看错误类型。

对于NetR/NetW(网络读/写)、XMT/RCV(自由口发送/接收) 、PLS等等与PLC操作系统或硬件设置有关的指令,在运行时变红,其最可能的原因是在指令仍然在执行的过程中多次调用,或者当时通讯口忙。

47:S7-200的高速输入、输出如何使用?

S7-200 CPU上的高速输入、输出端子,其接线与普通数字量I/O相同。但高速脉冲输出必须使用直流晶体管输出型的CPU(即DC/DC/DC型)。

48:NPN/PNP输出的旋转编码器(和其他传感器),能否接到S7-200 CPU上?

都可以。S7-200 CPU和扩展模块上的数字量输入可以连接源型或漏型的传感器输出,连接时只要相应地改变公共端子的接法(是电源L+连接到输入公共端、还是电源的M连接到公共端)。

49:S7-200能否使用两线制的数字量(开关量)传感器?

可以,但必须保证传感器的静态工作电流(漏电流)小于1mA。西门子有相关的产品,如用于PLC的接近开关(BERO)等。

50:S7-200是否有输入、输出点可以复用的模块?

S7-200的数字量、模拟量输入/输出点不能复用(即既能当作输入,又能当作输出)。

51:CPU224 XP的高速输入输出到底能达到100K还是200K?

新产品CPU224 XP高速输入中的两路支持更加高的速度。用作单相脉冲输入时,可以达到200KHz;用作双相90°正交脉冲输入时,速度可达100KHz。

CPU224 XP的两路高速数字量输出速率可以达到100KHz。

52: CPU224 XP的高速输入(I0.3/4/5)是5VDC信号,其他输入点是否可以接24VDC信号?

可以。只需将两种信号供电电源的公共端都连接到1M端子。这两种信号必须同时为漏型或源型输入信号。

53:CPU224 XP的高速输出点Q0.0和Q0.1接5V电源,其他点如Q0.2/3/4是否可以接24V电压?

不可以。必须成组连接相同的电压等级。

54:竟然有模拟量无法滤波?

由于CPU 224 XP本体上的模拟量转换芯片的原理与扩展模拟量模块不同,不需要选择滤波。

55: 什么是单极性、双极性?

双极性就是信号在变化的过程中要经过“零”,单极性不过零。由于模拟量转换为数字量是有符号整数,所以双极性信号对应的数值会有负数。在S7-200中,单极性模拟量输入/输出信号的数值范围是 0 - 32000;双极性模拟量信号的数值范围是 -32000-+32000。

56: 同一个模块的不同通道是否可以分别接电流和电压型输入信号?

可以分别按照电流和电压型信号的要求接线。但是DIP开关设置对整个模块的所有通道有效,在这种情况下,电流、电压信号的规格必须能设置为相同的DIP开关状态。如上面表1、表2中,0 - 5V和0 - 20mA信号具有相同的DIP设置状态,可以接入同一个模拟量模块的不同通道。

57:模拟量应该如何换算成期望的工程量值?

模拟量的输入/输出都可以用下列的通用换算公式换算:

Ov = [(Osh - Osl)*(Iv - Isl)/(Ish - Isl)] + Osl

其中:

Ov: 换算结果

Iv: 换算对象

Osh: 换算结果的高限

Osl: 换算结果的低限

Ish: 换算对象的高限

Isl: 换算对象的低限

59:为什么模拟量是一个变动很大的不稳定的值?

可能是如下原因:

你可能使用了一个自供电或隔离的传感器电源,两个电源没有彼此连接,即模拟量输入模块的电源地和传感器的信号地没有连接。这将会产生一个很高的上下振动的共模电压,影响模拟量输入值。

另一个原因可能是模拟量输入模块接线太长或绝缘不好。

可以用如下方法解决:

1) 连接传感器输入的负端与模块上的公共M 端以补偿此种波动。(但要注意确保这是两个电源系统之间的唯一联系。)

背景是:

模拟量输入模块内部是不隔离的;

共模电压不应大于 12V;

对于60Hz干扰信号的共模抑制比为40dB。

2)使用模拟量输入滤波器。

60:EM231模块上的SF红灯为何闪烁?

SF红灯闪烁有两个原因:模块内部软件检测出外接热电阻断线,或者输入超出范围。由于上述检测是两个输入通道共用的,所以当只有一个通道外接热电阻时,SF灯必然闪烁。解决方法是将一个100 Ohm的电阻,按照与已用通道相同的接线方式连接到空的通道;或者将已经接好的那一路热电阻的所有引线,一一对应连接到空的通道上。

【干货分享】S7-1200 PID功能组态

在我们实际工作经常会用到PID控制系统 ,比如控制恒压供水设备,恒温加热设备等。这些设备使用PLC进行控制时,不仅仅需要编程,还需要设置相关参数(或者说组态)。只有正确设置了相关参数之后,程序编写的才有意义。

那么今天我们以西门子1200PLC 为例,给大家讲讲如何组态PID功能 。在组态之前,要先判断如何选择PID指令,因为根据不同的应用场景选择的PID指令不同,指令选择的不同的话,组态也有一些区别。

①PID指令选择:

S7-1200 PID 功能有三条指令可供选择, 分别为 PID_Compact,PID_3Step,PID_Temp,如图1所示:

▲图1 | PID指令图▲

第一步: 先判断是否使用三位执行机构,如果使用则选择PID_3Step指令。这里解释一下三位执行机构的特点:

1、只接受开启/关闭两个数字量输出控制;

2、具有开到位/关到位的限位开关输入信号,或具有模拟量反馈位置信号。

比如现场的一些电动阀门,PLC控制电动阀门的正转或者反转从而控制流量、压力等 。PID_3Step指令(如图2)控制两个开关量的输出,比如一个为1,一个为0,电动机可能是正转。一个0,另外为1,电动机可能是反转。

▲图2 | PID_3Step指令▲

第二步: 如果未使用三位执行机构,判断是不是多回路、串级控制,如果是,则跳转到第3步判断;如果不是,则跳转到第4步。

第三步: 判断是不是需要加热/制冷双输出(比如在空调系统中)。如果需要,则调用PID_Temp指令,如图3所示。

▲图3 | PID_Temp指令▲

第四步: 判断是不是需要温度控制常用的附加功能(如控制带、死区等),如果不需要,则调用PID_Compact,如图4所示。

图4 | PID_Compact指令▲

这边解释一下“控制带”及“死区”这两个概念。

控制带:

在温度控制具有明显的大滞后特性,当过程值偏离设定值较大时调节过程过于缓慢,而接近设定值时又容易出现较大超调。

存在上述两种问题,温度控制必须满足在偏差超过一定的范围时,输出最大或者最小的调节量,让温度值快速回到一个小的范围中,以缩短调节时间:在设定值附近时,越靠近设定值,调节量应越小,以防止超调。为此,控制带功能在当过程值大于设定值,且偏差绝对值超过控制带,则以输出下限作为输出值。当过程值小于设定值,且偏差绝对值超过控制带,则以输出上限作为输出值。如果偏差的绝对值小于控制带,则以实际PID的计算结果作为输出。

死区:

在控制系统中,执行机构如果动作频繁,会导致小幅震荡造成机械磨损,很多控制系统允许被控量在一定范围内存在误差,该误差称为PID的死区。

当过程值满足如下公式时,SP –"死区宽度"<PV <SP +"死区宽度"时,PID停止调节保持输出不变。如下图所示

②PID_Compact指令组态

我们以最基本的恒压供水系统,给大家说明如何组态(设置相关参数)。必须先添加循环中断,然后在循环中断中添加PID_Compact指令。在循环中断的属性中,可以修改其循环时间(如图5)。

▲图5 | 添加循环中断后在属性界面修改其循环时间▲

这里解释一下循环时间: PID控制器的采样时间是循环中断时间的整数倍。如果我们自整定PID参数,系统会自动计算sRet.r_Ctrl_Cycle(采样时间)参数。若用户使用手动方式设定PID参数,则一定要注意此参数为循环中断时间的整数倍。

例如: PID控制器的采样时间是1s,循环中断时间为100ms,则在1S的时间内,循环中断执行了10次,但前9次PID控制器都不进行运算。

(1)在“指令> 工艺> PID 控制> Compact PID> PID_Compact”下,将PID_Compact 指令添加至循环中断。如图6所示:

▲图6 | 在循环中断中添加PID_Compact 指令▲

(2)当添加完PID_Compact 指令后,在项目树> 工艺对象文件夹中,会自动关联出PID_Compact_x[DBx],包含其组态界面和调试功能。如图7所示:

▲图7 | 工艺对象中关联生成PID_Compact▲

(3)使用PID控制器前,需要对其进行组态设置,分为基本设置、过程值设置、高级设置 等部分。如图8所示:

▲图8 | PID_Compact > 基本设置>控制器类型▲

第一、基本设置

①基本设置--控制器类型

a、为设定值、过程值和扰动变量选择物理量和测量单位。我们使用的是恒压控制,所以选择“压力”即可。如图9所示;

b、正作用:随着 PID控制器的偏差增大,输出值增大。反作用:随着PID控制器的偏差增大,输出值减小。PID_Compact反作用时,可以勾选“反转控制逻辑”。如图9所示;

c、要在 CPU重启后切换到“模式”(Mode)参数中保存的工作模式,请勾选“在CPU 重启后激活模式”。如图9所示。

▲图9 | PID_Compact > 基本设置>控制器类型▲

②基本设置--定义Input/Output 参数(如图10)

定义 PID过程值和输出值的内容,选择PID_Compact输入、输出变量的引脚和数据类型。选择Input的话,那么就需要在程序中标定好工程单位值,然后标定好的工程量值填写在PID_Compact管脚Input处,Input处的管脚值与Setpoint管脚的值比较比较,从而控制输出。那到底是控制哪个输出呢?就是根据Output处选择的参数,可以是Output_PER、Output、Output_PWM。Output_PER就是直接通过模拟量的方式输出控制外部设备,比如变频器、电机等,最终它的输出值是在0-27648之间,从而转换成0-10V或者0-20mA,达到控制的结果。Output是百分比的方式输出,它介于0-100之间,如果需要控制外部设备的话,需要用其他指令转换输出。Output_PWM是脉宽脉宽调制方式输出数字量。

那如果Input处选择的是Input_PER,填写的就是模拟量输入通道的地址(比如IW64),这个地址会自动转换成工程单位与Setpoint管脚的值比较。那它如何进行转换的呢?我们往下看。

▲图10 | PID_Compact > 基本设置>定义Input/Output▲

第二、过程值设置

①过程值设置--过程值限值(如图11)

必须满足过程值下限<过程值上限。如果过程值超出限值,就会出现错误。我们设置的是60hpa,因为我们的压力传感器是0-5Kpa的,而量程中只用hpa这个单位。所以我们转换成hpa,并且设置留有余量。

▲图11 | 设置过程值限值▲

②过程值设置--过程值标定

a、只有在“基本设置”项下Input/Output 中输入选择为 “Input_PER”时,才可组态过程值标定;

b、如果过程值与模拟量输入值成正比,则将使用上下限值对来标定Input_PER;

c、必须满足范围的下限<上限。

由于我们“基本设置 ”项下Input/Output 中输入选择为 “Input ”所以图11中“Input_PER”项为“已禁用”

图11 | 进行过程值标定▲

高级设置

①高级设置--过程值监视(如图12及图13):

图12▲

a、过程值的监视限值范围需要在过程值限值范围之内;

b、过程值超过监视限值,会输出警告。过程值超过过程值限值,PID输出报错,切换工作模式;

▲图13▲

②高级设置-- PWM 限制,在此不介绍。

③高级设置--输出值限值(如图14)

▲图14▲

a、在“输出值的限值”窗口中,以百分比形式组态输出值的限值。无论是在手动模式还是自动模式下,都不要超过输出值的限值。

b、手动模式下的设定值ManualValue,必须介于输出值的下限 (Config.OutputLowerLimit) 与输出值的上限 ( Config.OutputUpperLimit)之间的值。

c、如果在手动模式下指定了一个超出限值范围的输出值,则CPU 会将有效值限制为组态的限值。

d、PID_compact 可以通过组态界面中输出值的上限和下限修改限值。最广范围为-100.0 到100.0,如果采用Output_PWM 输出时限制为0.0 到100.0 。

④高级设置--对错误的响应(如图15)

a、在PID_Compact V2 时,可以预先设置错误响应时PID 的输出状态,如图13所示。以便在发生错误时,控制器在大多数情况下均可保持激活状态;

b、如果控制器频繁发生错误,建议检查Errorbits 参数并消除错误原因。

▲图15▲

根据错误代码来分析错误原因。根据组态界面所设置的“对错误的响应”,不同错误的响应状态也不一样,如下表所示:

⑤高级设置--手动输入PID 参数

a、在 PID Compact 组态界面可以修改PID 参数,通过此处修改的参数对应工艺对象背景数据块> Static > Retain > PID 参数;

b、通过组态界面修改参数需要重新下载组态并重启PLC。建议直接对工艺对象背景数据块进行操作。

来源:技成培训网,作者:技成-郭彪,未经授权不得转载!

如何获取 电气热门资料?

操作指引如下!

相关问答

PLC模拟量的死区是什么意思?

死区值(Deadband)表示用户设定的死区值,数值范围一般可以到达量程的10%。在启动滤波功能时,当模拟量的当前采集结果和上次滤波后的值之差超过设定死区值时,...

基于PLC控制的电动轮椅(以锂电池为供电电源)可以使用变频器来调速直流电机吗?

一般霍尔元件安装在无刷直流电机靠近转子磁极的位置。上述无刷直流电机结构中有两个死区,即当转子转到N、S极之间的位置为中性点,在此位置霍尔元件感受不到磁...

plc加伺服电机编码器滚珠丝杆做往复重复运动,不装光栅尺能保证重复定位精度在0.1mm内吗?

准确的说:不一定!光栅尺和光电编码器的原理几乎是一样的,你要想保证精度在0.1mm内,必须要知道以下数据1:伺服电机编码器的单圈脉冲个数,2:伺服电机输出轴...

温度控制pid参数自整定怎么进行-187****6071的回答-懂得

温度控制采用PID控制器时,由于温度过程一般都存在较大的死区和滞后时间,所以设置PID参数时尽可能使用P作用和D作用进行调节,而将I作用降到最低(甚至...

PID参数的如何设定调节?

通俗的理解死区就是你所能接受的最大偏差。死区的大小一般要大于反馈值的波动范围。死区的设置应该在其它参数的设置基础上进行,否则会导致系统失去控制。死...

求助!!哪里有卖德国申克一体化变送器VT-110公司地址,德国...

[回答]我用富悦申克家的产品很久了,有快3年了,确实性价比高,刚用的时候确实怀疑过,但是这个是要看积累的,用的越久,效果越好。温湿度变送器,现在一般有电...

麻烦老表们谁了解!!好口碑的欧姆龙变频器哪家正规,欧姆龙...

[回答]其丰富的功能,完全满足各种不同的需求;特点:紧凑的结构设计,可以灵活的安装;先进的控制算法:空间电压矢量控制技术、停电再启动、自动电压调整、死...

比例阀放大器原理是怎样的?_住范儿家装官网

PLC可以挂D/A转换模块,就是把PLC内的数字量转化成模拟量,变成0-10V,4-20mA或0-20mA的模拟量,而你所用的比例阀是可以接受模拟的电压电流信号的,但是...