土木在线论坛 \ 电气工程 \ 其他电气设计软件 \ 西门子S7-1200 PLC控制电机随机启动

西门子S7-1200 PLC控制电机随机启动

发布于:2024-01-24 11:11:24 来自:电气工程/其他电气设计软件 [复制转发]


一、动作描述:      

1. 现有5台电机,进行电机1~5编号需要实现它们的随机间隔启动;

2.5台电机对于5个选择开关,选择的顺序决定电机启动的顺序;比如先选择开关2,则2号电机最先启动,依次类推;未选择的电机不启动;

3. 按启动开关,电机按之前选择的顺序间隔启动,间隔时间为5秒

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


     
二、硬件设备:      

1.西门子S7-1200PLC :

S7-1214CDC/DC/DC


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


     
三、软件:      

1.西门子PLC编程软件:TIA博途V16


     
四、I/O分配:      

输入点

注释

输出点

注释

I0.0

开始按钮

Q0.0

1号电机

I0.1

停止按钮

Q0.1

2号电机

I0.2

选择开关1

Q0.2

3号电机

I0.3

选择开关2

Q0.3

4号电机

I0.4

选择开关3

Q0.4

5号电机

I0.5

选择开关4



I0.6

选择开关5




     
五、程序编写及思路:      

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



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



接下来我们开始写程序:

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



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



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



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



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



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



程序完成,简洁且实用!

全部回复(0 )

只看楼主 我来说两句抢沙发
这个家伙什么也没有留下。。。

其他电气设计软件

返回版块

18.08 万条内容 · 130 人订阅

猜你喜欢

阅读下一篇

西门子PLC进行连续数据采集、时序和故障追踪的方法

西门子可以通过博图软件进行PLC数据的采集和状态记录,但是,仅适用于S7-1200和S7-1500,且不能连续录波。如果需要连续记录PLC内的数据,或者进行长时间的时序和故障追踪,可以采用第三方的软件。 国外的有PLC-ANALYZER、IBA等,价格较高,无法免费使用。 国内的PLC-Recorder,免费功能强大,入门简单。下面将简单介绍一下利用该软件对西门子各种PLC(S7-200、S7-200SMART、S7-1200、S7-1500、S7-300、S7-400、LOGO!)进行录波的操作方法。

回帖成功

经验值 +10