一、硬件区别:
(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接口。
二、软件区别:
(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点以下的。、
MPI,I是多点接口(Multi Point Interface)的简称,是西门子公司开发的用于plc之间通讯的保密的协议。MPI通讯是当通信速率要求不高、通信数据量不大时,可以采用的一种简单经济的通讯方式。MPI通信一般常见是使用PLC S7-200/300/400、操作面板TP/OP及上位机MPI/PROFIBUS通信卡,如CP5512/CP5611/CP5613等进行数据交换。MPI网络的通信速率为19.2Kbps~12Mbps,较多可以连接32个节点,较大通讯距离为50m,但是可通过中断器来扩展长度。
MPI是多点接口(Multi Point Interface)的缩写,MPI的物理层是RS-485,较大传输速率为12Mbit/s,默认的传输速率为187. 5kbit/s。两个相邻节点间的较大传送距离为50m,加中继器后为1000m,使用光纤和星形连接时较长为23. 8km。
计算机应插一块MPI卡,或使用PC/MPI、USB/MPI适配器连接计算机和S7 CPU。位于网络终端的站,应将其连接器上的终端电阻开关合上,以接人终端电阻。
下面用一个例子来介绍对MPI网络组态的方法。在STEP 7中生成一个名为MPI_ GD的项目。首先在SIM ATIC管理器中生成3个站,对它们的硬件组态,它们的CPU分别为CPU 413-1、CPU 313C和CPU 312C。点击SIMATIC管理器的工具条上的按钮,打开网络组态工具NetPro,出现了一条自动生成的标有MPI(1)的网络,和没有与网络相连的3个站的图标,图1是已经连接好的MPI网络。
已连接好的MPI网络
已连接好的MPI网络
图1 已连接好的MPI网络
双击某个站的CPU方框中的小红方块,打开MPI接口属性对话框(见图2),用鼠标选中“参数”选项卡的“子网”列表框中的“MPI (1)”,该行的背景变为深蓝色,点击“确定”按钮,CPU被连接到MPI(1)子网上。选中“不连网”后点击“确定”按钮,将断开CPU与MPI(1)子网的连接。点击“确定”按钮返回NetPro,可以看到该CPU是否连接到MPI网络。
MPI接口属性组态
MPI接口属性组态
图2 MPI接口属性组态
也可以将图1的CPU方框中的小红方块“拖放”到MPI网络上,该站便被连接到网络上了,这是一种相当方便的实现连接的方法。也可以用“拖放”的方法断开连接。
应为每个MPI节点设置MPI地址(0~126),编程设备、人机界面和CPU的默认地址分别为0、1、2。可以在“参数”选项卡(见图2)设置MPI站地址,一般可以使用系统*的地址,各站的MPI地址应互不重叠。
点击图2中的“新建”按钮,可以生成一条新的子网。点击“删除”按钮,可以删除选中的“子网”列表框中的子网。
点击“属性”按钮,在打开的对话框中,可以设置选中的子网的属性,例如在“常规”选项卡中修改子网的名称和编号,在“网络设置”选项卡中设置子网的传输速率。点击多选框“改变”,出现“√”后,可以设置较高站地址,一般采用系统默认的设置。
1、激活“手动输入”后可以在此对话框中修改PID参数,须重新下载PID组态。因为工艺对象背景数据块的数据结构未发生变化,需要CPU从STOP到RUN后才生效。
2、或者通过其他途径修改参数,可直接在PID的背景数据块里修改相应参数,参数实时生效,且不需要从新下载或STOP-RUN。PID的增益积分微分这几个参数具有保持性,不用担心断电会丢失,操作如下:
用户:好的,PID参数这部分已了解。请问,PID输出限值可以修改吗。工程师:可以通过组态界面或者上面提到的背景数据块来修改,注意数值范围:
用户:好的,PID参数这部分已了解。请问,PID输出限值可以修改吗。工程师:可以通过组态界面或者上面提到的背景数据块来修改,注意数值范围:
用户:好的,PID参数这部分已了解。请问,PID输出限值可以修改吗。
工程师:可以通过组态界面或者上面提到的背景数据块来修改,注意数值范围:
用户:组态界面修改还是需要下载后从新启动plc,背景数据块修改实时生效吗?工程师:实时修改背景数据块参数可以即时生效。不过,输出限值这类参数很少有应用要实时更改的,通常需要修改的也就比例积分微分这些参数。用户:我这个系统很特别,夏天时输出较大值至60%,冬天时输出较大值至**。这通过触摸屏的按钮切换。工程师:哦,工业应用的需求确实各种各样。既然是通过触摸屏来改参数,那么还需要注意这几个参数不具有保持性,如果仅通过背景数据块修改让它生效了,但若PLC停机再从起的话,数据又恢复到之前组态的数据了。因为只有通过组态界面修改并下载的,才是直接修改数据块的初始值,而您说的这种触摸屏修改参数的方法仅是修改当前值,又没法断电保持。
用户:组态界面修改还是需要下载后从新启动plc,背景数据块修改实时生效吗?工程师:实时修改背景数据块参数可以即时生效。不过,输出限值这类参数很少有应用要实时更改的,通常需要修改的也就比例积分微分这些参数。用户:我这个系统很特别,夏天时输出较大值至60%,冬天时输出较大值至**。这通过触摸屏的按钮切换。工程师:哦,工业应用的需求确实各种各样。既然是通过触摸屏来改参数,那么还需要注意这几个参数不具有保持性,如果仅通过背景数据块修改让它生效了,但若PLC停机再从起的话,数据又恢复到之前组态的数据了。因为只有通过组态界面修改并下载的,才是直接修改数据块的初始值,而您说的这种触摸屏修改参数的方法仅是修改当前值,又没法断电保持。
用户:组态界面修改还是需要下载后从新启动
plc
,背景数据块修改实时生效吗?
工程师:实时修改背景数据块参数可以即时生效。不过,输出限值这类参数很少有应用要实时更改的,通常需要修改的也就比例积分微分这些参数。
用户:我这个系统很特别,夏天时输出较大值至60%,冬天时输出较大值至**。这通过
触摸屏
的按钮切换。
工程师:哦,工业应用的需求确实各种各样。既然是通过触摸屏来改参数,那么还需要注意这几个参数不具有保持性,如果仅通过背景数据块修改让它生效了,但若PLC停机再从起的话,数据又恢复到之前组态的数据了。因为只有通过组态界面修改并下载的,才是直接修改数据块的初始值,而您说的这种触摸屏修改参数的方法仅是修改当前值,又没法断电保持。
用户:那怎么办?工程师:让我们想个折中的方法,如果让触摸屏上通信的参数对应着具有保持性的地址,如MD0。再在OB100中,将MD0传送给OutputUpperLimit,如果通过触摸屏修改参数后,CPU从Stop--Run,就能实时生效了,且MD0具有保持性,也不会丢失了。
用户:那怎么办?工程师:让我们想个折中的方法,如果让触摸屏上通信的参数对应着具有保持性的地址,如MD0。再在OB100中,将MD0传送给OutputUpperLimit,如果通过触摸屏修改参数后,CPU从Stop--Run,就能实时生效了,且MD0具有保持性,也不会丢失了。
用户:那怎么办?
工程师:让我们想个折中的方法,如果让触摸屏上通信的参数对应着具有保持性的地址,如MD0。再在OB100中,将MD0传送给OutputUpperLimit,如果通过触摸屏修改参数后,CPU从Stop--Run,就能实时生效了,且MD0具有保持性,也不会丢失了。
用户:嗯,可行。但还是的Stop--Run,要是设备不允许停机怎么办。工程师:还是上述的方法继续折中哦,把这部分传送编程放到主程序中实时传送就可以了。不过这毕竟不是需要经常修改的参数,我建议您在触摸屏上放置一个确认按钮,修改参数后,点击确认再修改。那么在OB1的程序中,就直接用这个确认按钮的上升沿触发这条传送指令就行了。用户:嗯,我会在触摸屏上设置密码的,也不是什么人都能改参数的。如果,要让PID的正反作用呢?工程师:考虑权限控制是安全的。通常,PID的正反作用,只能在组态界面修改,如下图:
用户:嗯,可行。但还是的Stop--Run,要是设备不允许停机怎么办。工程师:还是上述的方法继续折中哦,把这部分传送编程放到主程序中实时传送就可以了。不过这毕竟不是需要经常修改的参数,我建议您在触摸屏上放置一个确认按钮,修改参数后,点击确认再修改。那么在OB1的程序中,就直接用这个确认按钮的上升沿触发这条传送指令就行了。用户:嗯,我会在触摸屏上设置密码的,也不是什么人都能改参数的。如果,要让PID的正反作用呢?工程师:考虑权限控制是安全的。通常,PID的正反作用,只能在组态界面修改,如下图:
用户:嗯,可行。但还是的Stop--Run,要是设备不允许停机怎么办。
工程师:还是上述的方法继续折中哦,把这部分传送编程放到主程序中实时传送就可以了。不过这毕竟不是需要经常修改的参数,我建议您在触摸屏上放置一个确认按钮,修改参数后,点击确认再修改。那么在OB1的程序中,就直接用这个确认按钮的上升沿触发这条传送指令就行了。
用户:嗯,我会在触摸屏上设置密码的,也不是什么人都能改参数的。如果,要让PID的正反作用呢?
工程师:考虑权限控制是安全的。通常,PID的正反作用,只能在组态界面修改,如下图:
1、在背景数据块中对应的控制位(InvertControl --Bool),但不建议直接对该变量进行控制。我这边有做过实验,不建议这么使用。2、正确的方法,是做两个PID Compact,有正作用的有反作用的,通过触摸屏上的选择项按钮,来确定使用哪个PID控制器。3、可以通过修改增益参数的正负来转变PID的正反作用。
1、在背景数据块中对应的控制位(InvertControl --Bool),但不建议直接对该变量进行控制。我这边有做过实验,不建议这么使用。2、正确的方法,是做两个PID Compact,有正作用的有反作用的,通过触摸屏上的选择项按钮,来确定使用哪个PID控制器。3、可以通过修改增益参数的正负来转变PID的正反作用。
1、在背景数据块中对应的控制位(InvertControl --Bool),但不建议直接对该变量进行控制。我这边有做过实验,不建议这么使用。
2、正确的方法,是做两个PID Compact,有正作用的有反作用的,通过触摸屏上的选择项按钮,来确定使用哪个PID控制器。
3、可以通过修改增益参数的正负来转变PID的正反作用。