Реклама на сайте DatasheetsDatasheets

KAZUS.RUN - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Книги и журналы
FAQ по электронике

  Datasheets
Поиск SMD
Онлайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Схемы и проекты
Принципиальные схемы
  Программы
Каталог сайтов
Калькуляторы
  Форумы по электронике
Помощь проекту

Автоматика и аппаратура связи Дистанционное и непосредственное управление исполнительными механизмами, сотовая, а также радиосвязь.

 
Опции темы

Как с помощью акселерометра замерять углы тангажа и крена?

Непрочитано 03.03.2015, 18:59  
WindoЗavr
Заблокирован
 
Регистрация: 26.12.2013
Сообщений: 379
Сказал спасибо: 66
Сказали Спасибо 61 раз(а) в 23 сообщении(ях)
WindoЗavr на пути к лучшему
По умолчанию Как с помощью акселерометра замерять углы тангажа и крена?

хотелось бы в общих чертах узнать
Реклама:
WindoЗavr вне форума  
Непрочитано 03.03.2015, 19:53  
Yurkin2014
Заблокирован
 
Регистрация: 21.01.2014
Сообщений: 589
Сказал спасибо: 7
Сказали Спасибо 267 раз(а) в 206 сообщении(ях)
Yurkin2014 на пути к лучшему
По умолчанию Re: Как с помощью акселерометра замерять углы тангажа и крена?

Если ось Х смотрит вперёд, а ось Y вбок, и показания, например, X=2400, Z=12000, то тангаж равен arctg(X/Z)= 11.3 градуса.
Для крена вместо X используем Y.

Последний раз редактировалось Yurkin2014; 03.03.2015 в 19:57.
Yurkin2014 вне форума  
Сказали "Спасибо" Yurkin2014
WindoЗavr (03.03.2015)
Непрочитано 03.03.2015, 20:20  
WindoЗavr
Заблокирован
 
Регистрация: 26.12.2013
Сообщений: 379
Сказал спасибо: 66
Сказали Спасибо 61 раз(а) в 23 сообщении(ях)
WindoЗavr на пути к лучшему
По умолчанию Re: Как с помощью акселерометра замерять углы тангажа и крена?

в таком виде угол измеряется, но от 0* до 45* нет промежуточных значений почему то

PHP код:
   a1 = (atan(x/z)*180/3.14);
   a2 = (atan(y/z)*180/3.14);
  
lcd_clear();
lcd_gotoxy(0,0);
sprintf(lcd_buffer1," %i ", x);// "%i" вывести "a" в десятичном выражении
lcd_puts(lcd_buffer1);

lcd_gotoxy(5,0);
sprintf(lcd_buffer1," %i ", y);// "%i" вывести "a" в десятичном выражении
lcd_puts(lcd_buffer1);

lcd_gotoxy(0,1);
sprintf(lcd_buffer1," %i ", a1);// "%i" вывести "a" в десятичном выражении
lcd_puts(lcd_buffer1); 
WindoЗavr вне форума  
Непрочитано 03.03.2015, 20:55  
Boba_spb
Почётный гражданин KAZUS.RUN
 
Регистрация: 08.06.2008
Сообщений: 1,393
Сказал спасибо: 4
Сказали Спасибо 183 раз(а) в 167 сообщении(ях)
Boba_spb на пути к лучшему
По умолчанию Re: Как с помощью акселерометра замерять углы тангажа и крена?

Сообщение от Yurkin2014 Посмотреть сообщение
Если ось Х смотрит вперёд, а ось Y вбок, и показания, например, X=2400, Z=12000, то тангаж равен arctg(X/Z)= 11.3 градуса.
Для крена вместо X используем Y.
Как все просто - 3х осный акселерометр и управляй самолетом - тангаж крен и рысканье сразу определишь. И зачем нужны гироскопы ?
Boba_spb вне форума  
Непрочитано 03.03.2015, 21:14  
Easyrider83
Гуру портала
 
Аватар для Easyrider83
 
Регистрация: 27.10.2008
Адрес: ЕС
Сообщений: 10,821
Сказал спасибо: 919
Сказали Спасибо 4,289 раз(а) в 2,570 сообщении(ях)
Easyrider83 на пути к лучшему
По умолчанию Re: Как с помощью акселерометра замерять углы тангажа и крена?

в его акселлерометре есть гироскоп. Он еще одну тему создал т.к. той мало было. Теперь ему нужно рассказать, что такое типы переменных и как их использовать.
Easyrider83 вне форума  
Непрочитано 03.03.2015, 21:19  
WindoЗavr
Заблокирован
 
