3 акселерометра mma7660 на i2c

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013

сам фильтр написал?

nikitka
Offline
Зарегистрирован: 14.10.2014

нет, фильтр брал готовый вот этот вот! https://github.com/TKJElectronics/KalmanFilter

SergeiNSK
Offline
Зарегистрирован: 11.03.2015

=) Да , нет, погугл, не так , так , что я сам должен писать, сам , не сам.  =) Крутые советы! =) Самое главное полезные=)

SergeiNSK
Offline
Зарегистрирован: 11.03.2015

https://yadi.sk/d/MWeNq6xMfgNhb

Идеально работает в паре с твоим фильтром. 

 И на мониторе выход - 0 , -1, до - 20 , а в другую сторону наклоняеш то в + идет если горизонтально стоит то 0 и не прыгает ничего. Все  х у z  все в идеале.

nikitka
Offline
Зарегистрирован: 14.10.2014

вот в том и дело, раньше были эти акселерометры, все сделал, настроил (все скетчи выше), но результат оказался непригодным ( плавающие значения, которые даже фильтровать не было смысла ) например такие: http://arduino.ru/forum/apparatnye-voprosy/3-akselerometra-mma7660-na-i2...

а ты использовал с фильтрацией? 

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

SergeiNSK
Offline
Зарегистрирован: 11.03.2015

В том и чудо что отлично работает. 

Когда в покое стоят цифры как у тебя не бегают.

Код с фильтром не менял просто вставит в каталог к ардуине и все.

SergeiNSK
Offline
Зарегистрирован: 11.03.2015
 
x = 0
y = 0
z = 21
accleration of X/Y/Z: 
0.00 g
0.00 g
1.00 g
*************
x = 0
y = -1
z = 21
accleration of X/Y/Z: 
0.00 g
-0.05 g
1.00 g
*************
x = 1
y = 1
z = 21
accleration of X/Y/Z: 
0.05 g
0.05 g
1.00 g
*************
x = 0
y = -1
z = 20
accleration of X/Y/Z: 
0.00 g
-0.05 g
0.95 g
*************
x = 0
y = 0
z = 21
accleration of X/Y/Z: 
0.00 g
0.00 g
1.00 g
*************
x = 0
y = -1
z = 21
accleration of X/Y/Z: 
0.00 g
-0.05 g
1.00 g
*************
вот на мониторе
SergeiNSK
Offline
Зарегистрирован: 11.03.2015
 
x = 22
y = 0
z = 4
accleration of X/Y/Z: 
1.05 g
0.00 g
0.19 g
*************
x = 21
y = 0
z = 5
accleration of X/Y/Z: 
1.00 g
0.00 g
0.24 g
*************
x = 22
y = 1
z = 5
accleration of X/Y/Z: 
1.05 g
0.05 g
0.24 g
*************
x = 22
y = 0
z = 5
accleration of X/Y/Z: 
1.05 g
0.00 g
0.24 g
*************
x = 21
y = 0
z = 4
accleration of X/Y/Z: 
1.00 g
0.00 g
0.19 g
**********
SergeiNSK
Offline
Зарегистрирован: 11.03.2015

Для меня нужны + или - для управлением мотором. Пока еще только отдельно запустил , теперь буду соединять вместе.

SergeiNSK
Offline
Зарегистрирован: 11.03.2015

Завтра другой вкл там посмотрим какой лучше и стабильнее. ITG3200_gyro

nikitka
Offline
Зарегистрирован: 14.10.2014

ты добавил в папку со скетчем файл kalman.h и потом в само скетче подключил его. а как ты к нему обращался? 

SergeiNSK
Offline
Зарегистрирован: 11.03.2015

Когда запускаеш проверку он писал что нету файла кальман и где он должен быть, тоесть путь каталога. Я его туда и скопировал. 

Запустил проверку и все ок, потом загрузил в ардуинку и на монитор. И все ...

SergeiNSK
Offline
Зарегистрирован: 11.03.2015

Потом шевелил гироскоп и все ... проблема тольо в том что толи виснет то нет , сам монитор. То есть сигнал с ардуинки то нету.

SergeiNSK
Offline
Зарегистрирован: 11.03.2015

SergeiNSK
Offline
Зарегистрирован: 11.03.2015

Вот так все выглядит.

nikitka
Offline
Зарегистрирован: 14.10.2014

а ты можешь код показать я не понимаю. как фильтр кроме того что в одном каталоге лежит связан с акселерометром? 

SergeiNSK
Offline
Зарегистрирован: 11.03.2015

https://yadi.sk/d/USwZm6FifiJZR

Распакуй и вставть полностью в каталог libraries, запусти прогу и там в образцах будет этот код. 

SergeiNSK
Offline
Зарегистрирован: 11.03.2015

 никит вот нашел код для МПУ6050 с кальманом https://yadi.sk/d/GCaOkXSxfp9rZ пробуй на его основе может что нибудуь и получится.

nikitka
Offline
Зарегистрирован: 14.10.2014

а у меня больше нет тех акселерометров не получится проверить ( 

я может не понимаю как он работает, но там же речь исключительно про углы идет ( 

вывод отфильтрованных линейных ускорений отсутствует. 

а вот исправленный код для ведущей ардуино 

http://pastebin.com/xTyCXJ9Z 

и для ведомой 

http://pastebin.com/XeS5EJ8L

это можно сказать дополненный код http://arduino.ru/forum/apparatnye-voprosy/3-akselerometra-mma7660-na-i2c?page=3#comment-109429

синхронность работы ардуин до 5 знака достигнута, можно сказать погрешность 7 мкс =) 

но нет фильтрации никакой ( 

вот результаты(задача все таже что и раньше):