各种传感器接口 一文看懂传感器常见的设计技巧及技术指标
传感器的数量在整个地球表面和人们的生活环境之间激增空,提供世界上各种各样的数据信息。这些老百姓买得起的传感器,是推动物联网发展的动力,我们的社会正面临着数字革命。然而,从传感器连接和获取数据并不总是那么简单。本文将介绍传感器的技术指标、五大设计技巧和铸造企业。
首先,技术指标是表征产品性能的客观依据。了解技术指标有助于正确选择和使用产品。传感器的技术指标可分为静态指标和动态指标:静态指标主要评估传感器在静态测量条件下的性能,包括分辨率、重复性、灵敏度、线性度、回差、阈值、蠕变、稳定性等;动态指标主要考察被测传感器在快速变化条件下的性能,包括频率响应和阶跃响应。
由于传感器的技术指标众多,各种文件的叙述角度不同,不同的人有不同的理解,甚至产生误解和歧义。因此,传感器的几个主要技术指标解释如下:
1.分辨率和分辨率:
定义:分辨率是指传感器能够检测到的最小测量变化。分辨率是指分辨率与满量程值的比率。
解读1:分辨率是传感器最基本的指标,表征了被测传感器的分辨率。传感器的其他技术指标以分辨率为最小单位进行描述。
对于具有数字显示功能的传感器和仪器,分辨率决定了测量结果中显示的最小位数。例如,电子数字卡尺的分辨率为0.01毫米,其指示误差为0.02毫米。
解释2:分辨率是一个带单位的绝对值。比如温度传感器的分辨率为0.1℃,加速度传感器的分辨率为0.1 g。
解释3:分辨率是一个与分辨率非常相似的概念,两者都表征了传感器待测的分辨率能力。
它们之间的主要区别在于分辨率以百分比的形式表示传感器的分辨能力,百分比是相对的,没有维度。例如,如果温度传感器的分辨率为0.1℃,满量程为500℃,则其分辨率为0.1/500=0.02%。
2.重复性:
定义:传感器的重复性是指在同一条件下,沿同一方向重复进行同一测量时,测量结果之间的差异程度。也叫重复错误、复制错误等。
解释1:传感器的重复性必须是在相同条件下获得的多个测量结果之间的差异程度。如果测量条件发生变化,测量结果之间的可比性将消失,不能作为评估重复性的依据。
解读2:传感器的重复性表明了传感器测量结果的分散性和随机性。这种分散性和随机性的原因是传感器内部和外部不可避免地存在各种随机干扰,导致传感器的最终测量结果呈现随机变量的特征。
解释三:重复性可以用随机变量的标准差来定量表示。
解释4:对于重复测量,如果将所有测量结果的平均值作为最终测量结果,可以获得更高的测量精度。因为平均值的标准偏差明显小于每个测量结果的标准偏差。
3.线性度:
定义:线性是指传感器的输入输出曲线与理想直线的偏离程度。
解读1:理想的传感器输入输出关系应该是线性的,其输入输出曲线应该是直线。
但实际传感器存在各种误差,导致实际输入输出曲线不是理想的直线,而是曲线。
线性表示传感器的实际特性曲线与离线直线之间的差异,也称为非线性或非线性误差。
解读2:由于传感器实际特性曲线与理想直线在不同测量条件下的差异不同,所以常用满量程范围内两者最大差异与满量程值的比值。显然,线性也是一个相对量。
解读3:对于一般测量场合,传感器的理想直线未知,无法获得。为此,通常采用折中的方法,即直接利用传感器的测量结果计算更接近理想直线的拟合直线。具体计算方法包括端点连接法、最佳直线法、最小二乘法等。
4.稳定性:
定义:稳定性是指传感器在一段时间内保持其性能的能力。
解读一:稳定性是检验传感器在一定时间范围内是否稳定工作的主要指标。导致传感器不稳定的因素主要包括温度漂移和内应力释放。因此,增加温度补偿和时效处理等措施有助于提高稳定性。
解读二:稳定根据不同的时间段可以分为短期稳定和长期稳定。当考察时间过短时,稳定性接近重复性。因此,稳定性指数主要考察长期稳定性。具体时长根据使用环境和要求确定。
解释三:稳定性指标的定量表示方法可以用绝对误差,也可以用相对误差。例如,应变力传感器的稳定性为0.02%/12h。
5.采样频率:
定义:采样频率是指传感器在单位时间内可以采样的测量结果数量。
解读1:采样频率反映了传感器的快速响应能力,是最重要的动态特性指标。采样频率是测量数据快速变化时必须充分考虑的技术指标之一。根据香农采样定律,传感器的采样频率应不小于测量变化频率的2倍。
解读2:随着频率的不同,传感器的精度指标也随之变化。一般来说,采样频率越高,测量精度越低。
然而,传感器给出的最高精度通常是在最低采样速度下获得的测量结果,即使在静态条件下也是如此。因此,在选择传感器时,必须同时考虑精度和速度。
让我们来看看传感器的五个设计技巧
1.从总线工具开始
第一步,工程师在第一次连接传感器时,应采用总线工具来限制未知。总线工具连接到个人计算机,然后连接到I2C、SPI或其他允许传感器“说话”的协议。与总线工具相关的PC应用程序为发送和接收数据提供了一个已知的工作源,它不是一个未知的、未经认证的嵌入式微控制器驱动程序。在总线工具的工作环境下,开发人员可以发送和接收消息,以便在尝试在嵌入式级别操作之前了解这一部分是如何工作的。
2.用Python编写传输接口代码
一旦开发人员尝试使用总线工具的传感器,下一步就是为传感器编写应用程序代码。不要直接跳到微控制器代码,而是用Python编写应用程序代码。许多总线工具在编写脚本时配置插件和示例代码。Python通常是中可用的语言之一。NET。用Python编写应用程序又快又容易,同时也提供了一种在应用程序中测试传感器的方法,不像在嵌入式环境中测试那么复杂。拥有高级代码将使非嵌入式工程师能够轻松挖掘脚本并测试传感器,而无需嵌入式软件工程师的关心。
3.用微型Python测试传感器
用Python编写第一个应用程序代码的一个好处是,通过调用Micro Python,应用程序调用到总线工具的应用程序接口可以很容易地被替换。Micro Python运行在实时嵌入式软件中,其中有很多传感器供工程师了解其价值。微Python运行在Cortex-M4处理器中,是调试应用程序代码的好环境。不仅简单,这里也不需要写I2C或者SPI驱动,因为Micro Python的函数库已经涵盖了。
4.使用传感器供应商代码
任何可以从传感器制造商处“搜索”到的示例代码,工程师都需要走很长的路才能理解传感器是如何工作的。遗憾的是,很多传感器供应商并不是嵌入式软件设计方面的专家,所以不要指望找到一个漂亮的架构和优雅的例子就能投入生产。只需使用供应商代码并了解这部分是如何工作的,然后重构的挫败感就会出现,直到它可以干净利落地集成到嵌入式软件中。它可能会像“意大利面条”一样开始,但利用制造商对其传感器如何工作的理解,将有助于在产品推出前减少许多浪费的周末。
5.使用传感器融合函数库
很有可能,传感器的传输接口不是太新,以前也没有人这么做过。所有已知的函数库,比如很多芯片厂商提供的“传感器融合函数库”,都可以帮助开发者快速掌握,甚至更好,避免陷入重新开发或者大幅度修改产品架构的怪圈。许多传感器可以集成到通用类型或类别中,这些类型或类别将使驾驶员能够顺利开发。如果处理得当,它们几乎是通用的或很少可重用的。找到这些传感器融合函数库,了解它们的优缺点。
当传感器集成到嵌入式系统中时,有许多方法可以帮助提高设计时间和易用性。当开发人员开始设计时,在将传感器集成到较低级别的系统之前,他们将通过高级抽象概念学习传感器如何工作,从而永远不会走错路。今天存在许多资源,这将帮助开发人员“获胜”,而不必从头开始。
免责声明:本文内容为作者个人观点,不代表传感器专家网的观点或立场。更多意见,请留言评论。