PLC梯形图实操——风扇正反转

2023-11-21 05:04

本文主要是介绍PLC梯形图实操——风扇正反转,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 1.项目内创建函数块(FB)
  • 2.项目内创建数据块(DB)
    • 2.1去除优化块访问
    • 2.2去除优化块的访问后对数据块进行编译
  • 3.在函数块(FB)内实现正转反转的自锁与互锁
    • 3.1在函数块内实现电机正反转的梯形图
  • 4.主函数中调用函数块
    • 4.1为变量分配地址
  • 5.创建名为“控制”的数据块(DB7)
  • 6.实现正反转电机的梯形图
    • 6.1正转电机
    • 6.2反转电机
  • 7.设计触控屏动画
    • 7.1拖动按钮
    • 7.2将按钮与变量关联
    • 7.3风扇的设置

1.项目内创建函数块(FB)

在该函数块内写入变量:正转、反转、停止;正转电机、反转电机。以上五个变量均为bool类型,且不需要去除优化块访问。
在这里插入图片描述

2.项目内创建数据块(DB)

在该函数块内写入变量:正转、反转、停止、正转电机、反转电机。以上五个变量均为bool类型,需要去除优化块访问。
在这里插入图片描述

2.1去除优化块访问

选中数据块——右键点击属性——去除优化的块访问——点击确认——修改完成——返回该数据块发现出现名为偏移量的新列
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.2去除优化块的访问后对数据块进行编译

去除优化块的访问后对数据块进行编译,编译后生成偏移量。偏移量本质上是系统自动分配地址,无需人工输入,更加高效快捷。
在这里插入图片描述

3.在函数块(FB)内实现正转反转的自锁与互锁

注意:函数块(FB)内使用的变量为第二步中创建的变量,而非第三步数据块(DB)中的变量。
具体操作如下图所示:
在这里插入图片描述

3.1在函数块内实现电机正反转的梯形图

在这里插入图片描述

4.主函数中调用函数块

点击Main[OB1]进入主程序,将风扇正反转[FB1]拖动至主函数上,生成如下图所示的梯形图:
在这里插入图片描述
注意:拖动后系统自动生成一个名为“风扇正反转_DB[DB2]”的数据块,该块块内变量与第二步写入函数块(FB)的内容一致,并且该数据块(DB2)专门为风扇正反转函数(FB1)服务。

4.1为变量分配地址

具体操作如下:选中主函数——单击“DB1_风扇转动[DB1]”——在详细视图中将变量拖动至函数对应位置,系统自动为其分配地址
在这里插入图片描述

5.创建名为“控制”的数据块(DB7)

该数据块中包含风扇图片和步骤两个变量,均为int类型。设定好变量后去掉优化块访问,随后对数据块进行编译,生成偏移量。
,

6.实现正反转电机的梯形图

回到主函数,实现正反转电机的梯形图。该梯形图共四行五列,仅分析框起来的四列。四行分别为四个步骤,根据move传进来的数据跳转到对应步骤,随后进行操作。四列分别为判断、控制图片、延时接通以及跳转。
注意:图片数值为0-3,步骤数值为0-3;正转电机与反转电机实现逻辑一致,区别在于图片传递顺序相反。

6.1正转电机

在这里插入图片描述

6.2反转电机

在这里插入图片描述

7.设计触控屏动画

7.1拖动按钮

在元素中找到图中按钮,并将其拖至画面所示位置,随后更改按钮名称
在这里插入图片描述

7.2将按钮与变量关联

具体操作:选中按钮——右键属性——选择事件——选择按下——如图所示选择按下按键时置位位——点击三个点——选择程序块——选择DB1_风扇转动——选择正转。反转与停止按钮的关联与之相似,此处不做展开,唯一需要强调的点是选择按钮与之对应的变量进行关联,例如屏幕上的正转按钮关联 的是DB1数据块中的正转变量,而非反转变量或停止变量。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

7.3风扇的设置

具体操作:在元素中找到图中按钮,并将其拖至画面所示位置——选择文本和图形列表——选择图形列表——添加名称“风扇”——添加数值(0-3)与与之对应的风扇图片——设置完成后关闭该面板,回到根画面——选中添加的图片画面——右键选择属性——点击属性——点击常规——在图形列表中选择“风扇”——设置完成后选择名为“控制”数据块中的风扇图片作为变量——模式选择输出
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

这篇关于PLC梯形图实操——风扇正反转的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/400001

