реклама на сайте
подробности

 
 
> Акселерометр LIS331HH
Specialistvlad
сообщение Mar 24 2012, 20:31
Сообщение #1





Группа: Новичок
Сообщений: 3
Регистрация: 10-03-12
Пользователь №: 70 716



Всем привет! Решил поэкспериментировать с акселерометром, запустил его и вывожу данные в терминал(прикрепленное изображение)
Кручу плату в руках и показания изменяются, хотя ускорения ясное дело никакого, я понимаю конечно, что гравитацию никто не отменил еще пока... Но кто-то подскажет как правильно обойти эту проблему?? Показания очень сильно плавают..
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
2 страниц V   1 2 >  
Start new topic
Ответов (1 - 28)
gregory
сообщение Mar 27 2012, 16:06
Сообщение #2


Местный
***

Группа: Участник
Сообщений: 215
Регистрация: 10-06-05
Пользователь №: 5 887



Цитата(Specialistvlad @ Mar 25 2012, 02:31) *
Всем привет! Решил поэкспериментировать с акселерометром, запустил его и вывожу данные в терминал(прикрепленное изображение)
Кручу плату в руках и показания изменяются, хотя ускорения ясное дело никакого, я понимаю конечно, что гравитацию никто не отменил еще пока... Но кто-то подскажет как правильно обойти эту проблему?? Показания очень сильно плавают..


Поставить фильтр высоких частот и отсечь постоянную составляющую, которая зависит от ускорения свободного падения и угла наклона.
Go to the top of the page
 
+Quote Post
Voice2001
сообщение May 15 2012, 06:53
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 240
Регистрация: 29-01-08
Из: эМ-ск
Пользователь №: 34 553



а у LIS3LV02 нет случайно фильтра? На схеме (страница 8) вроде нарисовано что-то


--------------------
Продаю котят. Недорого. 50р ведро.
Go to the top of the page
 
+Quote Post
Ruslan1
сообщение May 15 2012, 08:18
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 2 360
Регистрация: 6-03-06
Из: Кишинев
Пользователь №: 15 025



Цитата(Specialistvlad @ Mar 24 2012, 23:31) *
Кручу плату в руках и показания изменяются, хотя ускорения ясное дело никакого, я понимаю конечно, что гравитацию никто не отменил еще пока... Но кто-то подскажет как правильно обойти эту проблему?? Показания очень сильно плавают..

Честно говоря, ничего из картинки не понял.
Сильно- это насколько? в процентах.
Очень возможно, что это
1. просто вибрация от Ваших рук или от перфоратора за стеной.
2. некорректная интерпретация данных. Переключите на другой диапазон, оно должно соответственно измениться
3. Некорректная схема включения-запитки датчика (что за плата?)
4. микрофонный эффект (Но это я на более чувствительных (2g) сенсорах наблюдал, с аналоговым выходом: вполне так разговор осциллографом смотреть можно было).
Go to the top of the page
 
+Quote Post
ilya-m
сообщение May 15 2012, 08:21
Сообщение #5


Частый гость
**

Группа: Свой
Сообщений: 165
Регистрация: 30-06-08
Из: С.-Петербург
Пользователь №: 38 642



Цитата(Voice2001 @ May 15 2012, 10:53) *
а у LIS3LV02 нет случайно фильтра? На схеме (страница 8) вроде нарисовано что-то


Такой фильтр у LIS3LV02 есть, правда описан он не на 8, а на 34 странице. Его параметры настраиваются в регистре CTRL_REG3 (22h).
Go to the top of the page
 
+Quote Post
Voice2001
сообщение May 15 2012, 09:44
Сообщение #6


Местный
***

Группа: Свой
Сообщений: 240
Регистрация: 29-01-08
Из: эМ-ск
Пользователь №: 34 553



Цитата(ilya-m @ May 15 2012, 12:21) *
Такой фильтр у LIS3LV02 есть

влезу с нубским вопросом в эту тему.
Правильно ли я понимаю, что на данном (ну и вообще любом современном) акселерометре точность такая, что я могу программно вернуть объект на место?
Т.е. например, сделать такое устройство, которое будет лежать на столе. Можно взять его со стола и оно покажет на экране кол-во миллиметров, на которые его перенесли по всем 3-м осям.
Какая погрешность накопится, если носить это устройство по комнате 5 минут?
ПС. только собираюсь начать с ними экспериментировать, вот интересен такой момент.


