本文描述了一个为视障人士设计的完整的水平仪。它使用邮编:312加速度计,用于测量水平面和垂直面上的重力,并在加速度计完全水平或垂直时发出蜂鸣器。


它也可以用作倾斜传感器,例如在汽车应用中对拖车进行调平,其中水平仪可能位于远离方向盘的地方。它也可作为汽车稳定系统或无人机的子电路使用。


介绍


Amar Latif在英国烹饪界引起轰动名人美厨竞赛然而,阿玛不仅是一名出色的厨师,他还经营着自己的旅游公司,是一名励志演说家,徒步穿越了南美洲的大部分地区,还是一名电视名人。这个人的超能力永无止境吗?


遗憾的是,确实有。阿玛95%是盲人。随着技术的进步,世界也在努力跟上,对于视障人士来说,这场斗争更加艰难。大多数技术进步都需要我们花更多的时间在屏幕前。对于视障人士来说,过长的屏幕时间仍然是一个“前提条件”


如果技术可以用来丰富视力障碍者的生活,这将是一件好事。由于只有18%的注册盲人是完全失明的(或“黑盲”),这使得绝大多数人即使无法区分细节,也至少有一些视力。于是,盲人灵位仪的概念就诞生了。


设计大纲


倾斜传感器的设计基于ADXL312,这是一种低电流加速度计,可测量高达±1.5在x、y和z轴上,通过SPI总线读取数据。该部件有5毫米×5毫米的封装,在待机模式下消耗0.1μa。它的分辨率为10位,因此ADXL312可以检测低至±2.9米的变化在每个轴上。ADXL312将每个轴的重力数据存储为高达±511的二进制补码值,微控制器读取并显示在单行16字符LCD显示器上。图1显示了ADXL312的感应轴。


单击以获取全尺寸图像

<img data-lazy-fallback="1" decoding="async" src="https://uploads.9icnet.com/images/aritcle/20230420/03adi-fig-01.jpg" alt="">

图1。ADXL312的感应轴。(来源:模拟设备)

零件的满刻度读数为1.5,所以重力为1给出读数2./3.这一点。因此,如果ADXL312正好为电平,则z轴寄存器应读取2./3.满刻度,而x和y轴的读数应为零。类似地,当ADXL312完全垂直时,x轴读数应为2./3.满刻度,而y轴和z轴的读数应为零。如果ADXL312开始从任何轴倾斜,则根据倾斜角度的正弦,最大读数开始减小,而其他轴上的读数开始增大。


ADXL312内部


ADXL312是一种微机电系统(MEMS),由构建在硅片顶部的多晶硅表面微机械结构组成。多晶硅弹簧将结构悬挂在晶片表面上,并提供抵抗加速力的阻力。


固定的硅指状物与移动的检验质量上的指状物交错,以产生可测量其特性的差分电容器。加速度使光束偏转并使差分电容器不平衡,从而产生振幅与加速度成比例的传感器输出。其结构如图2所示。


单击以获取全尺寸图像

<img data-lazy-fallback="1" decoding="async" src="https://uploads.9icnet.com/images/aritcle/20230420/03adi-fig-02.jpg" alt="">

图2:ADXL312的内部工作原理。(来源:模拟设备)

ADXL312可以使用I2.C或SPI,并且x、y和z数据存储在六个内部8位寄存器中。它还具有许多其他功能,包括32级FIFO、两个多功能中断、偏移寄存器、机械自检和自动睡眠模式。


精神层面设计


倾斜传感器的完整电路图如图3所示。


ADXL312的最大供电电压为3.6 V,而LCD显示器和蜂鸣器需要5 V,因此电路的主输入为5 V,并使用3.3 V、150 mA线性调节器进行下调(ADP121型)为ADXL312、微控制器和E2存储器供电。


微控制器上的端口B引脚2(CAL引脚)由10 kΩ电阻器拉高。它还有一个跳线,使其能够连接到地。启动时,微控制器询问CAL引脚的状态,如果该引脚被跳线拉低,它读取x、y和z寄存器,从零减去这些读数,然后将结果加载到ADXL312内部的偏移寄存器中,并将其存储在外部E2存储器25AA040中。ADXL312自动将偏移寄存器的读数添加到任何未来的测量中,而无需处理器交互,从而消除校准的偏移。


如果拆下跨接导线,则CAL引脚被拉高,标定例行程序被绕过。偏移读数直接从E2存储器读取,并加载到ADXL312的偏移寄存器中。因此,在制造过程中,可以将水准仪安装在校准夹具中,CAL销保持在低位,可以校准设备,并且偏移值存储在E2存储器中。校准后,跳线被移除,随后通电时,E2存储器被询问,校准后的偏移读数被加载到ADXL312的偏移寄存器中。


然后,软件对每个轴执行八次读取,并对结果进行平均,然后在16字符LCD显示器上显示。显示器每100毫秒更新一次。


单击以获取全尺寸图像

<img data-lazy-fallback="1" decoding="async" src="https://uploads.9icnet.com/images/aritcle/20230420/03adi-fig-03.jpg" alt="">

