• 西门子低压电器总代理商|一级代理
  • 西门子低压电器总代理商|一级代理
  • 西门子低压电器总代理商|一级代理

产品描述

产品规格模块式包装说明全新品牌西门值+ 包装说明 全新 - 产品规格子 现场安装
 现用到西门子S7-300(CPU315)做整流系统的PID控制,具体是由AI模块输入4-20MA信号(既A柜/B柜饱和电抗器控制电流信号反馈和机组A柜/B柜直流电流信号反馈),通过CPU调用PID功能块,实现自动闭环控制,较后由AO模块输出一个4-20MA的信号给稳流系统(既A柜/B柜电流给定反馈)。
发现问题:
1、具体应调用S7的PID中的哪些功能块。直接在OB1里边调用FB41,不知可否。
2、PID标准块FB41的输入输出参数如何整定,PV_PER、SP_INT、PV_IN有何区别。
3、GAIN、TI、TD如何整定。
4、MAN_ON、PVPER_ON怎么用,是直接在FB41的输入端写吗?
原理上,PID的调节节奏应该与其采样周期一致,这是数学模型应与物理过程一致的要求。这也就是FB41要在OB35中周期调用且OB35的周期要与FB41采样周期一致的原因。
当然,在OB1或其他FC、FB中调用FB41也是可以的,此时较好将OB1参数区中扫描周期作为FB41的采样周期。 在管道恒流恒压的PID过程控制中,也曾在FC中无条件连续调用FB41,PID效果也还令人满意。我个人认为,精度要求不高的应用中,简单调用也是可以的。
FB41参数的设置很灵活,可根据自己的习惯或应用的方便选择。下面是一种方式。
MAN_ON :PID手动调节给定值MAN的使能位,可用PID手自动转换位来触发。
PVPER_ON :是PID输入输出参数“PERIPHERAL化”的使能位,即将参数看成0~27648之间的整数。换个说法,就是PID的反馈值直接取自相应AIW通道,而PID输出则直接给出到AQW通道。参数整定由FB41完成。可用调节装置的启动标志来触发本位。
MAN :PID手动调节给定值,当“MAN_ON=1”时有效。
CYCLE :采样周期。根据物理量变化快慢定,一般要求与FB41执行的周期一致。
SP_INT:PID的设定值。注意设定值与反馈值的单位一致。为了避免错误,建议将SP_INT转换为-100.0~100.0%之间无量纲的百分数,输入到FB41时,注意只取百分号之前的数即可。
PV_PER:PID过程的反馈值,直接取自反馈量的AIW通道的A/D码。仅在“PVPER_ON =1”时有效。
GAIN:比例系数。
TI:积分时间。
TD:微分时间。
LMN_PER:PID的调节输出,直接对应调节输出AQW通道。
设置了上述参数,基本的PID调节就可以实现了。根据需要再完善其他参数的设置,比如死区的设定等。
利用STEP7中的PID赋值工具可形象快捷地完成参数设置,结果直接存入相应背景数据块,FB41调用时无须再赋值。监控定时器( Watchdog)又称,它的定时时间为300ms,每次扫描它都被自动复位一次,正常工作时如果扫描周期小于300ms,监控定时器不起作用。如果强烈的外部干扰使PLC(可编程序控制器)偏离正常的程序执行路线,监控定时器不再被周期性地复位,定时时间到时,PLC(可编程序控制器)将停止运行。
      在以下情况下扫描周期可能大于300ms,监控定时器会停止执行用户程序:
      (1)用户程序很长。
      (2)出现中断事件时,执行中断程序的时间较长。
      (3)循环指令使扫描时间延长。
      为了防止在正常情况下监控定时器动作,可将监控定时器复位(WDR)指令插入到程序中适当的地方,使监控定时器复位。如果FOR/NEXT循环程序的执行时间可能超过监控定时器的定时时间,可将WDR指令插入到循环程序中。条件跳转指令JMP若在它对应的标号之后(即程序往回跳),可能因连续反复跳步使它们之间的程序被反复执行,总的执行时间超过监控定时器的定时时间。为了避免出现这样的情况,可在JMP指令和对应的标号之间插入WDR指令。
      使用WDR指令后,在终止本次扫描之前,下列操作将被禁止:
      (1)通信(自由口模式除外)。
      (2)I/O更新(立即I/O除外)。
      (3)强制更新。
      (4)SM位更新(不能更新SM0,SM5~SM29)。
      (5)运行时间诊断。
      (6)在中断程序中的STOP指令。
      (7)如果扫描时间超过25s,10ms定时器和lOOms定时器不能正确累计时间。
      如果将PLC CPU的方式开关切换到STOP位置,1.4S内CPU转到停止模式。