--------------------
Продаю котят. Недорого. 50р ведро.
Go to the top of the page
 
+Quote Post
ilya-m
сообщение May 15 2012, 09:57
Сообщение #7


Частый гость
**

Группа: Свой
Сообщений: 165
Регистрация: 30-06-08
Из: С.-Петербург
Пользователь №: 38 642



Цитата(Voice2001 @ May 15 2012, 13:44) *
Правильно ли я понимаю, что на данном (ну и вообще любом современном) акселерометре точность такая, что я могу программно вернуть объект на место?


Акселерометр измеряет ускорение, а перемещение будет вторым интегралом от ускорения. У акселерометров, с которыми я работал уровень шума составлял около 0.5 от величины разрешающей способности.
При попытках вычислять перемещение ошибка интегрирования будет накапливаться довольно быстро. Для таких целей применяют интегральные гироскопы.
Но для небольших перемещений можно использовать и акселерометр. Например, в журнале "Радио" (номер, к сожалению, не помню) описывался проект компьютерной мышки на акселерометре ADXL202 от Analog Devices.
Go to the top of the page
 
+Quote Post
Ruslan1
сообщение May 15 2012, 10:44
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 2 360
Регистрация: 6-03-06
Из: Кишинев
Пользователь №: 15 025



Цитата(Voice2001 @ May 15 2012, 12:44) *
Правильно ли я понимаю, что на данном (ну и вообще любом современном) акселерометре точность такая, что я могу программно вернуть объект на место?

Нет, нереально.
Go to the top of the page
 
+Quote Post
Voice2001
сообщение May 15 2012, 19:32
Сообщение #9


Местный
***

Группа: Свой
Сообщений: 240
Регистрация: 29-01-08
Из: эМ-ск
Пользователь №: 34 553



Цитата(Ruslan1 @ May 15 2012, 14:44) *
Нет, нереально.

почему же?
минимальное измерение ускорения там 2g - это 2*9.81м/с2=19.62м/с2.
Т.е. допустим объект передвинули с макс.ускорением в 2g и он за секунду набрал скорость в 19.62м/с
Учитывая 12-битное представление чисел, расстояние, на которое передвинули объект, можно посчитать с точностью до 19.62/4096=0.005м, т.е. с точностью в 5мм
ПС. Рассуждения у меня чисто теоретические. С акселерометрами дело никогда не имел


--------------------
Продаю котят. Недорого. 50р ведро.
Go to the top of the page
 
+Quote Post
ilya-m
сообщение May 16 2012, 07:14
Сообщение #10


Частый гость
**

Группа: Свой
Сообщений: 165
Регистрация: 30-06-08
Из: С.-Петербург
Пользователь №: 38 642



Вы немного ошибаетесь - ±2.0 g - это максимальное ускорение, которое может зафиксировать акселерометр (ессли рассматривать именно режим ±2.0 g). При этом 12-ти битное число будет со знаком и в 12 бит уложатся все ускорения в диапазоне от -2 до +2 g. Минимальная же величина ускорения, которое может зафиксировать акселерометр (при этих настройках) составит 1.0 mg, для выборки 40 раз в секунду. То есть ускорения менее 1 mg фиксироваться не будут, а более 2 g будет равно 2 g. Вот первый источник ощибок.

Второй источник - диапазон измерений - по даташиту он может уменьшаться от ±2.0 до ±1.7 (изменение диапазона ввех вообще не нормировано), а это уже дает возможную 15%. Для вычисления пройденного пути по известному ускорению, в любом случае, приходится применять интегральные алгоритмы, а в них все ошибки будут накапливаться.

Плюс температурный дрейф. А у акселерометров от ST наблюдается интересная особенность - при определенной температуре, в узком диапазоне, (для каждого экземпляра своей) наблюдается резкое увеличение шумов.

Реальный объект будет совершать сложное движение, а не только ускоренное. По-этому, к ошибкам, связанным с конструктивными особенностями акселерометра, добавятся ошибки, связанные с наличием в движении обекта участков равномерного движения (там ускорение равно 0 и для акселерометра ничем не отличается от неподвижного состояния), ускоренного движения с ускорением менее 1 mg, с ускорением более 2 mg.

А, поскольку, только конструктивные особенности дают ошибку ускорения более 15%, то уж об ошибках рассчета пройденного пути и говорить не приходится.

