西门子6ES7221-1BH22-0XA8代理直销
SIMATIC S7-200 CPU 具有高性能、所需空间小以及小的维护成本,因此提高了性价比。
高处理速度;
例如,在 CPU 315-2 DP 中,位运算时,0.05 µs;浮点运算时,0.45 µs,
在 CPU 319-3 PN/DP 中,位运算时,0.004 µs;浮点运算时,0.04 µs
扩展数量
作为装载存储器的 SIMATIC 微型存储卡(MMC):
可在微型存储卡中存储一个完整的项目,包括符号和注释。RUN 模式下也可以进行读/写操作。这样可以降低服务成本
无需电池即可在 MMC 上备份 RAM 数据
编程
使用STEP7中的 LAD、FBD STL 对 CPU 进行编程。可以使用下列编程工具:STEP 7 Basis 和 STEP 7 Professional。
可以运行 CPU 314 的工程与组态工具(例如,S7-GRAPH、S7-HiGraph、SCL、CFC 或 SFC)。
标准型CPU
对标准型 CPU 进行编程时需要 STEP 7 V5.2+SP1 以上的软件。
紧凑型 CPU
对紧凑型 CPU 进行编程时需要 STEP 7 V5.3+SP2 以上的软件。老版本的STEP 7需要升级。
CPU模块主要由微处理器(CPU芯片)和存储器组成。在PLC控制系统中厂CPU模块相当于人的大脑,它不断地采集输入,执行用户程序,刷新系统的输出;存储器用来储存程序和数据。
输入(1nput)模块和输出(Output)模块简称为I/O模块,它们是系统的眼、耳、手、脚,是联系外部现场设备和CPU模块的桥梁。
西门子S7系列PLC的主要种类及应用软件
德国西门子(SIEMENS)公司生产的可编程序控制器在我国的应用也相当广泛,在冶金、化工、印刷生产线等领域都有应用。西门子(SIEMENS)公司的PLC产品包括LOGO,S7-200,S7-300,S7-400,工业网络,HMI人机界面,工业软件等。
西门子S7系列PLC体积小、速度快、标准化,具有网络通信能力,功能更强,可靠性更高。S7系列PLC产品可分为微型PLC(如S7-200),小规模性能要求的PLC(如S7-300)和中、高性能要求的PLC(如S7-400)等。
1.SIMATIC S7-200 PLC
S7-200 PLC是超小型化的PLC,它适用于各行各业,各种场合中的自动检测、监测及控制等。S7-200 PLC的强大功能使其无论单机运行,或连成网络都能实现复杂的控制功能。
S7-200PLC可提供4个不同的基本型号与8种CPU可供选择使用。
2.SIMATIC S7-300 PLC
S7-300是模块化小型PLC系统,能满足中等性能要求的应用。各种单独的模块之间可进行广泛组合构成不同要求的系统。与S7-200 PLC比较,S7-300 PLC采用模块化结构,具备高速(0.6~0.1μs)的指令运算速度;用浮点数运算比较有效地实现了更为复杂的算术运算;一个带标准用户接口的软件工具方便用户给所有模块进行参数赋值;方便的人机界面服务已经集成在S7-300操作系统内,人机对话的编程要求大大减少。SIMATIC人机界面(HMI)从S7-300中取得数据,S7-300按用户的刷新速度传送这些数据。S7-300操作系统自动地处理数据的传送;CPU的智能化的诊断系统连续监控系统的功能是否正常、记录错误和特殊系统事件(例如:超时,模块更换,等等);多级口令保护可以使用户高度、有效地保护其技术机密,防止未经允许的复制和修改;S7-300 PLC设有操作方式选择开关,操作方式选择开关像钥匙一样可以拔出,当钥匙拔出时,就不能改变操作方式,这样就可防止非法删除或改写用户程序。具备强大的通信功能,S7-300 PLC可通过编程软件Step 7的用户界面提供通信组态功能,这使得组态非常容易、简单。S7-300 PLC具有多种不同的通信接口,并通过多种通信处理器来连接AS-I总线接口和工业以太网总线系统;串行通信处理器用来连接点到点的通信系统;多点接口(MPI)集成在CPU中,用于同时连接编程器、PC机、人机界面系统及其他SIMATIC S7/M7/C7等自动化控制系统。
西门子6EP1931-2EC42
西门子、施耐德、ABB、正泰,这些配电市场(元件生产商)的先发者,已经进入百亿甚至更高规模销售额的序列,那么其他公司是否还有机会再跨越百亿这个门槛呢?不仅良信,一些进入较晚的国际,譬如伊顿、海格都会有这方面的思考。我们对此的判断是偏向积极的。
配电与自动化市场仍处在高增长期
配电市场依托于建筑、基础设施、工业和电网客户,自动化市场依托于工业客户。而中国的经济正在这样的过程和节点之上——逐步完成城市化,工业开始升级转型。前者方兴未艾,正值壮年,后者如鹰试翼,正值青年。这两个市场的发展节奏略有重叠和衔接的感觉。
国际化刚刚开始
中国制造走向全球已经有很多证明——华为于通信,振华于港机,海康威视于监控。而在配电和自动化领域,都刚刚开始萌芽,配电稍微快一些。如果细看正泰的业绩,海外市场增长迅猛。从到全球,只是时间问题。
内资侵蚀外资份额是大势所趋
配电和自动化市场外资品牌仍占据大量份额,但这两个领域的国内外技术差异已经不明显,少数几个困难领域的突破也是可以预见的。所以份额的天平一直持续倒向国内品牌一方。可以判定在未来的10-20年,市场格局会发生本质性的变化。
电改、智能配电带来新机会
发电侧,新能源不断发展,分布式能源大行其道;售电市场,也开始从集中到市场化的改革;用电侧,则有新能源车等更多新电器的出现。这些市场环境和用户的改变,必然会推动配电元件市场的变化——可通讯和智能化是趋势。这有可能带来新的商业模式和格局。主流厂商也都在积极准备。
工业4.0
可列入远期动因,但槽点很多。
简之,市场规模仍在继续扩大,增长喜人,窗口仍在,百亿销售额的席位仍然是开放的。
数字量输入和输出扩展模块 (EM) S7-200 SMART 666 系统手册, 09/2015, A5E03822234-AC 型号 EM 8 点数字量输入/ 8 点数字量输出 (EM DT16) EM 8 点数字量输入/ 8 点继电器输出 (EM DR16) EM 16 点数字量输入/16 点数字量输出 (EM DT32) EM 16 点数字量输入/ 16 点继电器输出 (EM DR32) STOP 模式下的输出行为 上一个值或替换值(默认值为 0) 上一个值或替换值(默认值为 0) 上一个值或替换值(默认值为 0) 上一个值或替换值(默认值为 0) 同时接通的输出数 8 8 16 16 电缆长度(大值),以米为单位 屏蔽:500 m 非屏蔽:150 m 屏蔽:500 m 非屏蔽:150 m 屏蔽:500 m 非屏蔽:150 m 屏蔽:500 m 非屏蔽:150 m 表格 A- 77 EM DT16 8 点数字量输入/8 点数字量输出 (6ES7 288-2DT16-0AA0)、EM DR16 和 EM DR16 8 点数字量输入/8 点继电器输出 (6ES7 288-2DR16-0AA0) 的接线图 EM DT16 8 点数字量输入/8 点数字量输出 (6ES7 288-2DT16-0AA0) EM DR16 8 点数字量输入/8 点继电器输出 (6ES7 288-2DR16-0AA0)
如何开头呢,其实这是我的一个经验教训。模拟输入模块电流输入的分为二线制和四线制这是大家都知道,但如果很多事情都凑在一起那么也可能会出现大问题。
在去年的一个项目中参与的人多了一些,人员的变动大了一些,结果就出现模块输入通道烧掉的问题。项目实施开始了。
控制系统的选型,西门子的plc采用CPU 313C,由于要和现场PROFINET通讯添加了一个CP343-lean模块,设备距离很远要使用子站,但厂家要求使用ET200S,所以选择6ES7 151,因为含有模拟量所以要选择模拟输入输出模块,输出模块简单了,执行器一般很少给模块供电的,输出模块一般也不支持4线制连接所以一般不会选错。对于输入模块就有问题了,一是输入类型要对,电压还是电流再就是线制。根据传感器类型选择了电流输入,输入是4-20MA。接下来就是确定线制,因为传感器的厂家没有在产品样本中明确说明是几线制,做选型的老兄看到就两个线那就选择二线制的了。这位老兄的工作也结束了。
下面就是现场安装施工了,这个一般都是安装图纸不会有太大问题。施工队完成也就没问题了。
再就是上电调试了。这就是我的工作了。检测各处安装没问题,接线没问题,电源没有问题,那就上电下载程序测试。子站都通上了,可是就是得不到模拟输入的信号,一个不对怎么十几个都不对呢?分析难道是接线都接错了,因为都是同样的接线吗?对图纸没有问题,看模块上提示的接线也没有问题,为什么就是没有信号呢(信号数值都是负值而且都超过了30000,)后想到的问题是难道这批板子(变送器的电路板是定制的)的正负反向了,将输入的两个线掉过来试试,信号有了(其实这里这么想是有问题的)到这就没考虑模块选型是否存在问题。信号正常了调试也就可以继续进行了。通过近半个个月的调试,设备基本上的功能都具备并正常工作了,下面就是等待生产观察设备问题然后改进了。时间又过去了半个月,输入模块的事就再也没想过。开始生产后一个月正值伏天地面温度三十八九度,设备上的温度更高,站上去不到五分钟就挥汗如雨了。就在这时一个模拟输入模块出现问题显示不正常。开始考虑的是温度过高 ,因为柜内温度到达了五十度(摄氏度)因为柜子所在环境粉尘很大就没有加风扇,也没有想到设备上的温度能到达四十度以上,加了对流风扇。没过多久不止一个通道也出现显示不正常。到此才考虑到为啥模拟输入的接线交叉后才正常呢?为啥模块的输入通道会烧坏呢?难道是接地的问题,高压串入到了模拟输入中,用万用表测量传感器的输出信号,电压正常,在24V左右,到这里忽然想起线制的问题,怎么二线制的变送器会有电压呢?这应该是四线制的。看看模拟输入模块确实是二线制的。到这里才发现了问题时实质。幸好的是模块还都在保修期内,说明原因给维修了。
在前说到有个想法是错的,为什么呢?这是由于在使用数字输入的接近开关时需要考虑NPN还是PNP,还有就是差分信号可能会需要交叉,尤其在485的通讯中;而将这些用到了模拟输入中结果就将线制的问题掩盖过去了,后造成了多个模块的输入通道烧坏的情况。这次问题的出现原因很多,在我这里因为思维怎么都没想到选型会出错,再就是调试起初发现输入没有信号时那时应该想到线制的问题,而时间是用错误的想法将真相掩盖了,温度原因又使得发现问题的时间拖延了造成了更大损失。而且发现问题是在考虑接地时偶然发现的,始终就没有去想线制的问题。这就是我这次的所得到教训。
IN 调用POU提供的输入参数。
OUT 返回调用POU的输出参数。
IN_OUT 数值由调用POU提供的参数,由子程序修改,然后返回调用POU。
TEMPORARY 临时保存在局部数据堆栈中的临时变量。一旦POU完全执行,临时变量数值则无法再用。在两次P0U执行之间,临时变量不保持其数值。
局部变量是分配给每个子程序的临时存贮区。
当子程序被调用时,系统分配局部变量区给子程序;子程序执行完成后,该局部变量区被释放。释放时其中存贮的值也同时丢失,不能再下一扫描周期再被子程序使用。
局部变量区的大小为64个字节,其中后4个字节被系统所占用,实际可供子程序使用的为60个字节。
由于局部变量区的数据不能带到上一扫描周期,因此只能用于存迪程序运算中的中间值,可以减少对全局变量区的占用。
由于局部变量区在子程序被调用时才被分配,且分配时并不对数据区进行初始化,所以其初始值是不确定的。因此在程序中用到这些存贮区的值的指令前,必须有对该存贮区地址的赋值操作,否则可能会出现错误的执行结果。尤其在子程序中存在大量的跳转指令时,很容易出现漏掉对局部变量赋值的情况,要格外注意。
每个子程序调用的输入/输出参数的大限制是16,如果您尝试下载的程序超过此一限制,IN和out加起来共16个超过16个就会出错,本人做一个程序的时候发现了这个问题,在这里提醒各位同行。
1、子程序或者中断程序不能访问分配给主程序的局部存储器。子程序不能访问分配给主程序、中断程序或者其他子程序的局部存储器。同样的,中断程序也不能访问分配给主程序或子程序的局部存储器。
2、有关局部变量:S7-200有64个字节的局部存储器,其中60个可以用作临时存储器或者给子程序传递参数。
如果用梯形图或功能方块图编程,STEP7--Micro/WIN保留这些局部存储器的后四个字节。
局部存储器和变量存储器很相似,但只有一处区别。变量存储器是全局有效的,而局部存储器只在局部有效。全局是指同一个存储器可以被任何程序存取(包括主程序、子程序和中断中断程序程序)。局部是指存储器区和特定的程序相关联。S7--200给主程序分配64个局部存储器;给每一级子程序嵌套分配64个字节局部存储器;同样给中断程序分配64个字节局部存储器。
子程序或者中断程序不能访问分配给主程序的局部存储器。子程序不能访问分配给主程序、中断程序或者其他子程序的局部存储器。同样的,中断程序也不能访问分配给主程序或子程序的局部存储器。S7--200 plc根据需要分配局部存储器。也就是说,当主程序执行时,分配给子程序或中断程序的局部存储器是不存在的。当发生中断或者调用一个子程序时,需要分配局部存储器。新的局部存储器地址可能会覆盖另一个子程序或中断程序的局部存储器地址。
局部存储器在分配时PLC不进行初始化,初值可能是任意的。当在子程序调用中传递参数时,在被调用子程序的局部存储器中,由CPU替换其被传递的参数的值。局部存储器在参数传递过程中不传递值,在分配时不被初始化,可能包含任意数值。
3、CPU226的项目中多可以创建128个子程序,其他CUP可以创建64个子程序。子程序可以嵌套调用,即在子程序中调用别的子程序,一共可以嵌套8层。在中断程序中调用的子程序不能再调用别的子程序。不禁止递归调用(子程序调用自己),但是应慎重使用递归调用。
4、子程序中的定时器:停止调用子程序时,线圈在子程序内的位元件的ON/OFF状态保持不变。如果在停止调用时子程序中的定时器正在定时,100ms定时器将停止定时,当前值保持不变,重新调用时继续定时;但是1ms定时器和10ms定时器将继续定时,定时时间到时,它们的定时器位变为1状态,并且可以在子程序之外起作用。
如何输入个局部变量赋值欲在局部变量表中赋值,请遵循以下步骤:
1. 确保正确的POU在程序编辑器窗口中显示,如有必要,点击所需的POU标记。(因为每个POU都有自己的局部变量表,您需要确保对正确的POU赋值。)
2. 如果局部变量表处于隐藏状态,下拉水平分裂条,显示局部变量表。
3. 为需要定义的变量选择具有正确说明类型的行,在"名称"域中为该变量键入一个名称。(如果您在OB1或中断例行程序中赋值,局部变量表只包含TEMP变量。如果您在子程序中赋值,局部变量表包含IN、IN_OUT、OUT和TEMP变量。)您不需要在局部变量表中的变量名前加井号。井号只用在程序代码中的局部变量前。
注释:
* 局部变量名多可包含23个字母数字字符和下划号,也可包含扩展字符(ASCII 128至 ASCII 255)。个字符只能是字母或扩展字符。将关键字用作符号名属于非法,名称的个字符是数字,或名称包含非字母数字字符或扩展字符集中的字符也属于非法。
** 局部变量表变量名被下载并存储于CPU内存中,使用较长的变量名可能减少用于存储程序的内存空间。
4. 在"数据类型"域中点击鼠标指针,并使用列表框为局部变量选择适当的数据类型。
注释:
当您将局部变量指定为子程序的参数时,您必须保证为局部变量指定的数据类型不与子程序调用中使用的操作数发生冲突。为"名称"和"数据类型"域提供数值后,程序编辑器会自动为局部变量指定L内存地址。
如何在局部变量表中输入附加赋值
对于OB1和中断例行程序,局部变量表显示一组已被预先定义为TEMP变量的行。在OB1或中断例行程序中,只能使用这种说明类型。欲在表中增加更多行,只需点击后一行中的一个单元格,然后使用ENTER键移过该行并向下移动,即自动生成一个新行。
对于子程序,局部变量表显示按照以下顺序预先定义说明类型的一组行:IN、IN_OUT、OUT和TEMP。您不能改变该顺序。局部变量在该表中的顺序必须符合当您为子程序调用指令进行操作数赋值时对应的操作数顺序。如果您希望增加附加局部变量,必须用鼠标右键点击现有行,并使用弹出菜单插入与点击行类型相同的另一局部变量。选择插入(Insert)> 行(Row),在所选行的上方插入新行,或选择插入(Insert)> 行下方(Below Row),在所选行下方插入新行。