返回主站|会员中心|保存桌面

西门子(SIEMENS)服务商    

框架断路器、塑壳断路器、隔离开关、软启动、变频器、电机 、PLC、触摸屏

联系方式
  • 联系人:吴经理
  • 电话:18576370666
新闻分类
  • 暂无分类
站内搜索
 
首页 > 新闻中心 > S7-300指令手册!
新闻中心
S7-300指令手册!
发布时间:2025-11-13        浏览次数:6        返回列表

西门子 S7-300 PLC 的指令系统是其编程的核心,涵盖逻辑控制、数据处理、通信、定时计数等功能,遵循 IEC 61131-3 标准,支持梯形图(LAD)、语句表(STL)和功能块图(FBD)等编程语言。以下是 S7-300 常用指令的分类及核心说明,可作为快速参考手册:

一、基础逻辑指令(位操作)

用于 BOOL 类型变量(如输入 I、输出 Q、中间继电器 M)的逻辑运算,是控制逻辑的基础。

指令(LAD/STL)功能描述示例(STL)说明
A / 与逻辑 “与” 运算A I0.0当 I0.0 为 1 时,结果为 1
AN / 与非逻辑 “与非” 运算AN I0.1当 I0.1 为 0 时,结果为 1
O / 或逻辑 “或” 运算O M0.0当 M0.0 为 1 时,结果为 1
ON / 或非逻辑 “或非” 运算ON M0.1当 M0.1 为 0 时,结果为 1
NOT / 非逻辑取反NOT将当前逻辑结果取反
= / 输出赋值将逻辑结果赋值给输出变量= Q0.0逻辑结果为 1 时,Q0.0 置 1

二、定时器与计数器指令

1. 定时器(Timer)

S7-300 定时器按工作方式分为 3 类,均需占用一个定时器编号(如 T0~T255)和背景数据块。

定时器类型指令(LAD)功能描述输入参数输出参数
S_PULSE脉冲定时器线圈通电后,输出 Q 在预设时间(PT)内保持 1S:启动信号Q:输出(BOOL)



