【非标自动化】plc中有哪些常用的软元件,比如常开触点。另外有哪些是常用的指令

"常开触点、常闭触点"严格来说不是软元件。

X、Y、M、D、T、C 这些才是软元件/设备(Device);常开、常闭、上升沿、下降沿属于对位软元件进行逻辑判断的触点形式/梯形图元素

比如:

复制代码
X0
--| |--       X0常开触点

X0
--|/|--       X0常闭触点

X0
--|↑|--       X0上升沿触点

三个地方用的都是同一个软元件 X0,只是读取它的方式不同。

对现在学习 AutoShop 和以后看别人 PLC 项目,建议把常用东西整理成 "软元件 → 梯形图基本元素 → 常用指令 → 项目级功能" 四层。


一、PLC 最常见的软元件

类型 常见符号 可以先理解成 典型用途
输入 X PLC从外面收到的布尔量 按钮、传感器、限位
输出 Y PLC输出到外面的布尔量 电磁阀、继电器、灯
内部继电器 M PLC内部的 bool 状态、条件、流程标志
数据寄存器 D PLC内部的数字变量 参数、计数、位置、结果
定时器 T Timer 延时、超时
计数器 C Counter 次数、产品数量
状态/步进 S 流程状态 自动流程步序
特殊继电器 SM PLC系统提供的 bool 首次扫描、运行状态等
特殊寄存器 SD PLC系统数据 扫描周期、系统状态等

不同品牌叫法会有差异,比如汇川、三菱、西门子不完全一样,所以现在不要死记具体编号,先建立类型概念。

X:输入

例如:

复制代码
X0 = 启动按钮
X1 = 急停
X2 = 工件到位
X3 = 气缸原位
X4 = 气缸伸出到位

可以把 X 理解成:

PLC看到的外部世界。

Y:输出

例如:

复制代码
Y0 = 输送带
Y1 = 气缸电磁阀
Y2 = 三色灯绿灯
Y3 = 蜂鸣器

可以理解成:

PLC控制外部世界的手。

M:内部继电器

这个特别重要。

复制代码
M0 = 复位中
M1 = 自动运行
M2 = 允许拍照
M3 = 视觉完成
M4 = 报警

它没有真实接线。

如果你有编程背景,可以粗略把:

复制代码
M100

理解成一个:

复制代码
bool M100;

真实项目里面会看到大量 M,因为程序需要保存各种内部状态

D:数据寄存器

D 更像:

复制代码
int / short / word

例如:

复制代码
D100 = 当前流程步骤
D101 = 产品数量
D102 = 目标速度
D103 = 实际位置
D104 = 视觉检测结果

以后复杂项目里 M + D 会非常重要。


二、最常见的梯形图基本元素

这些属于你看别人程序时必须做到一眼识别的东西。

元素 示意 含义
常开触点 `--
常闭触点 `-- /
上升沿 `--
下降沿 `--
普通线圈 --( )-- 条件成立时置1
SET --[SET]-- 置1并保持
RST --[RST]-- 清0
串联 A AND B 两个条件都满足
并联 A OR B 任一个满足

比如:

复制代码
 X0       X1
--| |-----| |----------( Y0 )

就是:

复制代码
X0 AND X1 → Y0

而:

复制代码
 X0
--| |----+
         +------------( Y0 )
 X1      |
--| |----+

就是:

复制代码
X0 OR X1 → Y0

这其实就是 PLC 最底层的布尔逻辑。


三、PLC 最常用的一批指令

这里不要一开始背几百条指令。

实际项目里真正高频使用的,首先就是下面这些类别。

类别 常见指令/概念 用途
置位复位 SET、RST 保存状态
定时 TON/T、TOF等 延时、超时
计数 CTU/C、CTD 次数统计
比较 =、<>、>、<、>=、<= 数据条件判断
数据传送 MOV 数据赋值
算术 ADD、SUB、MUL、DIV 数据计算
自增自减 INC、DEC 数量变化
数据转换 INT、REAL等 类型转换
位运算 AND、OR、XOR、SHL/SHR 位处理
跳转/调用 JMP、CALL等 程序组织
通信 Modbus/TCP/串口等 外部设备通信
运动控制 MC_* 等 伺服、轴控制

其中前面几个尤其重要。


SET / RST

真实项目极其常见。

复制代码
启动按钮
   ↓
SET M100

意味着:

复制代码
M100 = 1

即使启动按钮松开:

复制代码
M100仍然 = 1

直到:

复制代码
停止按钮
   ↓
RST M100

才变成:

复制代码
M100 = 0

所以它特别适合表达:

复制代码
正在运行
正在复位
报警状态
请求拍照
流程启动
某动作已经完成

定时器 T

例如:

复制代码
       X0
--| |------------[ T0 K20 ]

意思大致是:

X0持续成立 → T0开始计时 → 到设定时间后 T0 到时。

于是可以:

复制代码
       T0
--| |----------------( Y0 )

真实项目最常见两个用途:

延时:

