基于西门子1200的智能停车场车位控制系统开发之旅

基于西门子1200的智能停车场,停车场车位控制系统 基干西门子1200的博途 仿真 有软件组态HM画面 PLC选型及10分配表 ,根据需要发其中一个版 实现功能: 假设有一停车场共有20个车位 在入口处 装设- - 传感器,用来检测车辆进入的数目,在出口处 装设一传感器,用来检测车辆出去的数目 尚有车位 时,入口闸栏才可以将门开启让车辆进入停放,并有 一指示灯表示尚有车位 车位已满时,则有一指示灯 显示车位已满,且入口闸栏不能开启让车辆进入 可 从7段数码管上品示目前停车场共有几部车

最近捣鼓了一个基于西门子1200的智能停车场项目,在博途环境下进行仿真实现,今天来和大家分享分享。

PLC选型及I/O分配表

西门子S7 - 1200系列PLC就很适合这个小项目。咱来看看I/O分配:

信号描述 地址 类型
入口车辆检测传感器 I0.0 数字量输入
出口车辆检测传感器 I0.1 数字量输入
车位已满指示灯 Q0.0 数字量输出
尚有车位指示灯 Q0.1 数字量输出
入口闸栏控制 Q0.2 数字量输出
7段数码管显示数据 MW0 - MW2 模拟量输出(这里简化理解为通过程序逻辑控制数码管显示数字)

软件组态与HMI画面

在博途软件里,新建一个S7 - 1200的项目,进行硬件组态,把咱们选好的PLC型号添加进去,再配置好相应的I/O模块。

基于西门子1200的智能停车场,停车场车位控制系统 基干西门子1200的博途 仿真 有软件组态HM画面 PLC选型及10分配表 ,根据需要发其中一个版 实现功能: 假设有一停车场共有20个车位 在入口处 装设- - 传感器,用来检测车辆进入的数目,在出口处 装设一传感器,用来检测车辆出去的数目 尚有车位 时,入口闸栏才可以将门开启让车辆进入停放,并有 一指示灯表示尚有车位 车位已满时,则有一指示灯 显示车位已满,且入口闸栏不能开启让车辆进入 可 从7段数码管上品示目前停车场共有几部车

HMI画面这块,咱得做几个关键元素。一个是显示当前车辆数的7段数码管样式控件,还有车位已满和尚有车位的指示灯,以及一个模拟入口闸栏状态的动画(开或者关)。

代码实现与分析

下面上点核心代码讲讲逻辑(以梯形图为例):

车辆计数

ladderlogic 复制代码
// 入口车辆计数
A I0.0
FP M0.0
= M0.1
L MW0
L 1
+I
T MW0

// 出口车辆计数
A I0.1
FP M0.2
= M0.3
L MW0
L 1
-I
T MW0

分析:当入口传感器I0.0检测到上升沿(也就是有车辆进入),通过FP指令产生一个脉冲,M0.1置1,此时将MW0里存的当前车辆数加1 。出口同理,当I0.1检测到上升沿,MW0里的车辆数减1 。

车位状态判断与控制

ladderlogic 复制代码
// 车位已满判断
L MW0
L 20
>=I
= Q0.0

// 尚有车位判断
L MW0
L 20
<I
= Q0.1

// 入口闸栏控制
A Q0.1
= Q0.2

分析:先看车位已满判断,当MW0里的车辆数大于等于20时,车位已满指示灯Q0.0点亮。尚有车位判断则相反,车辆数小于20时,尚有车位指示灯Q0.1点亮。而入口闸栏只有在尚有车位(Q0.1为1)时才能开启(Q0.2置1 )。

7段数码管显示

ladderlogic 复制代码
// 简单示例,实际需根据数码管译码规则详细编写
L MW0
T MW2

分析:这里简单地把MW0里当前车辆数传到MW2 ,实际应用中得按照7段数码管的译码规则,把MW0中的数字转换成对应的数码管显示编码。

博途仿真测试

在博途里做好这些后,就可以进行仿真测试啦。通过模拟入口和出口传感器信号,观察指示灯和数码管显示,还有闸栏的控制,看看是不是符合咱们预期的功能。要是有问题,就回头检查代码和组态,不断优化。

这个基于西门子1200的智能停车场车位控制系统,虽然规模不大,但涵盖了PLC控制、HMI设计等不少有趣的内容,希望能给大家带来一些启发。

相关推荐
三天不学习2 个月前
Xamarin 与 .NET MAUI:.NET跨平台原生移动App开发前世今生
.net·xamarin·.net maui
E***U9452 个月前
前端在移动端中的Xamarin
xamarin
询问QQ688238862 个月前
FLUENT与MATLAB联合仿真计算:开启高效数据处理之旅
xamarin
初级代码游戏8 个月前
Xamarin劝退之踩坑笔记
笔记·maui·xamarin
初级代码游戏8 个月前
Xamarin入门笔记(Xamarin已经被MAUI取代)
笔记·maui·xamarin
冰茶_9 个月前
MAUI与XAML交互:构建跨平台应用的关键技巧
microsoft·微软·c#·交互·maui·xamarin
Ryannn_NN9 个月前
avalonia android连接模拟器时报错adb cannot run as root in production builds,没有权限
android·adb·wpf·xamarin
冰茶_10 个月前
WPF之XAML基础
microsoft·微软·c#·.net·wpf·xaml·xamarin
冰茶_10 个月前
.NET MAUI 发展历程:从 Xamarin 到现代跨平台应用开发框架
学习·microsoft·微软·c#·.net·xamarin