PLC S7-1200博途程序结构笔记:FC函数FB函数块OB组织块DB数据块、多重背景、OB1循环扫描、时间/延时中断,TON/TOF置位保持P/N上下沿CTU/CTD计数器,含走廊灯三台电机例题
本篇前半讲评博途TIA Portal第七章课后习题7-307-44复习常开常闭、NOT 取反、比较、数学运算与移动、TON/TOF 定时器、置位保持、上升沿/下降沿、加/减/加减计数器等基本指令后半进入第八章新内容——PLC 用户程序结构系统讲 FC 函数、FB 函数块、OB 组织块、DB 数据块、背景数据块与多重背景、程序循环 OB1 与扫描周期以及时间中断、延时中断、循环中断等中断组织块并完成走廊灯延时熄灭、再按重新计时和三台电机顺序启动/停止两道典型编程题。第七章指令是基础第八章程序块结构化编程是重点。一、核心结论先记住这 18 条S7-1200 用户程序由不同的**块Block**组成核心是OB 组织块、FC 函数、FB 函数块、DB 数据块。OB 组织块是操作系统与用户程序的接口由操作系统调用其中OB1Main程序循环组织块是主程序CPU 运行时被周期性循环调用新建工程时默认生成。一个项目至少有一个程序循环 OBOB1可有多个按 OB 编号由小到大依次执行程序循环 OB 优先级最低可被高优先级的中断 OB 打断。CPU 执行一次程序循环 OB 所需时间即程序循环扫描周期课堂举例约 150 ms 量级普通定时器的定时精度受扫描周期影响。FC函数/功能是用户编写的、完成特定任务的子程序有 Input/Output/InOut/Temp 接口参数没有自己的背景数据块执行完后内部临时数据全部释放、不保存。FC 内的局部变量在程序编辑器中前面自动加#号在 OB 中调用 FC 时框外传入的实参全局符号自动加双引号。FB函数块/功能块也是用户子程序但拥有自己的背景数据块Instance DB可保存数据其接口除 Input/Output/InOut/Temp 外还有Static静态变量静态变量在执行结束后仍保持。FC 适合做纯运算、处理完即释放FB 适合需要记忆/保持状态如内含定时器、计数器的功能封装。FB 可被 OB 或其他块调用调用单个 FB 时系统为每次调用生成一个背景 DB称单实例。多重背景Multi-instance在一个 FB 内多次调用别的 FB如多个 TON/TOF、多台电机把它们的背景数据集中存放在外层 FB 的一个背景 DB 中避免生成大量零散背景 DB便于管理上百台设备。FC/FB 都可用LAD 梯形图或SCL 结构化文本类高级语言编写SCL 适合表达数学运算和复杂逻辑。TON 是接通延时定时器输入接通后延时到设定值输出才接通输入断开立即停止计时并复位TOF 是断电延时定时器输入断开后延时一段时间输出才断开可类比断电后小车还滑行一段。定时器有 **PT预设时间、ET当前/已计时时间、Q输出位、IN输入、R复位**等端子ET 实时显示当前计时值可用 ET 与设定值比较实现区间输出。S 置位 / R 复位具有记忆保持功能置位后即使输入如 I0.0断开该位仍保持上一次状态直到被复位。P 上升沿 / N 下降沿指令检测信号跳变只在跳变后的一个扫描周期输出脉冲常用于按一下触发一次可与置位保持配合。计数器CTU 加计数器、CTD 减计数器、CTUD 加减计数器PV 预设值、CV 当前值、Q 输出、R 复位、LD 装载CTD 的 LD 按下后 CV 回到装载值 PV。中断组织块包括时间中断、延时中断、循环中断、硬件中断等延时中断由硬件/系统级实现定时精度高于受扫描周期影响的普通定时器用于高精度延时。时间中断可按每分钟/每小时/每天/每月或指定日期触发配套 SET设置、QRY/QUERY查询、ACT激活、CAN取消指令延时中断在触发条件如输入由 1 变 0后延时固定时间再执行中断 OB也有启动 SRT、取消 CAN、查询 QRY 指令。二、知识结构本节脉络PLC S7-1200 博途 │ ├─ 第七章 基本指令习题讲评复习 │ ├─ 位逻辑常开/常闭、NOT 取反、线圈 │ ├─ 比较指令大于/小于/等于… │ ├─ 数学函数加减乘除、可自定义公式、MOV 移动 │ ├─ 定时器TON 接通延时 / TOF 断电延时IN/PT/ET/Q/R │ ├─ 置位 S / 复位 R记忆保持 │ ├─ 边沿P 上升沿 / N 下降沿一个扫描周期脉冲 │ └─ 计数器CTU / CTD / CTUDPV/CV/Q/R/LD │ └─ 第八章 用户程序结构新授重点 ├─ 块OB 组织块 / FC 函数 / FB 函数块 / DB 数据块 ├─ FC子程序、接口参数、局部变量#、无背景DB、执行完释放 ├─ FB背景数据块、Static 静态变量、单实例 ├─ 多重背景一个背景DB集中管理多个实例多台电机 ├─ 编程语言LAD 梯形图 / SCL 结构化文本 └─ OB 组织块 ├─ 程序循环 OBOB1/Main循环扫描、优先级、扫描周期 ├─ 启动 OB └─ 中断 OB ├─ 时间中断Time-of-daySET/QRY/ACT/CAN ├─ 延时中断DelaySRT/CAN/QRY高精度 ├─ 循环中断Cyclic周期执行 └─ 硬件中断三、详细知识点笔记一第七章基本指令复习结合习题1. 位逻辑与取反常开触点、常闭触点、输出线圈是最基本的位逻辑元素。NOT 为取反指令把它前面的逻辑运算结果取反例如 I0.2 接通经过 NOT 后其后的常闭逻辑状态被翻转习题 7-36I0.2 接通时经 NOT 使对应输出断开。2. 比较与数学运算、移动比较指令对两个数做大于、小于、等于、大于等于、小于等于、不等于比较条件成立则触点接通“比大小”。数学函数加、减、乘、除等运算还可以由用户**自定义函数关系式PT/BT 公式**进行计算。MOV移动指令把源操作数传送到目的地址。3. 定时器 TON / TOFTON接通延时On-Delay输入 IN 接通后开始计时当前值 ET 从 0 增加当 ET ≥ PT预设时间时输出 Q 接通并保持输入 IN 一旦断开定时器立即停止计时并复位当前值清零、Q 断开。TOF断电延时Off-Delay输入接通时输出立即接通输入断开后开始延时经过 PT 时间输出才断开。可比喻为断电后小车靠惯性继续滑行一段才停。端子含义IN 输入、PT 预设时间、ET 当前已计时时间实时显示、Q 输出、R 复位。利用 ET 实时值可做区间判断如 PT10 s另加一条ET ≥ 5 s 即输出的比较则在第 510 秒区间输出就接通习题 7-31 结论。4. 置位 S / 复位 R记忆保持SSet 置位一旦条件满足把位置 1 并保持即使驱动条件如 I0.0随后断开该位仍记住上一次状态、保持为 1直到 **RReset 复位**把它清零。因此 S/R 具有记忆功能是典型的启保停之外的另一种保持手段。5. 上升沿 P / 下降沿 NP上升沿检测输入信号由 0 变 1 的跳变仅在跳变后的一个扫描周期内输出一个脉冲。N下降沿检测由 1 变 0 的跳变同样只接通一个扫描周期。常用于按钮按一下只动作一次避免长按期间重复执行可与 M 中间标志、S 置位组合实现触发保持。6. 计数器 CTU / CTD / CTUDCTU 加计数器每来一个计数脉冲当前值 CV 加 1达到预设值 PV 时输出 Q 接通R 复位清零。CTD 减计数器每来一个脉冲 CV 减 1LD装载端按下时把 CV 重新装载为 PV回到初始装载值此时 Q 不接通习题 7-30按 I0.3 装载CV 飞回 PV3Q 不接通选最后一项 D。CTUD 加减计数器既可加又可减带加计数端、减计数端、装载 LD、复位 R。公共端子PV 预设值、CV 当前值、Q 输出、R 复位、LD 装载。7. 部分习题答案课堂口径[以教材/题图为准]题号考点课堂结论7-30CTD 减计数器、LD 装载按装载端 I0.3 后 CV 回到 PV3Q 不接通选最后一项D7-31TON 时序、ET 区间PT10 s加 ET≥5 s 比较则 510 秒区间输出接通选最后一项7-32 / 7-34基本指令时序按题图分析课堂带过7-35指令判断答案 C7-36NOT 取反I0.2 接通经取反使其后逻辑断开7-37时序/数值答案 0057-38TON 时序图改错B 错TON 输入断开应停止计时并复位且 Q 是延时到才接通、不是输入一接通立即变 17-40边沿/置位综合答案 D7-41置位保持答案 B第二个7-42综合判断答案 C7-44综合答案第二个7-38 关键辨析TON 在 I0.0 接通后开始计时当前值增加到 5 sPT时 Q 才接通输入断开时 TON 停止计时并复位——把 Q 画成输入接通立即变 1、或输入断开仍继续计时的时序图都是错误的。二第八章 用户程序结构块的分类S7-1200 在博途中把用户程序组织成若干块主要包括OBOrganization Block组织块操作系统与用户程序之间的接口由操作系统自动调用决定程序的执行结构循环、启动、中断。FCFunction函数/功能用户编写的子程序无固定存储区。FBFunction Block函数块/功能块用户编写的、带背景数据块的子程序。DBData Block数据块存放程序数据的存储区分全局数据块和 FB 的背景数据块。此外还有**交叉引用Cross-reference**功能可查看某一变量/地址在程序各处被使用的位置类似论文里标注引用编号①②③的对应关系。三FC 函数功能FC 是用户编写的、用于完成某一特定任务的子程序包含与调用块交换信息的输入/输出接口参数执行后把结果返回给调用块OB 或 FB。FC 的接口区可声明Input输入调用时传入Output输出执行结果返回InOut输入输出既传入又返回Temp临时变量仅本次执行有效。FC 没有专用的背景数据块执行完成后其临时数据被全部释放、不保存类比手机里某些 APP 退出后内存立即释放。FC 内使用的局部变量程序编辑器自动在变量名前加#如#目标1、#pick_one名称可自行修改在 OB1 中调用 FC 时框外连接的全局实参自动加双引号。FC 主要用于运算、数据处理等不需要记忆的场合可被 OB、FB 多次调用使程序结构化、便于复用。四FB 函数块与背景数据块FB 同样是完成特定任务的子程序但它拥有自己的背景数据块Instance DB执行结束后数据仍被保存。FB 接口除 Input/Output/InOut/Temp 外还可有Static静态变量静态变量存储在背景 DB 中、具有保持能力可减少在块外重复定义大量全局变量。当 FB 中使用 TON/TOF 定时器、计数器等本身需要背景数据的指令时必须为其分配背景数据把定时器封装在 FB 中更规范。调用 FB 时如在 OB1 中调用一个电动机控制 FB系统弹出调用选项对话框输入背景数据块名称可用默认名确认后自动生成该 FB 的背景 DB。五单实例与多重背景重点/难点单实例Single instance每调用一次 FB就单独生成一个背景数据块。若一个 FB如电动机控制块要控制很多台上百台电机就会生成上百个背景 DB数据块数量庞大、不便于管理。多重背景Multi-instance把多个被调用 FB或多个定时器/电机实例的背景数据集中存放到外层 FB 的同一个背景数据块中由外层 FB 统一管理显著减少背景 DB 数量。建立多重背景的一般步骤博途添加新块、选择函数块 FB设置编号与编程语言确认生成 FB打开 FB在接口区声明需要的多重背景如电动机类型、1 号/2 号电机实例静态变量类型选为对应 FB在 OB主程序中调用该外层 FB为不同实例选择对应选项如 1 号电机选实例一、2 号电机选实例二所有实例的数据集中在外层 FB 的一个背景 DB 中主程序中可统一显示/调用多台设备。这样一个程序控制多台甚至上百台电机时只需要管理少量甚至一个背景 DB结构清晰、便于维护。六编程语言LAD 与 SCLLAD梯形图以触点、线圈、功能框图形化表达直观、接近继电器电路。SCL结构化控制语言类似高级语言Pascal 风格用语句表达运算和逻辑适合数学计算、循环、复杂条件FC/FB 均可选用 SCL 编写在博途中可对 SCL 程序进行仿真调试。七OB 组织块1. 程序循环组织块 OB1MainCPU 处于 RUN工作状态时周期性循环执行OB1它是主程序新建工程时默认生成 OB1。一个项目至少有一个程序循环 OB可以有多个编号必须符合系统规定多个程序循环 OB 按编号由小到大依次执行。程序循环 OB 的优先级最低可被更高优先级的中断组织块中断优先级数值越大优先级越高。CPU 循环执行一次 OB 所需时间称为程序循环扫描周期课堂举例全程约 150 ms具体随程序长短变化。2. 启动组织块在 CPU 从 STOP 转 RUN 的启动阶段执行一次用于上电初始化。3. 中断组织块时间/延时/循环/硬件中断中断 OB 由特定事件触发、可打断 OB1 的循环执行执行完后返回断点继续。1时间中断Time-of-day interrupt可设置在指定的日期时间到达后触发并可按每分钟、每小时、每天、每月等周期执行例如设定到 2026 年或 2036 年某月某日某时触发一次。配套指令在扩展指令→中断→时间中断中SET_TOD设置时间中断设定触发日期时间ACT激活时间中断CAN_TOD取消时间中断QRY_TOD查询时间中断状态。建立方式添加新块→组织块→选择 Time-of-day时间中断OB在程序中用设置指令写入目标时间触发时执行该 OB例每次触发让 MW2 加 1再传送到 FB 块做累计可一直累加到设定的若干年后。2延时中断Delay interrupt——高精度延时普通 TON/TOF 定时器的工作与 PLC循环扫描方式有关定时精度受扫描周期影响、精度有限。延时中断由系统/硬件级实现在触发条件出现后经过设定的精确延时再执行对应的中断 OB定时精度高适合需要高精度延时的场合。建立方式添加新块→组织块→选择延时中断DelayOB如 OB20。工作过程示例当输入 I0.0由 1 变 0下降沿时启动延时中断延时 5 s 后执行 OB20把 Q0.x 置位如走廊灯 5 s 后熄灭若在延时到达前取消如条件由 0 变回 1则 OB20 不执行。配套指令SRT_DLY启动延时中断、CAN_DLY取消、QRY_DLY查询状态。3循环中断Cyclic interrupt与硬件中断循环中断 OB按固定时间间隔周期性执行如每隔固定毫秒执行一次用于周期采样、PID 等。硬件中断 OB由高速 I/O 上的硬件事件如高速计数、模块报警立即触发。四、典型编程例题例题 1走廊灯玄关灯延时熄灭、再按重新计时控制要求来人按一下按钮 I0.0灯 Q0.0 点亮并保持点亮 30 s 后自动熄灭如果在这 30 s 内又有人按一次按钮则重新从 0 开始计时30 s 顺延。编程思路梯形图按钮 I0.0 是常开点动信号先用上升沿 P检测按一下驱动中间继电器 M0.0 产生一个扫描周期脉冲用 M0.0 的常开触点去置位SQ0.0或用 M0.0 接通 TON 并自锁使灯点亮保持同时用 M0.0 启动或复位重启接通延时定时器 TONPT30 s用 TON 延时到后接通的常闭触点串在 Q0.0 的保持回路中30 s 到常闭点断开Q0.0 失电熄灭“再按重新计时”每次 M0.0 脉冲都对 TON 进行一次复位/重新触发用 M0.0 常闭点切断定时器输入使其当前值清零再重新计时从而实现 30 s 从头开始。要点标准写法建议用中间继电器 M0.0过渡而不是直接用 Q0.0 触点逻辑更清晰、规范定时器线圈、Q 线圈、定时器常闭延时触点的位置要分清延时闭合的常开点到时间接通用来断开灯回路时取其常闭触点上升沿 P 保证按一次只触发一次避免按住按钮期间反复动作。例题 2三台电动机顺序启动、顺序停止控制要求按下启动按钮 I0.0 后第一台电机 Q0.0 立即启动10 s 后第二台电机 Q0.1 自动启动再经过 5 s即启动后 15 s第三台电机 Q0.2 自动启动同时第一台电机 Q0.0 停止之后按工艺要求延时停其余电机课堂以 T37/T38/T39 三个定时器逐级实现。编程思路分三段写最清楚第一台电机段I0.0 启动并自锁 Q0.0或置位同时启动定时器 T37PT10 s第二台电机段T37 延时 10 s 到、其常开触点闭合启动 Q0.1 并自锁同时启动 T38PT5 s第三台电机段T38 再延时 5 s 到、常开触点闭合启动 Q0.2同时用 T38或 T39触点断开 Q0.0使第一台停止后续需要停第二台时再用 T39 定时断开 Q0.1。要点与课堂纠错推荐按第一台/第二台/第三台分成三个程序段分别写每段配自己的定时器逻辑清楚、不易漏定时器编号如 T37、T38、T39和 Q0.0/Q0.1/Q0.2、中间标志 M 要一一对应、在图上标注清楚注意每台电机启动谁、停谁第三台启动的同时第一台停止不要误把第二台也停掉必要时在中间加中间继电器如 M 位来统一控制前级使梯形图更规范。五、术语与指令速查表术语/指令含义OB 组织块操作系统与用户程序接口被系统调用OB1 / Main程序循环组织块、主程序RUN 时周期循环执行扫描周期CPU 循环执行一次 OB1 的时间举例约 150 msFC 函数用户子程序无背景 DB执行完数据释放FB 函数块带背景数据块的用户子程序可保持数据DB 数据块存放数据分全局 DB 与背景 DB接口参数Input / Output / InOut / TempFB 另有 Static#局部变量FC/FB 内局部变量自动加 #全局实参加双引号单实例每次调用 FB 生成一个独立背景 DB多重背景多个实例数据集中到一个背景 DB便于管理多台设备LAD / SCL梯形图 / 结构化文本两种编程语言TON接通延时IN 接通延时 PT 后 Q 通IN 断立即复位TOF断电延时IN 断后延时 PT 才使 Q 断IN/PT/ET/Q/R定时器输入/预设时间/当前时间/输出/复位S / R置位保持 / 复位清零有记忆P / N上升沿0→1/ 下降沿1→0接通一个扫描周期CTU / CTD / CTUD加 / 减 / 加减计数器PV / CV / Q / R / LD预设值 / 当前值 / 输出 / 复位 / 装载时间中断指定日期或按分/时/天/月触发SET/ACT/CAN/QRY延时中断触发后精确延时再执行中断 OBSRT/CAN/QRY精度高于普通定时器循环中断按固定周期间隔执行硬件中断高速 I/O 硬件事件触发六、课堂任务 / 学习要求能说清 OB、FC、FB、DB 四类块的作用与区别重点掌握 FC 无背景 DB执行完释放与 FB 有背景 DB可保持的区别。会在 FC/FB 接口区声明 Input/Output/InOut/Temp/Static 变量理解局部变量#和全局符号双引号的含义。理解单实例与多重背景的区别能在博途中按步骤建立多重背景 FB说明它为什么便于控制多台电机。掌握 OB1 的循环扫描机制、多个程序循环 OB 的执行顺序、优先级与扫描周期概念。能区分时间中断、延时中断、循环中断、硬件中断的用途知道延时中断精度高于受扫描周期影响的普通 TON/TOF。熟练使用 TON/TOF、S/R、P/N、CTU/CTD/CTUD并能读懂、判断时序图尤其 TON 输入断开要停止计时并复位。能独立画出走廊灯 30 s 延时熄灭、再按重新计时和三台电机顺序启动/停止的梯形图。七、待核对 / 以教材为准各习题7-307-44的选项字母与答案为课堂口述还原选项顺序可能因教材版本不同而变化[以教材题图和标准答案为准]。扫描周期约 150 ms为课堂举例实际值取决于程序长度和 CPU 型号[以实际监控值为准]。时间中断、延时中断的具体指令名SET_TOD/ACT/CAN_TOD/QRY_TOD、SRT_DLY/CAN_DLY/QRY_DLY和中断 OB 编号如 OB20随博途版本/CPU 略有差异[以所用软件指令目录为准]。三台电机例题中定时器编号 T37/T38/T39、各段延时10 s、5 s、再 10 s以课堂题图为准本文按课堂口径整理。多重背景建立过程中的菜单名称添加新块→函数块/组织块等随 TIA Portal 版本略有不同[以实际软件界面为准]。八、复习自测主动回忆先自己答再看答案1. S7-1200 用户程序主要由哪几类块组成答OB 组织块、FC 函数、FB 函数块、DB 数据块。2. FC 和 FB 最根本的区别是什么答FC 没有自己的背景数据块执行完临时数据全部释放、不保存FB 拥有背景数据块含静态变量执行后数据可保持。3. FC/FB 的接口参数有哪些FB 比 FC 多哪一类答Input、Output、InOut、TempFB 还可有 Static静态变量保存在背景 DB 中。4. FC 内的局部变量前面为什么有一个#OB 调用时框外实参为什么加双引号答#表示该变量是本块的局部变量由编辑器自动添加双引号表示全局符号实参用于区分局部与全局。5. 什么是背景数据块单实例和多重背景有什么区别答背景 DB 是分配给 FB、专门保存其参数和静态数据的数据块。单实例是每调用一次 FB 生成一个独立背景 DB多重背景是把多个实例的数据集中到外层 FB 的一个背景 DB 中统一管理。6. 控制上百台电机时为什么推荐用多重背景答单实例会生成上百个背景 DB数量庞大、难管理多重背景把它们集中在一个背景 DB 里结构清晰、占用和维护成本低。7. 简述建立多重背景的步骤。答新建外层 FB→在其接口区 Static 中声明各实例选对应 FB 类型→在 OB 中调用外层 FB 并为各实例选择对应项→数据集中存入外层 FB 的背景 DB。8. OB1 是什么它是怎样被执行的答OB1Main是程序循环组织块、主程序CPU 在 RUN 时周期性循环调用它新建工程默认生成。9. 多个程序循环 OB 按什么顺序执行能被中断吗答按 OB 编号由小到大依次执行程序循环 OB 优先级最低可被高优先级的中断 OB 打断。10. 什么是扫描周期普通定时器精度为什么受它影响答CPU 循环执行一次 OB1 所需时间普通 TON/TOF 在扫描中被刷新定时分辨率受扫描周期限制故高精度延时要用延时中断。11. TON 和 TOF 有什么区别答TON 是接通延时输入接通后延时到才输出、输入断开立即复位TOF 是断电延时输入断开后延时一段时间输出才断开。12. TON 的 IN、PT、ET、Q、R 各是什么答IN 输入、PT 预设时间、ET 当前已计时时间实时、Q 输出、R 复位。13. TON 输入断开时定时器应如何动作答立即停止计时并复位当前值清零、Q 断开时序图若画成断开后继续计时或 Q 立即接通都是错的7-38 考点。14. S 置位为什么有记忆功能答置位后该位保持为 1即使驱动输入断开也不变直到 R 复位才清零。15. P 上升沿和 N 下降沿分别检测什么输出多长答P 检测 0→1 跳变、N 检测 1→0 跳变都只在跳变后接通一个扫描周期用于按一下触发一次。16. CTU、CTD、CTUD 分别是什么LD 端什么作用答加、减、加减计数器LD 装载端按下后把当前值 CV 重新装回预设值 PVCTD 7-30 考点。17. CTD 计数器按装载端后 CV 和 Q 如何变化答CV 回到装载值 PV题中为 3此时 Q 不接通。18. 时间中断能按哪些周期触发配套哪些指令答可指定日期时间或按每分钟/每小时/每天/每月触发配套 SET 设置、ACT 激活、CAN 取消、QRY 查询。19. 延时中断与普通定时器相比有什么优势怎样触发答延时中断由系统/硬件级实现、精度高不受扫描周期影响触发条件如输入由 1 变 0出现后延时设定时间再执行中断 OB可用 SRT 启动、CAN 取消、QRY 查询。20. 循环中断和硬件中断分别用于什么场合答循环中断按固定周期执行周期采样、PID硬件中断由高速 I/O 硬件事件即时触发。21. 走廊灯例题为什么要用上升沿 P 和中间继电器 M0.0答上升沿保证按一次只触发一次、不重复中间继电器把按钮脉冲与灯保持/定时器复位逻辑分开梯形图更规范且便于每次按下都重新触发定时器实现再按重新计时。22. 走廊灯如何实现 30 s 到自动熄灭答TON 设 PT30 s用其延时闭合常开点对应的常闭触点串入灯 Q0.0 的保持回路30 s 到常闭点断开、灯灭。23. 三台电机顺序控制为什么建议分三个程序段答按第一台、第二台、第三台分段各配 T37/T38/T39 定时器启动/停止对象清晰、不易漏停或误停。24. 写出三台电机的时序关系。答按 I0.0→Q0.0 立即启动并启动 T3710 sT37 到→Q0.1 启动、启动 T385 sT38 到→Q0.2 启动同时 Q0.0 停止需要时再由 T39 停 Q0.1。25. LAD 和 SCL 各有什么特点答LAD 梯形图图形化、接近继电器电路、直观SCL 是类高级语言的结构化文本适合数学运算和复杂逻辑FC/FB 都可用它编写并仿真。收尾记忆第八章抓住四类块、两种函数、一套中断——OB 管执行结构OB1 循环扫描、中断 OB 处理事件、FC 是用完即释放的子程序局部变量#、FB 是带背景 DB 能记忆的子程序、多重背景用一个 DB 管多个实例定时器记TON 接通延时、TOF 断电延时、输入断 TON 立即复位边沿记P 上 N 下只通一个扫描周期计数器记CTU 加 CTD 减 CTUD 加减、LD 装载回 PV高精度延时别用普通定时器要用延时中断。

