西门子襄阳授权代理商
PLC程序的经验设计法
1、PLC程序的经验设计法
在PLC发展的初期,沿用了设计继电器电路图的方法来设计梯形图程序,即在已有的些典型梯形图的基础上,根据被控对象对控制的要求,不断地修改和完善梯形图。有时需要多次反复地调试和修改梯形图,不断地增加中间编程元件和触点,后才能得到一个较为满意的结果。这种方法没有普遍的规律可以遵循,设计所用的时间、设计的质量与编程者的经验有很大的关系,所以有人把这种设计方法称为经验设计法。它可以用于逻辑关系较简单的梯形图程序设计。
用经验设计法设计PLC程序时大致可以按下面几步来进行:分析控制要求、选择控制原则;设计主令元件和检测元件,确定输入输出设备;设计执行元件的控制程序;检查修改和完善程序。
2、经验设计法的特点
经验设计法对于一些比较简单程序设计是比较奏效的,可以收到快速、简单的效果。但是,由于这种方法主要是依靠设计人员的经验进行设计,所以对设计人员的要求也就比较高,特别是要求设计者有一定的实践经验,对工业控制系统和工业上常用的各种典型环节比较熟悉。经验设计法没有规律可遵循,具有很大的试探性和随意性,往往需经多次反复修改和完善才能符合设计要求,所以设计的结果往往不很规范,因人而异。
经验设计法一般适合于设计一些简单的梯形图程序或复杂系统的某一局部程序(如手动程序等)。如果用来设计复杂系统梯形图,存在以下问题:
1).考虑不周、设计麻烦、设计周期长
用经验设计法设计复杂系统的梯形图程序时,要用大量的中间元件来完成记忆、联锁、互锁等功能,由于需要考虑的因素很多,它们往往又交织在一起,分析起来非常困难,并且很容易遗漏一些问题。修改某一局部程序时,很可能会对系统其它部分程序产生意想不到的影响,往往花了很长时间,还得不到一个满意的结果。
2).梯形图的可读性差、系统维护困难
用经验设计法设计的梯形图是按设计者的经验和习惯的思路进行设计。因此,即使是设计者的同行,要分析这种程序也非常困难,更不用说维修人员了,这给PLC系统的维护和改进带来许多困难。集成在 CPU 的固件中,无须进行特殊组态。
SIMATIC 存储卡(用来运行 CPU)西门子CPU1517-3PN/DP模块
用作插入式装载存储器,或用于更新固件。
还可用于存储附加文档或 csv 文件(用于配方和归档)
通过用户程序的系统函数,实现数据存储/读取
数据记录(归档)和配方
配方和归档以 csv 文件保存在 SIMATIC 存储卡中;
便于使用 Office 工具或通过 web 服务器,访问工厂运行数据
通过 Web 浏览器或 SD 读卡器,可方便地访问机器的组态数据(与控制器之间的双向数据交换)
编程
使用 STEP 7 Professional V13 UPD3 或更高版本进行编程
用于从 SIMATIC S7-300/S7-400 移植到 S7-1500 的移植工具;可基本上自动转换程序代码。记录不可转换的代码,并可以手动进行调整。
STEP 7 V11 项目可在兼容模式下继续和 STEP 7 V12 组合使用 。
S7-1200 程序可通过复制/粘贴手段转移至 S7-1500
描述
如果往一个格式化过的 SIMATIC 存储卡中下载一个组态好的 S7-1500 SIPLUS(6AG1*)设备,并将 CPU 调整为“ 运行 ”模式,那么 CPU 会无错误运行。但当电源关闭再打开,或者执行存储器复位(MRES)后,CPU S7-1500 SIPLUS 将会报如下错误信息并进入停止模式。
“存储卡评估错误:存储卡不能接收或无法安装,功能完成/被放弃,新的启动禁止设置:-外部装载存储区已损坏(在博途中删除或移除存储卡)-硬件组态没有装载或装载/改变没有成功完成”
参数说明:
1、Start:在参数操作过程中 start 的上升沿会启动参数操作任务。
2、ReadWrite:参数=0 表示读取操作,如果等于 1 对应写入操作。
3、hardwareID: 硬件标识符。
4、Parameter:需要读写的参数号。
5、INDEX:参数下标。
6、ValueWrite1:此处写入DWORD或DINT类型之外的参数值。
7、ValueWrite2:此处写入DWORD或DINT类型的参数值。
8、AxisNo:驱动编号,V90PN需设置为2。
9、ERROR:出错标志位。
10、ErrorID:返回值。
11、BUSY:当写入参数执行时为 1,如果完成或者故障后变成 0。
12、DONE:任务执行完成,可以用于编写程序时复位请求使用。
13、Ready:程序块没有执行读或写操作,处于准备状态。
14、DiagId:返回值。
15、ValueRead1:此处读实型的参数值。
16、ValueRead2:此处读整型的参数值。
17、Format:所读参数的格式。
18、ErroNo:错误代码。
2.1.1通过FB287写入P2581(整型)=12345。将要设定的参数值写入变量“wr_dint_value”=12345,通过设置Start管脚0->1并保持待写参数完成
计数器C
计数器在程序中用作计数控制。FX2N系列可编程控制器计数器可分为内部计数器及外部计数器。
内部计数器:对机内元件(X、Y、M、S、T和C)的信号计数的计数器。由于机内信号的频率低于扫描频率,内部计数器是低速计数器,也称普通计数器。对高于机器扫描频率的信号进行计数,需用高速计数器。
(1)16位加计数器
16位加计数器有200个,地址编号为C0-C199。其中C0~C99为通用型,C100~C199为掉电保持型。设定值为1~32767。
图3计数器的工作梯形图
16位加计数器的的使用示意图
(a)、(b)、(c)计数器C0的当前值加1;(d)计数器C0的当前值复位
图4 16位加计数器应用波形图
(2)32位加/减计数器
32位加/减计数器共有35个,编号为C200~C234,其中C200~C219为通用型,C220~C234为断电保持型。它们的设定值为-~+,可由常数K设定,也可以通过指定数据寄存器来设定。32位设定值存放在元件号相连的两个数据寄存器中。如果指定的寄存器为D0,则设定值存放在D1和D0中。
(a)工作梯形图
(b)应用波形图
32位加/减计数器的工作过程
(a)工作梯形图;(b)应用波形图