6XV1821-0BN80西门子代理商 西门子总代理
6XV1821-0BN80西门子代理商 西门子总代理
6XV1821-0BN80西门子代理商 西门子总代理
6XV1821-0BN80西门子代理商 西门子总代理
西门子PLC程序设计步骤在了解了S7系列PLC程序的结构后,就可以针对不同的控制对象与选择的PLC型号,根据实际情况选择PLC程序的结构框架,并着手进行S7程序的设计工作。
S7程序设计通常可以按照图5-34所示的流程进行。
图5-34 S7程序设计流程图
程序设计与系统硬件设计、系统调试密切相关。软件设计阶段所需要的控制要求、操作界面、PLC型号、I/O地址等都必须在硬件设计阶段已经完成;而程序的输入与编辑、程序检查、程序调试等工作需要在程序编辑与系统调试阶段完成。
对于简单的PLC程序,也可以直接通过PLC的编辑软件,在编辑软件上同时完成程序的设计与输入过程。
(1) 选择程序结构。作为S7软件设计的第一步,首先需要确定的是PLC程序的基本结构体系。
程序结构体系由如下两方面因素决定:
1) 所使用的PLC型号。PLC型号从客观上规定了可以采用程序结构,如:当PLC选择为S7-200时,只能选择线性化结构构成主-子程序的结构形式;当PLC选择为S7-300/400时,可以采用线性化结构、调用式结构或结构化编程。
2) 控制系统的要求。如果控制系统的要求较简单,PLC程序的长度不大,出于简化调试、减少程序设计工作量等方面的考虑,采用线性化结构可以省略缩写程序块、功能块、数据块、局部变量等工作,tigao编程的速度。如果控制系统较复杂,程序所占的容量较大.为了使得程序便于分段阅读与调试,可以考虑采用调用式结构(S7-300/400)与主-子程序结构(S7-200);如果控制系统十分庞大、程序异常复杂,或是系统相类似的控制要求较多,在S7-300/400上可以优先考虑采用结构化编程。
(2) 建立程序文件。建立程序文件包括编写I/O地址表、定义符号地址、编写程序说明等内容、其目的是为程序设计提供方便。
在S7中,一般是直接利用编程软件,通过编程软件的"符号表编辑器"对"符号地址表(Symbol Table)"的编写,一次性完成I/O地址、符号地址、数据格式、注释等全部工作。
(3) 编辑逻辑块。在选定了程序的基本结构体系与完成符号表的编辑后,即可着手进行PLC程序中各类逻辑块的编辑。
逻辑块的编辑包括了编写逻辑控制程序与定义程序变量两部分内容。
逻辑控制程序可以通过梯形图、功能块图、指令表等方法编写;程序变量应通过"变量声明表"建立与明确,对于线性结构的PLC程序也可以不使用变量与变量表。
如果采用的是线性结构,只需要直接编写组织块OBI;如果选择的是分块式结构,则应首先进行FC、FB 等基本逻辑块的编制,Zui后才能编写组织块。通过编程软件输入程序时,同样应该遵守这一原则。因为,如果基本逻辑块未编制完成,在OBI中将无法确定逻辑块所需要的赋值参数,在输入逻辑块调用指令时将会出错。
【西门子PLC实操案例】西门子S7-200 PLC高速计数功能测量瞬时liuliang一、 导读西门子S7-200 PLC高速计数功能除用于常见的运动控制系统转速测量之外,在liuliang计量方面也有着广泛的用途。
由于PLC内部没有相应的算法来计算频率,因此,测定脉冲输出信号的liuliang计的瞬时liuliang就需要在STEP 7 Micro/WIN SMART中通过以下三部分编程来实现:
(1) 定义高速计数器计数liuliang计输出脉冲;
(2) 采用定时中断采集周期时间内高速脉冲输入;
(3) 计算高速输入脉冲频率并通过liuliang换算公式:瞬时liuliang(ml/s)=脉冲频率(pulse/s)÷脉冲当量(pulse/ml)计算瞬时liuliang。
二、定义高速计数器脉冲输出信号的liuliang计适用于单相计数,因此在主程序中定义高速计数器模式0,将HSC0 的控制字节SMB37赋值16#C8,启用高速计数器﹑ 更新初始值﹑设定计数方向为增计数,并使用SM0.1初始化高速计数器。如下图所示
三、高速输入脉冲频率计算
为保证瞬时liuliang的准确性及实时性,须按照一定的时间间隔采集高速输入脉冲。示例中采用定时中断0每隔250ms更新高速输入脉冲值HC0,并在中断程序中应用该数值运算得到高速输入脉冲频率,
四、瞬时liuliang计算参考liuliang换算公式,在中断程序中通过编程运算即可计算出瞬时liuliang,