一、硬件区别: (1)最主要地区别就是S7-300更模块化了,S7-200系列是整体式的,CPU模块、I/O模块和电源模块都在一个模块内,称为CPU模块;而S7-300系列的,从电源,I/O,CPU都是单独模块的。但是这么说容易让人误解200系列不能扩展,实际上200系列也可以扩展,只不过买来的CPU模块集成了部分功能,一些小型系统不需要另外定制模块,200系列的模块也有信号、通信、位控等模块。 (2)200系列的对机架没有什么概念,称之为导轨;为了便于分散控制,300系列的模块装在一根导轨上的,称之为一个机架,与中央机架对应的是扩展机架,机架还在软件里反映出来。 (3)200系列的同一机架上的模块之间是通过模块正上方的数据接头联系的;而300则是通过在底部的U型总线连接器连接的。 (4)300系列的I/O输入是接在前连接器上的,前连接器再接在信号模块上,而不是I/O信号直接接在信号模块上,这样可以更换信号模块而不用重新接线。 (5)300系列2DP的部分CPU带有profibus接口。 硬件的区别,一句话:西门子plc系统越大智能化越高,越方便维护。 二、软件区别: (1)200系列用的STEP7-Micro/WIN40sp6软件;300使用的是STEP7软件,带了Micro和不带的区别是相当的明显啊。 (2)200系列的编程语言有三种--语句表(STL)、梯形图(LAD)、功能块图(FBD);300系列的除了这三种外,还有结构化控制语言(SCL)和图形语言(S7 graph),其中SCL就是一种高级语言,以前用惯了LAD,现在还没有适应,也没有时间来学习。 (3)300软件最大的特点就是提供了一些数据块来对应每一个功能块(Function Block-FB),称之为Instance,nnd,看起来要向C++看齐。 (4)300再也不能随意的自定义Organization Block、sub-routine和Interrupt routine了,现在OB1惟我独尊了,没事系统只能调用它了,其它的什么东东则变成了FB-Function Block和FC-Function,其它的也是预定义成了系统的了,System的S给它们(SFB、SFC)定义了自己的身份。 软件的区别,一句话总结:编程理念不一样。 三、应用区别 如果你看了上面的书面形式的介绍,不看这个的话,恭喜,你错过了最重要的区别---应用方面的区别。 200在西门子的PLC产品类里属于:小型PLC系统,适合的控制对象一般都在256点以下的; 300在西门子的PLC产品类里属于:中型PLC系统,适合的控制对象一般都在256点以上,1024点以下的编程软件不一样,具体编程语言编程思路都不一样! 1、S7-200系列用的STEP7-Micro/WIN软件;S7-300使用的是STEP7软件。 2、S7-200系列的编程语言有三种:语句表(STL)、梯形图(LAD)、功能块图(FBD);S7-300系列的除了这三种外,还有结构化控制语言(SCL)和图形语言(S7 graph),其中SCL就是一种高级语言,高级语言可以更加方便的解决客户的专有问题,提高了程序执行效率,缩短了程序执行时间。 3、S7-300软件最大的特点就是提供了一些数据块来对应每一个功能块(Function Block-FB),称之为Instance。S7-300不能随意的自定义Organization Block、sub-routine和Interrupt routine,系统只能调用它OB1,其它的用FB-Function Block和FC-Function方式编辑,其它的也是预定义成了系统的了,System的S给它们(SFB、SFC)定义了自己的身份。 4、S7-200在西门子的PLC产品类里属于:小型PLC系统,适合的控制对象一般都在256点以下的;S7-300在西门子的PLC产品类里属于:大中型PLC系统,适合的控制对象一般都在256点以上,1024点以下的。 西门子S7-1200编程技巧 1、指令分为单扫描周期指令和多扫描周期指令。对于多扫描周期指令,如果EN或者REQ只使能一个扫描周期,该指令不能成功执行;例如大多数的通信指令; 2、FB块的输入输出形参存储于背景数据块中,在调用该FB时实参可选;而FC块的输入输出是临时内存,必须指定实参才能运行; 3、FB块的输入输出虽不是静态变量,但亦有保持功能,具体视程序而定; 4、注意变量被多次赋值时的先后顺序!因为变量的值总会被最后执行动作更新,前面的值将被覆盖;例如下图:
|