相关新闻

让大模型不再瞎编数字:一次「抄写模式」的完整实验记录(彻底消除幻觉)

让大模型不再瞎编数字:一次「抄写模式」的完整实验记录(彻底消除幻觉)

让大模型不再瞎编数字:一次「抄写模式」的完整实验记录(彻底消除幻觉)一个反直觉的结论:要消灭数字幻觉,最好的办法不是让模型算得更准,而是让它根本不用生成数字。 本文记录从零开始的一串实验——试错、翻车、自我打脸、最后收敛——全部脚本可复现。模…

2026/10/12 2:31:26 阅读更多 →
LeetCode 643. 子数组最大平均数 I|从暴力枚举到滑动窗口

LeetCode 643. 子数组最大平均数 I|从暴力枚举到滑动窗口

目录)LeetCode 643. 子数组最大平均数 I|从暴力枚举到滑动窗口一、最开始的思路:枚举每一个长度为 k 的子数组二、发现问题:相邻窗口其实有大量重复内容三、什么是滑动窗口?1. 定长滑动窗口一般怎么做?2. 怎…

2026/10/12 2:31:26 阅读更多 →
Zola 多语言站点首页 Section 实战:默认语言 `_index.md`、`_index.{code}.md` 与 `@/` 内部链接

Zola 多语言站点首页 Section 实战:默认语言 `_index.md`、`_index.{code}.md` 与 `@/` 内部链接

