☰
S7-1200 PLC编程笔记:定时器、计数器、PWM与高速计数器
2026/10/2 2:28:43 网站建设 项目流程

本文整理 S7-1200 PLC 学习中的定时器、计数器、PWM/模拟量、高速计数器与编码器,以及梯形图编程规范。文中用表格和例题说明 TON/TOF、CTU/CTD、占空比、IW/QW、HSC、A/B 相编码器和双线圈等核心知识点。

一、核心结论

  • TON 是接通延时定时器:IN 持续接通并达到 PT 后 Q 才输出;IN 在计时期间断开则当前值复位。
  • TOF 是断开延时定时器:IN 接通时 Q 立即接通;IN 断开后 Q 仍保持 PT 设定时间,到时才断开。
  • 用两个 TON 和一个中间继电器 M 位,可以实现“先等待 3 秒、再输出 5 秒”的单周期定时逻辑;连续闪烁还需要补充循环自锁/互锁逻辑。
  • CTU 为加计数器,CU 每来一个上升沿当前值加 1,达到 PV 后 Q 输出;CTD 为减计数器,CD 上升沿使当前值减 1,装载端 LD 可装入预设值。
  • PWM 通过固定周期内改变高电平持续时间来改变平均输出,本质上仍是数字量通断,但可用于模拟调光、调速、调温等场合。
  • S7-1200 的模拟量输入可用IW64/IW66表示,0~10V 标准信号对应约 0~27648;PWM 输出可通过硬件组态分配如QW1000的过程映像字地址。
  • 普通开关量受 PLC 循环扫描周期限制,无法可靠捕捉高频脉冲;编码器信号应接入高速计数器 HSC,由硬件独立计数。
  • 增量式编码器 A、B 两相脉冲相差约 1/4 个脉冲节距,PLC 可通过两相先后顺序判断旋转方向,通过 Z 相/零点信号建立参考位置。
  • 梯形图中同一输出线圈一般不能在多个网络重复编写,否则循环扫描后只有最后一次线圈状态有效;应合并逻辑或用中间继电器 M 位组织条件。
  • 梯形图必须按左母线到右母线、触点在左线圈在右、从上到下的顺序绘制;触点可无限次复用,定时器/输出线圈通常只能使用一次。

二、知识结构

  • S7-1200 PLC功能指令
    • 定时器
      • TON接通延时
      • TOF断开延时
      • TP脉冲定时
      • 双TON定时电路
    • 计数器
      • CTU加计数
      • CTD减计数
      • CTUD加减计数
      • ADD/MOVE数据处理
    • PWM与模拟量
      • 周期与占空比
      • 0-10V对应0-27648
      • IW输入字/QW输出字
      • CTRL_PWM
    • 高速计数器HSC
      • 编码器
      • A/B相方向判别
      • Z相零点
      • 硬件组态与CTRL_HSC
    • 梯形图编程规范
      • 避免双线圈
      • 节省I/O点
      • 左触点右线圈
      • 启停+4秒断开例题

三、详细笔记

3.1 TON:接通延时定时器

  • TON 的关键端子:
    • IN:定时器输入/使能端;
    • PT:预设延时时间(Preset Time);
    • Q:定时到输出位;
    • ET:已经过的时间(Elapsed Time)。
  • 工作过程:
    1. IN=OFF时,Q=OFF,ET=0。
    2. IN由 OFF 变 ON 并持续保持时,定时器开始累计时间。
    3. 若ET < PT期间 IN 断开,定时器复位,Q 不输出。
    4. 当ET ≥ PT时,Q 变为 ON,ET 保持在预设值附近。
    5. 之后 IN 断开,TON 复位。
  • 典型用途:按下启动按钮后延迟启动风机、灯、传送带,或要求某动作持续/等待一段时间后再触发下一步。
  • 定时器的触点可以在程序中多次使用,但同一个定时器线圈/功能框不应重复编写成多个相互冲突的定时条件。