西门子低压电器总代理商|一级代理

西门子PLC是一种专业应用于企业的计算机,全名为可编程控制器。 在西门子PLC投入运行时,其工作过程一般分为三个阶段,即输入采样、用户程序执行和输出刷新三个阶段。完成上述三个阶段称作一个扫描周期。在整个运行期间,西门子PLC的CPU以一定的扫描速度重复执行上述三个阶段。
*处理器是西门子PLC正常工作的神经中枢,当PLC投入运行时,首先它以扫描的方式接收现场各输入装置的状态和数据,并分别存入I/O映象区,然后从用户程序存储器中逐条读取用户程序,经过命令解释后按指令的规定执行逻辑或算数运算的结果送入I/O映象区或数据寄存器内。等所有的用户程序执行完毕之后,较后将I/O映象区的各输出状态或输出寄存器内的数据传送到相应的输出装置,如此循环运行,直到停止运行。
其次是存储器。存储器是存放系统软件的称之为系统程序存储器;存放应用程序的存储器则被我们成为是用户成粗存储器。
其三是电源。当PLC投入运行后,其工作过程一般分为三个阶段,即输入采样、用户程序执行和输出刷新三个阶段。完成上述三个阶段称作一个扫描周期。
以上就是由电工论坛整理的西门子PLC工作原理以及内部构造的简要介绍。1、 项目程序命名为“项目名称_日期”(程序太多,容易记混)。
2、 改动程序时一定要有原程序的备份(组态硬件可能会导致程序丢失,而且修改太多或时间太长,容易记混)。
3、 项目文成后应做实际应用程序备份(备份分两份:一份给厂家自己备用,一份留给自己公司以便后用)。
4、 Wincc程序命名不用中文(wincc找不到中文文件)。
5、 做备份压缩时应将STEP 7 和 Wincc 软件关掉 (文件压缩后不易丢失,压缩时不能打开文件)

目前西门子S7-300/400系列的PLC的通讯方式开始大量使用工业以太网通讯,MP277/377、xP177B系列触摸屏也集成了以太网接口,这带来一个好处,所有的接口都统一,在网络通讯时采用都以太网接口,所有的设备组成一个局域网,包括上位监控计算机、编程设备、PLC、触摸屏都能很方便地互相访问,需要扩展多一个设备也很方便,只需要加一个交换机就能扩展出多个接口。因为有这些好处,所以采用以太网通讯越来越流行,下面说一说以太网通讯的其中一个应用,PLC与PLC之间通过以太网互连。
      一、S7-300/400之间互连