静态站点CLI开发工具 【免费下载链接】zola A fast static site generator in a single binary with everything built-in. https://www.getzola.org 项目地址: https://gitcode.com/GitHub_Trending/zo/zola 点击查看 免费下载 在 Zola 中,多语言站点的…

2026/10/12 2:31:26 阅读更多 →

最新新闻

在Mac上搞定Spine 2D骨骼动画:从安装到运行时接入的完整工作流

在Mac上搞定Spine 2D骨骼动画:从安装到运行时接入的完整工作流

简介:Spine for Mac是面向2D游戏开发者的专业骨骼动画工具,帮助设计师通过绑定图像到骨骼结构快速制作动态角色,减少逐帧动画的重复劳动。该工具在macOS上保持良好兼容性,支持实时预览、IK反向动力学、动画状态机与纹理自动打包&a…

2026/10/12 4:06:27 阅读更多 →
IPP网络打印协议解析:从驱动less打印到ipptool调试与配置实战

IPP网络打印协议解析:从驱动less打印到ipptool调试与配置实战

简介:这是一份面向网络开发者的 IPP 网络打印协议源码包,完整呈现基于 HTTP/1.1 的打印作业提交、打印机状态查询、作业控制及属性扩展等标准实现,强调跨平台设备间的互操作性,适合需要开发打印客户端、研究协议解析或进行系统集成…

