不同批次板子采集到的传感器压力值不同
问题描述:
M340B空压机主控板在接正常压力气源时,显示屏显示压力值过高并报警。
问题排查:
确认可能的故障点:压力传感器、硬件电路(供电电路、分压电路、ADC采样电路等)、单片机、软件;
排查过程:
为排除软件的影响,与软件工程师检查与传感器相关的代码和公式,将4051并将所有主控板程序烧写成最终版代码原供电方案为DC-DC,考虑可能纹波较大,影响传感器,导致输出有差异。
排查时,从同一气源使用三通分别给新旧两个传感器供气;
从同一线性电源并联接到DC-DC转换的输出5V上,保证所有接入源一致;

- 差异性对比
首先将三块产线发回的板子依次接到机器上观察差异性,发现压力值及各功能均正常,故分别编号,取一号板与空压机上旧控制板做对比;
机器出气口接三通并入机械压力表,机械表读数与三块产线返回的主板不同压力对应如下,单位:kPa
| 机械表显 | ①屏显 | ②屏显 | ③屏显 |
| 100 | 116 | 114 | 116 |
| 150 | 162 | 161 | 159 |
| 200 | 210 | 210 | 208 |
| 250 | 263 | 260 | 263 |
| 300 | 319 | 315 | 315 |
| 350 | 363 | 368 | 361 |
| 400 | 422 | 422 | 422 |
| 450 | 452 | 455 | 456 |
结论:三块产线同一批次的电路板压力值基本一致,均比实际电压高,可以任选其一与机器原装旧主控板做对比测试。
- 传感器电压值对比 单位:V
| 机械表显(kPa) | 旧板电压 | ①板电压 |
| 100 | 0.648 | 0.65 |
| 150 | 0.760 | 0.767 |
| 200 | 0.880 | 0.900 |
| 250 | 1.008 | 1.032 |
| 300 | 1.137 | 1.177 |
| 350 | 1.292 | 1.304 |
| 400 | 1.430 | 1.448 |
| 450 | 1.525 | 1.550 |
本以为排查到了问题,是因为传感器输入电压值高,导致单片机AD采样值大,所以经换算后的显示值高。但用万用表测量新旧两个板子传感器的供电电压后发现,旧板电压4.95V,新板电压5.05V,故经粗略计算,①板传感器电压超出旧板传感器的部分为电源电压不同引起的,并不能说明是传感器输出电压问题。
- 传感器受压特性
由于传感器需要采集的压力大,故设计了如下图的结构件,通过气动接头连接高压气源,故考虑是否在固定结构件时,螺丝过紧,施加的压力过大,导致传感器变形,使得零点变化。

故将新旧两板的传感器结构件缓缓拧松,拆下,放置一会以释放传感器应力后,直接通5V电,测量两板传感器零点电压;
再装回结构件,以相同力矩拧紧螺丝,接通5V电,测量两板传感器输出电压。结果见下表:
| 零点 | 通约400kPa气 | |
| ①板 | 0.507V | 2.785V |
| 旧板 | 0.491V | 2.768V |
通过换算,得到通气后的压力如下表:
| 通约400kPa气 | 理论压力值 | |
| ①板 | 2.785V | 393.093kPa |
| 旧板 | 2.768V | 390.857kPa |
由表可见,即便两板传感器输出有区别,但不足以达到几十kPa的差异,故排除传感器问题。
- 从电路板其他电路排查
传感器确认不同批次造成的影响不大后,从本身电路下手,给传感器供电5V,测量零点电压。并模拟施加气体后压力,在传感器输出脚施加2V电压后,测得分别为为0.492V和2.006V。

测量分压电路电阻,两个均为9.96K,故二等分电压正确,此后连接到4051芯片的电压不变,输出电压不变,输入到单片机AD口的电压依然正常,故排除信号传输电路的所有问题。

- 排查单片机
最后只剩同为ATMEGA128A系列的单片机未排查,交换两板单片机后,上电,故障转移,故障定位到单片机上。

交换前(原板)

交换后

