ST意法半导体
直播中

陈秀春

8年用户 190经验值
私信 关注
[问答]

LIS3DH作为运动/倾斜传感器

大家好,我买了LIS3DH开发套件。
我想将它用作传感器,当有人移动我的电路板或倾斜它时,它将用中断唤醒我的MCU。
我有一些约束:
我现在的蝙蝠需要低消耗电流。
我不能假设董事会的初始条件是什么。
我想控制灵敏度。
我尝试了很多开发套件的选项,但所有这些都没有给我带来的情况。
你能帮我理解LIS3DH是否是这项任务的正确选择并提出解决方案?
谢谢!

以上来自于谷歌翻译


以下为原文




Hi ALL, I bought the LIS3DH development kit.
I want to use it as a sensor that will wake my MCU with interrupt when someone moved my board or tilt it.
I have some constrains:
1. I need low consumption current with my current bat.
2.I can't assume what is the initial condition that the board will be.
3.I want to control the sensitivity.
I tried a lot of option with the development kit but all of them didn't give me the desiered situation.
will you help me understand if the LIS3DH is the right choice for this task and suggest solutions?
thank you!

回帖(10)

张茜

2019-4-10 10:39:50
你好,
如果你想分别检测运动(加速度)和倾斜,其中一个
http://www.st.com/en/mems-and-sensors/inemo-inertial-modules.html?querycriteria=productId=SC1448
 可能是更好的解决方案。例如,LSM6DS3的功耗为:组合正常模式下为0.9 mA,组合高性能模式下为1.25 mA,最高为1.6 kHz。
但是,也可以仅使用加速度计测量倾斜度,请参阅此内容
http://www.st.com/content/ccc/resource/technical/document/application_note/d2/d6/22/4f/b9/8f/45/59/DM00119046.pdf/files/DM00119046.pdf/jcr:内容/翻译/ en.DM00119046.pdf
。这完全取决于您的要求,然后是设备设置。可以为任何范围生成中断,但也有一个时间变量,该值高于加速/倾斜阈值多长时间。 (例如,如果你设置4克1秒,可能很难做到,除非你是在战斗机中。)
在你的情况下,我会建议一步一步的方法。将设备设置为连续测量模式并尝试移动设备,估算一些对您的应用有意义的加速度阈值。然后尝试为此阈值设置中断(具有适当的持续时间)。如果您遇到任何困难,请粘贴所有设置代码并描述具体行为,以便我们可以看到可能出现的问题。
大卫

以上来自于谷歌翻译


以下为原文




Hello,
If you want to separately detect movement (acceleration) and tilt, one of
http://www.st.com/en/mems-and-sensors/inemo-inertial-modules.html?querycriteria=productId=SC1448
might be a better solution.LSM6DS3, for example, features power consumption: 0.9 mA in combo normal mode and 1.25 mA in combo high-performance mode up to 1.6 kHz.
However, it is also possible to measure tilt using just an accelerometer, see this
http://www.st.com/content/ccc/resource/technical/document/application_note/d2/d6/22/4f/b9/8f/45/59/DM00119046.pdf/files/DM00119046.pdf/jcr:content/translations/en.DM00119046.pdf
.It all depends on your requirements and then the device setup. The interrupt can be generated for any range, but there is also a time variable, for how long the value is above the acceleration / tilt threshold. (For example if you set 4 g for 1 second, it might be difficult to do, unless you are in a fighter jet.)
In your situation, I would suggest a step by step approach. Set the device into continuous measurement mode and try moving the device, estimate some acceleration threshold that is meaningful for your application. Then try to set an interrupt (with proper time duration) for this threshold. If you have any difficulties, paste all your setup code and describe the specific behaviour, so we can see what might be wrong.
David
举报

陈秀春

2019-4-10 10:48:03
首先 - 谢谢。
我的目标是10-20uA的功耗......即使费率很低也是如此
LSM6DS3会好吗?
2.我做了实验,但问题是,如果初始条件......当初始g为0时,我将阈值设置为0.1g,持续20毫秒,并且运行良好..但现在我开始使用0.8g并且中断识别我通过0.1g ..所以我试图把0.9 ..但我希望它也适用于0.7 ..所以...它不能正常工作..

以上来自于谷歌翻译


以下为原文




first of all - thank you.
1. I aimed to 10-20uA power consumption..even if the rate will be low.. does
LSM6DS3 will be ok?
2. I did the experiment but the problem is that if the initial conditions.. when the initial g is 0 i set the threshold to 0.1g for 20msec and it worked well.. but now I started with 0.8g and the interrupt recognized i passed the 0.1g.. so i tried to put 0.9.. but i want that it work with 0.7 too.. so... it didn't work well..
举报

陈秀春

2019-4-10 11:01:03
我把系统放在轴上的加速度为x = 0,y = 1000,z = 0 mg
现在我在z轴上将阈值设置为〜+ -100mg,当我倾斜它时,它没问题。
下次,我把我的系统放在x = 0,y = 0,z = 1000mg。
现在我将阈值设置为100mg并且总是在......我应该将阈值设置为> 1100,< 900 ...但我不能这样做......

以上来自于谷歌翻译


以下为原文




i put the system where the acceloration in the axis will be x=0, y=1000, z=0 mg
now i set the threshold to ~+-100mg at z axis and when i tilt it, it was ok.
next time, i put my system at x=0, y=0, z=1000mg.
now i set the threshold to 100mg and it allways on... I should want to set the threshold to >1100, <900... but i can't do that...
举报

张茜

2019-4-10 11:19:52
关于功耗:
这是摘录
http://www.st.com/content/ccc/resource/technical/document/datasheet/3c/ae/50/85/d6/b1/46/fe/CD00274221.pdf/files/CD00274221.pdf/jcr:内容/翻译/ en.CD00274221.pdf
:和类似的
http://www.st.com/content/ccc/resource/technical/document/datasheet/a3/f5/4f/ae/8e/44/41/d7/DM00133076.pdf/files/DM00133076.pdf/jcr:内容/翻译/ en.DM00133076.pdf
与仅加速度计相比,陀螺仪似乎增加了大量的功耗。此外,需要尽可能低的Vdd。
我不确定我完全理解你描述的测试情况。 0.1 g触发中断,但不是0.8?你能分享用来设置控制寄存器的代码吗?
大卫

以上来自于谷歌翻译


以下为原文




Regarding the power consumption:
Here is an extract from
http://www.st.com/content/ccc/resource/technical/document/datasheet/3c/ae/50/85/d6/b1/46/fe/CD00274221.pdf/files/CD00274221.pdf/jcr:content/translations/en.CD00274221.pdf
:And similar for the
http://www.st.com/content/ccc/resource/technical/document/datasheet/a3/f5/4f/ae/8e/44/41/d7/DM00133076.pdf/files/DM00133076.pdf/jcr:content/translations/en.DM00133076.pdf
It seems that the gyroscope adds significant amount of power consumption compared to just an accelerometer. Also, as low Vdd as possible is needed.
I am not sure I fully understand the test situation you described. 0.1 g triggeres an interrupt, but 0.8 not? Could you share the code or values that you use to set the control registers?
David
举报

更多回帖

发帖
×
20
完善资料,
赚取积分