Применения акселерометров в системах, определяющих перемещение возможно, когда требуетя только оценить, например, есть движение или нет (датчик перемещения в охранных системах) или в изделиях, где процессом движения обекта (из точки А в точку В) управляет сторонний оператор, а данные от обекта служат только для визуализации процесса движения, например, компьютерная мышка.

Вот полезная статья об интегральных акселерометрах - http://www.eltech.spb.ru/pdf/A_D/ADXL.pdf.
Go to the top of the page
 
+Quote Post
muravei
сообщение May 16 2012, 07:49
Сообщение #11


Гуру
******

Группа: Свой
Сообщений: 2 538
Регистрация: 13-08-05
Пользователь №: 7 591



Цитата(ilya-m @ May 16 2012, 10:14) *
Для вычисления пройденного пути по известному ускорению, в любом случае, приходится применять интегральные алгоритмы, а в них все ошибки будут накапливаться.

Ну , а скорость с "велосипедной" точностью, померять можно ?
Я программно добрался до акселерометра в смартфоне , но пока кроме беснующихся цифирок получить ничего не удалось. sad.gif
Go to the top of the page
 
+Quote Post
ilya-m
сообщение May 16 2012, 09:24
Сообщение #12


Частый гость
**

Группа: Свой
Сообщений: 165
Регистрация: 30-06-08
Из: С.-Петербург
Пользователь №: 38 642



Цитата(muravei @ May 16 2012, 11:49) *
Ну , а скорость с "велосипедной" точностью, померять можно ?


Скорость - это тоже интеграл от ускорения, правда первый. Ошибка, как и в расчете перемещения, со временем будет накапливаться. Алгоритм периодической компенсации ошибок интегрирования все равно потребуется. Для измерения скорости проще применить GPS приемник - там тоже косвенный метод определения скорости, по точности он будет ниже прямого метода. Зато есть постоянная корректировка ошибки определения скорости (фактически в GPS приемнике будет кусочно-линейная апроксимация скорости).
Go to the top of the page
 
+Quote Post
muravei
сообщение May 16 2012, 09:42
Сообщение #13


Гуру
******

Группа: Свой
Сообщений: 2 538
Регистрация: 13-08-05
Пользователь №: 7 591



Цитата(ilya-m @ May 16 2012, 12:24) *
Для измерения скорости проще применить GPS приемник

Это есть и не интересно.

Допускаю, клалибровку на остановках. sm.gif
Но как отделаться от g ?
Go to the top of the page
 
+Quote Post
ilya-m
сообщение May 16 2012, 13:03
Сообщение #14


Частый гость
**

Группа: Свой
Сообщений: 165
Регистрация: 30-06-08
Из: С.-Петербург
Пользователь №: 38 642



Цитата(muravei @ May 16 2012, 13:42) *
Но как отделаться от g ?


Например, включить ФВЧ, как я писал в сообщении №5. К чему это приведет, для Вашей задачи, я не знаю. У меня в датчике перемещения для охранной системы применение ФВЧ было полезным.
Go to the top of the page
 
+Quote Post
muravei
сообщение May 16 2012, 17:04
Сообщение #15


Гуру
******

Группа: Свой
Сообщений: 2 538
Регистрация: 13-08-05
Пользователь №: 7 591



Цитата(ilya-m @ May 16 2012, 16:03) *
У меня в датчике перемещения для охранной системы применение ФВЧ было полезным.

В моем случае он должен быть программным.
А если охраняемый объект попробует похитить улитка , датчик сработает? sm.gif
Это я о том , какой должна быть частота среза.
Go to the top of the page
 
+Quote Post
ilya-m
сообщение May 16 2012, 17:25
Сообщение #16


Частый гость
**

Группа: Свой
Сообщений: 165
Регистрация: 30-06-08
Из: С.-Петербург
Пользователь №: 38 642



Цитата(muravei @ May 16 2012, 21:04) *
А если охраняемый объект попробует похитить улитка , датчик сработает? sm.gif
Это я о том , какой должна быть частота среза.


Ну, на счет улитки я ничего сказать могу, а полезный сигнал при перекатывании легкового автомобиля человеком находится примерно в диапазоне от 0.1 до 0.8 Гц.
Go to the top of the page
 
+Quote Post
Ruslan-maniak
сообщение May 31 2013, 04:26
Сообщение #17


Частый гость
**

Группа: Участник
Сообщений: 92
Регистрация: 27-12-12
Из: Томск
Пользователь №: 74 999



