加速度传感器是一种能够测量加速力的电子设备。加速力就是当物体在加速过程中作用在物体上的力,就好比地球引力,也就是重力。加速力可以是个常量,比如g,也可以是变量。
加速度传感器一般用在哪里?
通过测量由于重力引起的加速度,你可以计算出设备相对于水平面的倾斜角度。通过分析动态加速度,你可以分析出设备移动的方式。但是刚开始的时候,你会发现光测量倾角和加速度好像不是很有用。但是,现在工程师们已经想出了很多方法获得更多的有用的信息。
加速度传感器可以帮助你的机器人了解它现在身处的环境。是在爬山?还是在走下坡,摔倒了没有?或者对于飞行类的机器人来说,对于控制姿态也是至关重要的。更要确保的是,你的机器人没有带着炸弹自己前往人群密集处。一个好的程序员能够使用加速度传感器来回答所有上述问题。加速度传感器甚至可以用来分析发动机的振动。
目前最新IBM Thinkpad手提电脑里就内置了加速度传感器,能够动态的监测出笔记本在使用中的振动,并根据这些振动数据,系统会智能的选择关闭硬盘还是让其继续运行,这样可以最大程度的保护由于振动,比如颠簸的工作环境,或者不小心摔了电脑做造成的硬盘损害,最大程度的保护里面的数据。另外一个用处就是目前用的数码相机和摄像机里,也有加速度传感器,用来检测拍摄时候的手部的振动,并根据这些振动,自动调节相机的聚焦。
加速度传感器是如何工作的?
多数加速度传感器是根据压电效应的原理来工作的。
所谓的压电效应就是 "对于不存在对称中心的异极晶体加在晶体上的外力除了使晶体发生形变以外,还将改变晶体的极化状态,在晶体内部建立电场,这种由于机械力作用使介质发生极化的现象称为正压电效应 "。
一般加速度传感器就是利用了其内部的由于加速度造成的晶体变形这个特性。由于这个变形会产生电压,只要计算出产生电压和所施加的加速度之间的关系,就可以将加速度转化成电压输出。当然,还有很多其它方法来制作加速度传感器,比如电容效应,热气泡效应,光效应,但是其最基本的原理都是由于加速度产生某个介质产生变形,通过测量其变形量并用相关电路转化成电压输出。
在选购加速度传感器的时候,需要考虑什么?
- 模拟输出 vs 数字输出:
这个是最先需要考虑的。这个取决于你系统中和加速度传感器之间的接口。一般模拟输出的电压和加速度是成比例的,比如2.5V对应0g的加速度,2.6V对应于0.5g的加速度。数字输出一般使用脉宽调制(PWM)信号。
如果你使用的微控制器只有数字输入,比如BASIC Stamp,那你就只能选择数字输出的加速度传感器了,但是问题是你必须占用额外的一个时钟单元用来处理PWM信号,同时对处理器也是一个不小的负担。
如果你使用的微控制器有模拟输入口,比如PIC/AVR/OOPIC,你可以非常简单的使用模拟接口的加速度传感器,所需要的就是在程序里加入一句类似"acceleration=read_adc()"的指令,而且处理此指令的速度只要几微秒。
- 测量轴数量:
对于多数项目来说,两轴的加速度传感器已经能满足多数应用了。对于某些特殊的应用,比如UAV,ROV控制,三轴的加速度传感器可能会适合一点。
- 最大测量值:
如果你只要测量机器人相对于地面的倾角,那一个±1.5g加速度传感器就足够了。但是如果你需要测量机器人的动态性能,±2g也应该足够了。要是你的机器人会有比如突然启动或者停止的情况出现,那你需要一个±5g的传感器。
- 灵敏度
一般来说,越灵敏越好。越灵敏的传感器对一定范围内的加速度变化更敏感,输出电压的变化也越大,这样就比较容易测量,从而获得更精确的测量值。
- 带宽
这里的带宽实际上指的是刷新率。也就是说每秒钟,传感器会产生多少次读数。对于一般只要测量倾角的应用,50HZ的带宽应该足够了,但是对于需要进行动态性能,比如振动,你会需要一个具有上百HZ带宽的传感器。
- 电阻/缓存机制
对于有些微控制器来说,要进行A/D转化,其连接的传感器阻值必须小于10kΩ。比如Analog Devices's analog 加速度传感器的阻值为32kΩ,在PIC和AVR控制板上无法正常工作,所以建议在购买传感器前,仔细阅读控制器手册,确保传感器能够正常工作。