传感器的设计要点及五大设计技巧
传感器的数量在整个地球表面和人们生活周遭空间激增,提供世界各种数据讯息。这些价格亲民的传感器是物联网发展和我们的社会正面临数字化革命背后的驱动力,然而连接和获取来自传感器的数据并不总是直线前进或那么容易。本文将介绍传感器技术指标、5大设计技巧及代工企业。
首先技术指标是表征一个产品性能优劣的客观依据。看懂技术指标,有助于正确选型和使用该产品。传感器的技术指标分为静态指标和动态指标两类:静态指标主要考核被测静止不变条件下传感器的性能,具体包括分辨力、重复性、灵敏度、线性度、回程误差、阈值、蠕变、稳定性等;动态指标主要考察被测量在快速变化条件下传感器的性能,主要包括频率响应和阶跃响应等。
由于传感器的技术指标众多,各种资料文献叙述角度不同,使得不同人有不同的理解,甚至产生误解和歧义。
传感器的设计要点
1、一般所测得的物理量是非常小的,通常还带有作为传感器物理转换元件固有的转换噪声。比如传感器在1被放大倍率下的信号强度为0.1~1uV,此时的背景噪声信号也有这么大的水平,甚至于将其湮灭。如何将有用信号尽量取出并且压低噪声是传感器设计的首要解决的问题。
2、传感器电路一定要简单精炼。设想具有3级放大电路的,带有2级有源滤波器的放大回路,放大了信号的同时也将噪声放大了,如果噪声不是明显偏离有用信号频谱,则无论怎样滤波两者同时放大,结果信噪比没有提高。因此传感器电路一定要精炼简约。能省1只电阻或电容就一定要将它去掉。这一点是许多设计传感器的工程师们容易忽略的问题。已知的情况是,传感器电路随着噪声的问题困扰,电路越修改越复杂,成为怪圈。
3、功耗问题。传感器通常在后续电路的前端,有可能需要较长的引线连接。当传感器功耗较大时引线的连接将会所有的无谓噪声以及电源噪声引入使得后续电路愈发难以设计。在够用的情况小如何降低功耗也是一个不小的考验。
4、元器件的选用和电源回路。元器件的选用一定要够用为好,只要器件指标在需要的范围之内就可以了,余下的就是电路设计问题。电源是传感器电路设计过程一定要遇到的难题,不要追求无法达到的电源指标,而选择一款带有较好的共模抑制比的运放,采用差分放大电路设计可能最普通的开关电源以及器件就能满足你的要求。
传感器五大设计技巧
1、先从总线工具开始
第一步,工程师应当采取首次介接到传感器时,是透过一个总线工具的方式以限制未知。一个总线工具连接一台个人计算机(PC),然后到传感器的I2C、 SPI或其他可让传感器可以“说话”的协议。与总线工具相关的PC应用程序,提供了一个已知与工作来源用以发送和接收数据,且不是未知、未经认证的嵌入式微控制器(MCU)驱动程序。在总线工具的工作环境下,开发人员可以传送和接收讯息以得到该部分如何运作的理解,在试图于嵌入式等级操作之前。
2、在Python编写传输接口码
一旦开发者已尝试使用总线工具的传感器,下一步就是为传感器编写应用程序代码。并非直接跳到微控制器的代码,而是在Python编写应用程序代码。许多总线 工具在编写脚本(wriTIng scripts)配置了插件(plug-in)和范例码,Python通常是随着。NET中可用的语言之一。在Python编写应用程序是快速且容易的, 其并提供一个方法已在应用程序中测试传感器,这个方式并未如同在嵌入式环境测试的复杂。拥有高层级的代码,将使非嵌入式工程师易于挖掘传感器的脚本及测 试,而不需要一个嵌入式软件工程师的照看。
3、以Micro Python测试传感器
在Python写下第一段应用程序代码的其中一个优势是,透过调用Micro Python,应用程序调用到总线工具应用程序编程接口(API)可易于进行更换。Micro Python运作在实时嵌入式软件内,其中有许多传感器可供工程师来了解其价值,Micro Python运作在一个Cortex-M4处理器,且其是一个很好的环境,以从中为应用程序代码除错。不仅是简单的,这里也不需要去写I2C 或SPI驱动程序,因为它们已被涵盖在Micro Python的函式库中。
4、利用传感器供货商代码
任 何可以从传感器制造商“搜括”到的范例码,工程师需要走一段很长的路才能了解传感器如何工作的原理。不幸的是,许多传感器供货商并非嵌入式软件设计的专家,因此不要期待可以发现一个可投入生产的漂亮架构和优雅的例子。就使用供货商代码,学习这部分如何运作,之后重构的挫折感将出现,直到它可以被干净利索地整合到嵌入式软件。它可能如“意大利面条般(spaghetTI)”开始,但利用制造商对其传感器如何运作的理解,在产品推出之前,将有助于减少许多得 被毁掉的周末时间。
5、使用一个传感器融合函式库
机会是,传感器的传输接口并不是太新,且先前没有人这么做过。已知的所有函式库,如由许多芯片制造商提供的“传感器融合函式库”,以协助开发人员快速掌握、 甚至更好,更可避免他们陷入重新开发或大幅修改产品架构的轮回。许多传感器可以被整合至一般类型或类别,而这些类型或类别将使驱动程序顺利被开发,若处理得当,几乎是普遍或是少可重复使用。寻找这些传感器融合函式库,并学习它们的优点和短处。
感测器被整合至嵌入式系统时,有许多方式可以帮助提高设计时程和易用性。开发者在开始设计时,透过一个高层次抽象概念,以及在把传感器整合进一个较低等级的 系统之前,学习传感器如何运作,就绝对不会“走错路”。今天存在的众多资源将可协助开发人员“旗开得胜”,而无须从头开始。