Здравствуйте. У меня акселерометр LIS331DLH (даташит). Пытаюсь с ним работать, и ничего не выходит. На данный момент настроен он следующим образом: в первом ctrl-регистре записано 0x3F (нормальный режим питания, 1000 гц считывание), в остальных - нули (ни каких фильтров, масштаб +/- 2g). В результате чего по оси Z в полном покое акселерометра пополучается характеристика Z (см. картинку). Среднее значение получается 4917 единиц, а шум составляет около +/- 300 единиц (т.е. +/-6% от этого значения). По этой оси должно измеряться ускорение свободного падения. Но исходя из того что выходные данные 16-битные и масштаб +/-2g, то это значение получается хрен пойми что. Так как g при таких условиях должно получаться около 16000, а не как не 5000. И ладно бы, если бы было 5000, но ведь у нас шумы получаются около +/- 6% от g получаются. С таким мусором ни о какой адекватной оценке и речи быть не может. Ускорения планируется мерить не большие - гораздо меньше g. Есть сомнения - надо провести диагностику. В результате диагностики (4-й ctrl-регистр = 0х0А или 0х02) получилость следующее: электростатикой или добавлялось или отнималось в зависимости от содержимого регистра значение целого g. Графики Z+ и Z- (см. картинку). Шум оставался тот же по уровню. Хотя исходя из даташита значения должны смещаться на 300 единиц а не на 5000. Так вот у меня вопрос собсно, что я делаю неправильно? Почему лыжи не едут? Может кто сталкивался с такой ситуацией? акселерометр в горизонтальном положении.
Go to the top of the page
 
+Quote Post
MrAlex
сообщение May 31 2013, 05:34
Сообщение #18


Частый гость
**

Группа: Свой
Сообщений: 197
Регистрация: 15-10-10
Из: г. Москва
Пользователь №: 60 179



А если повращать его в пространстве по разным осям? +g -g ?
Go to the top of the page
 
+Quote Post
Ruslan-maniak
сообщение May 31 2013, 06:45
Сообщение #19


Частый гость
**

Группа: Участник
Сообщений: 92
Регистрация: 27-12-12
Из: Томск
Пользователь №: 74 999



Вращение отрабатывает по всем осям в пропорциях верно. То есть если перевернуть, то будет -5000, поставить другую ось вертикально - на ней будет 5000. И артангенсы высчитываются более менее верно. Проблема именно в абсолютных значениях и огромных шумах. Ведь по даташиту на частоте 1000 герц шум должен быть - пол процента от g. А у меня в 10 раз больше.


Сообщение отредактировал Ruslan-maniak - May 31 2013, 06:45
Go to the top of the page
 
+Quote Post
polyakovav
сообщение Jun 2 2013, 09:29
Сообщение #20


Частый гость
**

Группа: Свой
Сообщений: 197
Регистрация: 26-05-06
Из: Воронеж
Пользователь №: 17 486



Обратите внимание на таблицу 3 в даташите. На самом деле разрядов всего 12. Там же указана плотность собственных шумов (довольно высокая). Если нужно снизить шум, включите фильтры. Но на многое рассчитывать не стоит.
Мы используем подобные кристаллы (LIS3LV02DL) на дешевых платах навигации для коррекции наклонов магнитного компаса.
Go to the top of the page
 
+Quote Post
Ruslan-maniak
сообщение Jun 3 2013, 03:17
Сообщение #21


Частый гость
**

Группа: Участник
Сообщений: 92
Регистрация: 27-12-12
Из: Томск
Пользователь №: 74 999



Ок, спасибо. Вроде бы сходится. Тогда диагностика показывает как раз в районе 300 единиц. НО тогда возникает вопрос. При масштабе +/-2g и 12 битах у меня ускорение свободного падения получается в районе 320-330 единиц. И что делать с этим значением? Исходя из 12 бит значение ускорения свободного падения у нас должно быть в районе 1024, и исходя из таблицы 3 при этом масштабе у нас 1 mg/единица, то есть g должно быть равно 980. Опять не сходится.

попрака: g должно быть равно 1000 единиц
Go to the top of the page
 
+Quote Post
MrAlex
сообщение Jun 3 2013, 13:28
Сообщение #22


Частый гость
**

Группа: Свой
Сообщений: 197
Регистрация: 15-10-10
Из: г. Москва
Пользователь №: 60 179



Может, что-то не так с математикой переводящей в знаковый формат.
Go to the top of the page
 