PT:时间值(S5T#)ET:已计时时间
S_PEXT扩展脉冲定时器启动信号上升沿触发,输出 Q 保持 PT 时间后复位S:启动信号同上
S_ODT接通延时定时器启动信号保持 1 状态,延迟 PT 时间后 Q 置 1S:启动信号同上
S_ODTS保持型接通延时启动信号上升沿触发,延迟 PT 后 Q 置 1 并保持S:启动信号同上
  • 时间格式:S5T#(如 S5T#100MS=100 毫秒,S5T#5S=5 秒,S5T#1M=1 分钟)。

2. 计数器(Counter)

用于计数脉冲信号,需占用计数器编号(C0~C255)和背景数据块。

计数器类型指令(LAD)功能描述输入参数输出参数
S_CUD加 / 减计数器对 CU(加计数)和 CD(减计数)脉冲计数CU:加计数脉冲Q:计数达标(BOOL)


计数范围:-32768~32767CD:减计数脉冲CV:当前计数值(INT)



S:复位(置 0)



PV:预设值(INT)
S_CU加计数器仅对 CU 脉冲计数,达到 PV 时 Q 置 1同上(无 CD)同上
S_CD减计数器仅对 CD 脉冲计数,减至 PV 时 Q 置 1同上(无 CU)同上

三、数据处理指令

用于整数、浮点数、字符串等数据类型的运算和转换。

1. 整数运算(INT/DINT)

指令(STL)功能示例(STL)说明
L加载数据到累加器 1L MW10将 MW10(INT)加载到累加器 1
T传输数据到存储区T MW20将累加器 1 数据传输到 MW20
+I整数加法L MW10; +I MW12; T MW14MW10 + MW12 → MW14
-I整数减法L MW10; -I MW12; T MW14MW10 - MW12 → MW14
*I整数乘法L MW10; *I MW12; T MD14MW10 × MW12 → MD14(结果为 DINT)
/I整数除法L MD10; /I MW14; T MW16MD10(DINT) ÷ MW14(INT)→ MW16(商)

2. 浮点数运算(REAL)

指令(STL)功能示例(STL)说明
L加载浮点数L MD20加载 MD20(REAL)到累加器 1
+R浮点数加法L MD20; +R MD24; T MD28MD20 + MD24 → MD28
-R浮点数减法L MD20; -R MD24; T MD28MD20 - MD24 → MD28
*R浮点数乘法L MD20; *R MD24; T MD28MD20 × MD24 → MD28
/R浮点数除法L MD20; /R MD24; T MD28MD20 ÷ MD24 → MD28

3. 数据转换

指令(STL)功能示例(STL)说明
ITDINT→DINTL MW10; ITD; T MD1216 位整数转 32 位整数
DTIDINT→INTL MD10; DTI; T MW1432 位整数转 16 位整数(超出范围报错)
ITBINT→BCDL MW10; ITB; T MW12整数转 BCD 码(用于七段显示)
BTIBCD→INTL MW10; BTI; T MW12BCD 码转整数
ITRINT→REALL MW10; ITR; T MD12整数转浮点数
RTIREAL→INTL MD10; RTI; T MW14浮点数转整数(四舍五入)

四、比较指令

用于比较两个数据的大小,结果为 BOOL 类型(1 = 真,0 = 假)。

指令(LAD/STL)功能示例(LAD)说明
==I整数等于IW10 == IW12 → M0.0若 IW10 = IW12,则 M0.0 置 1
>I整数大于IW10 > IW12 → M0.1若 IW10 > IW12,则 M0.1 置 1
<I整数小于IW10 < IW12 → M0.2若 IW10 < IW12,则 M0.2 置 1
==R浮点数等于MD20 == MD24 → M0.3若 MD20 = MD24,则 M0.3 置 1
>R浮点数大于MD20 > MD24 → M0.4若 MD20 > MD24,则 M0.4 置 1
<R浮点数小于MD20 < MD24 → M0.5若 MD20 < MD24,则 M0.5 置 1

五、程序控制指令

用于控制程序执行流程(分支、循环、跳转等)。

指令(STL)功能示例(STL)说明
JMP LABEL无条件跳转JMP L1跳转到标签 L1 处执行
LABEL跳转标签L1:定义跳转目标位置
JC LABEL若逻辑结果为 1 则跳转A I0.0; JC L2当 I0.0 为 1 时,跳转到 L2
JNC LABEL若逻辑结果为 0 则跳转AN I0.0; JNC L3当 I0.0 为 0 时,跳转到 L3
CALL调用子程序CALL FC1调用功能 FC1
CALL FB调用功能块CALL FB1, DB1调用功能块 FB1,背景数据块为 DB1
RET子程序返回RET从 FC/FB 返回主程序

六、通信指令

用于 S7-300 与其他设备(如 HMI、其他 PLC、传感器)的通信。

指令功能描述适用场景
SFC67(X_GET)从远程 CPU 读取数据S7 协议通信(如 S7-300 与 S7-1200)
SFC68(X_PUT)向远程 CPU 写入数据同上
SFC14(DPRD_DAT)读取过程数据对象(DP 从站)Profibus DP 通信
SFC15(DPWR_DAT)向 DP 从站写入过程数据同上
SFC58(WR_REC)写入数据记录(Modbus 等协议)通用通信
SFC59(RD_REC)读取数据记录同上

七、常用系统功能(SFC)

西门子提供的标准化系统功能,用于设备诊断、时钟控制等。

SFC 编号功能描述关键参数
SFC0设定系统时钟年、月、日、时、分、秒
SFC1读取系统时钟返回当前时间(DT 类型)
SFC46复制数据块源 DB 号、目标 DB 号
SFC48读取诊断缓冲区诊断信息输出
SFC103解锁数据块DB 号
SFC104锁定数据块DB 号

八、查询与学习资源

  1. 官方手册

    • 《S7-300/400 指令系统手册》(西门子官方文档,Order No. 6ES7398-8FA10-0AA0)。

    • 西门子支持中心(https://support.industry.siemens.com)搜索 “SIMATIC S7-300 Instruction List”。

  2. 编程软件帮助:在 STEP 7 中,选中指令后按 F1 可查看详细说明及示例。

  3. 核心技巧

    • 逻辑指令优先使用 LAD,数据处理和复杂运算推荐 STL。

    • 定时器 / 计数器需注意编号范围(S7-300 默认 T0~T255,C0~C255),避免重复使用。

收缩
  • QQ咨询

  • 电话咨询

  • 18576370666
  • 添加微信客服