简洁高效的设备稼动率采集系统(一)

前言:

        在自动化生产行业,每个公司都需要一款高效的生产设备,那我们怎么体现出设备的高效呢?

        可以采集设备的状态,经过成熟的算法,得到设备的稼动率。设备稼动率是衡量生产设备在一定时间内真正处于生产状态的时间比例,反映了设备的有效利用程度。只有当我们真正的工作数据暴露出来,才能在原来不足的地方,加以调整,效率步步高升。

主题:搭建一套简易的设备状态采集系统

问题复现

        生产车间有4台CNC加工设备,原来已有采集盒子,但因CNC加工设备存在一些未知问题,导致采集盒子读不到CNC加工设备的状态。

问题分析

        排查网络问题

                网络连接方式:采集盒子通过RJ45(网线)连接CNC加工设备。

                        1. 通过摇摆、轻微拉拽网线连接处,检查网络设备的连接指示灯是否熄灭。

                         检查结果:物理连接层无问题;

                        2. 通过Windows自带命令窗口,持续ping设备IP地址,检查网络是否联通,是否存在丢包现象。

                        检查结果:经过多次长时间测试,未发现存在丢包现象,系统层无问题。

                         3. 检查采集盒子回传消息。

                        检查结果:采集盒子发送给服务器的数据没有问题,软件层无问题。

        排查设备问题

                因设备结构质量比较优越、硬件保养比较及时,很有可能是控制器的问题。

                        1.  利用排除法,将没有问题的机台网线连接至有问题的机台上,观察一段时间。

                        检查结果:还是存在读不到CNC加工设备的情况。

        结论

                经排查,为控制器问题。因设备未从厂家购买,不能享受三包。

        解决方案

                        维修方案1:联系外部维修公司,回复未必能完全修好;

                        维修方案2:更换全新控制器,供应商报价15k/台,如果4台全部更换,需要60k;

                        维修方案3:自行增加采集设备。

处理过程

        树莓派采集

                成本<1000RMB

                在树莓派上安装操作系统,部署MQTT服务,使用Python代码读取树莓派的GPIO引脚采集设备的状态,并上传采集盒子。

                但因本人未有类似项目经验,导致计划泡汤。

        ESP32采集

                成本<30RMB

                利用ESP32的GPIO引脚采集设备状态,使用Python代码进行处理、转发,经过几次尝试后,计划泡汤。

        PLC采集

                成本<2500RMB

                使用S7-1212CPU采集设备状态,经过本地逻辑判断出设备状态,存储到指定寄存器。联系采集盒子供应商对CPU寄存器数据进行读取,转发给服务器,达到采集目的。

                因为有多年自动化经验加持,最后取得了成功!

结论

        维修方案1:一旦采取像个黑洞,不保成功,不可取;

        维修方案2:成本太高,不值得;

        维修方案3:最终选择了使用PLC采集,成本相对来说比较可观,花小钱办大事,粗略估计省57k。

        

总结

        每个人的经历不一样,

        每个人的想法不一样,

        每个人的能力不一样,

        每个人的措施不一样,

        导致结局的各种各样。

        如果没有往年夜以继日对技术能力的渴望,面对现在的问题又有什么对策呢?

下集预告

        经过这次的问题处理,脑海中闪现一个念头,S7-1212CPU自带Web服务器,我们可以使用这个功能将里面数据读取出来,搭配一台低配置电脑(2k左右)来存储设备的历史工作状态,最后通过HTML5代码将设备的稼动率体现出来,一套简洁高效的设备稼动率采集系统只要5000块硬件成本。(文章标题源自此处)

将不同行业的知识像搭积木一样拼接起来,会有出乎意料的收获!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/50606.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Django学习(二)

get请求 练习&#xff1a; views.py def test_method(request):if request.method GET:print(request.GET)# 如果链接中没有参数a会报错print(request.GET[a])# 使用这个方法&#xff0c;当查询不到参数时&#xff0c;不会报错而是返回你设置的值print(request.GET.get(c,n…

Vite 常用插件配置:自动导入+自动注册组件+动态创建图标+设置组件名

创建 Vue3Vite 项目 创建 Vue3 项目 $ pnpm create vuelatest通过脚手架选择开启以下功能 ✔ Project name: … <your-project-name> ✔ Add TypeScript? … No / Yes ✔ Add JSX Support? … No / Yes ✔ Add Vue Router for Single Page Application development?…

ElasticSearch(三)—文档字段参数设置以及元字段

一、 字段参数设置 analyzer&#xff1a; 指定分词器。elasticsearch 是一款支持全文检索的分布式存储系统&#xff0c;对于 text类型的字段&#xff0c;首先会使用分词器进行分词&#xff0c;然后将分词后的词根一个一个存储在倒排索引中&#xff0c;后续查询主要是针对词根…

MATLAB粒子群算法求解同时取送货的充电电动车辆路径规划EVRPSPD代码实例

MATLAB粒子群算法求解同时取送货的充电电动车辆路径规划EVRPSPD代码实例 MATLAB粒子群算法求解同时取送货的充电电动车辆路径规划EVRPSPD代码实例

数学基础 -- 三角函数的常见极限与常见导数

三角函数的极限与导数 三角函数在微积分中有着广泛的应用&#xff0c;特别是在极限和导数的计算中。以下是一些关于三角函数极限与导数的基础知识。 一、三角函数的极限 常见极限公式 lim ⁡ x → 0 sin ⁡ x x 1 \lim_{x \to 0} \frac{\sin x}{x} 1 limx→0​xsinx​1 li…

C++ 类和对象 终篇

