【西门子PLC.博途】——面向对象编程及输入输出映射FC块
当我们做面向对象编程的时候,需要用到输入输出的映射。这样建立的变量就能够被复用,从而最大化利用了我们建立的udt对象。
下面就来讲讲映射是什么。
从本质上来说,映射就是拿实际物理对象对应程序虚拟对象,假设程序对象是I0.0(某个报警信号),那么它对应的实际物理对象可以是电机1的轴报警信号,或者电机2的轴报警信号;或者程序对象是I0.1,程序中定义气为气缸原点信号,那么它可以被映射到这个磁性开关的2芯的信号线的其中一根或者三芯信号线的其中一根。
以上是为了说明什么呢?就是为了表达,我程序中就是只定义一个变量来表示电机报警或者原点信号,我不管你物理世界中是电机1还是电机2(报警信号不是相同的IO点),或者是磁性开关2芯或者3芯的区别,都跟我没关系,从而减少了修改量,这样就减少了出错,只需要修改电气图纸接线方式即可。
那么讲到面向对象,我们一般都会讲到在博途中的一个PLC数据类型,他是一个结构体。当然,之前也介绍过在松下建立自定义类型

当要建立一个udt类型时,点击添加芯数据类型即可。假设我们这里建立一个电机的udt对象(或者可以建立HMI的udt对象)。
![]()
然后我们建立变量如下

大家可以自己根据使用情况(一般电机的普适场景下的变量,都可以往这里面加)。那么之后使用像讲松下那篇文章讲的,我们就可以有几个电机,就定义一个电机数组即可。

那么以上可能会不直观,所以可以在变量表中创建常量来做一个变量的表示。

然后使用的时候可以这么做



