Идея - 2 дополняющих друг друга мозга на коптере!
На атмеге328 чтение MPU6050 (200 Hz), MS5611 (100 Hz), HMC5883(10 Hz) и расчет DCM матрицы с частотой 200 Гц
MARG с кватернионом тоже 200Гц с ДУС+аскелерометр+магнетометр.
Сделал децимацию компаса и акселерометра, цикл стал 360Гц на Атмега 16МГц, но появилось дрожание.
Сейчас работает код для DMP 6DOF MPU6050 в multiiwii оболочке, там цикл еще выше. Но компас никак не прикрутить байпасом (он припаян так на FreeIMU4 и CSG_аналоге). Регистры конфигурируются или для DMP, или для байпаса компаса. Иначе глючит. Если бы удалось считать и компас, и кватернион из DMP, то можно ввести коррекцию YAW. Возможно, руки кривые. Жду 9DOF DMP, пусть хоть реверс_инженерный.
Идея отдельного модуля в целом здравая, вроде все Фишки и прочие автопилоты именно так и работают.
Правда, видится две проблемы:
- Цена вопроса. Как минимум, надо на плате иметь хороший проц, GPS, компас и баро (если универсальный блок делать, а не только под Назу). По сути получается второй мозг, сопоставимый по цене и по сложности с основным.
- Программная часть. Создатели Фишки за пару лет не смогли в ней все баги вычистить, периодически у народа самолеты валятся, Xaircraft вон только через 1.5 года сделал более-менее работающий GPS c компасом. Сделать аналогичное в свободное время, чтобы было универсально и надежно - имхо утопия. Сделать под конкретный мозг типа Назы, наверное попроще.
В итоге на правах имхо, если нужна навигация, гораздо проще тот же GPS в Wii допилить, почти все там готово уже, объем работ да и цена вопроса в разы меньше.
Еще альтернативный вариант - попросить разработчиков автопилотов (Smalltim, может еще кто) сделать вариант прошивки для коптеров. Если по цене такой продукт окажется не сильно высоким, может даже найдет коммерческий спрос.
А как вам тайой вариант цепочки: iPhone (мозг, датчики акселлерометров и углов, GPS, wi-fi bridge) - redpark TTL cable - arduino (преобразовать TTL команды iPhone в SBus пакеты) - (naza) SBus вход. Вроде должно все работать. Можно, наверное, на ардуино подать и вход с приемника, чтобы оставить возможным и ручной режим.
Что думаете, реально?
А как вам тайой вариант цепочки: iPhone
На могиле коптера будет надпись “Мама позвонила не вовремя…”
На могиле коптера будет надпись “Мама позвонила не вовремя…”
Кто мешает отключить телефонный модуль совсем или установить переадресацию? Мозги iPhone, его датчики и интерфейсы, а также среда разработки для него и библиотеки позволяют делать то, что вы и близко не сделаете на других платформах.
Я всегда подозревал что мы летаем на ущербных платформах, нам явно не хватало яйфона на коптерах, чтобы можно было фотки с коптера сразу в ФБ постить) Константин, возьметесь за разработку?
Мозги iPhone, его датчики и интерфейсы, а также среда разработки для него и библиотеки позволяют делать то, что вы и близко не сделаете на других платформах.
Ну как минимум:
- скорость чтения датчиков в iOS невелика, если не ошибаюсь, не более 100Гц, обычно и то используют 10
- с интерфейсами у айфона как раз все плохо, даже чтобы достучаться до serial port нужен Jailbreak и шаманства с правами доступа, Bluetooth тоже залочен, прямой доступ к USB Вы также вряд ли получите
- использовать айфон ценой в 700$ в качестве замены платы датчиков за 50$, не очень оптимальное решение.
- даже чтобы заливать и отлаживать программу на айфоне, нужна лицензия на разработку, стоимостью 100$ в год
В общем, летать оно если и будет, то очень плохо, но если есть твердое желание реализовать, то конечно никто отговаривать не будет 😃
А проще взять плату типа такой, со всем набором датчиков, под нее есть и открытый исходный код, и среда разработки и пр.
Ну я же не предлагаю управлять с айфона непосредственно моторами. На мой взгляд вполне можно айфону на основе своих датчиков (которые вполне даже неплохи) принимать общие полетные решения (аля автопилот), которые будут через ардуино передаваться в назу. Облет по маршруту, завис/фото в гео точке и пр. Стоимость айфона от 200$. Кабель для TTL = 60$ и работает без джейла официально. USB, bluetooth уже тогда и не нужны. Лицензия нужна только для разработчика. Зато сколько плюсов, бридж, маяк, фото, стриминг, маршруты и т.д.
В общем, закажу такой кабель и попробую как-то для начала научить айфон через ардуино понимать, что выдает приемник по PWM и уметь пихать свои команды в SBUS для назы. С программированием под iOS проблем нет, а вот про ардуино надо почитать…
Кабель для TTL = 60$ и работает без джейла официально. USB, bluetooth уже тогда и не нужны.
Уже не работает.
Начиная с iOS5, при попытке открытия “/dev/tty.iap” выдается Operation not permitted.
Найдете способ как обойти без джейла, было б интересно.
Найдете способ как обойти без джейла, было б интересно.
Кабель для TTL = 60$
у него золотые контакты с платиновым напылением?
Не для ювелиров, но тем кто хочет связать небрейкнутое устройство iOS с версией >=5.x (iPad, iPhone, iPod) c любым TTL serial могу продать один кабель из двух имеющихся у меня. Второй себе оставлю. Могу продемонстрировать в работе связку ардуино + iPad. Кому интересно - пишите в личку.
Для фанатов атмеги:
Самая большая вкусность - iNEMO Engine Sensor Fusion Suite (у них уже и калман реализован)
Камера: Samsung LSI S5C73M3 CMOS 8Mp с обратной подсветкой(возможно сенсор Samsung LSI S5K3H7 (8Mp, 1/3.2", BSI, Zero shutter lag))
Акселерометр: STMicroelectronics - LSM330DLC 3-axis Accelerometer
Датчик магнитного поля: Asahi Kasei Microdevices - AK8975C 3-axis Magnetic field sensor
Датчик ориентации в пространстве: STMicroelectronics - iNemoEngine
Гироскоп: STMicroelectronics - LSM330DLC Gyroscope sensor
Датчик давления: STMicroelectronics - LPS331AP Pressure Sensor
Вообще гугл очень активно двигает ориентирование для андроид. И поверьте, те усилия, которые они в это вкладывают не потянет ни одиночка, ни маленькая контора производитель полетных мозгов.
ps. На текущий момент у меня такая связка летает Andoid<-USB->Mega1280<-PPMsum,Serial->Mwii (atmega328).
pps. По цене. Просуммируйте стоимость gps маяка, пары камер (которыми можно управлять нормально без извращений), писалки логов на SD… думаю получится не сильно дешевле смартфона.
Я всегда подозревал что мы летаем на ущербных платформах, нам явно не хватало яйфона на коптерах, чтобы можно было фотки с коптера сразу в ФБ постить) Константин, возьметесь за разработку?
Ну как вам сказать - я могу делать фотки меняя, скажем, настройки камеры в зависимости от высоты… Она же фотает, она же пишет кусками видео (все равно в монтаж 5 минут висения - нафиг не нужны). Еще оно хоть умеет отвечать на смс “where are you” последними известными ей gps-координатами (в телефоне, кста, комбинированный gps/глонасс).
Это все вообще побочная функциональность -) Готовая, летает (поверх mwii)
Можете показать такое же?
Смартфоны сейчас - это большая индустрия. Они тоже упираются в вес. Набор сенсоров - сейчас уже местами превосходит тот, что продают с полетными мозгами.
При этом аппарат можно купить в ближайшей палатке, а можно и найти бу вообще задарма или задешево. Чем плохо - не кошерно?
ps. специально для вас за разумные деньги могу присобачить автоматический пост фоток куда там надо…
На текущий момент у меня такая связка летает
Покажешь?
а можно и найти бу вообще задарма
Точно, отжать можно.
А если серьёзно, покажи видео или фотки сетапа.
Две головы на одном туловеще как то на страшилку радиоактивно-мутанскую смахивает и две башки на одном теле всегда будут ругаться и спорить и особенно в вопросе “кому все же тело то принадлежит? А?” Если конечно между ними обязанности не распределить строго настрогою Но и одна башка все может сама сделать достойно
Вообще гугл очень активно двигает ориентирование для андроид. И поверьте, те усилия, которые они в это вкладывают не потянет ни одиночка, ни маленькая контора производитель полетных мозгов.
ps. На текущий момент у меня такая связка летает Andoid<-USB->Mega1280<-PPMsum,Serial->Mwii (atmega328).
Вы посылаете с Андроида сразу команды на моторы, и датчики используются от телефона?
Какова скорость обмена получается? Что будет если на телефоне звонок позвонит или напоминалка какая-нибудь сработает, насколько эта система realtime?
Камерой управляете из отдельного потока в приложении? На скорость посылки данных фоновое сохранение фото не влияет?
Интересно было бы видеть фото “монстра” 😃
Если конечно между ними обязанности не распределить строго настрогою
Это только так и надо делать, функционал мозгов должен быть чётко разделён, иначе “лебедь раком щуку”.
Но и одна башка все может сама сделать достойно
Если просто полетать по датчикам, то да. А вот, например, в ветке про лимон надо ещё видео обрабатывать. Теоретически можно всё одним мозгом обработать, но что то не хочеся находится рядом с летающей Виндой (андроидом, огрызком и пр). Для сильно разных задач, выполняемых одним мозгом, нужен надёжный диспетчер. В этой области много копьев переломано… Надёжней (проще, дещевле, энергоэфективней) разделить задачи между железяками.
Еще чуток фоток
Предмет особой “гордости” - универсальное крепление для телефонов и гопро.
Нет, конечно никто андроиду моторами рулить не даст - мне жалко себя и окружающих. На реалтайм он никак не тянет (imho).
Камера - да, в отдельном потоке. Запись видео сильно загружает (видимо, компрессор видео), отображение - не очень.
По функционалу они так планируют делиться:
android - общая координация, задание маршрута
mega - базовые “рефлексы” короткого времени
mwii - стабилизация
Обработка и агрегирование данных от сенсоров будут разбросаны ровным слоем, похоже… Не получается все в одно место сгрести из-за невысокой скорости линков, а использовать хочется все имеющиеся сенсоры, включая дублирующиеся (например, акселерометры на mwii и в андрофоне).
“что будет если телефон позвонит” - что напишу, то и будет. можно снять трубку и сказать железным голосом “все улетели, перезвоните позже” - синтез все равно уже используется (болтает на префлай чеке). Шутка. Это отдельная симка.
ps. одна большая контора уже принимает предзаказы на фотоаппараты с андроидом внутри.
Всем добрый день.
Я может не совсем в тему, она куда то к айфонам скатилась, но не знаю где еще идею высказать.
Суть в следующем: два мозга может быть и не надо, а вот 3-4 акселя(в зависимости от того квадрик или трикоптер) мне кажется не помешало бы.
Сейчас все доступные мозги предполагают что центр приложения внешних сил находится в центре собственно чипа датчика(ну если он 6 или 9 осевой), таким образом при перекосе, возникшее внешнее усилие делится на 2(имеется ввиду в одной плоскости) и после этого мозг уже пытается выправить ситуацию. А это в корне не верно, ибо вероятность того, что ось перекоса находится именно в центре платы(чипа) изчезающе мала.
Если бы на каждом луче стоял свой собственный аксель то мы могли бы более адекватно реагировать на внешние воздействия типа ветра, как минимум пропала бы проблема с изменением высоты при корректировке, так как на каждый луч(ну на мотор) подавалась бы коррекция именно для него, а не усредненная как для центра.
Для гир эта фишка не нужна, так как угол наклона не зависит от месторасположения гиры.
Несколько сумбурно получилось. если не понятно потом в картинках поясню )))
Если бы на каждом луче стоял свой собственный аксель
Скольки осевой ?
3х конечно, они не настолько дорогие что бы экономить. Но для теста пошел бы и одноосевой, типа вверх/вниз
У меня нет запаса железок, иначе бы сам попробовал )