西门子 S7-300 PLC 控制伺服电机
我给你做最通用、最稳定、现场直接能用的版本:S7-300 + 脉冲型伺服(最常见:方向 + 脉冲)不用复杂工艺轴,不用工艺卡,标准 CPU 自带 IO + 脉冲输出模块就能跑。
一、你需要的硬件
西门子 S7-300 PLC(例如 CPU315-2PN/DP)
脉冲输出模块(必须要!)
FM353(定位模块,推荐)
或 EM253
或 SM374
伺服驱动器(脉冲 + 方向:PULS / DIR)
24V 电源、限位开关、原点开关
二、控制方式(最简单)
位置控制:回原点 → 绝对定位 → 相对定位 → 点动我直接给你 TIA Portal / Step7 通用逻辑。
三、PLC 控制信号(你必须接对)
伺服接线
PLC 脉冲输出 → PULS+
PLC 方向信号 → DIR+
伺服 ALM 报警 → PLC DI
伺服 SRV 就绪 → PLC DI
原点开关、正限位、负限位 → PLC DI
常用 DI/DO 分配(示例)
DI:原点 I0.0
DI:负限位 I0.1
DI:正限位 I0.2
DI:伺服就绪 I0.3
DI:报警 I0.4
DO:脉冲 Q0.0
DO:方向 Q0.1
DO:伺服使能 Q0.2
四、最核心的伺服控制程序(直接复制)
我给你 梯形图逻辑 + 指令说明,Step7 和 TIA 都能用。
1. 伺服使能(上电必须)
ladder
LD I0.3 // 伺服就绪 AN I0.4 // 无报警 = Q0.2 // 伺服使能
2. 回原点程序(最关键)
ladder
LD M0.0 // 回原点启动 AN M0.1 // 原点已到位 AN I0.1 // 未碰负限位 = Q0.1 // 方向=反向 LD M0.0 AN I0.0 // 未到原点 = 脉冲启动 // 开始发脉冲
ladder
LD I0.0 // 碰到原点 = M0.1 // 回原点完成 R 脉冲启动 // 停止脉冲
3. 绝对定位(走固定位置)
ladder
LD M0.2 // 启动绝对定位 AN M0.1 // 已回原点 AN I0.1 AN I0.2 = 脉冲发送
ladder
LD 脉冲发送 = Q0.0 // 输出脉冲
方向判断:
ladder
LD 目标位置 > 当前位置 = Q0.1 // 方向=正向
4. 相对定位(走一段距离)
和绝对定位一样,只是不需要原点,直接走增量。
5. 点动(JOG)
ladder
LD I0.5 // 正向点动 AN I0.2 = Q0.1 // 正向 = 脉冲发送
ladder
LD I0.6 // 反向点动 AN I0.1 AN Q0.1 = 脉冲发送
五、FM353 定位模块 最常用指令(专业版)
如果你用 FM353,直接用西门子定位指令:
回原点:
FC0= HOME绝对定位:
FC1= ABS相对定位:
FC2= INC点动:
FC3= JOG
调用格式:
plaintext
CALL FC0 , FM353
六、最容易错的 3 件事(一定要注意)
伺服必须先回原点,才能绝对定位
限位开关必须常闭(NC),防止断线失控
脉冲方向不要接反,否则一上电就乱跑。





