项目要求:按键配合实现8位LED的流水灯/跑马灯功能。

项目目的:学习移位和循环的指令。

项目功能:设置启动、停止按钮和8个圆形的LED灯。按下启动按钮后,8个LED灯按照流水灯或者跑马灯的规则循环显示。按下停止按钮后,显示停止。循环显示的LED灯可以是单个流水灯,也可以是多位跑马灯。具体为:要求在第0.5S亮一个灯,第1S亮第二个灯,第1.5S亮第三个灯,依此类推,4S后进行循环。

本期项目给大家带来的是8位流水灯/跑马灯的功能的实验,这个实验室学单片机入门必做的实验。换到PLC里面我们也需要学习,主要是通过此项目实验了解位和循环的指令,对数据的类型和位的操作做一个深层次的理解。主要是针对之前说的PLC的学习可以没有C语言的基础,所以我们就没了解过C语言中的数据类型。其实计算机中的数据类型是通用的,一通百通,无论学习什么控制器CPU都需要跟数据类型打交道。所以学习好数据类型是摆脱新手的关键一步。

一、硬件电路

通常来说无论什么控制器CPU,学习的第一步都是点灯。互联网上好多点灯大师最终都成为了大神级人物。点灯是学习的入门必备,点一个灯和点多个灯效果使一样的。但是多个灯的显示效果是可以玩出各种花样的,临近过年大家也可以看见自家和邻居马路上摆出来的各式各样的彩灯。它们的显示效果是多样的,我们本次项目的要求是流水灯,一个灯点亮过后,下一个灯接力点亮,然后如此往复循环下去,形成流水或者跑马灯的效果。其实跑马灯的效果和流水灯的效果是不同的,具体就不在这里说明了。我们学习的目的是点灯和指令,不纠结流水灯和跑马灯具体差别在哪里。

话不多说先上硬件原理图:

电路非常简单,输入两个按键,输出控制8个LED灯。

二、PLC程序

通过对任务分析,我们可以用之前所学的定时器指定完成本项目。那么除了这个方法,我们可以通过学习今天的位和循环指令用另外一种方法去完成本项目。

1.方法一:定时器方法

上述是一个简单的定时器功能,通过定时器,我们可以完成0-4s的一个循环。之后就是在这循环的4s中做文章。

之后的逻辑也很简单,利用比较指令,一个是大于,另一个是小于等于。对这循环的4s进行分段,平均分给8个LED灯,做成流水灯或跑马灯的效果。你可以根据你想的任意修改定时间,控制自己的LED灯,让他们进行随心所欲的点亮。

2.方法二:循环移位法

这里我们用到这个指令:循环右移的方法。IN---移位前的数据,OUT--移位后的数据,N--每次移位多少位。

上图就是博途帮助系统中对循环右移的解释。具体的主程序如下:

前面通过定时器做出0.5s的循环,然后使用循环位移的指令,利用定时的延时每隔0.5s循环右移一位即可。这种方法大大简化了编程,尤其是当流水灯的数量越多的时候简化的程序量越大。

三、PLC和HMI联动仿真效果

上图为定时器法循环的流水灯。

上图为循环位移法的流水灯,为了与定时器进行区别,采用了两个灯点亮循环移位的效果。

程序使用说明:下载压缩包后,直接打开程序按照如下步骤操作,按照下面的截图,双击打开main主程序,然后鼠标拖拽主程序下方任意的子程序(绿的那个),直接拖到主程序的程序段中。两个子程序只能拖拽一个,然后再点击仿真,从新下载程序,即可生效。

后续的步骤就跟之前的项目一样了:

分别在PLC程序和HMI程序上右键点击启动仿真,即可在弹出的仿真界面点击按钮查看仿真效果。

仿真程序下载请点击下方链接:
https://download.csdn.net/download/m0_57441179/87353088