由原理图可知,单片机ADC(AREF)未接外部参考电压,故使用的是内部参考电压。
两单片机型号:
偏高:ATMEGA128A U-TH 35454U
正常:ATMEGA128A AU 1611
考虑到虽然两批次芯片均为ATMEGA128A系列,但可能由于内部ADC基准电压不同,导致ADC计算得出的值不同,LCD1602用计算值显示,造成了显示值偏高的问题,可向芯片供应商询问两型号芯片问题。
相关文章:
不同批次板子采集到的传感器压力值不同
问题描述: M340B空压机主控板在接正常压力气源时,显示屏显示压力值过高并报警。 问题排查: 确认可能的故障点:压力传感器、硬件电路(供电电路、分压电路、ADC采样电路等)、单片机、软件; 排…...
设计模式--原型模式
目录 基本介绍 传统方式克隆 原型模式改进 浅拷贝和深拷贝 浅拷贝的介绍 深拷贝的介绍 原型模式的注意事项和细节 基本介绍 (1) 原型模式(prototype模式): 用原型实例指定创建对象的种类 并且通过拷贝这些原型 创建新的对象 (2) 原型模式是一种创建型设计模式 允许一个…...
C++智能指针shared_ptr详解
智能指针shared_ptr详解 一、简介二、底层原理2.1、引用计数2.2、shared_ptr的构造和析构2.3、shared_ptr的共享和拷贝2.4、循环引用问题 三、shared_ptr的使用3.1、创建一个shared_ptr3.2、共享一个shared_ptr3.3、使用删除器3.4、解除关联 四、使用示例总结 一、简介 C智能指…...
家政服务APP小程序开发功能详解
随着人们生活水平的提高,对家政服务的要求也越来越高。而传统的到家政公司寻找服务人员的方法显然已经无法满足人们需求,取而代之的是线上预约家政服务。家政服务App小程序软件可以满足用户在线预约,还可以根据自己的需求定制家政服务、选择家…...
【C++】deque的实现原理简单介绍
前言 deque被称为双端队列,它的出现主要是为了结合vector和list的优点并减小它们的缺点,实际上deque确实结合了vector和list的优点减小了它们的缺点,但是它的结合也让它自己的优点没有原始的vector和list那么极致,导致deque变得很…...
UWB隧道人员定位技术应用,施工作业安全精准保障
隧道施工的安全不仅关系到工程项目的质量和施工效率,也关系到我国的资金安全、施工人员和人民的生命财产安全。如何有效加强隧道施工的安全管理能力,成为隧道施工企业管理者最关心的问题。国家铁道局在《关于加强铁路隧道工程安全工作的若干意见》中指出…...
15.2 矩阵链乘法
1.代码 public class MatrixChainMultiplication {public static void main(String[] args) { // 在该代码中,我们首先创建了两个n * n的矩阵m和s,分别用于记录最优值和分割点。 其中m 矩阵 通过i j 来显示在i到j的矩阵链中最优解 // // …...
向隐形冠军学习:聚焦人效,用时间管理提效益
注: 本文来源于盖雅工场联合创始人兼CEO 章新波 在2023狮山论坛“ 向隐形冠军学习: 聚焦人效,用时间管理提效益 ”的主题分享。 文|章新波 整理 |盖雅学苑 在人力资源行业以及各大企业,「人效」这个词…...
Protocol Buffers Go Generated Code Guide
Protocol Buffers Go 代码生成指南 本主题准确描述了协议缓冲区编译器为任何给定的协议定义生成的Go代码。 编译器调用 协议缓冲区编译器需要一个插件来生成Go 代码。使用Go 1.16或更高版本安装,方法是运行: go install google.golang.org/protobuf/…...
Python VTK STL 映射三维模型表面距离
目录 前言: 效果: 实现步骤: Code: 前言: 本文介绍了Python VTK映射三维模型表面距离,通过如何使用VTK计算两个三维模型(stl)的表面距离,并将其距离值以颜色映射到模型,可用于对比 两相模型…...
C# 异常处理机制和常见的异常类型
在 C# 中,异常处理是一个非常重要的概念,它可以让我们在程序发生错误时进行有效的处理,使程序具备更好的鲁棒性。C# 异常处理机制基于 try-catch-finally 语句块,其基本用法如下: try {// 可能会抛出异常的代码 } cat…...
【0187】客户端身份验证配置文件视图之pg_hba_file_rules
文章目录 1. 客户端身份验证配置文件视图2. 视图效果相关阅读: 【0179】配置PostgreSQL以允许远程连接 【0180】PG内核通过pg_hba.conf完成客户端认证(1) 【0181】PG内核通过pg_hba.conf完成客户端认证(2)...
模糊层次分析法(FAHP)Python实现
文章目录 理论基础三角模糊数概念参考 Python源码测试 理论基础 \quad 模糊层次分析法( F A H P FAHP FAHP)将模糊理论( F u z z y S e t Fuzzy Set FuzzySet)嵌入到基本层次分析法( A H P AHP AHP)中。 A …...
gdb切换窗口焦点
为了辅助调试,一般会使用layout src,调起TUI显示代码: 然而这种情况下我们写命令很不方便,无法方便地使用上一条命令、退格等。 按动上下左右方向键盘只会移动代码框,然而在伪终端下,可以用鼠标滚轮来上下…...
【Spring Security】 入门实战
文章目录 一、基本概念二、Spring Security第一个程序三、Spring Security没有生效四、修改默认账号密码(appliction.yml)五、修改默认账号密码(配置类)六、Spring Security的三个configure方法七、Spring Security的三种身份的验…...
SpringBoot的Interceptor拦截器的简介和实际使用
拦截器(Interceptor) 概念:是一种动态拦截方法调用的机制,类似于过滤器。Spring框架中提供的,用来动态拦截控制器方法的执行。 作用:拦截请求,在指定的方法调用前后,根据业务需要执行…...
5个面向Python高级开发者的技巧
使用这些用于自定义类行为、编写并发代码、管理资源、存储和操作数据以及优化代码性能的高级技术来探索 Python 的深度。 本文探讨了 Python 中的五个高级主题,它们可以为解决问题和提高代码的可靠性和性能提供有价值的见解和技术。从允许您在定义类时自定义类行为的…...
Nginx简介
Nginx是什么?可以做什么事情? Nginx是高性能的HTTP和反向代理的web服务器,处理高并发的能力十分强大,能经受高负载的考研,有报告表明能能支持高达50000个并发连接数。 特点 占有内存少:一万个长连接&…...
十五分钟带你学会 Electron
文章目录 什么是 Electron为什么要选择 Electron安装 Electron桌面CSDN实战Electron 基础配置Electron 进程主进程渲染进程主进程与渲染进程的区别主进程与渲染进程的通信 Electron 跨平台问题Electron 部署打包应用程序发布应用程序 Electron 跨端原理总结 什么是 Electron E…...
设计模式-结构型模式之桥接模式
2. 桥接模式 2.1. 模式动机 设想如果要绘制矩形、圆形、椭圆、正方形,我们至少需要4个形状类,但是如果绘制的图形需要具有不同的颜色,如红色、绿色、蓝色等,此时至少有如下两种设计方案: 第一种设计方案是为每一种形状…...
通过Wrangler CLI在worker中创建数据库和表
官方使用文档:Getting started Cloudflare D1 docs 创建数据库 在命令行中执行完成之后,会在本地和远程创建数据库: npx wranglerlatest d1 create prod-d1-tutorial 在cf中就可以看到数据库: 现在,您的Cloudfla…...
无法与IP建立连接,未能下载VSCode服务器
如题,在远程连接服务器的时候突然遇到了这个提示。 查阅了一圈,发现是VSCode版本自动更新惹的祸!!! 在VSCode的帮助->关于这里发现前几天VSCode自动更新了,我的版本号变成了1.100.3 才导致了远程连接出…...
MVC 数据库
MVC 数据库 引言 在软件开发领域,Model-View-Controller(MVC)是一种流行的软件架构模式,它将应用程序分为三个核心组件:模型(Model)、视图(View)和控制器(Controller)。这种模式有助于提高代码的可维护性和可扩展性。本文将深入探讨MVC架构与数据库之间的关系,以…...
Java多线程实现之Callable接口深度解析
Java多线程实现之Callable接口深度解析 一、Callable接口概述1.1 接口定义1.2 与Runnable接口的对比1.3 Future接口与FutureTask类 二、Callable接口的基本使用方法2.1 传统方式实现Callable接口2.2 使用Lambda表达式简化Callable实现2.3 使用FutureTask类执行Callable任务 三、…...
React19源码系列之 事件插件系统
事件类别 事件类型 定义 文档 Event Event 接口表示在 EventTarget 上出现的事件。 Event - Web API | MDN UIEvent UIEvent 接口表示简单的用户界面事件。 UIEvent - Web API | MDN KeyboardEvent KeyboardEvent 对象描述了用户与键盘的交互。 KeyboardEvent - Web…...
Python爬虫(二):爬虫完整流程
爬虫完整流程详解(7大核心步骤实战技巧) 一、爬虫完整工作流程 以下是爬虫开发的完整流程,我将结合具体技术点和实战经验展开说明: 1. 目标分析与前期准备 网站技术分析: 使用浏览器开发者工具(F12&…...
【Web 进阶篇】优雅的接口设计:统一响应、全局异常处理与参数校验
系列回顾: 在上一篇中,我们成功地为应用集成了数据库,并使用 Spring Data JPA 实现了基本的 CRUD API。我们的应用现在能“记忆”数据了!但是,如果你仔细审视那些 API,会发现它们还很“粗糙”:有…...
LeetCode - 199. 二叉树的右视图
题目 199. 二叉树的右视图 - 力扣(LeetCode) 思路 右视图是指从树的右侧看,对于每一层,只能看到该层最右边的节点。实现思路是: 使用深度优先搜索(DFS)按照"根-右-左"的顺序遍历树记录每个节点的深度对于…...
SiFli 52把Imagie图片,Font字体资源放在指定位置,编译成指定img.bin和font.bin的问题
分区配置 (ptab.json) img 属性介绍: img 属性指定分区存放的 image 名称,指定的 image 名称必须是当前工程生成的 binary 。 如果 binary 有多个文件,则以 proj_name:binary_name 格式指定文件名, proj_name 为工程 名&…...
音视频——I2S 协议详解
I2S 协议详解 I2S (Inter-IC Sound) 协议是一种串行总线协议,专门用于在数字音频设备之间传输数字音频数据。它由飞利浦(Philips)公司开发,以其简单、高效和广泛的兼容性而闻名。 1. 信号线 I2S 协议通常使用三根或四根信号线&a…...