图3。视障人士水平仪的完整示意图。(来源:模拟设备)

图4显示,当每个传感器接近其零读数时,可以实现最大灵敏度。这是正弦波斜率最大的地方,因此对于任何倾斜变化,重力读数都会发生最大变化。


<img data-lazy-fallback="1" decoding="async" src="https://uploads.9icnet.com/images/aritcle/20230420/03adi-fig-04.jpg" alt="">

图4。显示g力随角度的正弦变化。(来源:模拟设备)

幸运的是,当每个传感器完全水平并且传感器读数接近零时,水平仪只需要测量倾斜。


编写该软件是为了能够同时校准x轴和z轴。将零件放置在水平平台上并校准倾斜传感器的x轴很容易。然而,此时z轴将受到1的力,因此需要读取z读数,与满刻度计数为1相比,以及加载到偏移寄存器中的任何错误。可以通过在水平面和垂直面上进行校准来实现倾斜传感器的每个轴的更精确校准,但这需要两阶段校准和软件修改。


表1显示了二的补码数据的一个例子。正数遵循传统的二进制表示法。负数使用最高有效位(MSB)作为符号位;因此,正数具有等于零的MSB,而负数具有等于1的MSB。


表1。二元互补数据的一个例子


十进制的

二进制的

+511

01 1111 1111

+1

00 0000 0001

0

00 0000 0000

-1

11 1111 1111

-511

10 0000 0001

一个正数的两个补码可以通过反转所有的位,然后加1来找到。因此,当从计数0转换到计数-1时,代码从00 0000 0000变为11 1111 1111。


软件读取x和z寄存器,如果其中一个寄存器的值为0或1023(11 1111 1111),则将端口B的位5设置为高电平,从而导通晶体管Q1并发出5V蜂鸣器的声音。当倾斜传感器完全水平时,x轴的读数为0或1023,而当完全垂直时,z轴的读数则为0或1024。只有当两个寄存器都不等于0或1023时,蜂鸣器才会停止发声。


准确性和进一步发展


仅考虑一个轴,最大读数为1当重力沿该轴作用时,该读数降至0如图5所示,零件倾斜90°。


<img data-lazy-fallback="1" decoding="async" src="https://uploads.9icnet.com/images/aritcle/20230420/03adi-fig-05.jpg" alt="">

图5。使用重力读数计算倾斜角度。(来源:模拟设备)

因此,施加的重力由以下方程决定


<img data-lazy-fallback="1" decoding="async" loading="lazy" src="https://uploads.9icnet.com/images/aritcle/20230420/03adi-eq-01.jpg" alt="" width="468" height="34">

其中,Å是相对于水平方向测量的倾斜角度。如果零件可以测量到2.9米的分辨率,则它可以分解为0.17°的角度。由于气泡的确切位置很难确定,因此很难确定标准气泡液位计的精度。然而,根据实验,在气泡看起来偏离中心之前,1.2米水平仪的末端可以移动约3.2毫米(两块未填充PCB的宽度!)。这相当于大约0.15°的角度,表明我们可以用电子倾斜传感器取代气泡液位计,而分辨率几乎没有损失。


如果需要更高的精度邮编:313在1g范围内提供11位分辨率。接口和寄存器组与ADXL312非常相似,因此软件不需要太多修改。这个邮编:355提供了相当低的噪声和更高的分辨率。


ADXL312的噪声密度为340μ/√Hz,并且带宽越低,噪声越好。零件的带宽是可编程的(从3.125 Hz到1600 Hz,默认设置为50 Hz)。虽然减少带宽可以改善噪声,但这也会降低显示器的更新率。对于该设计,带宽设置为6.25 Hz,这意味着rms噪声为850μ还可以通过获取更多的读数并对其进行平均来降低噪声。


进一步的改进是有一个显示度数的液晶显示器。然而,如果要在软件中包含正弦和余弦,这就需要在C库中使用数学函数。对于低端微控制器来说,这些功能占用了太多的代码空间。使用泰勒级数展开可以实现正弦函数的近似,并且这应该占用相当少的代码空间。


结论


ADXL312提供了一种低成本的电子倾斜测量系统,该系统易于与低端微控制器接口。前面描述的设计已经证明,它可以与传统气泡液位计的精度相媲美,但需要电子接口。这使其能够在需要测量倾斜度的大型设计中用作子系统,如拖车调平系统、稳定性控制系统和无人机。


更重要的是,它可以用来增加视障人士的独立性,本文展示了一个完整的系统级设计,包括硬件、软件和非易失性存储器,以及音频和视频输出。


<img data-lazy-fallback="1" decoding="async" alt="" style="width: 150px; float: left; margin: 0px 4px 0px 0px;" src="https://uploads.9icnet.com/images/aritcle/20230420/SimonBramble.jpg">

西蒙·布兰布尔1991年毕业于伦敦布鲁内尔大学,获得电气工程和电子专业学位,专门研究模拟电子和电力。他在模拟电子领域度过了自己的职业生涯,并在线性技术公司(现为模拟设备公司的一部分)工作。他可以在simon.bramble@analog.com.