零基础无实物一步一步学PLCS7-1200仿真(九)-八位流水灯/跑马灯相关推荐

  1. 零基础无实物一步一步学PLCS7-1200仿真(三)-电动机正反转控制(互锁)

    在学习完电动机的启保停控制后,我们今天来学习电气控制里面进阶的正反转控制,也就是大名鼎鼎的互锁电路.首先需要了解电动机可以实现电动机正反转的工作原理. 一.硬件电路 用S7-1200 PLC控制一台三 ...

  2. 零基础无实物一步一步学PLCS7-1200仿真(五)-四路简易抢答器控制

    本次项目为四路抢答器,通过本次项目了解项目开发流程,未来扩展多路抢答器只需要对程序进行微调即可. 项目要求: 1.有4组进行抢答,抢答按钮为SB1-SB4,对应4个抢答指示灯为L1-L4. 2.主持人 ...

  3. 零基础无实物一步一步学PLCS7-1200仿真(六)-两个电动机顺启逆停

    本次项目为两个电机定时启动且有顺序要求,目的旨在学习PLC的定时器的指令,学习时间继电器对应的PLC里面的指令是如何使用的. 项目要求: 1.电机启动按钮,M1电机立即启动. 2.按钮按下后,定时器开 ...

  4. python爬虫教程入门-零基础入门Python爬虫不知道怎么学?这是入门的完整教程

    原标题:零基础入门Python爬虫不知道怎么学?这是入门的完整教程 这是一个适用于小白的Python爬虫免费教学课程,只有7节,让零基础的你初步了解爬虫,跟着课程内容能自己爬取资源.看着文章,打开电脑 ...

  5. python零基础入门教程-零基础入门Python爬虫不知道怎么学?这是入门的完整教程...

    原标题:零基础入门Python爬虫不知道怎么学?这是入门的完整教程 这是一个适用于小白的Python爬虫免费教学课程,只有7节,让零基础的你初步了解爬虫,跟着课程内容能自己爬取资源.看着文章,打开电脑 ...

  6. 零基础大学才学计算机专业,零基础90后大学毕业待业学计算机

    零基础90后大学毕业待业学计算机 零基础90后大学毕业待业学计算机?四川要学习计算机的话,显然是来成都比较好,这里是大城市,发展也不错,以后就业机会也多. 一些对学历有要求的工作岗位,很多是技术性差的 ...

  7. 零基础带你学习MySQL—多子句查询(十九)

    零基础带你学习MySQL-多子句查询(十九)

  8. 零基础无实物一步一步学PLCS7-1200仿真(八)-按键控制数码管显示

    项目要求:按照项目的功能完成按键控制数码管的技术显示. 项目目的:学习比较指令.数学函数指令和加减计数指令和数码管的显示原理. 项目功能:数码管可以显示两位数00-99,然后可通过四个按键完成数码管的 ...

  9. 日语零基础入门至初级“三步走”

    被日本动漫.日剧深深迷住,但看见似熟非熟的汉字假名却无从下手?!没关系,沪江网校推出日语入门系列班级,要想日语零基础入门你只需要"三步走"!首先,我们来了解看看什么是"三 ...

最新文章

  1. boot spring 获取请求端口浩_6、如何获取配置中心的配置
  2. cygwin编译verilator_Sublime text3 + Verilator 实现自动语法检错
  3. oracle--pl/sql变量定义----
  4. OFBiz + Opentaps 目录管理 四. 产品(二)可配置产品
  5. java 搭建企业应用框架_溯源微服务开发体系:一位Java开发者的转型思考
  6. 前端开发规范文档(html,css,js)
  7. Ajax 模糊查询的简单实现
  8. 拥抱.NET Core系列:依赖注入(1)
  9. HFS远程命令执行漏洞复现
  10. STM32H743+CubeMX-定时器TIM输出PWM(Out Compare模式) + 中断
  11. VMware vSphere 7的主要新功能
  12. Android Studio AVD中文输入法安装
  13. 大数据分析平台的作用有什么
  14. No package ‘libmarco-private‘ found
  15. 全能电子地图下载器(免安装)
  16. matlab绘制成像测井,成像测井系统简介.ppt
  17. Windows 启动 Idea 报错 if you already hava a 64-bit JDK ... 以及 failed to create jvm...
  18. java生成三位随机数_java工具类(三)之生成若干位随机数
  19. echarts x轴time 24小时
  20. 全天下最经典的句子,2013重现!

热门文章

  1. 路由器原理及路由协议
  2. 企业销售管理系统(数据库课程设计)
  3. 谷歌浏览器开多个小号窗口
  4. 马斯洛提出动机理论_【错题本】马斯洛的需要层次理论
  5. 第四篇:基于深度学习的人脸特征点检测 - 数据预处理
  6. 学习python之——python入门
  7. 小米6Android多少,小米6
  8. VLOOKUP函数使用方法
  9. httpd的安装及HTML文件和cgi文件的测试
  10. 大整数加减法(基础,细节题型)