3.2 TOF:断开延时定时器

  • TOF 的关键端子同样包括 IN、PT、Q、ET,但触发逻辑与 TON 相反。
  • 工作过程:
    1. IN=ON时,Q=ON,ET=0,输出立即接通。
    2. IN 由 ON 变 OFF 后开始计时,Q 在延时期间继续保持 ON。
    3. 延时达到 PT 后,Q 才变为 OFF,ET 保持到设定值。
    4. 若在延时期间 IN 重新接通,则定时器复位,Q 保持接通。
  • 典型用途:设备停止后让冷却风机、排屑电机、照明或报警继续工作一段时间,再自动断开。

3.3 TP 脉冲定时器与“双 TON”定时电路

  • TP 用于产生一个固定宽度脉冲:输入触发后,输出 Q 按 PT 设定时间保持,教师将其作为脉冲定时功能与 TON/TOF 对比讲解。
  • 课堂练习要求:启动后Q0.0先断开/等待 3 秒,再接通 5 秒;停止按钮可中止过程。
  • 单周期实现思路:
    1. I0.0启动按钮置位中间继电器M0.0,并用 M0.0 自锁;I0.1常闭触点作为停止条件。
    2. M0.0 同时启动第一个 3 秒 TON。
    3. 第一个 TON 未到时,其常开触点未闭合,Q0.0 不输出。
    4. 3 秒到后,第一个 TON 常开触点闭合,使 Q0.0 接通,同时启动第二个 5 秒 TON。
    5. 5 秒到后,第二个 TON 的触点切断 M0.0 自锁回路,整个过程复位。
  • 教师强调:
    • 3 秒定时器的触点要放在输出支路前面,用来决定“什么时候开始输出”。
    • 5 秒定时器到达后应切断中间继电器,而不是只断开灯,否则下一次启动状态可能混乱。
    • 课堂要求的是一次动作过程;若要求无限周期闪烁,还需增加定时器触点之间的循环互锁。

3.4 CTU 加计数器

  • CTU 的关键端子:
    • CU:加计数脉冲输入;
    • R:复位端;
    • PV:预设值;
    • CV:当前计数值;
    • Q:当前值达到预设值后的输出位。
  • CU 端每检测到一个 OFF→ON 的上升沿,CV 加 1;信号一直保持 ON 不会连续加数。
  • 当CV ≥ PV时,Q 输出;R 接通时当前值清零,Q 复位。
  • 计数对象可以是按钮、接近开关、光电开关、工件检测信号等;按钮存在抖动时,实际工程中应考虑硬件滤波或软件消抖。

3.5 CTD 减计数器与 CTUD 加减计数器

  • CTD 的关键端子:
    • CD:减计数脉冲输入;
    • LD:装载端,用于把 PV 装入当前值;
    • PV/CV/Q:预设值、当前值和输出。
  • CD 每来一个上升沿,CV 减 1;到达下限/零条件时 Q 动作,具体状态字与数据类型以 TIA 指令帮助为准。
  • CTUD 同时具备加计数 CU、减计数 CD、复位和装载等功能,适合既能正转计数又能反转倒减的场合。
  • 若计数规则较复杂,也可用ADD加法指令、MOVE传送指令和中间字存储区实现更灵活的数据处理,但要注意数据类型和脉冲上升沿,避免一个扫描周期内重复加或每个扫描周期都加。

3.6 PWM 的基本原理

  • 数字量输出只有接通和断开两种状态;若让输出按固定频率反复通断,并改变每个周期内高电平持续时间,就可得到不同平均电压/平均功率。
  • 基本参数:
    • 周期 T:一个完整“高电平 + 低电平”的时间;
    • 高电平时间 t_on;
    • 占空比 D:D = t_on / T × 100%。
  • 示例:周期为 1000 ms,高电平为 500 ms,则占空比为 50%;高电平为 200 ms,则占空比为 20%。
  • 常见应用:
    • 加热器调温;
    • 小型电机调速;
    • 比例阀门开度控制;
    • LED/灯光亮度调节。
  • PWM 与 PTO 的区别:
    • PWM 是脉宽调制,周期通常固定,占空比可变,侧重平均输出控制;
    • PTO 是脉冲串输出,通常输出固定数量、固定频率/占空比的脉冲,更常用于步进或伺服位置/速度控制。
  • 具体 CPU 支持的高速输出通道数和最高频率与型号、固件及输出类型有关,课程提到 S7-1200 高速输出通道数量有限,实际应以硬件手册为准。

