roboforum.ru

Технический форум по робототехнике.

Датчик: положение плиты относительно горизонта

Re: Датчик: положение плиты относительно горизонта

Nesenin » 06 июл 2013, 05:19

зачем вам вообще компас?! вам надо знать угол к горизонту? для этого используется акселерометр. и по нему же корректируются данные для компаса, что бы он хоть что то адекватное выдавал при наклонах в каком-нибудь полетном контролере.
калибровка выглядит так

при этом показания гуляют в состоянии покоя куда сильней акселерометра. + данные плавают от малейших изменений. например подошел человек с ремнем с металлической пряжкой - данные уплыли. хоть что то железосодержащее рядом - данные уплыли.

Re: Датчик: положение плиты относительно горизонта

dccharacter » 06 июл 2013, 06:13

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

Re: Датчик: положение плиты относительно горизонта

vvk » 08 июл 2013, 02:22

forum4/topic11675.html

или тут более подробно:

http://robowell.ru/moduli/modul-izmeren ... teristiki/

А компас к этой задаче отношения, по моему, не имеет.

Данные только с акселерометра сильно зашумлены. Имеет смысл ими пользоваться только в статике и с хорошим ФНЧ

Re: Датчик: положение плиты относительно горизонта

aalleexxaa » 08 июл 2013, 02:55

у голых данных хотя бы должна быть закономерность, к примеру если направить одну из ось X на север, то в младшем байте Y будет 0; если на запад или восток, то у X младшего байта будет что-то ближе к 256. И, как я понимаю, второй байт для 5 Gain 390LSB/Gauss) долэен быть или 0 или 255, и менять значения на границе перехода частей света(север-юг, запад-восток), а у меня в одной стороне держится градусов на 150. Попробовал сделать Self test, данные привожу
Mode 01: x[0]=1; x[1]=211; y[0]=1; y[1]=182; z[0]=1; z[1]=165.
Mode 10: x[0]=254; x[1]=50; y[0]=254; y[1]=68; z[0]=254; z[1]=92.
По расчетам для 5Gain значения должны лежать в пределах L=243*390/390=243, H=575*390/390=575. Как все-таки рассчитывается полное значение X?. и для чего Self test? Чтобы просто сравнить, находятся ли значения в этом рассчитаном диапазоне? Если нет, то как корректировать?
Далее вопрос задам по расчету полного значения X и двух байт для 5Gain. Как я понял, используется всегда 12 бит, причем 12-й - это знак +-. А остальной полубайт x[0] забивается тем же значением что и 12-бит? Имеем, к примеру x[0]=0, x[1]=160, получаем X=160. А если x[0]=255(11111111) x[1]=160, получаем X=1952, я думал, что следующее за 255 значения должен получать в диапазоне 256-511, а тут сразу скачек. в чем у меня проблема? почему я так все спрашиваю, потому что у меня не Ardunio, и нет готовых библиотек под PIC, а математика какая-то мутная в библиотеках Ardunio, я в ней разобраться не смог.
Сейчас задача: разоброаться как работает и выдает информацию кампас, а выбор конечного прибора будет позднее.

Re: Датчик: положение плиты относительно горизонта

elmot » 08 июл 2013, 10:02

Если вдуматься, то это 14, -192, -25

Re: Датчик: положение плиты относительно горизонта

aalleexxaa » 09 июл 2013, 01:39

elmot писал(а):Если вдуматься, то это 14, -192, -25

Если это относится к этому посту, тогда как в Ardunio проектах получают цифру около 400 ?

Re: Датчик: положение плиты относительно горизонта

elmot » 09 июл 2013, 01:53

aalleexxaa писал(а): к примеру если направить одну из ось X на север, то в младшем байте Y будет 0; если на запад или восток, то у X младшего байта будет что-то ближе к 256.

Ага, щаззз. Компас(который на самом деле магнитометр) даст абсолютные значения разложенного магнитного поля в попугаях, а не направление на север. Ловить внутри помещений вообще нечего - там дофига магнитных материалов и полей, компас будет безбожно врать(о чем уже говорилось выше). Если уйти в чисто поле, то получим все равно не направление на север, а направление магнитных линий, пересчитанных на попугаи для данного конкретного места. например, угол к вертикали зависит от геогр. широты, ближайших ЛЭП и железных рудников и т.д. Так что хватит лохматить бабушку, для заявленной задачи компас бесполезен.

Re: Датчик: положение плиты относительно горизонта

aalleexxaa » 09 июл 2013, 02:12

настолько может врать, что плюсовое значение для оси X находится в секторе не 180 градусов, а 210, а отрицательное в оставшихся 150 градусов (навскидку). А в каком-то диапазоне (сектор в 40 градусов) значение практически не меняется (+-3 бита - ошибка измерения, вместо нескольких десятков).
Я сейчас спрашиваю не конкретно, подойдет ли компас к данной задаче, а, для начала, уж если он у меня есть, как расшифровать данные, принимаемые с компаса без использования общественного Ardunio.

Re: Датчик: положение плиты относительно горизонта

Angel71 » 09 июл 2013, 02:39

без использования ардуины логично скопипастить немного кода и при необходимости слегка адаптировать. или это не очевидно?

Re: Датчик: положение плиты относительно горизонта

aalleexxaa » 22 июл 2013, 00:35

закрываю


Rambler\'s Top100 Mail.ru counter