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

S71200 - 编程 - 笔记

1 DEMO

1.1气阀控制

1.2 红绿灯

基于PLC红绿灯控制_哔哩哔哩_bilibili

2 介绍变量DB,M,I,Q的使用 

在PLC编程中,通常会使用多种类型的变量来实现逻辑控制、数据存储和输入输出操作。以下是常见的PLC变量类型及其用途:

1. DB (Data Block) - 数据块

  • 用途:DB用于存储复杂数据结构或连续的数据。例如,定时器、计数器、配方数据等。每个DB可以包含多个变量,这些变量可以是单独的位、字节、整数、实数等。
  • 使用场景:如果你需要存储和管理一组数据,比如一系列测量值、时间数据、配置参数等,你可以使用数据块。每个数据块都有一个唯一的编号,如 DB1DB2 等。

2. M (Merker) - 标志寄存器

  • 用途:M变量通常用于存储临时数据或中间结果。这些变量在程序运行过程中用于保持某些状态或标志,直到下次PLC扫描周期更新它们。M位不与物理地址直接关联,而是仅在程序内部使用。
  • 使用场景:当需要在程序中保留某个状态或中间值时,可以使用M区。比如当某个条件满足后需要保持某个状态(如启动、停止状态)时,可以使用M区变量。

3. I (Input) - 输入

  • 用途:I变量用于表示物理输入信号,如按钮、开关、传感器等。它们映射到PLC的输入端子,每个I变量对应一个实际的输入信号。
  • 使用场景:当你需要读取外部设备(如传感器、按钮)的状态时,会使用I区变量。比如 I0.0 可以表示连接到PLC第一个输入端子的一个开关状态。

4. Q (Output) - 输出

  • 用途:Q变量用于控制物理输出信号,如继电器、灯、阀门等。它们映射到PLC的输出端子,每个Q变量对应一个实际的输出信号。
  • 使用场景:当你需要控制外部设备(如指示灯、电磁阀)的状态时,会使用Q区变量。比如 Q0.0 可以表示连接到PLC第一个输出端子的一个灯的状态。

变量的命名规则

  • 位(Bit)地址:如 I0.0 表示输入地址 0.0 位,Q0.1 表示输出地址 0.1 位,M0.0 表示标志寄存器的0.0位。
  • 字节(Byte)或字(Word)地址:如 MB10 表示M区的第10个字节,IB1 表示I区的第1个字节。

总结

  • DB:用于存储复杂数据结构。
  • M:用于临时或中间状态存储,不与物理设备直接关联。
  • I:用于读取物理输入信号。
  • Q:用于控制物理输出信号。

不同类型的变量在PLC程序中承担着不同的功能,合理使用这些变量可以帮助构建有效的控制逻辑和数据管理。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • ZooKeeper 集群的详细部署
  • eNSP 华为三层交换机实现VLAN间通信
  • 【课程总结】day23:大模型训练策略(BERT模型与GLM模型)
  • 【若依 - 前后端不分离版】SysCaptchaController 详解:生成与处理验证码
  • springboot2.x到spring3.x的一些变化和示例说明
  • 花钱买不到系列之—linux系统调用
  • 嵌入式学习Day29---Linux软件编程---网络编程
  • 力扣--最长公共前缀
  • C++ 对象构造语义学——局部对象、全局对象的构造和析构
  • MINIO图片地址浏览器打开不显示
  • python中的列表、元组、字典之间的区别
  • 刑法学学习笔记(个人向) Part.1
  • haproxy 7000字配图超详细教程 从小白到入门
  • docker知识点
  • https://ffmpeg.org/
  • CAP理论的例子讲解
  • github从入门到放弃(1)
  • pdf文件如何在线转换为jpg图片
  • vue脚手架vue-cli
  • 湖南卫视:中国白领因网络偷菜成当代最寂寞的人?
  • 精彩代码 vue.js
  • 十年未变!安全,谁之责?(下)
  • 使用Maven插件构建SpringBoot项目,生成Docker镜像push到DockerHub上
  • 吴恩达Deep Learning课程练习题参考答案——R语言版
  • Nginx惊现漏洞 百万网站面临“拖库”风险
  • (¥1011)-(一千零一拾一元整)输出
  • (python)数据结构---字典
  • (Redis使用系列) SpringBoot 中对应2.0.x版本的Redis配置 一
  • (附源码)计算机毕业设计SSM保险客户管理系统
  • (接上一篇)前端弄一个变量实现点击次数在前端页面实时更新
  • (已解决)什么是vue导航守卫
  • (转)Java socket中关闭IO流后,发生什么事?(以关闭输出流为例) .
  • (转)大型网站架构演变和知识体系
  • (转载)Google Chrome调试JS
  • .cfg\.dat\.mak(持续补充)
  • .h头文件 .lib动态链接库文件 .dll 动态链接库
  • .net 7 上传文件踩坑
  • .NET Compact Framework 3.5 支持 WCF 的子集
  • .Net Core缓存组件(MemoryCache)源码解析
  • .Net FrameWork总结
  • .Net Memory Profiler的使用举例
  • .NET Windows:删除文件夹后立即判断,有可能依然存在
  • .net6+aspose.words导出word并转pdf
  • .net实现头像缩放截取功能 -----转载自accp教程网
  • .NET是什么
  • /ThinkPHP/Library/Think/Storage/Driver/File.class.php  LINE: 48
  • @vueup/vue-quill使用quill-better-table报moduleClass is not a constructor
  • [ C++ ] STL_vector -- 迭代器失效问题
  • [100天算法】-目标和(day 79)
  • [ABC294Ex] K-Coloring
  • [Android Studio 权威教程]断点调试和高级调试
  • [Angularjs]ng-select和ng-options
  • [bzoj 3534][Sdoi2014] 重建
  • [bzoj1038][ZJOI2008]瞭望塔
  • [C puzzle book] types