s7200编程宝典.docx
《s7200编程宝典.docx》由会员分享,可在线阅读,更多相关《s7200编程宝典.docx(16页珍藏版)》请在冰豆网上搜索。
s7200编程宝典
1:
Step7Micro/WINV4.0安装在什么环境下才能正常工作?
Step7Micro/WINV4.0的安装、运行环境为:
Windows2000SP3以上
WindowsXPHome
WindowsXPProfessional
西门子没有在其他操作系统下测试,不保证能够使用。
2:
Step7Micro/WINV4.0和其他的版本兼容性如何?
Micro/WINV4.0生成的项目文件,旧版本的Micro/WIN不能打开或上载。
3:
siemens200PLC硬件版本有什么区别?
二代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-200CPU的中央处理芯片数据长度为32位。
从CPU累加器AC0/AC1/AC2/AC3的数据长度也可以看出。
6:
如何进行S7-200的电源需求与计算?
S7-200CPU模块提供5VDC和24VDC电源:
当有扩展模块时CPU通过I/O总线为其提供5V电源,所有扩展模块的5V电源消耗之和不能超过该CPU提供的电源额定。
若不够用不能外接5V电源。
每个CPU都有一个24VDC传感器电源,它为本机输入点和扩展模块输入点及扩展模块继电器线圈提供24VDC。
如果电源要求超出了CPU模块的电源定额,你可以增加一个外部24VDC电源来提供给扩展模块。
所谓电源计算,就是用CPU所能提供的电源容量,减去各模块所需要的电源消耗量。
注意:
EM277模块本身不需要24VDC电源,这个电源是专供通讯端口用的。
24VDC电源需求取决于通讯端口上的负载大小。
CPU上的通讯口,可以连接PC/PPI电缆和TD200并为它们供电,此电源消耗已经不必再纳入计算。
7:
200PLC能在零下20度工作吗?
S7-200的工作环境要求为:
0°C-55°C,水平安装
0°C-45°C,垂直安装
相对湿度95%,不结露
西门子还提供S7-200的宽温度范围产品(SIPLUSS7-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-200CPU按照以下机制循环工作:
读取输入点的状态到输入映像区
执行用户程序,进行逻辑运算,得到输出信号的新状态
将输出信号写入到输出映像区
只要CPU处于运行状态,上述步骤就周而复始地执行。
在第二步中,CPU也执行通讯、自检等工作。
上述三个步骤是S7-200CPU的软件处理过程,可以认为就是程序扫描时间。
实际上,S7-200对数字量的处理速度受到以下几个因素的限制:
输入硬件延时(从输入信号状态改变的那一刻开始,到CPU刷新输入映像区时能够识别其改变的时间)
CPU的内部处理时间,包括:
读取输入点的状态到输入映像区
执行用户程序,进行逻辑运算,得到输出信号的新状态
将输出信号写入到输出映像区
输出硬件延时(从输出缓冲区状态改变到输出点真实电平改变的时间)
上述A,B,C三段时间,就是限制PLC处理数字量响应速度的主要因素。
一个实际的系统可能还需要考虑输入、输出器件的延时,如输出点外接的中间继电器动作时间等
表1.输入点硬件延时
以上数据都在《S7-200系统手册》中标明,这里只是列表比较。
CPU上的部分输入点延时(滤波)时间可以在编程软件Micro/WIN的“系统块”中设置,其缺省的滤波时间是6.4ms。
如果把容易受到干扰的信号接到CPU上可改变滤波时间的DI点上,调整滤波时间可能改善信号检测的质量。
支持高速计数器功能的输入点在相应功能开通时不受此滤波时间约束。
滤波设置对输入映像区的刷新、开关量输入中断、脉冲捕捉功能同样有效。
表2.CPU输出硬件延时
有些输出点要比其他点更快些,是因为它们可以用于高速输出功能,在硬件上有特殊设计。
没有专门使用硬件高速输出功能时,它们只是和普通点一样处理
继电器输出开关频率为1Hz。
表3.扩展模块输出硬件延时
9:
S7-200处理快速响应信号的对策有那些?
使用CPU内置的高速计数器和高速脉冲发生器处理序列脉冲信号
使用部分CPU数字量输入点的硬件中断功能,在中断服务程序中处理;进入中断的延时可以忽略
S7-200拥有“直接读输入”和“直接写输出”指令,可以越过程序扫描周期的时间限制
使用部分CPU数字量输入点的“脉冲捕捉”功能捕捉短暂的脉冲
注意:
S7-200系统中最小周期的定时任务为1ms。
所有实现快速信号处理的措施,都要考虑所有限制因素的影响。
例如,为一个需要毫秒级响应速度的信号选择500μs输出延时的硬件,显然是不合理的。
10:
S7-200程序扫描时间和程序大小有关系吗?
程序扫描时间与用户程序的大小成正比。
《S7-200系统手册》中有每个指令所需执行时间的数据。
实际上很难事先预先精确计算出程序扫描时间,特别是还没有开始编程序时。
可以看出,常规的PLC处理模式不适合时间响应要求高的数字量信号。
可能需要根据具体任务采用一些特别的方法。
11:
CPU224XP高速脉冲输出最快能达到多少?
CPU224XP的高速脉冲输出Q0.0和Q0.1支持高达100KHz的频率。
Q0.0和Q0.1支持5-24VDC输出。
但是它们必须和Q0.2-Q0.4一起成组输出相同的电压。
高速输出只能用在CPU224XPDC/DC/DC型号
12:
CPU224XP本体上的模拟量输入也是高速响应的吗?
它的响应速度是250ms,不同于模拟量扩展模块的数据。
CPU224XP本体上的模拟量I/O芯片与模拟量模块所用的不同,应用的转换原理不同,因此精度和速度不一样。
13:
CPU224XP后面挂的模拟量模块的地址如何分配?
S7-200的模拟量I/O地址总是以2个通道/模块的规律增加。
所以CPU224XP后面的第一个模拟量输入通道的地址为AIW4;第一个输出通道的地址为AQW4,AQW2不能用。
14:
S7-200CPU上的通讯口支持哪些讯协议?
1)PPI协议:
西门子专为S7-200开发的通讯协议
2)MPI协议:
不完全支持,只能作从站
3)自由口模式:
由用户自定义的通讯协议,用于与其他串行通讯设备通讯(如串行打印机等)。
S7-200编程软件Micro/WIN提供了通过自由口模式实现的通讯功能:
1)USS指令库:
用于S7-200与西门子变频器(MM4系列、SINAMICSG110和老的MM3系列)
2)ModbusRTU指令库:
用于与支持ModbusRTU主站协议的设备通讯
S7-200CPU上的两个通讯口基本一样,没有什么特殊的区别。
它们可以各自在不同的模式、通讯速率下工作;它们的口地址甚至也可相同。
分别连接到CPU上两个通讯口上的设备,不属于同一个网络。
S7-200CPU不能充当网桥的作用。
15:
S7-200CPU上的通讯口都能干什么用?
1)安装了编程软件Micro/WIN的编程电脑可以对plc编程
2)可以连接其他S7-200CPU的通讯口组成网络
3)可以与S7-300/400的MPI通讯口通讯
4)可以连接西门子的HMI设备(如TD200、TP170micro、TP170、TP270等)
5)可以通过OPCServer(PCAccessV1.0)进行数据发布
6)可以连接其他串行通讯设备
7)可以与第三方HMI通讯
16:
S7-200CPU上的通讯口是否可以扩展?
不能扩展出与CPU通讯口功能完全一样的通讯口。
在CPU上的通讯口不够的情况下,可以考虑:
购买具有更多通讯口的CPU
考察连接设备的种类,如果其中有西门子的人机界面(HMI,操作面板),可以考虑增加EM277模块,把面板连接到EM277上
17:
S7-200CPU上的通讯口,通讯距离究竟有多远?
《S7-200系统手册》上给出的数据是一个网段50m,这是在符合规范的网络条件下,能够保证的通讯距离。
凡超出50m的距离,应当加中继器。
加一个中继器可以延长通讯网络50米。
如果加一对中继器,并且它们之间没有S7-200CPU站存在(可以有EM277),则中继器之间的距离可以达到1000米。
符合上述要求就可以做到非常可靠的通讯。
实际上,有用户做到了超过50m距离而不加中继器的通讯。
西门子不能保证这样的通讯一定成功。
18:
用户在设计网络时,应当考虑到哪些因素?
S7-200CPU上的通讯口在电气上是RS-485口,RS-485支持的距离是1000m
S7-200CPU上的通讯口是非隔离的,需要注意保证网络上的各通讯口电位相等
信号传输条件(网络硬件如电缆、连接器,以及外部的电磁环境)对通讯成功与否的影响很大
19:
S7-200的有实时时钟吗?
CPU221、CPU222没有内置的实时时钟,需要外插“时钟/电池卡”才能获得此功能。
CPU224、CPU226和CPU226XM都有内置的实时时钟。
20:
如何设置日期、时间值,使之开始走动?
1)用编程软件(Micro/WIN)的菜单命令PLC>TimeofDayClock...,通过与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/WINV4.0SP1。
23:
通讯口参数如何设置?
缺省情况下,S7-200CPU的通讯口处于PPI从站模式,地址为2,通讯速率为9.6K。
要更改通讯口的地址或通讯速率,必须在系统块中的CommunicaitonPorts(通讯端口)选项卡中设置,然后将系统块下载到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时停止动作,就必须在系统块的输出表中进行设置。
数字量:
在选中“Freezeoutputinlaststate”后,冻结最后的状态,则在CPU进入STOP状态时数字量输出点保持停机前的状态(是1仍然是1,是0保持为0),同时下面的b.表不起作用如果未选中,那么选中的输出点会保持ON
(1)的状态,未选中的为0。
模拟量:
在选中“Freezeoutputinlaststate”后,冻结最后的状态,则在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)如果用模拟量传递数字量信号,或者使用热电阻(EM231RTD)、热电偶(EM231TC)、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/WINV4.0以上版本,用户可以为整个Project(项目)文件加密,使不知道密码的人无法打开项目。
在Micro/WIN的File(文件)菜单中的SetPassword(设置密码)命令,在弹出的对话框中输入最多16个字符的项目文件密码。
密码可以是字母或数字的组合,区分大小写。
41:
如何打开老版本Micro/Win创建的项目文件?
在正版STEP7Micro/WIN软件光盘中,都可在OldRealeses文件夹中找到V2.1版本的Micro/WIN安装软件,此版本的Micro/WIN可打开以前老版本创建的项目文件。
通过它作为桥梁,另存老版本的软件后,可在最新版本STEP7Micro/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中程序的扫描时间。
4