第7章硬件测试-7.3 功能测试
7.3 功能测试
- 7.3.1 整机规格测试
- 7.3.2 整机试装测试
- 7.3.3 DFX测试
功能测试包括整机规格、整机试装和整机功能测试,是整机结构和业务相关的测试。
7.3.1 整机规格测试
整机规格测试包括尺寸、重量、温度、功耗等数据。这些测试数据与设计规格进行比对和校验,最终用于产品规格描述。表7.4是某交换机产品官方网站的整机规格数据。
尺寸测量要注意电源连接器、按键、拉手条等凸起部分的尺寸,这些部分如果没有考虑,用户安装时容易干涉。
重量测量时注意区分净重(不带包装)和毛重(带包装),注意不同配置时的重量,比如是否带电源模块/电池、是否带板卡。
功耗测试需要注意在AC/DC电源输入端测试,因为电源适配器的损耗需要计入整机功耗。在电源输入端测得电压和电流,然后再计算功耗。电压测试一般选择万用表,电流测试的仪器很多。常用的测试方法见表7.5。
7.3.2 整机试装测试
整机试装测试的目的是验证整机各个结构件之间及整机与外部接口、模块之间的配合度。测试项包括单板与外壳的安装测试,整机端口(电源口、网口等)的插拔测试,用户使用场景的整机安装测试(比如整机在机房机架上的安装测试,整机在楼道弱电井的安装测试)。如果整机试装环节漏测试,往往会带来严重问题,造成批量召回。下面看一个典型案例。
2013年,C厂商针对旗下价格昂贵的×××和×××系列交换机发布了“问题通报”。世界各地的许多数据中心正在使用这2个系列的交换机。通报当中详述了这2个系列交换机当中复位键存在设计错误,导致用户插入网线之后,可能在短短几秒内让整个网络瘫痪。
C厂商表示,目前数据中心普遍使用的网线接头,配有保护罩并且伸出接头,以确保接头不会突然松掉或断掉,致使网线无法使用。但是×××和×××系列交换机的复位按钮,直接设置在交换机最左边一个端口上方,让有弹性的保护罩会碰到复位按钮,让交换机瞬间恢复出厂设置,让整个运行网络瘫痪。网线接头干涉示意图如图7.14所示。
这种情况可能在任何规模的数据中心当中发生,因为这2个系列的交换机和网线是常用产品,如果有人在这个端口插上一根网线,在不知情的情况下就会按下复位键,他们甚至没有意识到整个网络已经因此瘫痪。
令人惊讶的是,C厂商没有在这两个系列交换机发布之前发现这个问题,也没有在上市之后就提醒用户注意这个问题。这个问题可能已经让全球无数的网络工程师抓狂过。这个问题应该在整机试装测试环节暴露出来。
很多工程师会认为:结构设计这么直观,不会出现低级错误,靠空间想象能力就可以解决很多问题;结构工程师都进行3D建模了,不会有什么大问题。但是结构问题往往都是低级错误,由于公差或一些细节被忽略,造成不可预知的问题。
按照我们的经验来看,凡是整机试装测试,其实都能发现一些问题。特别是一些装配带来的应力,造成原先考虑的公差不够引发问题。
图7.15是一个案例的示意图,由于散热器比较大,安装的方式引入应力,导致PCB形变,由于陶瓷电容、需要散热的芯片高度都有公差,这些误差因素叠加在一起导致了陶瓷电容概率性接触散热器,有短路风险。这个问题需要一定的样本数的整机试装才能发现。
误差估计不足,在一些框式设备相邻槽位,有可能导致概率性干涉。
因为这种误差是多重误差叠加的,如图7.16所示,存在导轨形变、安装误差、面板螺钉误差、PCB误差、背板连接器位置误差、散热器加工误差、安装误差、PCB形变等,所以要留有足够的裕量。我们都需要通过整机装备测试的方法,用足够多的样本数,去验证我们的设计。
7.3.3 DFX测试
DFX是Design for X(面向产品生命周期各/某环节的设计)的缩写。其中,X可以代表产品生命周期或其中某一环节,如装配(制造,测试)、加工、使用、维修、回收、报废等,也可以代表产品竞争力或决定产品竞争力的因素,如质量、成本、时间等。DFX包括如下部分。
DFP(Design for Procurement):可采购设计。
DFM(Design for Manufacture):可生产设计。
DFT(Design for Test):可测试设计。
DFD(Design for Diagnosibility):可诊断分析设计。
DFA(Design for Assembly):可组装设计。
DFE(Design for Environment):可环保设计。
DFF(Design for Fabrication of the PCB):为PCB可制造而设计。
DFS(Design for Serviceability):可服务设计。
DFR(Design for Reliability):为可靠性而设计。
DFC(Design for Cost):为成本而设计。
DFA(Design for Assembly):可装配性设计,针对零件配合关系进行分析设计,提高装配效率。
DFA(Design for Availability):可用性设计,保证设备运行时,业务或功能不可用的时间尽可能短。
DFC(Design for Compatibility):兼容性设计,保证产品符合标准、与其他设备互连互通,以及自身版本升级后的兼容性。
DFC(Design for Compliance):顺从性设计,产品要符合相关标准、法规、约定,保障市场准入。
DFD(Design for Diagnosability):可诊断性设计,提高产品出错时能准确、有效定位故障的能力。
DFD(Design for Disassembly):可拆卸性设计,产品易于拆卸,方便回收。
DFD(Design for Discard):可丢弃性设计,用于维修策略设计,部件故障时不维修,直接替换。
DFE(Design for Environment):环境设计,减少产品生命周期内对环境的不良影响。
DFE(Design for Extensibility):可扩展性设计,产品容易新增功能特性或修改现有的功能。
DFEE(Design for Energy Efficiency):能效设计,降低产品功耗,提高产品的能效。
DFF(Design for Flexibility):灵活性设计,设计时考虑架构接口等方面的灵活性,以适应系统变化。
DFH(Design for Humanity/Ergonomics):人性化设计,强调产品设计应满足人的精神与情感需求。
DFI(Design for Installability):可部署性设计,提高工程安装、调测、验收的效率。
DFI(Design for International):国际化设计,使产品满足国际化的要求。
DFI(Design for Interoperability):互操作性设计,保证产品与相关设备的互连互通。
DFL(Design for Logistics):物流设计,降低产品包装、运输、清关等物流成本,提升物流效率。
DFM(Design for Migrationability):可迁移性设计,通过设计保证系统的移植性与升级性。
DFM(Design for Maintainability):可维护性设计,确保高维护能力、效率。
DFM(Design for Manufacturability):可制造性设计,为确保制造阶段能够实现高直通率而开展的设计活动。
DFP(Design for Portability):可移植性设计,保证系统更容易从一种平台移植到另一种平台。
DFP(Design for Performance):性能设计,设计时考虑时延、吞吐率、资源利用率,提高系统的性能。
DFP(Design for Procurement):可采购性设计,在满足产品功能与性能前提下物料的采购便捷且低成本。
DFP(Design for Postponement):延迟性设计,设计支撑将客户差异化需求延迟到供应的后端环节来满足。
DFR(Design for Recycling):可回收设计,保证产品易于回收处理。
DFR(Design for Reliability):可靠性设计,在产品运行期间确保全面满足用户的运行要求,包括减少故障发生、降低故障发生的影响,故障发生后能尽快恢复。
DFR(Design for Repair):可维修性设计,在设计中考虑为产品维修提供相关便利性。
DFR(Design for Reusability):可重用性设计,产品设计/模块能够被后续版本或其他产品使用,提升开发效率。
DFS(Design for Safety):人身安全设计,在产品设计中考虑产品使用中保护人身的安全。
DFS(Design for Scalability):可伸缩性设计,有效满足系统容量变化的要求。
DFS(Design for Security):安全性设计,最大限度地减少资产和资源的脆弱性,包括机密性、完整性、可用性、访问控制、认证、防抵赖和隐私保护等方面。
DFS(Design for Serviceability):可服务性设计,提高系统安装调测与维护管理能力,提高服务效率。
DFS(Design for Simplicity):简洁化设计,减少产品零部件与复杂度,降低物料、供应、维护成本。
DFSC(Design for Supply Chain):可供应性设计,提升供应效率,提高库存周转率,减少交付时间。
DFT(Design for Testability):可测试性设计,提高产品能观能控、故障检测与定位隔离的能力。
DFU(Design for Upgradeability):易升级性设计,产品运行中的升级容易操作。
DFU(Design for Usability):易用性设计,用户使用的方便性、有效性、效率。
DFV(Design for Variety):可变性设计,管理产品多样化需求,平衡客户多样性需求和规模供应效益。
DFX中,最重要的是可靠性和可维护性测试,验证可靠性和可维护性的测试方法就是FIT(Fault Injection Techniques,故障注入)测试。FIT方案设计基于两个原则:一是保证测试的覆盖率,二是保证测试工作量的可执行性。FIT测试的流程如图7.17所示。
下面举个实际的例子,看一下单板时钟的FIT测试,如图7.18所示。
相关文章:
第7章硬件测试-7.3 功能测试
7.3 功能测试 7.3.1 整机规格测试7.3.2 整机试装测试7.3.3 DFX测试 功能测试包括整机规格、整机试装和整机功能测试,是整机结构和业务相关的测试。 7.3.1 整机规格测试 整机规格测试包括尺寸、重量、温度、功耗等数据。这些测试数据与设计规格进行比对和校验&…...
动态规划子数组系列一>等差数列划分
题目: 解析: 代码: public int numberOfArithmeticSlices(int[] nums) {int n nums.length;int[] dp new int[n];int ret 0;for(int i 2; i < n; i){dp[i] nums[i] - nums[i-1] nums[i-1] - nums[i-2] ? dp[i-1]1 : 0;ret dp[i…...
《Python浪漫的烟花表白特效》
一、背景介绍 烟花象征着浪漫与激情,将它与表白结合在一起,会创造出别具一格的惊喜效果。使用Python的turtle模块,我们可以轻松绘制出动态的烟花特效,再配合文字表白,打造一段专属的浪漫体验。 接下来,让…...
什么是RESTful API,有什么特点
RESTful API 概述 什么是 RESTful API? RESTful API 是基于 Representational State Transfer(表现层状态转移)架构风格的 Web 服务接口。REST 是一种设计风格,而不是具体的协议或标准。它定义了一组约束和最佳实践,…...
友思特新闻 | 友思特荣获广州科技创新创业大赛智能装备行业赛初创组优胜企业!
2024年11月19日,第十三届中国创新创业大赛(广东广州赛区)暨2024年广州科技创新创业大赛智能装备行业赛颁奖典礼隆重举行。 赛事奖项介绍:广州科技创新创业大赛智能装备行业赛 第十三届“中国创新创业大赛(广东广州赛区…...
CSS中calc语法不生效
问题起因 在使用calc时发现无法生效,写法是: height:calc(100vh-100px);页面无效果,加空格后就发现有效果了: height:calc(100vh - 100px);这是为什么? calc是什么? css3 的计算属性,用于动态…...
国标GB28181视频平台EasyCVR视频融合平台H.265/H.264转码业务流程
在当今数字化、网络化的视频监控领域,大中型项目对于视频监控管理平台的需求日益增长,特别是在跨区域、多设备、高并发的复杂环境中。EasyCVR视频监控汇聚管理平台正是为了满足这些需求而设计的,它不仅提供了全面的管理功能,还支持…...
ES6 模板字符串详解
ES6 模板字符串详解 ES6(ECMAScript 6)引入了模板字符串(Template Literals),这是一种新的字符串字面量语法,使用反引号()来定义字符串。模板字符串不仅支持多行字符串,…...
浏览器插件启动本地程序
浏览器插件支持启动本地程序,且支持win、mac、linux多个平台,使用的是nativeMessaging。nativeMessaging官方api说明。nativeMessaging支持启动本地程序且进行通信。 我们直接拿官方提供的例子进行说明,github地址。 以win为例 1、添加注册…...
Ubuntu ESP32开发环境搭建
文章目录 ESP32开发环境搭建安装ESP-IDF搭建一个最小工程现象 ESP32开发环境搭建 最近有个小项目需要用到能够联网的mcu驱动,准备玩玩esp的芯片,记录下ESP32开发环境搭建的过程。 ESP-IDF 是乐鑫科技为其 ESP32 系列芯片提供的官方开发框架。这个框架主…...
【gitlab】部署
直接RPM安装 部署的方式是:使用外部的nginx作为代理,使用https方式。 1、下载安装文件 gitlab-ce-17.0.3-ce.0.el7.x86_64.rpm 2、安装 yum install gitlab-ce-17.0.3-ce.0.el7.x86_64.rpm 或者安装yum源在线安装: 添加镜像源:新建 /et…...
vue中路由缓存
vue中路由缓存 问题描述及截图解决思路关键代码及打印信息截图 问题描述及截图 在使用某一平台时发现当列表页码切换后点击某一卡片进入详情页后,再返回列表页时页面刷新了。这样用户每次看完详情回到列表页都得再重新输入自己的查询条件,或者切换分页到…...
Github 2024-11-18 开源项目周报 Top15
根据Github Trendings的统计,本周(2024-11-18统计)共有15个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量Python项目8TypeScript项目4Jupyter Notebook项目2Go项目2Shell项目1OpenHands: 人工智能驱动的软件开发代理平台 创建周期:195 天开发语言:P…...
GRCNN使用onnxruntime和tensorrt推理
下载GRCNN项目:https://github.com/skumra/robotic-grasping.git 导出onnx模型: import torchnet torch.load("trained-models/jacquard-rgbd-grconvnet3-drop0-ch32/epoch_42_iou_0.93") x torch.rand(1, 4, 300, 300).cuda() torch.onnx.…...
java中的this关键字
🎉🎉🎉欢迎来到我的博客,我是一名自学了2年半前端的大一学生,熟悉的技术是JavaScript与Vue.目前正在往全栈方向前进, 如果我的博客给您带来了帮助欢迎您关注我,我将会持续不断的更新文章!!!🙏🙏🙏 文章目录…...
Easyexcel(3-文件导出)
相关文章链接 Easyexcel(1-注解使用)Easyexcel(2-文件读取)Easyexcel(3-文件导出) 响应头设置 通过设置文件导出的响应头,可以自定义文件导出的名字信息等 //编码格式为UTF-8 response.setC…...
iOS应用网络安全之HTTPS
移动互联网开发中iOS应用的网络安全问题往往被大部分开发者忽略, iOS9和OS X 10.11开始Apple也默认提高了安全配置和要求. 本文以iOS平台App开发中对后台数据接口的安全通信进行解析和加固方法的分析. 1. HTTPS/SSL的基本原理 安全套接字层 (Secure Socket Layer, SSL) 是用来…...
openharmony napi调试笔记
一、动态库的编译 使用的编译环境是ubuntu20.04 1、使用vscode配置openharmony sdk交叉编译环境 首先下载openharmony的sdk,如native-linux-x64-4.1.7.5-Release.zip 解压后native目录下就是交叉编译用的sdk 在要编译的源代码目录下新建.vscode目录,…...
springboot基于微信小程序的农产品交易平台
摘 要 随着网络科技的发展,利用小程序对基于微信小程序的农产品交易平台进行管理已势在必行;该系统将能更好地理解用户需求,优化基于微信小程序的农产品交易平台策略,提高基于微信小程序的农产品交易平台效率和质量。本文讲述了基…...
Spring Boot 注解
Spring Boot 是基于 Spring 框架的开发框架,提供了许多注解来简化配置和开发。以下是一些常见的 Spring Boot 注解,包括它们的作用和简单介绍: 1. SpringBootApplication 作用:标识一个 Spring Boot 应用的入口点。它是一个组合…...
P8692 [蓝桥杯 2019 国 C] 数正方形:结论,组合数学
题目描述 在一个 NNNN 的点阵上,取其中 44 个点恰好组成一个正方形的 44 个顶点,一共有多少种不同的取法? 由于结果可能非常大,你只需要输出模 10971097 的余数。 如上图所示的正方形都是合法的。 输入格式 输入包含一个整数 …...
Spring Boot开发—— 实现订单号生成逻辑
文章目录 1. UUID2. 数据库序列或自增ID3. 时间戳 随机数/序列4. 分布式唯一ID生成方案 几种常见的解决方案 UUID 实例代码数据库序列或自增ID时间戳 随机数/序列分布式唯一ID生成方案 Snowflake ID结构类定义和变量初始化构造函数ID生成方法辅助方法 在 Spring Boot 中设计…...
React中Redux的基本用法
Redux是React中使用较多的状态管理库,这篇文章主要介绍了Redux的基本用法,快来看看吧 首先我们需要新建一个React项目,我使用的ReactTS,文件结构如下 Redux的相关使用主要在store文件中 Store:存储整个应用的状态Act…...
unity3d————基础篇小项目(设置界面)
代码示例: 设置界面 using System.Collections; using System.Collections.Generic; using UnityEngine;public class SettingPanel : BasePanel<SettingPanel> {public UIButton btnClose;public UISlider sliderMusic;public UISlider sliderSound;public…...
推荐几个 VSCode 流程图工具
Visual Studio Code(简称VSCode)是一个由微软开发的免费、开源的代码编辑器。 VSCode 发布于 2015 年,而且很快就成为开发者社区中广受欢迎的开发工具。 VSCode 可用于 Windows、macOS 和 Linux 等操作系统。 VSCode 拥有一个庞大的扩展市…...
用java和redis实现考试成绩排行榜
一、引言 在各类考试场景中,无论是学校里的学业测试,还是线上培训课程的考核,亦或是各类竞赛的选拔,成绩排行榜都是大家颇为关注的一个元素。它不仅能直观地展示考生之间的成绩差异,激发大家的竞争意识,还能…...
hhdb数据库介绍(9-24)
计算节点参数说明 failoverAutoresetslave 参数说明: PropertyValue参数值failoverAutoresetslave是否可见是参数说明故障切换时,是否自动重置主从复制关系默认值falseReload是否生效否 参数设置: <property name"failoverAutor…...
HDMI数据传输三种使用场景
视频和音频的传输 在HDMI传输音频中有3种方式进行传输,第一种将音频和视频信号被嵌入到同一数据流中,通过一个TMDS(Transition Minimized Differential Signaling)通道传输。第二种ARC。第三张种eARC。这三种音频的传输在HDMI线中…...
unigui 登陆界面
新建项目,因为我的Main页面做了其他的东西,所以我在这里新建一个form File -> New -> From(Unigui) -> 登录窗体 添加组件:FDConnection,FDQuery,DataSource,Unipanel和几个uniedit,…...
无人机 PX4飞控 | CUAV 7-Nano 飞行控制器介绍与使用
无人机 PX4飞控 | CUAV 7-Nano 飞行控制器介绍与使用 7-Nano简介硬件参数接口定义模块连接供电部分遥控器电机 固件安装 7-Nano简介 7-Nano是一款针对小型化无人系统设备研发的微型自动驾驶仪。它由雷迅创新自主研发和生产,其创新性的采用叠层设计,在极…...
新乡网站建设/免费涨热度软件
点击标题下「蓝色微信名」可快速关注什么是关键词?用户通过在搜索引擎搜索框中输入想要查询的字,发起搜索行为,找到自己需要的信息。输入在搜索框中的字被称为关键词。关键词是网站优化中的方向,是第一步需要做的工作。网站优化是通过提升网…...
做网站用哪种语言/广州专门做seo的公司
重制实例的操作系统之后出现这种情况,解决办法:在本机shell执行 rm -rf ~/.ssh/known_hosts...
上海当地网站/免费入驻的卖货平台有哪些
注:所有代码均由红孩儿编写或以Microsoft DX9 SDK Sample 代码修改而成,转载请注明.(7_2)3D三角形纹理与色彩混合(用原来色彩,不用PS) // -------------------------------------------------------------//hlsl.fx:(7_2)3D三角形纹理与色彩混合(用原来色彩,不用PS)// --------…...
税务网站怎样查询建设项目/aso优化是什么意思
背景: 我手头有个项目,因为之前没注意,把公网环境的IP地址,数据库写到了Github。 但是项目已经提交100多次.这个时候我只想单纯的把这个application-test.yml删掉,包括历史记录 网上一大堆,都感觉是一个人写的,全部…...
wordpress注册验证邮箱/百度软件商店下载安装
如图所示的二叉树表达式: ab*(c-d)-e/f 若先序遍历此二叉树,按访问结点的先后次序将结点排列起来,其先序序列为: (波兰式,前缀表达式) -a*b-cd/ef 按中序遍历,其中序序列为:ab*c-d-e/f (中缀表达式) 按后序遍历,其后序序列为:abcd-*ef/- (逆…...
怎么找到合适的网站建设商/产品免费推广网站有哪些
1、创建索引 ALTER TABLE TBL_STUDENT-表名 ADD INDEX INDEX_NAME(STU_NAME-列名) 2、EXPLAIN命令 MySQL的EXPLAIN命令用于SQL语句的查询执行计划(QEP)。这条命令的输出结果能够让我们了解MySQL 优化器是如何执行SQL 语句的。这条命令并没有提供任何调整建议,但它能…...