3.7 模拟量与 IW/QW

  • 模拟量是连续变化的量,如 0~10V 电压、4~20mA 电流、温度、压力等;PLC 需要通过 A/D 转换把模拟量变为整数过程值。
  • S7-1200 课程示例中,板载模拟量输入地址出现IW64、IW66;标准 0~10V 单极性信号对应的数字量范围约为 0~27648。
  • I表示输入,Q表示输出;W表示字(Word,16 位),因此:
    • IW64:输入字,存放模拟量输入转换后的数值;
    • QW1000:输出字,可作为 PWM 通道或模拟量输出过程映像地址。
  • 课堂演示用一个电位器/模拟输入值控制 PWM 输出,核心思路是把输入字传送到 PWM 输出字:
MOVE EN := 条件接通 IN := IW64 OUT := QW1000
  • 在线监控时可通过监控表观察 IW64 的数值变化,并观察 QW1000/PWM 输出占空比是否随输入变化。

3.8 TIA 中 PWM 的硬件组态与 CTRL_PWM

  • PWM 不是只写一个 Q 位即可,需要先在设备组态中启用 CPU 的脉冲发生器/PWM 通道,并设置:
    • PWM/PTO 功能类型;
    • 时基或周期单位;
    • 初始周期,如 1000 ms;
    • 初始脉冲宽度,如 500 ms;
    • 输出地址,如QW1000;
    • 硬件输出点。
  • 程序中调用CTRL_PWM功能块,常见接口包括 EN/ENO、PWM 通道号、ENABLE、BUSY、STATUS 等;ENABLE 接通后通道按指定周期和脉宽输出。
  • 调试时应先下载硬件组态,再下载程序;若修改了通道地址或输出类型,必须重新编译并下载硬件配置。
  • 若状态字/错误代码异常,应优先检查硬件通道是否启用、输出地址是否冲突、CPU 型号是否支持以及脉冲输出点是否为正确的晶体管输出类型。

3.9 高速计数器 HSC 的作用

  • 普通输入点按用户程序扫描周期刷新。若脉冲频率很高,一个扫描周期内可能已经来了多个脉冲,PLC 无法可靠计数。
  • 高速计数器 HSC(High-Speed Counter)由硬件通道独立计数,不受普通程序扫描周期限制,用于采集高速脉冲、流量脉冲、转速脉冲和编码器信号。
  • 课程中使用的工程环境为 TIA Portal 与 S7-1200 CPU 1214C DC/DC/DC,固件版本示例为 V4.4;具体可用 HSC 通道和输入点随 CPU 型号变化。

3.10 编码器与 A/B/Z 相信号

  • 编码器是把机械位移、转角、转速或位置转换为电脉冲/数字信号的传感器。
  • 增量式编码器输出的是相对位移脉冲:从某个参考点开始,通过累计脉冲数计算移动量;断电或丢失参考后,绝对位置不能仅凭增量脉冲确定。
  • 分辨率通常用每转脉冲数(PPR)表示;每转脉冲越多,角度/位置分辨能力越强。
  • 光电式增量编码器内部有码盘和光电检测通道:码盘转动时通光/遮光形成高低电平。
  • A、B 两相脉冲相差约 1/4 个脉冲节距(正交相位):
    • A 相超前 B 相时可判定为一个方向;
    • B 相超前 A 相时判定为反方向;
    • PLC 可据此进行加计数或减计数。
  • Z 相(也常称零点/索引相)每转输出一个参考脉冲,用于回零或建立位置基准。

