Перейти к содержанию
    

Проблемы в работе с ADIS16375

Доброго времени суток!

Работаю с микросхемой ADIS16375 в связке с микроконтроллером, опрос и передача данных на компьютер через интерфейс USB. Микросхему ADIS16375 опрашиваю, при приеме сигнала DATA_READY с вывода DIO2, а именно считываю изменения угла по

оси Х (команда X_DELTA_ANG_H). Опрос ведется непрерывно и начинается с нуля, после поворота на угол 90 градусов, по результату суммирования получается только 70 градусов, если повернуть на 180 градусов результат поворота показывает 140 градусов.

Также при повороте обратно, в первоначальное положение, значения не возвращается к нулю, а показывает -5, -10 градусов.В чем может быть причина не правильного показания угла поворота? Пробовал применять различные внутрение фильтры (A,B,C,D), изменял параметры усредняющего фильтра (DEC_RATE, пробовал 10, 100, 1000 отсчетов в секунду), проводил калибровку, сброс к заводским настройкам, но не это дало никакого результата. Заранее благодарю за помощь.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Доброго времени суток!

Работаю с микросхемой ADIS16375 в связке с микроконтроллером, опрос и передача данных на компьютер через интерфейс USB. Микросхему ADIS16375 опрашиваю, при приеме сигнала DATA_READY с вывода DIO2, а именно считываю изменения угла по

оси Х (команда X_DELTA_ANG_H). Опрос ведется непрерывно и начинается с нуля, после поворота на угол 90 градусов, по результату суммирования получается только 70 градусов, если повернуть на 180 градусов результат поворота показывает 140 градусов.

Также при повороте обратно, в первоначальное положение, значения не возвращается к нулю, а показывает -5, -10 градусов.В чем может быть причина не правильного показания угла поворота? Пробовал применять различные внутрение фильтры (A,B,C,D), изменял параметры усредняющего фильтра (DEC_RATE, пробовал 10, 100, 1000 отсчетов в секунду), проводил калибровку, сброс к заводским настройкам, но не это дало никакого результата. Заранее благодарю за помощь.

А вы в одной плоскости крутите или сразу в нескольких? (имеется ввиду относительно плоскости датчиков). Насколько я понял из DS, никаких вычислений он не делает, а тупо выдает сигналы с акселерометров и датчиков угловой скорости. Т.е. вы получаете проекции скоростей и ускорений, а из них надо собрать истинный вектор вращения. Это та еще задача. Можете проверить - вращать только в одной плоскости - показания должны почти совпадать при повороте туда и обратно в зависимости от "идеальности" совпадения плоскости вращения и плоскости датчика.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Поворот выполняю в одной плоскости. Микросхема кроме значений акселерометров и угловой скорости выдает еще изменение угла поворота за период измерений, эти изменения угла я неприрывно суммирую по получении сигнала готовности от ADIS16375.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Поворот выполняю в одной плоскости. Микросхема кроме значений акселерометров и угловой скорости выдает еще изменение угла поворота за период измерений, эти изменения угла я неприрывно суммирую по получении сигнала готовности от ADIS16375.

Работал с adis16300 там правда только 1-осевой гироскоп, и выдает только значения угловой скорости. Я их непрерывно считывал, интегрировал, даже при очень резких поворотах В ОДНОЙ плоскости, перпендикулярной оси датчика, показания возвращались на место. С точностью порядка 0,1..0,5 градуса. Со временем конечно ноль плывет, но если небольшой промежуток брать (десятки секунд) - не существенно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

alexPec, перед опросом микросхемы вы меняли какие-нибудь параметры работы, делали калибровку?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

alexPec, перед опросом микросхемы вы меняли какие-нибудь параметры работы, делали калибровку?

 

Посмотрел софт - никакие регистры не менял. Просто читал регистры результатов оцифровки. Сначала просто в руках вращал - не возвращается в ноль. Положил на стол, повращал прижав к столу - все ок.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

На гироскопы сильно влияет линейное ускорение. Если крутить в руках или на вибрирующей поверхности - ошибки неизбежны.

 

Ну, то-есть можно скомпенсировать при расчетах, но математика сложная.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...