1、采用PLC与PLC通过以太网访问,需要增加以太网模块,如CP343-1,CP443-1的模块,或者采用带有PN接口的PLC,如CPU315-2DP/PN的PLC。
2、采用两块CP343-1互连,先在同一个项目里做好两套PLC的硬件组态,分配好IP地址,打开NetPro,选择其中一个PLC,双击连接列表上的空白行,添加一个
S7 conection。选择连接的另一个PLC,记住连接的ID号。通讯双方的其中一个站为Client端,“Establish an active connection”的选项(默认是的)。这样NetPro的配置就完成了,编译、下载完成
3、打开其中两套PLC的OB1,调用FB12(BSEND)块发送数据,FB13(BRCV)块接收数据,1#PLC的发送对应2#PLC的接收,1#PLC的接收对应2#PLC的发送。
4、调用FB12的时候几个参数的含意,a、REQ,发送开始,上升沿触发发送工作;b、ID,连接ID号,这个ID号是在NetPro组态时生成的ID号;c、R_ID,连接号,相同连接号的FB块互相对应发送/接收数据,这个是由用户编程时定义的,例如1#PLC的FB12的R_ID是DW#16#2,则2#PLC的FB13的R_ID也是DW#16#2,这样才能保正常接收发送;d、DONE,发送完成,如果REQ端是一个不停的脉冲,正常情况下DONE端也应该也是一个不停的脉冲反馈;e、SD_1,发送的开始地址,以P# x.x byte xxx来表示,f、LEN,发送数据的长度。
5、采用FB12、FB13来进行发送/接收是比较麻烦的,一方面需要两端的以太网模块都支持双边发送,如Cp343-1-Lean就不支持了,另一方面,两边都要写程序,对于增加的系统不太方便,所以这时可以在NetPro里把One-way(单边通讯,后FB12、FB13不能使用),采用FB14(GET)取数据、FB15(PUT)发送数据来做,FB14的参数定义和FB12差不多,只是少了R_ID和LEN,这样更方便一些,而且还有一个好处,不需要对原有的系统进行什么更改,只需要把单边的PLC组态和程序下载就可以了
6、需要注意的另一个问题是FB和SFB的区别,在S7-400上采用SFB,在S7-300上采用FB,在S7-300集成的PN口上,采用SFB,这个问题曾经折磨过我一两天才解决。
      二、WinLC与PLC互连
WinLC是在PC机上的软件PLC,可以把一台PC机当成PLC使用。这样对于不能采用模拟器连接的软件是比较方便的,如采用Intouch、Ifix这些SA软件做为上位机软件时,测试是个麻烦的问题,需要与实际机器连接起来才能测试,但如果有WinLC,可以把程序拷到WinLC上运行,上位机软件与WinLC联机测试,省去不少工夫,所以WinLC对于不方便进行现场测试的环境,是个不错的替代方案。WinLC既然是一套软件PLC,就能够实现PLC的功能,那么与PLC通讯也是可以实现的,
下面说一说WinLC与S7-300互连
1、新建一个项目,建立一个S7-300的站点,硬件组态;建立一个PC站点,在PC站点上增加一个WinLC和一个IE General,IE General的IP地址与PC机的IP地址一致,其实IE General指的就是PC机的以太网卡。
2、打开NetPro,在WinLC上新建一个S7 conection,指向S7-300,编译、存盘
3、在PCStation上增加WinLC和IE General,需要注意槽号要与硬件配置时候一样
3、打开WinLC的OB块,调用SFB14、SFB15来读写S7-300的数据
4、启动WinLC软件,下载程序,这样就可以实现软件PLC与PLC互连了
      三、两种方式的结合
如果有多台PLC需要与PC机上的SA软件通过OPC进行通讯,但是又发现SA软件读取的速度太慢,不能满足刷新要求,或者数据要做些预处理才能显示,SA软件上运行太多的脚本又影响速度,那么通过软PLC把多台PLC的数据先读过来进行预处理,SA软件只与一台PLC进行通讯,这样SA软件上的工作量会少一些。这个时候把上面说的两种方式结合一下,就能够实现这样的功能了。
1、通讯连接参照上面的方法设置
2、在WinLC的PC站点上添加一个OPC服务器,在NetPro里面打开OPC的连接列表,
添加一个S7 conection,指向WinLC,编译、下载
3、通过OPC客户端可以直接访问OPC服务器的内容,常用的SA软件如Intouch、Citect、IFix这些软件都支持OPC,设置访问连接就可以在软件上直接读写了,如果更简单的界面,可以自己用VB编写一个OPC客户端,读写数据都在VB程序上实现,不使用SA软件,可以省掉不少钱了。



http://zhangqueena.b2b168.com

产品推荐