+Quote Post
Ruslan-maniak
сообщение Jun 4 2013, 02:45
Сообщение #23


Частый гость
**

Группа: Участник
Сообщений: 92
Регистрация: 27-12-12
Из: Томск
Пользователь №: 74 999



Да нет, всё так, мне кажется. Ведь диагностические триста я получаю как надо и с плюсом и с минусом.
Go to the top of the page
 
+Quote Post
polyakovav
сообщение Jun 5 2013, 07:27
Сообщение #24


Частый гость
**

Группа: Свой
Сообщений: 197
Регистрация: 26-05-06
Из: Воронеж
Пользователь №: 17 486



Не вполне понятно, как получены графики Z- Z+ на рисунке.
Go to the top of the page
 
+Quote Post
Ruslan-maniak
сообщение Jun 6 2013, 05:18
Сообщение #25


Частый гость
**

Группа: Участник
Сообщений: 92
Регистрация: 27-12-12
Из: Томск
Пользователь №: 74 999



они получены следующим образом. акселерометр лежит в покое в горизонтальной плоскости, т.е. ось Z направлена вертикально вверх. Я считываю 50 значений с периодом 1 мс. Акселерометр также работает с этой частотой. В результате этого получается зелёный график. После вашей подсказки значения сдвинулись на 4 бита вправо (поделились на 16) и стали в районе 300. Затем я влючил режим диагностики со знаком плюс и также снял 50 значений с той же частотой. В результате получился график красного цвета. Если также принять данные за 12 бит то получается в районе 600. Т.е. диагностика прибавила 300 к нашему значению, Что соответствует тому что написано в даташите. Затем я провёл диагностику со знаком минус - результат оказался приближен к нулю. Это синий график. При 12 битах результат так же в районе 0. Т.о. диагностика показывает что всё исправно. Однако, само знаение гравитации равное 300 меня смущает, ибо оно должно быть и по даташиту(указана цена деления одной единицы выходных данных = 1mg) и просто поделя 4g на 12 бит, получаем g = примерно 1000. НО у нас почему то 300, а не тысяча. Вот в чём сейчас загвоздка. Не может ли это негативно сказаться на шумах. То есть не может ли быть так что ускорение равное g у нас полычается равно всего лишь 300, а шумы соответствуют 1000. Как-то так. Надеюсь понятно объяснился.

Сообщение отредактировал Ruslan-maniak - Jun 6 2013, 05:19
Go to the top of the page
 
+Quote Post
MrAlex
сообщение Jun 10 2013, 08:19
Сообщение #26


Частый гость
**

Группа: Свой
Сообщений: 197
Регистрация: 15-10-10
Из: г. Москва
Пользователь №: 60 179



Так g не меряется.
Надо сделать два измерения, g+ и g-, сложить и разделить на два. Получите масштаб.
Go to the top of the page
 
+Quote Post
Ruslan-maniak
сообщение Jun 26 2013, 10:43
Сообщение #27


Частый гость
**

Группа: Участник
Сообщений: 92
Регистрация: 27-12-12
Из: Томск
Пользователь №: 74 999



Чаво? Вы в этом уверены? Я в этом искренне сомневаюсь. Я понимаю что это вполне себе решение. Но в конкретном случае я считаю что это решение, скажем так, не по даташиту.


Сообщение отредактировал Ruslan-maniak - Jun 26 2013, 10:48
Go to the top of the page
 
+Quote Post
iDiode
сообщение Jul 2 2013, 10:05
Сообщение #28


Участник
*

Группа: Участник
Сообщений: 50
Регистрация: 9-07-10
Пользователь №: 58 360



Цитата(MrAlex @ Jun 10 2013, 12:19) *
... сложить и разделить на два. Получите масштаб.

Вычесть. А если сложить, то будет "смещение нуля" - очень полезная вещь, кстати.



Сообщение отредактировал iDiode - Jul 2 2013, 10:07
Go to the top of the page
 
+Quote Post
MrAlex
сообщение Jul 2 2013, 10:55
Сообщение #29


Частый гость
**

Группа: Свой
Сообщений: 197
Регистрация: 15-10-10
Из: г. Москва
Пользователь №: 60 179



Цитата
Вычесть. А если сложить, то будет "смещение нуля" - очень полезная вещь, кстати.

Верно подмечено.
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 00:55
Рейтинг@Mail.ru


Страница сгенерированна за 0.01683 секунд с 7
ELECTRONIX ©2004-2016