复制代码
气缸到位
 ↓
等待500ms
 ↓
拍照

超时检测:

复制代码
气缸伸出
 ↓
开始计时
 ↓
3秒还没收到伸出到位
 ↓
报警

后者在设备程序里特别多。


比较指令

例如:

复制代码
D100 = 30

可能表示:

当前自动流程运行到 Step 30。

于是:

复制代码
D100 == 30
AND
X10 == ON
       ↓
执行某动作

所以以后看到:

复制代码
=
>
<
>=
<=
<>

基本就是:

根据数据值决定程序走哪条路。


MOV:数据搬运

非常高频。

复制代码
MOV K100 D200

可以粗略理解成:

复制代码
D200 = 100;

例如:

复制代码
MOV K10 D100

如果 D100 是流程步骤,就是:

当前流程进入 Step 10。

所以以后读步序程序,会经常看到:

复制代码
MOV K10 D100

MOV K20 D100

MOV K30 D100

本质就是状态机:

复制代码
Step10 → Step20 → Step30

四、再往上一层,就是"项目级功能"

这部分不能再当普通指令理解了。

例如汇川 AutoShop 里面会看到大量:

复制代码
MC_Power
MC_Home
MC_MoveAbsolute
MC_MoveRelative
MC_MoveVelocity
MC_Stop

这些属于运动控制功能块

它们解决的是:

复制代码
伺服使能
回零
绝对定位
相对定位
速度运行
停止

再比如通信:

复制代码
Modbus RTU
Modbus TCP
TCP Socket
UDP
自由协议串口
EtherCAT
CANopen

这时候已经进入:

PLC如何控制和协调其他设备。

所以不用把所有东西混在一起背。


五、建议现在建立这张"PLC知识树"

复制代码
PLC程序
│
├── ① 软元件
│    ├── X:输入
│    ├── Y:输出
│    ├── M:内部位
│    ├── D:数据
│    ├── T:定时器
│    ├── C:计数器
│    └── S:状态
│
├── ② 梯形图基本元素
│    ├── 常开
│    ├── 常闭
│    ├── 上升沿
│    ├── 下降沿
│    ├── 线圈
│    ├── SET
│    └── RST
│
├── ③ 数据处理指令
│    ├── MOV
│    ├── 比较
│    ├── ADD/SUB
│    ├── MUL/DIV
│    ├── INC/DEC
│    └── 类型转换
│
├── ④ 流程控制
│    ├── 状态机
│    ├── 步序
│    ├── CALL
│    └── JMP
│
├── ⑤ 设备控制
│    ├── 定时
│    ├── 计数
│    ├── 高速计数
│    ├── PWM/PTO
│    └── 运动控制 MC
│
└── ⑥ 通信
     ├── 串口
     ├── Modbus RTU
     ├── Modbus TCP
     ├── TCP/UDP
     ├── EtherCAT
     └── CANopen

现阶段不要平均用力

优先把:

X/Y/M/D → 常开/常闭/上下升沿 → 普通线圈/SET/RST → T/C → MOV → 比较 → 四则运算

练到看到梯形图几乎不用思考就认识。

然后马上进入:

手自动 → 复位 → 自动步序 → 气缸 → 报警 → 异常恢复

等把普通设备控制程序看熟以后,再集中搞:

伺服轴控 + 通信 + 视觉 + 上位机。

这样比从 AutoShop 指令手册第一页开始把几百条指令全部学一遍效率高得多。

相关推荐
名字还没想好☜2 小时前
Kubernetes NetworkPolicy 实战:默认全通的坑与用标签做零信任隔离
运维·云原生·容器·kubernetes·networkpolicy
小杨互联网2 小时前
Cursor 前端 Dist 自动化逆向框架:/fr 流水线 · 4 脚本 · Vite/Webpack
前端·webpack·自动化·前端逆向框架·ai前端逆向框架
Eloudy2 小时前
给 Linux 加新硬盘的挂载命令
linux·运维·服务器
三言老师2 小时前
ss高效查看网络连接端口实操
linux·运维·服务器·网络
三言老师2 小时前
traceroute路由追踪实操
linux·运维·服务器·网络
Nayxxu2 小时前
Gemini Computer Use 安全清单:浏览器、桌面、移动端自动化怎么控权限
运维·安全·自动化
minhuan3 小时前
大模型应用CI/CD全流程解析:打通模型训练、评估、部署自动化,应用持续迭代实践23.7
ci/cd·自动化·大模型应用·大模型应用ci/cd全流程解析·大模型应用工程体系
愚公搬代码3 小时前
【愚公系列】《WorkBuddy从上手到变现》017-用AI Agent实现公众号自动化运营(从1个号到矩阵:规模化的可能和边界)
运维·人工智能·自动化·小龙虾·workbuddy
TlSfoward3 小时前
DLL 指纹库 采集、检索 TLSFOWARD tls指纹库
爬虫·网络协议·https·自动化
XH华3 小时前
Linux系统第四章:工具的学习
linux·运维·学习