相关文章

使用C++实现链表元素的反转

《使用C++实现链表元素的反转》反转链表是链表操作中一个经典的问题,也是面试中常见的考题,本文将从思路到实现一步步地讲解如何实现链表的反转,帮助初学者理解这一操作,我们将使用C++代码演示具体实现,同... 目录问题定义思路分析代码实现带头节点的链表代码讲解其他实现方式时间和空间复杂度分析总结问题定义给定

Spring IOC控制反转的实现解析

《SpringIOC控制反转的实现解析》:本文主要介绍SpringIOC控制反转的实现,IOC是Spring的核心思想之一,它通过将对象的创建、依赖注入和生命周期管理交给容器来实现解耦,使开发者... 目录1. IOC的基本概念1.1 什么是IOC1.2 IOC与DI的关系2. IOC的设计目标3. IOC

控制反转 的种类

之前对控制反转的定义和解释都不是很清晰。最近翻书发现在《Pro Spring 5》(免费电子版在文章最后)有一段非常不错的解释。记录一下,有道翻译贴出来方便查看。如有请直接跳过中文,看后面的原文。 控制反转的类型 控制反转的类型您可能想知道为什么有两种类型的IoC,以及为什么这些类型被进一步划分为不同的实现。这个问题似乎没有明确的答案;当然,不同的类型提供了一定程度的灵活性,但

STM32 HAL CAN通讯 实操

1、简介 相比于串口通讯,对于刚接触CAN通讯的小白来说,CAN通讯相对复杂,看各种视频、帖子理论,总是一知半解。本次通过傻瓜式操作,先实现CAN通讯的交互,以提高小白的信心,也便于自己复习观看。本次以STM32CubeMX进行初始化配置,通过Keil 5软件进行软件设计,通过CAN盒实现进行数据的交互。该流程实际以STM32F0、F1、F3、F4、F7实测好用(理论上都适用),这三种型号单片机

SAP学习笔记 - 开发02 - BTP实操流程(账号注册,BTP控制台,BTP集成开发环境搭建)

上一章讲了 BAPI的概念,以及如何调用SAP里面的既存BAPI。 SAP学习笔记 - 开发01 - BAPI是什么?通过界面和ABAP代码来调用BAPI-CSDN博客 本章继续讲开发相关的内容,主要就是BTP的实际操作流程,比如账号注册,登录,BTP集成开发环境的搭建这方面。 目录 1,账号注册 2,BTP登录URL 3,如何在BTP上进行开发? 以下是详细内容。 1,账

[SWPUCTF 2021 新生赛]web方向(一到六题) 解题思路,实操解析,解题软件使用,解题方法教程

题目来源 NSSCTF | 在线CTF平台因为热爱,所以长远!NSSCTF平台秉承着开放、自由、共享的精神,欢迎每一个CTFer使用。https://www.nssctf.cn/problem   [SWPUCTF 2021 新生赛]gift_F12 这个题目简单打开后是一个网页  我们一般按F12或者是右键查看源代码。接着我们点击ctrl+f后快速查找,根据题目给的格式我们搜索c

MapReduce算法 – 反转排序(Order Inversion)

译者注:在刚开始翻译的时候,我将Order Inversion按照字面意思翻译成“反序”或者“倒序”,但是翻译完整篇文章之后,我感觉到,将Order Inversion翻译成反序模式是不恰当的,根据本文的内容,很显然,Inversion并非是将顺序倒排的意思,而是如同Spring的IOC一样,表明的是一种控制权的反转。Spring将对象的实例化责任从业务代码反转给了框架,而在本文的模式中,在map

C#编写上位机通过OPC DA读取西门子PLC数据

Sync_RW 引用:Quick.OpcComRcw 文档中原程序会报错: 原因:需要在安装有Simatic NET V14的电脑上运行这个程序。 需要注释掉下面程序,否则读取时会无故障提示退出。 //finally里的程序要注释掉,否则一点击read按钮,程序会直接无故障提示退出//finally//{// // Free the unmanaged memory/

【LeetCode】07.整数反转

题目要求 解题思路 这道题的难点在于怎么判断越界,我们无法直接与最大值或最小值比较,但是由于每一次我们的ret都需要乘10这个特性来使用ret与最大值或最小值除10进行比较 代码实现 class Solution {public:int reverse(int x) {int ret=0;while(x){//处理越界情况if(ret<INT_MIN/10||ret>INT_MAX