2026/10/12 4:06:27 阅读更多 →
论文降AI率后如何验证效果?AIGC检测交叉验证与流程解析

论文降AI率后如何验证效果?AIGC检测交叉验证与流程解析

上周三晚上,一个正在改毕业论文的学妹发来消息:“师兄,我用了各种方法,把AI检测率从45%降到了9%,可自己看着还是心虚,这结果到底算不算数?”这个问题其实问到了点子上。很多人闷头改了好几天&am…

2026/10/12 4:06:27 阅读更多 →
Dendrite 版本演进全解析:从 CHANGES.md 看 Matrix 第二代 homeserver 的技术脉络

Dendrite 版本演进全解析:从 CHANGES.md 看 Matrix 第二代 homeserver 的技术脉络

后端即时通讯 【免费下载链接】dendrite Dendrite is a second-generation Matrix homeserver written in Go! 项目地址: https://gitcode.com/gh_mirrors/de/dendrite 点击查看 免费下载 导读:本文以仓库根目录的 CHANGES.md 为主线,系统梳…

2026/10/12 4:06:27 阅读更多 →
记一次k8s flannel/calico/coredns一切正常,但是互访失败

记一次k8s flannel/calico/coredns一切正常,但是互访失败

k8s flannel/calico安装后,和coredns一切正常,但是互访失败确认节点服务器之间UDP是否正常,特别是电信的天翼云,封了UDP通信(其他厂商适用)验证方法# 一个节点监听,一个节点请求宿主之间原始IP …

