当前位置: 首页 > news >正文

plc 基础指令下,高级部份(官方文档整理)

第八讲:数学函数进阶——CALCULATE 指令

8.1 我看到的截图

老师展示了一个公式: y=3x12​+x22​+x32​​​

这是均方根的计算,在 PLC 里用CALCULATE指令实现。

8.2 CALCULATE 是什么

CALCULATE是一个通用数学表达式指令,可以在里面写复杂公式,不用连一堆 ADD、MUL、DIV、SQRT。

引脚

  • EN:使能

  • OUT:计算结果

  • IN1IN2IN3...:输入变量(可以添加多个)

我的理解:就像计算器里的公式输入,把一堆运算打包到一个框里。

8.3 和基本指令的区别

表格

方式适合场景我的感受
ADD、SUB、MUL、DIV 逐个连简单运算直观,但连线多
CALCULATE复杂公式一个框搞定,省地方

8.4 应用场景

  • 平均值计算:多个传感器取平均

  • 标准差/方差:质量检测中的统计计算

  • 几何运算:距离、角度计算

8.5 我的注意事项

  • CALCULATE 里写的公式要检查数据类型匹配

  • 如果公式里有除法,还是要防除零错误

  • 太复杂的公式建议拆成几步,方便调试时看中间值


第九讲:移动操作——MOVE 家族

9.1 MOVE 指令(单个变量移动)

我看到的截图

老师展示了 DB29 里的各种数据类型:

  • Static_1:Int

  • Static_2:Int

  • Static_3:DInt

  • Static_4:Array[0..1] of Byte

  • Static_5Static_6:UDT(用户数据类型)

  • Static_7:String[10]

  • Static_8:Char

  • Static_9:Bool

  • Static_10:UInt

MOVE 的用法

plain

MOVE EN —— ENO "DB29".Static_1 —— IN —— OUT1 —— "DB29".Static_2

我的理解:MOVE 就是复制,把 IN 的值复制到 OUT,IN 原来的值不变。

MOVE 能做什么

  • 单个变量复制(Int → Int)

  • 数组整体复制(Array → Array)

  • 结构体复制(UDT → UDT)

  • 字符串复制(String → String)

我的疑问:不同类型能直接 MOVE 吗?比如 Int 复制到 DInt?老师好像说基本类型可以自动转换,但最好保持一致。


9.2 MOVE_BLK 指令(数组块移动)

我看到的截图

DB30 的Static_1是 Array[0..7] of Byte,里面存了:

  • Static_1[0]= 16#01

  • Static_1[1]= 16#02

  • Static_1[2]= 16#03

  • Static_1[3]= 16#04

  • Static_1[4]~[7]= 16#00

用 MOVE_BLK 把前 4 个元素搬到 DB31 的Static_1[4]开始的位置:

plain

MOVE_BLK EN —— ENO "DB30".Static_1[0] —— IN "DB31".Static_1[4] —— OUT 4 —— COUNT

结果:DB31 的Static_1[4]=01,[5]=02,[6]=03,[7]=04

我的理解:MOVE_BLK 是数组的批量复制,可以指定从哪开始、复制多少个。

引脚说明

表格

引脚我的理解
http://www.jsqmd.com/news/982819/

相关文章:

  • 微信小程序计算机毕设之基于微信小程序的防诈骗服务系统设计与实现基于Springboot的防诈骗管理系统小程序(完整前后端代码+说明文档+LW,调试定制等)
  • SaltStack中state的变量
  • 榨干大模型红利:如何在实时对话场景中玩转 Prompt Caching(提示词缓存)
  • ARM Cortex-M0入门实战:LPC112x核心架构、外设驱动与低功耗设计
  • Xenia Canary:跨架构实时编译的技术革命与开源创新
  • 告别IDM试用期烦恼:开源脚本让你的下载管理体验永久免费
  • i.MX53 IPU时序配置实战:从传感器到显示的嵌入式视觉接口设计
  • MemcardRex技术解析:PS1游戏存档管理的架构设计与应用实践
  • 如何在Windows电脑上安装安卓应用:3分钟学会APK安装器的终极指南
  • KE15Z/14Z外部晶振与SWD接口硬件设计实战指南
  • 当OpenClaw遇见Linode:一键部署7×24h云端AI助理
  • K30 I2S/SAI接口时序规范与引脚复用配置实战指南
  • 3个Windows维护痛点,Dism++一站式解决指南
  • 跨境电商图片翻译工具市场报告:2026趋势与机会
  • 日记 2
  • 2026年CSDN年度技术趋势预测:AI原生、云原生与开发者工具新范式
  • GPT-4的2%激活率:MoE稀疏架构原理与工程实践
  • ​我用10年经验,总结了接地故障定位的3个核心要点​
  • 如何快速解决游戏键盘输入冲突:Hitboxer免费工具的完整指南
  • 一个报错引发的奇思妙想:用 pip install numpy==999 查看所有可用版本,这招靠谱吗?
  • 嵌入式开发时序规范解析:从SPI、I2C到I2S的硬件设计实践
  • 华硕笔记本性能调校神器:5分钟掌握G-Helper完整使用指南
  • i.MX 6SLL工业级SoC:从核心架构到硬件设计的嵌入式实战指南
  • 嵌入式学习随记
  • 别再只搜Star数了!手把手教你用GitHub Topics和高级搜索,精准发现宝藏项目
  • GetQzonehistory:如何完整备份QQ空间说说,守护你的数字记忆
  • 深入解析NXP i.MX 6系列处理器:架构、外设与嵌入式开发实战
  • i.MX RT1160电源与时钟设计:从数据手册到稳定系统的实战指南
  • Adobe-GenP 3.0:设计师的创意解放工具,告别订阅制束缚
  • Hitboxer深度解析:游戏键盘SOCD处理的技术实现与性能优化