3.11 HSC 硬件组态与控制

  • 课堂演示的组态流程可概括为:
    1. 在 TIA 设备组态中选择 CPU;
    2. 启用高速计数器;
    3. 选择计数模式,如单相或 A/B 相正交计数器;
    4. 设置初始计数当前值、参考值/周期值;
    5. 在硬件输入中分配 A 相、B 相、Z 相输入点;
    6. 下载硬件组态;
    7. 在监控表或程序中观察高速计数当前值。
  • 不同 CPU 型号、固件版本和接线方式下,A/B/Z 相输入地址及高速计数当前值地址可能不同,实际接线与监控地址必须以 CPU 属性中的硬件输入映射表为准。
  • 程序中可调用CTRL_HSC/高速计数控制功能,常见参数包括:
    • HSC 通道号;
    • COUNT/DIR 等控制位;
    • CV(Current Value,当前值)及是否更新当前值;
    • RV(Reference Value,参考值)及是否更新参考值;
    • BUSY、STATUS 等状态/错误输出。
  • 典型应用包括到达设定脉冲数后置位输出、写入新参考值以及清零/建立参考点;具体程序段地址应结合实际工程文件配置。

3.12 梯形图基本规则

3.12.1 避免双线圈
  • PLC 采用循环扫描:输入采样 → 执行用户程序 → 输出刷新。
  • 如果同一个输出线圈Q0.x在多个网络中重复出现,程序每次扫描都会按网络顺序多次改写该线圈状态,最终输出刷新通常以最后一次线圈状态为准,前面的逻辑可能被覆盖。
  • 正确做法:
    • 合并所有启动、停止、联锁条件,用一个线圈输出;
    • 或先用多个M中间继电器表示不同条件,再在最后统一驱动一个 Q 线圈。
  • 中间继电器 M 不直接对应外部接线点,适合在程序内部做自锁、互锁、条件组合和状态暂存。
3.12.2 节省 I/O 点
  • PLC 的成本和规模与 I/O 点数密切相关,外部按钮、传感器、执行器越多,所需输入输出点越多。
  • 能用 HMI 画面软元件、程序内部 M 位或软件逻辑实现的功能,不应随意占用物理 I 点;但急停、安全门、硬接线联锁等安全功能不能为了省点而完全依赖软件。
3.12.3 图形排列规则
  • 每个网络应形成完整的能流路径,从左母线开始,经过触点/功能块,到右侧线圈或输出结束。
  • 触点应位于线圈左侧,线圈位于最右侧;不能把触点放在线圈右侧期待能流反向流动。
  • 梯形图按从上到下、从左到右的顺序执行;并联支路和串联条件应画清楚,避免垂直方向上的“桥式”歧义。
  • 常开、常闭触点原则上可以在程序中无限次复用;输出线圈、定时器线圈等通常只出现一次。
  • 若需要无条件常通线圈,建议使用软件提供的常通位/系统标志(具体地址依 PLC 品牌而定),不要画成含义不清的空逻辑。

3.13 启动后立即输出、4 秒后自动停止例题

3.13.1 控制要求
  • 按下启动按钮I0.0:输出Q0.0立即接通。
  • 不按停止按钮时:Q0.0 接通 4 秒后自动断开。
  • 按下停止按钮I0.1:Q0.0 可提前断开并复位定时过程。
3.13.2 推荐逻辑
  1. 网络 1:启停自锁与定时到复位
    • I0.0常开与M0.0常开并联作为启动/自锁条件;
    • 串联I0.1常闭停止触点;
    • 再串联 4 秒定时器的常闭触点;
    • 输出线圈M0.0。
  2. 网络 2:驱动外部输出
    • M0.0常开触点驱动Q0.0。
  3. 网络 3:定时器计时
    • M0.0常开触点驱动 TON,PT 设为 4 秒。
3.13.3 动作过程
  • 按下 I0.0:M0.0 得电并自锁,Q0.0 立即输出,TON 开始计时。
  • 4 秒内按 I0.1:停止常闭断开,M0.0、Q0.0 和定时器全部复位。
  • 不按 I0.1:4 秒后 TON 常闭触点断开,M0.0 失电,Q0.0 断开;随后定时器也因 M0.0 断开而复位,但启动按钮未持续按下,电路不会自行重启。
  • 教师特别指出,只在表面上画出 Q0.0 和定时器但没有中间继电器自锁/互锁,逻辑可能看似能动作,却无法可靠完成停止、定时到复位和下一次启动。

