Network 1 — 有车自锁

目的:记住"检测到过车辆"。
条件 → 动作:Sensor=1 → Tag_1 置位;自身触点保持。
为什么:车辆经过传感器可能只是瞬间,自锁保证后续定时器有稳定的触发条件。
注意:Tag_1 没有复位条件,会一直保持为 1——这会导致第二辆车无法再次触发抬杆(见 Network 2 的说明)。
逻辑:Tag_1 = (Sensor OR Tag_1)
车辆检测后道闸抬杆 20 秒(必要时再延长 5 秒);演示自锁 + 脉冲定时。
通过 TiaLink 把本示例的 5 个对象导入你当前打开的 TIA Portal 项目。导入前会先预检,默认不覆盖同名对象,导入后不会自动保存。
车辆被传感器检测到后,道闸抬起 20 秒;如果 20 秒后车辆仍在传感器上,再延长 5 秒,然后落杆。
程序用自锁记住"有车",用两个定时器控制抬杆窗口,是自锁 + 脉冲定时 + 延长逻辑的组合练习。
| 信号 | 类型 | 含义 | 作用 |
|---|---|---|---|
Sensor |
I | 车辆检测传感器 | 检测到车时动作 |
Tag_1 |
M | 有车标志 | 传感器触发后自锁 |
Tag_2 |
M | 抬杆窗口 20 秒 | 第一次抬杆时间 |
Tag_3 |
M | 延长窗口 5 秒 | 车未离开时延长 |
Barrier |
Q | 道闸输出 | 抬杆 |
IEC_Timer_0_DB |
TP | 抬杆 20 秒 | 第一次窗口 |
IEC_Timer_0_DB_1 |
TON | 20 秒判断 | 车是否仍在 |
IEC_Timer_0_DB_2 |
TP | 延长 5 秒 | 第二次窗口 |
Sensor=1 → Tag_1 置位并自锁;Tag_1 触发 20 秒 TP → Tag_2=1,Barrier=1 抬杆;Tag_2=0;同时 TON 也已到 20 秒,如果 Sensor 仍为 1 → 触发 5 秒 TP → Tag_3=1,道闸继续抬着;Tag_3=0,Barrier 落杆;Tag_1 仍保持为 1(见下方注意)。
目的:记住"检测到过车辆"。
条件 → 动作:Sensor=1 → Tag_1 置位;自身触点保持。
为什么:车辆经过传感器可能只是瞬间,自锁保证后续定时器有稳定的触发条件。
注意:Tag_1 没有复位条件,会一直保持为 1——这会导致第二辆车无法再次触发抬杆(见 Network 2 的说明)。
逻辑:Tag_1 = (Sensor OR Tag_1)

目的:产生第一次抬杆窗口。
条件 → 动作:Tag_1=1 触发 TP → Tag_2 输出 20 秒。
为什么:TP 触发一次就固定输出 20 秒,不要求 Tag_1 一直变化。
注意:TP 需要上升沿;Tag_1 保持为 1 时 TP 不会再次触发。也就是说,这个程序只能对第一辆车有效;实际道闸应在车离开后复位 Tag_1(或用传感器下降沿重新触发)。
逻辑:Tag_2 = TP(IN = Tag_1, PT = T#20s).Q

目的:把两个时间窗口合并成抬杆输出。
条件 → 动作:Tag_2=1 或 Tag_3=1 → Barrier=1。
为什么:第一次窗口和延长窗口是"或"关系,任意一个有效就抬杆。
逻辑:Barrier = Tag_2 OR Tag_3

目的:20 秒后车还没走,就再抬 5 秒。
条件 → 动作:Tag_1=1 且 TON 已计时 20 秒,且 Sensor 仍为 1 → 触发 TP → Tag_3=1 保持 5 秒。
为什么:用"20 秒后仍在检测"作为延长条件;TP 保证延长窗口固定 5 秒。
注意:如果 20 秒时车已经离开(Sensor=0),延长不会触发,道闸直接落杆。
逻辑:Tag_3 = TP(IN = TON(IN = Tag_1, PT = T#20s).Q AND Sensor, PT = T#5s).Q
Tag_1 自锁后没有复位,TP 不会再触发;需要在车离开时复位 Tag_1,或用传感器下降沿触发。Tag_2/Tag_3 是否还在脉冲时间内。PT(20 秒 / 5 秒)。Sensor 的下降沿复位 Tag_1,让每次来车都能重新触发。Barrier=1,忽略定时逻辑。| 名称 | 数据类型 | 地址 | 注释 |
|---|---|---|---|
| Sensor | Bool | %I0.0 | |
| Barrier | Bool | %Q0.0 | |
| Tag_1 | Bool | %M0.0 | |
| Tag_2 | Bool | %M0.1 | |
| Tag_3 | Bool | %M0.2 |
TIA 自动生成的定时器/计数器实例 DB,导入示例时会一并导入。
| 名称 | 数据类型 | 起始值 | 注释 |
|---|---|---|---|
| Static | |||
| PT | Time | ||
| ET | Time | ||
| IN | Bool | ||
| Q | Bool | ||
| 名称 | 数据类型 | 起始值 | 注释 |
|---|---|---|---|
| Static | |||
| PT | Time | ||
| ET | Time | ||
| IN | Bool | ||
| Q | Bool | ||
| 名称 | 数据类型 | 起始值 | 注释 |
|---|---|---|---|
| Static | |||
| PT | Time | ||
| ET | Time | ||
| IN | Bool | ||
| Q | Bool | ||