本人最近写了一个五台锅炉共用一个冷却水泵的程序,开始打算用时间戳来记录每台锅炉需要冷却的时间,然后用时间进行排序,但是后来无意中发现fifo可以实现表的先进先出的功能,就抱着学习的目的,用fifo写了本程序。

第一步,先要建立一个表如下图,上电初始化建立一个具有5个值的表,从VW200开始,VW200存放的是表的容量,VW202仿的是当表内的实际个数,然后给vw100-vw108(每台锅炉在表里的id)赋值。

第二部,5个i口作为5台锅炉发来的请求冷却信号,这5个信号必须用上升沿P或者下降沿N来触发

第三步,当表内有数据,且水泵处于休眠状态下,执行先进先出程序,vw300就是目前出去的值(锅炉序号)

第四步,检测当前的先进先出执行到哪台锅炉,对应锅炉就执行输出,这里的q0.1-q0.5就是5台锅炉,vw202和vw300只是方便测试用的,可以删除,m0.1-m0.5都是是同一个水泵的工作信号,为了防止双线圈,才命名不一样

第五步,双线圈的解决办法,q1.0就是水泵电机

fifo这个函数在很多地方都可以用到,排队程序在工业自动化中占比也算大的,但是网络上都找不到详细的说明,希望我这个教程能帮助到大家,给个回复就算谢谢了。日行一善!

西门子plc s7-200写的先进先出范例 用fifo相关推荐

  1. 西门子plc s-7 1200驱动伺服电机方法

    西门子plc s-7 1200驱动伺服电机方法 前言 完整设备连接 驱动实际接线图 程序编写 新建项目 添加工艺对象 配置工艺对象 程序编写 启动方法 选择工作模式 前言 其实,伺服电机还用另外两种工 ...

  2. 西门子plc程序代写代写西门子plc程序包括200smart,1200plc和1500plc和上位机系统

    西门子plc程序代写代写西门子plc程序包括200smart,1200plc和1500plc和上位机系统,注释详细,易懂上手,并且录制视频讲解程序 编号:69100640625555877西门子PLC ...

  3. 西门子 PLC S7单边通信

    PLC通信 1.组态&编程 (1)打开博途软件,创建新项目,命名为:通信 (2)添加新设备,命名为A,这里选择的是CPU1211C,版本V4.2 (3)CPU属性设置,启用系统存储器字节和时钟 ...

  4. 西门子PLC SMART 200和HMI连接组态编程

    这一篇文章主要介绍SMART200PLC和HMI进行通信的设置组态,并完成一些逻辑上的操作. 这里我是用的是WIN7 64位旗舰版系统.有些人可能在win10上也能安装使用PLC和HMI的软件,但是稳 ...

  5. 西门子PLC s7立即触点和立即输出指令的应用

    立即触点指令(Immediate)只能用于输入量I,执行立即触点指令时,立即读入物理输入点的值,根据该值决定触点的接通/断开状态,但是并不更新该物理输入点对应的输入过程映像寄存器.在语句表中,分别用L ...

  6. ISM Web组态软件采集西门子PLC

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.西门子PLC 二.使用步骤 1.创建西门子 PLC S7模型 2.创建设备 总结 前言 本文详细讲述了ISM We ...

  7. 先进先出算法(FIFO)——页面置换

    原创 最近操作系统实习,写了先进先出算法(FIFO)的代码来实现页面置换. 题目阐述如下: 设计四:页面置换 设计目的: 加深对请求页式存储管理实现原理的理解,掌握页面置换算法. 设计内容: 设计一个 ...

  8. 西门子224/226源码 PLC源码 S7 200源代码 ,测试过一些基础的功能

    西门子224/226源码 PLC源码 S7 200源代码 ,测试过一些基础的功能,能用,研究过FX2N的可以深入研究这个代码,编译无错误. YID:921564612166285080后程序猿

  9. 台达变频器modbus通讯控制程序 西门子s7—200型PLC和昆仑通泰触摸屏程序

    台达变频器modbus通讯控制程序 西门子s7-200型PLC和昆仑通泰触摸屏程序,带变频器使用手册,参数设置和接线说明. 可以实现频率设定,频率,电压,电流显示:正转启动,反转启动和停止控制. ID ...

最新文章

  1. 用Python Turtle库画一个萌化的蜘蛛侠
  2. 这五款Python工具都是最常用的,尤其是第三种,初学者必须掌握的
  3. 分布式图处理系统同步异步执行模式
  4. minio扩展现有的分布式集群:扩大集群规模,增加磁盘数量
  5. 汇编语言的码制转换小问题--求指教
  6. .NET垃圾回收笔记
  7. java 生成验证码
  8. 堆排序,为什么升序排列要建大堆,降序排列要建小堆
  9. java socket 全双工_java socket实现全双工通信
  10. Job for slapd.service failed because the control process exited with error code. See systemctl stat
  11. python类的使用的生物学应用_当AI遇到生物-深度学习在生物研究中的应用案例列表...
  12. vb查询mysql数据库实例_初识vb数据库开发之实例5(数据查询)
  13. 虚拟机黑裙加载硬盘_适合练手,在虚拟机中安装黑群晖,想要组建NAS服务器的看这里...
  14. 用Jekyll生成网页部署的若干问题
  15. 宝德自强AI智能小站 PI300T
  16. DRAM 内存介绍(一)
  17. 全球与中国石材加工机械市场现状及未来发展趋势
  18. foxmail邮件加载失败重试_foxmail 提示错误
  19. Romberg积分法MATLAB实现(附代码、实例、详解)
  20. Brooks法则:“向进度落后的项目中增加人手只会使进度更加落后”

热门文章

  1. 英雄无敌3 Heroes III 里面的英语单词 (转)
  2. 计算机管理中打开移动硬盘磁盘必须格式化,最佳解决方案:无法打开移动硬盘分区,并且未格式化解决方案。...
  3. Android程序锁的实现
  4. [新版新概念英语1-4册全部视频和课本]
  5. android动态获取地理位置权限,Android6.0获取GPS定位和获取位置权限和位置信息的方法...
  6. mac时间机器文件服务器,Mac小技巧:时间机器的使用方法和细节
  7. vbs介绍与常见整人代码
  8. java kafka producer_KafkaProducer未成功将消息发送到队列中
  9. 【DRP项目】安装Oracle数据库之服务端安装+客户端安装(一)
  10. hdoj 1276 士兵队列训练问题 模拟队列