四、例题、案例或实验

4.1 定时器波形练习

  • 内容:TON、TOF、TP 的 IN、PT、Q、ET 状态变化。
  • 重点:TON 等 IN 持续到 PT;TOF 在 IN 断开后继续保持 Q;TP 产生固定宽度脉冲。

4.2 双 TON“3 秒等待 + 5 秒输出”练习

  • 元件:I0.0 启动、I0.1 停止、M0.0 中间继电器、两个 TON、Q0.0 输出。
  • 重点:用第一个定时器决定输出何时开始,用第二个定时器切断自锁回路。

4.3 计数器练习

  • 内容:CTU、CTD、CTUD 的 CU/CD/R/LD/PV/CV/Q 端子含义。
  • 重点:只在输入脉冲上升沿计数,复位/装载条件要明确。

4.4 电位器/模拟量控制 PWM

  • 内容:启用 PWM 硬件通道,周期示例 1000 ms,输出地址示例 QW1000;用 IW64 模拟量值改变脉宽。
  • 重点:0~10V 对应 0~27648,MOVE 传送输入字到 PWM 输出字,在线监控 BUSY/STATUS。

4.5 编码器与 HSC 组态演示

  • 内容:S7-1200 1214C DC/DC/DC、A/B 相正交计数、Z 相参考点、当前值/参考值设置。
  • 重点:高频信号必须走 HSC 硬件通道,A/B 相相位差用于判断方向,Z 相用于回零。

4.6 启动自锁 + 4 秒自动停止

  • 元件:I0.0、I0.1、M0.0、TON、Q0.0。
  • 重点:自锁回路中串入停止常闭和定时到常闭,Q0.0 由 M0.0 统一驱动,避免双线圈。

五、术语、公式或关键表达

术语/指令含义与要点
TON接通延时;IN 持续接通达到 PT 后 Q 输出
TOF断开延时;IN 断开后 Q 保持 PT 时间再断开
TP脉冲定时器;产生固定宽度脉冲
IN定时器输入/使能端
PTPreset Time,预设时间
ETElapsed Time,已过时间
Q功能块输出位
CTU加计数器,CU 上升沿加 1
CTD减计数器,CD 上升沿减 1
CTUD加减双向计数器
CU/CD加计数/减计数脉冲输入
R/LD复位/装载预设值
PV/CV预设值/当前值
PWM脉宽调制,固定周期内改变高电平时间
PTO脉冲串输出,用于输出指定脉冲
占空比D = t_on / T × 100%
IW输入字,模拟量输入常用
QW输出字,PWM/模拟量输出过程映像常用
0~27648S7-1200 单极性 0~10V 模拟量的典型数字量范围
HSC高速计数器,硬件独立计数高频脉冲
A/B 相正交脉冲,相位差约 1/4 节距,用于计数和方向判断
Z 相零点/索引脉冲,每转一个参考信号
M 位内部中间继电器,用于自锁、互锁和条件组合
双线圈同一 Q 线圈在多个网络重复输出,易造成后级覆盖前级

六、练习建议

  • 结合 TIA Portal 独立完成 TON、TOF、CTU、CTD 的仿真练习。
  • 用监控表观察 IW 模拟量数值、QW/PWM 输出字和占空比变化。
  • 在设备组态中完成一次 HSC 通道配置,并通过编码器或脉冲信号验证方向判断和当前值累计。
  • 对启停自锁、定时断开类题目,优先使用 M 位整理条件,避免重复线圈。

七、实践时需要再次确认的细节

项目为什么要确认建议做法
HSC 硬件输入地址不同 CPU 型号、固件和接线方式对应地址不同在 TIA 设备组态中查看硬件输入映射表
HSC 当前值地址过程映像地址与通道编号、组态方式有关以 CPU 属性和监控表为准
高速输出通道数和频率PWM/PTO 能力随 CPU 订货号和输出类型变化查询具体 CPU 系统手册
定时器实例名不同编程风格可能使用符号名或背景数据块以 TIA 工程中的 TON 实例为准
是否需要周期循环单脉冲与连续闪烁的定时器电路不同先根据题目确认输出波形,再画梯形图