Регистрация: 26.12.2013
Сообщений: 379
Сказал спасибо: 66
Сказали Спасибо 61 раз(а) в 23 сообщении(ях)
WindoЗavr на пути к лучшему
По умолчанию Re: Как с помощью акселерометра замерять углы тангажа и крена?

Сообщение от Easyrider83 Посмотреть сообщение
в его акселлерометре есть гироскоп. Он еще одну тему создал т.к. той мало было. Теперь ему нужно рассказать, что такое типы переменных и как их использовать.
PHP код:
   a1 = (atan(x/y)*180/3.14);
   a2 = (atan(x/z)*180/3.14);   
   a3 = (atan(y/z)*180/3.14); 
  
lcd_clear();
lcd_gotoxy(0,0);
sprintf(lcd_buffer1," %i ", a1);
lcd_puts(lcd_buffer1);

lcd_gotoxy(5,0);
sprintf(lcd_buffer1," %i ", a2);
lcd_puts(lcd_buffer1);

lcd_gotoxy(0,1);
sprintf(lcd_buffer1," %i ", a3);
lcd_puts(lcd_buffer1); 
вот так сделал, данные меняются при изменении положения но как то хаотично

всмысле - типы переменных? я же их вроде правильно считываю
WindoЗavr вне форума  
Непрочитано 03.03.2015, 21:27  
Easyrider83
Гуру портала
 
Аватар для Easyrider83
 
Регистрация: 27.10.2008
Адрес: ЕС
Сообщений: 10,821
Сказал спасибо: 919
Сказали Спасибо 4,289 раз(а) в 2,570 сообщении(ях)
Easyrider83 на пути к лучшему
По умолчанию Re: Как с помощью акселерометра замерять углы тангажа и крена?

x и y имеют тип int16? Тогда деление x на y - это целое число. Дальше сами догадаетесь?
Easyrider83 вне форума  
Непрочитано 03.03.2015, 21:46  
WindoЗavr
Заблокирован
 
Регистрация: 26.12.2013
Сообщений: 379
Сказал спасибо: 66
Сказали Спасибо 61 раз(а) в 23 сообщении(ях)
WindoЗavr на пути к лучшему
По умолчанию Re: Как с помощью акселерометра замерять углы тангажа и крена?

Integer это целое число, а поле деления получается дробное, и после запятой всё теряется?
WindoЗavr вне форума  
Непрочитано 03.03.2015, 22:15  
Easyrider83
Гуру портала
 
Аватар для Easyrider83
 
Регистрация: 27.10.2008
Адрес: ЕС
Сообщений: 10,821
Сказал спасибо: 919
Сказали Спасибо 4,289 раз(а) в 2,570 сообщении(ях)
Easyrider83 на пути к лучшему
По умолчанию Re: Как с помощью акселерометра замерять углы тангажа и крена?

при деление int16 на int16 будет int16, если не указан другой тип. Компилятор умный, но не на столько.
Easyrider83 вне форума  
Сказали "Спасибо" Easyrider83
WindoЗavr (03.03.2015)
Непрочитано 03.03.2015, 22:18  
WindoЗavr
Заблокирован
 
Регистрация: 26.12.2013
Сообщений: 379
Сказал спасибо: 66
Сказали Спасибо 61 раз(а) в 23 сообщении(ях)
WindoЗavr на пути к лучшему
По умолчанию Re: Как с помощью акселерометра замерять углы тангажа и крена?

Сообщение от Easyrider83 Посмотреть сообщение
при деление int16 на int16 будет int16, если не указан другой тип. Компилятор умный, но не на столько.
ну получился у него int16, пусть его и показывает
что ему не нравится?
WindoЗavr вне форума  
 
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
PIC16F676 как прошивать с помощью WILLEM ribak01 Микроконтроллеры, АЦП, память и т.д 1 16.08.2007 00:53
[Решено] Сборник перлов любителей кабельщины mikesmith Отвлекитесь, эмбеддеры! 135 14.08.2007 15:49
Как с помощью АЦП микроконтроллера можно замерять ток в авто DAS_WEYDER Микроконтроллеры, АЦП, память и т.д 18 17.04.2007 16:09
[Решено] Всем эмбеддерам посвящается... Decan Отвлекитесь, эмбеддеры! 0 24.10.2005 14:43


Часовой пояс GMT +4, время: 15:37.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.