2026/10/12 4:06:27 阅读更多 →
WinForm分页性能优化:SQL服务端分页+DataGridView虚拟模式实战

WinForm分页性能优化:SQL服务端分页+DataGridView虚拟模式实战

简介:这是一份面向Windows Forms初学者与中级开发者的实用分页控件实现方案,专为解决大数据量下DataGridView性能瓶颈与用户体验不佳问题而设计。资源完整封装了可直接集成的自定义分页控件(PagerControl.cs及配套设计器、资源文件&#xff0…

2026/10/12 4:05:27 阅读更多 →

日新闻

复古胶片颗粒感噪点合成器:Canvas ImageData 像素高斯杂色注入算法

复古胶片颗粒感噪点合成器:Canvas ImageData 像素高斯杂色注入算法

在数码相机、高清显示屏与现代矢量图形技术高度发达的今天,画面可以做到绝对的锐利、平滑与无瑕。然而,当一张秋日手账插画或拍立得照片过于“平整无瑕”时,往往会散发出一种冰冷生硬的“数码塑料感(Digital Plasticity&#xff0…

2026/10/12 0:00:59 阅读更多 →
活字印刷古籍线装排版:Canvas 竖排文字与栏线自适应算法

活字印刷古籍线装排版:Canvas 竖排文字与栏线自适应算法

在现代网页与移动端设计中,横排(Horizontal Layout)早已经成为了绝对的主流。然而,当我们翻开泛黄的线装古籍、宋版木刻诗集,或是欣赏一张茶道雅集的手写便签时,那种**自上而下纵向书写、自右向左逐列铺展&…

2026/10/12 0:00:59 阅读更多 →
周日晚间的“精神松绑减震器”:无压力情绪倾倒箱与温和轻声陪伴

周日晚间的“精神松绑减震器”:无压力情绪倾倒箱与温和轻声陪伴

每到周日的晚上八点到十点,很多人心里都会悄悄亮起一盏警示灯。 在心理学上,这种现象有一个专门的称谓——“周日夜晚焦虑症(Sunday Scaries)”。明天又是周一,闹钟又要重新在七点响彻卧房;脑海里仿佛有一个…

2026/10/12 0:00:59 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/12 0:16:30 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/12 0:16:38 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/12 0:16:43 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 10:45:37 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 14:36:53 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 14:36:54 阅读更多 →