八、复习与主动回忆

10–20 分钟复习清单

  1. 默写 TON 与 TOF 的 IN、PT、Q、ET 状态表,特别比较 IN 接通/断开瞬间的差异。
  2. 画出“等待 3 秒、输出 5 秒”的双 TON 单周期电路,说明 M0.0 的作用。
  3. 默写 CTU 与 CTD 的端子,并各举一个计数场景。
  4. 写出 PWM 占空比公式,计算周期 1000 ms、高电平 250 ms 时的占空比。
  5. 说明 0~10V 模拟量输入为什么在程序中变成 0~27648。
  6. 在 TIA 中口述启用 PWM 的硬件组态步骤和 CTRL_PWM 的作用。
  7. 画出 A/B 相正交脉冲判断方向的原理,并说明 Z 相的作用。
  8. 说明普通输入点为什么不能可靠计数高频脉冲,HSC 如何解决。
  9. 找出双线圈梯形图的问题,并改写成 M 位汇总条件、一个 Q 输出的形式。
  10. 独立画出“启动立即输出、4 秒自动停止、停止按钮可提前停止”的梯形图。

主动回忆题

  1. TON 在 IN 接通但未到 PT 时断开,Q 和 ET 会怎样?
  2. TOF 为什么适合用于风机停机后延时冷却?
  3. 双 TON 电路中,如果第二个定时器只切断 Q0.0、不切断 M0.0,可能出现什么问题?
  4. CTU 为什么只在 CU 的上升沿计数,而不是 IN 一直接通就连续加?
  5. CTU 的 R 与 CTD 的 LD 有什么不同?
  6. PWM 输出本质上是数字量,为什么能实现类似模拟量的调光、调速、调温?
  7. 周期固定为 1 s,高电平分别为 0.2 s、0.5 s、0.8 s,占空比各是多少?
  8. IW64、QW1000中 I、Q、W 分别表示什么?
  9. 配置 PWM 时,为什么修改硬件通道后必须重新下载硬件组态?
  10. 增量式编码器为什么需要回零或 Z 相参考点?
  11. A 相超前 B 相与 B 相超前 A 相如何对应旋转方向?
  12. 梯形图中为什么不允许随意重复同一个 Q 线圈?
  13. “启动后立即输出、4 秒后停止”的电路中,定时到常闭触点为什么要串入 M0.0 自锁回路?

答案要点

  1. TON 复位:Q 保持 OFF,ET 清 0;只有 IN 连续接通达到 PT 才有输出。
  2. TOF 在运行信号断开后仍让风机保持接通 PT 时间,到时自动停,可用于散热或排屑。
  3. M0.0 若不断开,定时器和内部状态可能仍保持,下一次启动、停止或循环状态会混乱;应让定时到信号复位整个控制条件。
  4. 计数器统计的是离散事件次数,一个持续 ON 信号只代表一个事件,必须用上升沿避免同一事件重复计数。
  5. R 用于把加计数器当前值清零/复位;LD 用于把预设值 PV 装载到减计数器当前值。
  6. 负载对快速通断进行平均响应,改变高电平占空比就改变平均电压/功率。
  7. 分别为 20%、50%、80%。
  8. I 是输入,Q 是输出,W 是 16 位字;IW/QW 可用于模拟量或 PWM 数值通道。
  9. PWM 通道、地址、周期单位和硬件输出点属于硬件配置,不下载硬件组态则程序中的通道地址无法正确生效。
  10. 增量式编码器只记录相对脉冲,断电或丢失基准后不知道绝对位置;Z 相/回零操作用于建立位置零点。
  11. A/B 正交脉冲谁超前谁对应正反转,PLC 根据相位顺序决定加计数或减计数。
  12. PLC 按网络顺序扫描并在最后统一刷新输出,重复线圈会使最后一次状态覆盖前面的逻辑。
  13. 串入定时到常闭触点可在 4 秒后切断 M0.0 自锁,使 Q0.0 和定时器共同复位;停止按钮也能通过同一自锁回路提前停机。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询