//输入映射
"测试数据".电机组["上料模组电机"]."电机jog+" := "I00" AND "I02";
//上料模组电机等同于0,I02为急停信号,一般是常闭,这里为电机jog+映射了这么一个逻辑关系,表明,之后只要写"测试数据".电机组["上料模组电机"]."电机jog+" ,就说明既有jog+和急停没按下去
"测试数据".电机组["上料模组电机"]."电机jog-" := "I01" OR "HMIjog-";
//以上表示按按钮和按触摸屏都是一样的效果,都能够给电机产生jog-的效果。
//总结:以上就说明输入映射是指:这个给到外部的类型是"测试数据".电机组["上料模组电机"]."电机jog+" 但是它内部的逻辑是我们可以来定义的。
//即,不管外面怎么接,是I01或者I02,只要我这么整,之后我的程序都是使用"测试数据".电机组["上料模组电机"]."电机jog+" 那么我只需要改映射就好了//输出映射
"Q01" := "测试数据".电机组["上料模组电机"].电机使能;//这里的表示就是,我给到的输出信号表示是"测试数据".电机组["上料模组电机"].电机使能
//我外部怎么接,比如是Q02也无所谓,到时候程序只需要修改此映射就行。
面向对象的好处,大概就是最大化减少修改量,同时对模型进行抽象化吧。
相关文章:
【西门子PLC.博途】——面向对象编程及输入输出映射FC块
当我们做面向对象编程的时候,需要用到输入输出的映射。这样建立的变量就能够被复用,从而最大化利用了我们建立的udt对象。 下面就来讲讲映射是什么。 从本质上来说,映射就是拿实际物理对象对应程序虚拟对象,假设程序对象是I0.0&…...
牛客周赛 Round 72 题解
本次牛客最后一个线段树之前我也没碰到过,等后续复习到线段树再把那个题当例题发出来 小红的01串(一) 思路:正常模拟,从前往后遍历一遍去统计即可 #include<bits/stdc.h> using namespace std; #define int lo…...
Flux Tools 结构简析
Flux Tools 结构简析 BFL 这次一共发布了 Canny、Depth、Redux、Fill 四个 Tools 模型系列,分别对应我们熟悉的 ControlNets、Image Variation(IP Adapter)和 Inpainting 三种图片条件控制方法。虽然实现功能是相同的,但是其具体…...
0 前言
ArCS作为一个基于Rust的CAD(计算机辅助设计)开源系统,尽管已经有四年未更新,但其设计理念和技术实现仍然具有很高的学习和参考价值。以下是对ArCS项目的进一步分析和解读: 一、项目亮点与技术优势 高效与安全的Rust语…...
ARM嵌入式学习--第八天(PWM)
PWM -PWM介绍 PWM(pulse Width Modulation)简称脉宽调制,是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛应用在测量,通信,工控等方面 PWM的频率 是指在1秒钟内,信号从…...
遇到“REMOTE HOST IDENTIFICATION HAS CHANGED!”(远程主机识别已更改)的警告
连接虚拟机时提示报错: [insocoperhq-soc-cap-raw3 ~]$ ssh root10.99.141.104WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! Someone could be eavesdropping on you right now (man-in-the-midd…...
vue3前端组件库的搭建与发布(一)
前言: 最近在做公司项目中,有这么一件事情,很是头疼,就是同一套代码,不同项目,要改相同bug,改好多遍,改的都想吐,于是就想做一个组件库,这样更新一下就全都可…...
COMSOL快捷键及内置函数
文章目录 COMSOL快捷键使用COMSOL算子求最大值和最小值COMSOL内置函数3.1 解析函数3.2 插值函数3.3 分段函数3.4 高斯脉冲函数3.5 斜坡函数3.6 矩形函数3.7 波形函数3.8 随机函数3.9 Matlab函数3.10 SWITCH函数 COMSOL快捷键 Ctrl+/ 可快速打开预定义的物理量列表。…...
HUAWEI-eNSP交换机链路聚合(手动负载分担模式)
配置思路:HUAWEI交换机链路聚合有LACP模式跟手动负载分担模式,本文主打手动负载分担模式:首先交换机-PC之间划分基本vlan,交换机-交换机之间创建链路聚合组,划分端口至链路聚合分组(缺省模式为手动负载分担模式)。结果验证要求同vlan可以ping通,关闭某个聚合端口后仍可…...
番外篇 | Hyper-YOLO:超图计算与YOLO架构相结合成为目标检测新的SOTA !
前言:Hello大家好,我是小哥谈。Hyper-YOLO,该方法融合了超图计算以捕捉视觉特征之间复杂的高阶关联。传统的YOLO模型虽然功能强大,但其颈部设计存在局限性,限制了跨层特征的融合以及高阶特征关系的利用。Hyper-YOLO在骨干和颈部的联合增强下,成为一个突破性的架构。在COC…...
【MATLAB第109期】基于MATLAB的带置信区间的RSA区域敏感性分析方法,无目标函数
【MATLAB第108期】基于MATLAB的带置信区间的RSA区域敏感性分析方法,无目标函数 参考第64期文章【MATLAB第64期】【保姆级教程】基于MATLAB的SOBOL全局敏感性分析模型运用(含无目标函数,考虑代理模型) 创新点: 1、采…...
Bootstrap 表格
Bootstrap 表格 引言 Bootstrap 是一个流行的前端框架,它提供了一套丰富的工具和组件,用于快速开发响应式和移动设备优先的网页。在本文中,我们将重点讨论 Bootstrap 中的表格组件,包括其基本结构、样式以及如何使用 Bootstrap …...
【论文阅读】Computing the Testing Error without a Testing Set
https://blog.csdn.net/qq_40021158/article/details/109485216 可以使用测试集来估计训练集和测试集之间的性能差距,但是要避免过度拟合测试数据几乎是不可能的。 使用隔离的测试集可能会解决此问题,但这需要不断更新数据集,这是一项非常昂贵…...
Visio——同一个工程导出的PDF文件大小不一样的原因分析
现象 在不同电脑,导出来的PDF文件大小不一样。 原因分析 文件小的未将字体嵌入,文件大的已经将字体嵌入了。...
【ETCD】ETCD 架构揭秘:内部各组件概览
ETCD 的主要组件及它们之间的关联关系如下: 目录 1. Client(客户端)2. gRPC 接口3. Etcd Server Main Loop(ETCD 主循环)4. Raft(共识模块)5. Peer Etcd Nodes(ETCD 集群节点&#x…...
Qt WORD/PDF(四)使用 QAxObject 对 Word 替换(QWidget)
关于QT Widget 其它文章请点击这里: QT Widget 国际站点 GitHub: https://github.com/chenchuhan 国内站点 Gitee : https://gitee.com/chuck_chee 姊妹篇: Qt WORD/PDF(一)使用 QtPdfium库实现 PDF 操作 Qt WORD/PDF(二…...
音视频学习(二十四):hls协议
基本原理 HLS协议通过将视频文件切分成多个小的媒体段(通常是10秒左右的.ts文件),并通过HTTP传输给客户端。视频播放过程中,客户端按顺序请求这些小段文件来逐步播放整个视频流。HLS还支持多种码率,以便适应不同网络条…...
UniDepth 学习笔记
摘要 准确的单目度量深度估计(MMDE)是解决三维感知和建模中下游任务的关键。然而,最近的MMDE方法的显著准确性仅限于其训练领域。这些方法存在适度的域间隙,也不能推广到看不见的域,这阻碍了它们的实际适用性。本文提出…...
PVE——OpenWRT 硬盘 size单位的调整
问题:初始状态为120MB 还需要进行计算,如果通过图形界面添加磁盘会出现单位不变的情况。 进入命令行前记得给你的虚拟机拍照,防止误操作 通过ssh 进入PVE命令行 按需添加容量即可 不到1G 会显示M 超过1G 不是G整数均为M单位。 …...
Android-ImagesPickers 拍照崩溃优化
Android-ImagesPickers 作为老牌图片选择器,帮助了很多牛马宝宝,刚好最近用到了多相册选择以及拍照,可能是高版本机型问题,导致拍照后就闪退 原作者文章以及git Android实用视图动画及工具系列之九:漂亮的图片选择器…...
从IDEA到K8s:飞算JavaAI如何打通微服务开发的“最后一公里”
云原生时代的一站式开发革命:当JavaAI遇上Kubernetes 在数字化转型的浪潮中,微服务架构已成为企业技术栈的标配,但随之而来的开发复杂度却让许多团队陷入"最后一公里"困境。传统开发流程中,从本地编码到云端部署需要跨…...
qmcdump:QQ音乐加密文件解码完全解决方案
qmcdump:QQ音乐加密文件解码完全解决方案 【免费下载链接】qmcdump 一个简单的QQ音乐解码(qmcflac/qmc0/qmc3 转 flac/mp3),仅为个人学习参考用。 项目地址: https://gitcode.com/gh_mirrors/qm/qmcdump 1 解析问题&#x…...
MinerU智能文档理解服务:专为高密度文本图像设计的轻量级解决方案
MinerU智能文档理解服务:专为高密度文本图像设计的轻量级解决方案 1. 引言:文档处理的智能化革命 在数字化办公时代,我们每天都要面对大量PDF文档、扫描件和图像资料。这些文件往往包含复杂的版面结构:多栏排版、嵌套表格、数学…...
忍者像素绘卷开源镜像部署:支持国产昇腾芯片的适配可行性分析
忍者像素绘卷开源镜像部署:支持国产昇腾芯片的适配可行性分析 1. 项目概述与技术特点 忍者像素绘卷是一款基于Z-Image-Turbo深度优化的图像生成工作站,专为二次元风格和复古像素艺术设计。该项目融合了现代AI图像生成技术与16-bit游戏美学,…...
别再死记硬背分度表了!用Python+Arduino动手复现K型热电偶测温全过程
别再死记硬背分度表了!用PythonArduino动手复现K型热电偶测温全过程 温度测量是工程实践中最基础却又最关键的环节之一。想象一下,当你需要监控3D打印机热床温度、测量自制咖啡烘焙机的内部环境,或是记录太阳能热水器的水温变化时,…...
Apache Mesos vs Kubernetes:如何选择最适合你的容器编排平台 [特殊字符]
Apache Mesos vs Kubernetes:如何选择最适合你的容器编排平台 🚀 【免费下载链接】mesos apache/mesos: 这是一个开源的集群管理框架,用于在异构资源池上部署和管理应用程序。它允许开发者使用高效的资源隔离和共享机制,构建高度可…...
OpenClaw跨平台控制:Kimi-VL-A3B-Thinking远程执行多模态任务方案
OpenClaw跨平台控制:Kimi-VL-A3B-Thinking远程执行多模态任务方案 1. 为什么需要跨平台远程控制? 上周五晚上11点,我正躺在沙发上刷手机,突然想起有个紧急的竞品分析报告需要处理。电脑在书房,实在懒得起身。这时我意…...
springboot基于深度学习的图书推荐系统_ry1n8702_c006
前言 随着互联网的普及和电子商务的发展,线上图书销售平台越来越多,用户在选择图书时面临海量数据的选择困难。传统的图书推荐方式,如书店的畅销书榜单、图书馆的分类推荐等,已经难以满足用户个性化、精准化的阅读需求。因此&…...
从一次RDP爆破到全网挖矿:复盘Windows Server 3389端口的安全加固与监控策略
Windows Server 3389端口安全防御体系:从RDP爆破到挖矿攻击的全链路防护 最近处理了一起典型的服务器入侵事件:攻击者通过RDP暴力破解获取管理员权限后,在服务器上部署了挖矿程序。这种攻击模式看似简单,却暴露出许多企业在Windo…...
新手福音:通过快马生成图文并茂的ccswitch安装教程代码,轻松上手
最近在折腾一个叫ccswitch的工具,作为刚入门的新手,真的被各种环境配置搞得头大。好在发现了InsCode(快马)平台,它能直接生成带详细注释的安装教程代码,简直是救命稻草!今天就把这个图文并茂的教程项目分享给大家。 c…...