一 static成员&#xff1a; 静态成员变量是属于整个类的&#xff0c;而不是某个特定对象的。也就是说&#xff0c;所有对象共享同一个静态成员变量。它的特点包括&#xff1a; 非静态成员变量&#xff1a; class A { public:int _x; // 非静态成员变量 };int main() {A a1…

echarts使用案例

1.配置legend icon 根据点击事件动态更换样式 <template><div ref"chart" style"width: 600px; height: 400px;"></div></template><script>import * as echarts from echarts;export default {name: EchartsExample,data(…

C语言第三天笔记

变量 概念 表面&#xff1a;程序运行过程中取值可以改变的数据 实质&#xff1a;变量其实代表了一块内存区域/单元/空间。变量名可视为该区域的标识。 整个变量分为三部分&#xff1a; 变量名&#xff1a;这个只是变量的一个标识&#xff0c;我们借助变量名来存取数据。 变…

Element快速学习

博客主页&#xff1a;音符犹如代码系列专栏&#xff1a;JavaWeb关注博主&#xff0c;后期持续更新系列文章如果有错误感谢请大家批评指出&#xff0c;及时修改感谢大家点赞&#x1f44d;收藏⭐评论✍ 什么是Element&#xff1f; Element&#xff1a;它是由饿了么团队开发的一个…

盛元广通实验室自动化生物样本库质量控制管理系统

随着我国生物医学研究的不断深入和精准医疗的快速发展&#xff0c;对高质量生物样本的需求日益增长。近年来&#xff0c;我国生物样本库建设取得了显著进展。各级政府、高校和医院纷纷投入资源建设生物样本库&#xff0c;推动了生物样本资源的有效整合和利用。生物样本库的质量…

Footprint Analytics 助力 Core 区块链实现数据效率突破

Core 是一个基于比特币并兼容 EVM 的 Layer 1 区块链&#xff0c;正通过其创新解决方案引革新特币金融。作为首个引入非托管 BTC 质押协议及全球首个发行收益型 BTC ETP 产品的区块链&#xff0c;Core 站在了区块链技术的最前沿。通过利用超过 50% 的比特币挖矿哈希算力&#x…

QEMU源码全解析 —— CPU虚拟化(11)

接前一篇文章: 本文内容参考: 《趣谈Linux操作系统》 —— 刘超,极客时间 《QEMU/KVM》源码解析与应用 —— 李强,机械工业出版社 《深度探索Linux系统虚拟化原理与实现》—— 王柏生 谢广军, 机械工业出版社 特此致谢! 前边几回又再次讲了一下VMX,本回开始讲解VCPU…

aiohttp 异步爬虫实战

案例介绍 本次为我们要爬取一个数量相对大一点的网站&#xff0c; 链接为&#xff1a; https://spa5.scrape.center/ 这是一个图书网站&#xff0c;整个网站包含数千本图书信息&#xff0c;网站数据是 JavaScript 渲染而得&#xff0c;数据可以通过 Ajax 接口获取&#xff0…

vue3 使用Mock

官网: http://mockjs.com/ 安装 npm install mockjs -Dsteps1: main.js 文件引入 import /api/mock.jssteps2: src/api/mock.js import Mock from mockjs import homeApi from ./mockData/home /*** 1.拦截的路径:mock拦截了正常NetWork/网络请求,数据正常响应* 2.方法* …

乾坤: 微前端项目切换时样式闪动(从无样式变为正常样式需要等 css chunk 文件加载完成, 加载延时受网速影响)

背景: 点击基座项目页面左侧目录, 进入微前端子项目页面, 会有短暂的样式未加载效果一闪而过, 造成页面闪烁或更严重的其他样式错位问题 定位: 同事查了 qiankun git 项目的 issue: https://github.com/umijs/qiankun/issues/219 , 找到解决方案 解决: 项目 webpack 打包配…

【苍穹】完美解决由于nginx更换端口号导致无法使用Websocket

一、报错信息 进行到websocket开发的过程中&#xff0c;遇到了前端报错&#xff0c;无法连接的提示&#xff1a; 经过F12排查很明显是服务端和客户端并没有连接成功。这里就涉及到之前的坑&#xff0c;现在需要填上了。 二、报错原因和推导 应该还记得刚开苍穹的第一天配置前…

OWASP top 10之XSS和csrf

2021年top 10 A01&#xff1a;失效的访问控制&#xff08;越权漏洞&#xff09; XSS&#xff1a;Cross-Site Scripting 跨站脚本&#xff0c;在2021年top 10漏洞中被合并为注入类漏洞 属于&#xff1a;前端漏洞 分类&#xff1a;反射型、存储型、DOM型 反射型 将恶意js代…

什么是 Solidity

Solidity 是一种面向对象的用于编写智能合同的语言。 智能合同是存储在区块链中的程序。 它们指定有关数字资产传输的规则和行为。 可以使用 Solidity 为 Ethereum 区块链平台对智能合同进行编程。 智能合同包含状态和可编程逻辑。 智能合同通过事务执行函数。 因此&#xff0…

Python 中函数嵌套定义与调用

Python 中函数嵌套定义与调用 在 Python 中&#xff0c;函数可以在另一个函数内部定义和调用。这种技术称为嵌套函数。嵌套函数可以用来创建封装和作用域限制&#xff0c;帮助保持代码的组织性和模块化。 函数嵌套定义与调用 1. 函数嵌套定义 函数嵌套定义是指在一个函数内…

Java集合——Array、ArrayList、LinkedList

1. ArrayList和Array的区别 1. 大小和自动扩容 Array&#xff1a;创建时指定大小&#xff0c;大小固定。若数组被创建&#xff0c;其大小不能更改 ArrayList&#xff1a;动态数组实现&#xff0c;可以动态增长或缩小。在不断添加元素时&#xff0c;ArrayList会自动进行扩容 …