一、项目需求描述:

1. 我们需要建造一台非标设备,该设备有5台功能各异的电机;

2. 对这5台电机编号(比如1~5或者a~e)需要实现它们的随机间隔启动;

3.输入信号可以定义5个开关分别对应不同的电机,选择的顺序决定电机启动的顺序;比如先选择开关3,则3号电机最先启动,依此类推;未选择的开关对应的电机则不启动;

4. 按触摸式启动按钮,电机按之前选择的顺序间隔启动,间隔时间为5秒

5.按下停止按钮,所有电机停止。

二、硬件选型:

1.西门子S7-1200PLC :S7-1214CDC/DC/DC

2.按钮2个,选择开关5个,控制电机的中继5个

熟悉EPLAN的小伙伴们(尤其是EPLAN学习交流群的小伙伴们),脑海中的电路图是不是自动生成好了呢?第一个完成设计的小伙伴可以把作品发到群里并@博主,如果准确无误,群主发红包以示鼓励可好

(仅限当日有效哈哈)

三、软件环境:

TIA博途V16 / V17

四、程序编写及思路:

为便于后期修改,我们把程序做成一个FB块,并定义形参,将来在主程序调用赋值实际I/O点,如图:

西门子plcs7-1200延时启停案例(案例怎么用SiemensPLC)(1)

并建立了一些中间变量,特别是一些数组变量,来完成程序逻辑,方便做循环控制:

西门子plcs7-1200延时启停案例(案例怎么用SiemensPLC)(2)

接下来我们开始写程序:

为了方便做循环调用,建立一些数组变量,跟输入的形式参数做简单对应:

西门子plcs7-1200延时启停案例(案例怎么用SiemensPLC)(3)

然后对所有标志位初始化,特别的是要对定时器做初始化,停止程序同理:

西门子plcs7-1200延时启停案例(案例怎么用SiemensPLC)(4)

之后做编号程序,用FOR循环和数组简化重复程序量:

西门子plcs7-1200延时启停案例(案例怎么用SiemensPLC)(5)

继续写电机判断编号动作程序,同样使用FOR循环简化重复程序:

西门子plcs7-1200延时启停案例(案例怎么用SiemensPLC)(6)

程序后段把用到的数组中间变量对应输出形式参数:

西门子plcs7-1200延时启停案例(案例怎么用SiemensPLC)(7)

最后程序块在主程序调用,赋值实际I/O点:

西门子plcs7-1200延时启停案例(案例怎么用SiemensPLC)(8)

收工!~

小伙伴们学会了吗?记得一键三连哦!~~

资源获取方式:

  1. 关注我,工控PLC布道师
  2. 私信我,发送关键词:资源
,