Проект Мегапират на самик!
int dcm.roll_sensor - крен, умноженный на 100 (1 градус - значение 100) (-18000…+18000)
int dcm.pitch_sensor - тангаж, умноженный на 100 (1 градус - значение 100)(-18000…+18000)
int dcm.yaw_sensor - курс, умноженный на 100 (1 градус - значение 100)(0…+36000)
int target_bearing - курс на след. путевую точку (или домой, зависит от режима полета (auto - след точка, все остальные - домой) - аналогично просто курсу
wp_distance - расстояние до след. точки / дома
g_gps->ground_speed - скорость по земле
g_gps->ground_course - курс по GPS
current_loc.alt - текущая высота (абсолютная) по GPS
current_loc.lat - текущая широта
current_loc.lon - текущая долгота
(current_loc.alt - home.alt) - высота относительно “дома”
byte g_gps->num_sats - число спутников GPS
Чтобы писать что-то в текстовом виде, нужно объявить тип данных, который нужно выводить.
К примеру, вот это
“$I,roll,pitch,” CR LF
Будет выглядеть так:
sport.print(“$I,”); // заголовок
sport.print((int)dcm.roll_sensor/100); // крен
sport.write(‘,’); // запятая
sport.print((int)dcm.pitch_sensor/100); // тангаж
sport.println(“,”); // запятая и CR LF
Сырую строку GPS просто так из драйвера не вытащить, она там обрабатывается побайтно и не хранится.
Эх, увы, переход на 19200 результата не дал… симптомы те же…
К стати а где в Б8 меняется скорость порта телеметрии???
Нашел, в файле config.h в общем проблема походу в прошивке Б1… В Б8 для квадрика без проблем конектимся как на 19200 так и на 57600…
Ребята!! Нужна помощь!!!
Вообщем пришла ОСД, подпаялся к площадкам для програмирования, закачал АВР Студио 4.18 (програматор AVR910-01).
Вообщем в проге не могу законектить процессор, соответственно и прошиться…
Вопросы:
1 при програмировании питалово подавать на БАТ 1 или через програматор (есть возможность отключить питание через програматор)
2 могли бы подсказать какой версией Студио лучше шить с моим програматором (или он не катит?).
ЧТО ДЕЛАТЬ???
С уважением, Александр.
я с бат1 подавал и все, но у меня от ЮСБ прогер питается.
пользуюсь студией 4.13
Если сам по себе ОСД работает, значит, неправильно подпаял ноги…
В Б8 для квадрика без проблем конектимся
Что-то я не припомню, чтобы в квадрике ПИДы сразу читались при коннекте
А как проверить работоспособность АРС220. В HK’s Ground Control Station в кмандной строке пишет проверка скорости 57200 и все, дальше никаких действий. Как проверить?
[QUOTE=Syberian;2773622]я с бат1 подавал и все, но у меня от ЮСБ прогер питается.
пользуюсь студией 4.13
Если сам по себе ОСД работает, значит, неправильно подпаял ноги…
Олег.
А ты можешь скинуть фотку (или от руки схемку) подключения ног?
Я нашел фотку на РСГруппс там ты еще ответил челу что все правильно (по подключению выводов при програмировании ОСД) - вот по ней и подключался…
Кинь распиновку плиз…
Спасибо!
плата чипом вверх, дырками к тебе: MOSI, MISO, SCK, RESET, GND, VCC
Тип микросхемы выбрать Atmega88
FUSE-биты не трогать!!!11111111 выбери файл в первой же вкладке и жми program
Олег, спасибо - сегодня покодю осд для ремзи, посмотрим что получится.
По Е-ОСД - фотка с подписанными ножками. Питание подавалось через програматор ( +5 из USB ).
Я ОСД прошивал из CodeVisionAVR и мастеркитовский AVR910 (BA9010) программатор.
Программатор доработан до нормального. Заменены резисторы на ножках на низкоомные и на 2-ю ногу подкинто питалово из ЮСБ.
Олег - а можно для отладки, сделать команду TEST -> OSD, что бы видеть в компе строки, которые выливаются в ОСД. Как настройка уровня или компаса ???
Или это геморно ?
Вопрос на повестке дня:
стоит ли переделывать, чтобы домашняя позиция ЖПС определялась каждый раз при включении питания и достаточном кол-ве спутников? Или оставить все как есть (чтоб на балкон улетал)…
В переделке тоже есть недостаток: если дернется питание, домашняя позиция определится в воздухе, что опасно. С другой стороны, к месту “дома” можно подобраться поближе и восстановить управление вручную… Координаты-то есть
Второй вопрос:
Действительно ли так мешает обзору темный квадрат в центре и стоит ли его запихнуть куда-то в угол? (мне лично не мешает)
И этта… .не спрашивайте меня, как подключать телеметрию - я ее еще не нюхал даже 😃
По поводу домашней позиции Моё ИМХО:
Запоминать при включении и наличии, ну скажем от 5ти спутников (точность ±100 метров), но при этом обязательно запоминать и время фиксации точки старта.
Алгоритм запоминания точки старта:
Проверить статус ЖПС.
Если 0 или 1 - нет фиксации положения в пространстве - ждем изменения статуса.
Проверить количество спутников.
Если количество спутников < N ждем когда наберется нужное количество. Значение N - делать настраиваемым, но не менее 5ти.
Если количество спутников достаточное определить состояние борта:
- Проверить статус борта: (на земле или в воздухе, проверить можно например по скорости движения)
Если включились в полете - значит берем старую точку старта ПОЛЮБАСУ, если она есть конечно. Если её нет - становиться на круг и ждать когда пилот разберется
или поменяет точку старта вручную.
Если на земле:
- проверять разницу между текущим временем (получить из ЖПС) и временем фиксации последней точки старта.
Если разница > k точку старта изменить, если меньше использовать старую. Значение k - сделать настраиваемым (примерно от 20 минут до 2-х часов)
Как то так. Извините если сумбурно.
Про чёрный квадрат: Если просто летать - то пофиг, а вот если летать с заданиями разными, то мешает.
Олег, а убрать квадрат не вариант вообще ?
Может сделать горизонт чуть пожирнее и обвести чЁрным ободком ?
Спасибо всем, кто откликнулся!!!
По подключению - все правильно у меня.
По програматору - проштудировал еще и темку по програмированию аппы (аналогичная проблема у людей была…) так вот там советовали резисторы в програматоре закоротить (те что на выходах) , которые Виктор менях на низкоомные. Вот и думаю - искать и менять на низкоомные или просто закоротить?
Олег.
Идея (если выполнимо) Виктора на счет запоминания Дома вроде классная, или можно сделать по принципу кнопки ресета - если не нажал (в проге) - запоминаем то, что введено ранее через программу, нажал - запомнили точку при включении. Организовать этот принцип допустим двойным перевключением в отрезок времени (30-40 сек) - врядли в полете произойдет двойное перевключение…
По квадрату - сам пока еще не затестил, но по Вашим видео - мне нравится! Оставте, иначе при полете в облаках, на Солнце или зимой цифирек не видно будет…
Решил попробовать закоротить… Буду пробовать - отпишусь…
Я когда аппу шил (ТУРНИГУ 9ch), я резики просто закоротил. Потом отнес товарищу и под мелкоскопом припаяли правильные резисторы.
Если вы уверены в правильности подключения и правильном “камне” - резисторы можно и не паять.
Резисторы нужны для защиты программатора от нештатных ситуаций за разъемом (коротыши, волшебный дым и прочее).
После замены резисторов - программатор без проблем перешил две аппы, e-osd и Вортекс через ISP.
а убрать квадрат не вариант вообще ? Может сделать горизонт чуть пожирнее и обвести чЁрным ободком ?
Убрать можно, но на фоне неба не видно будет нифига.
“черный ободок” делается схемотехнически (smalltim, msv), с помощью ЦАП (eagletree) или аппаратно на чипе (текстовые ОСД, использующие м/сх MAX****)
Можно было бы вообще заварганить полный графический ОСД высокого разрешения с оттенками серого и проч требухой на ПЛИС, но я сознательно выбрал самое бесплатное решение, т.к. денег тю-тю.
Значит не стоит заморачиваться с квадратом. Лучше шлифовать автопилот. А вот когда шлифовка подойдет к стадии прикручивания всяких Фкусностей, тогда стоит заняться нормальным ОСД.
На текущий момент есть несколько вариантов ГОТОВЫХ решений, которые можно комбинировать с E-OSD.
Исходники E-OSD выложены, желающие могут ковырять под себя как угодно.
Как только я с Ремзи разберусь, я выложу код сюда. Это если работа меня не доканает (вчера база упала у бухов 😦 , так что я несколько буду занят пару дней).
Не отвлекайтесь от того, что не сделает простой обыватель (я в том числе).
ТОВАРИЩИ! Принимайте меня в ряды 😃 - сегодня сделал заказик. Будем тестить., имею носитель с размахом 3 метра самодельный из потолочки и полетным временем хоть 2 часа на моторе.
По советам граждан приобрел Блек Вортекс. Сейчас её вроде и в размерах уменьшили.
Вы платы крепили на площадки?
Планируется установка логгера для подсчета потраченной энергии, вывода оборотов мотоустановки., и остальных вкусностей.?
Ну как по мне для начала главное чтобы он не сходил с ума. и при потере РУ возвращал самик.
По поводу запоминания точки дома., есть свои плюсы и минусы. Если брать с точки зрения военной надежности, то лучше вводить точку вручную.
Если подходить к вопросы со стороны удобства, тогда лучше чтобы он запоминал при вкл.,
Будет ли возможность цепляния доп. датчика - например трубки пито, для возврата самолета в сильный встречный ветер?, хотя мы в такую погоду не летаем, но если отлетев на десяток км. нарватся на грозовой фронт, который за несколько десятков км. сосет в себя воздух как пылесос, в такой ситуации при потере РУ носитель может и не вернуться.
Для телеметри на самолет скорее нужны такие модемы www.bevrc.com/bevfy602-data-radio-p-221.html
Я конечно не юзал но APC220 с заявленной дальность в 1км. никуда не годится для самолета., для квадрокоптера - да.
доп. датчика - например трубки пито
Поддерживаю. Датчик воздушной скорости, самолету, жизненно необходим.
Тем более в коде мегапирата есть обработка воздушной скорости (airspeed).
Олег, может стоит начать приобретать ? Что Вы думаете на счет вот такого датчика store.diydrones.com/product_p/br-0004-03.htm ?
У меня в загашнике игловский датчик скорости валяется.
Опять же вопрос с модемами. Многие используют ЛРС на частотах 433мхз.
Получается что модемы будут мешать! Выход - иметь модемы на частоте 2,4ггц что не есть гуд. т.к. видео у всех на 1,2ггц. - да и иметь столько вч на борту - это уже перебор.
А можно с помощью модемов подмешивать ППМ с пульта? Тогда проблема отчасти решилась. Для полного счастья иметь модемы с пропускной способностью передавать управление, данные и видео сигнал., с минимальной задержкой, вот это была бы бомба!
Ну ещё как вариант к модемам APC220 использовать бустера на основе RA07M4047M
www.flytron.com/108-7w-booster-for-uhf.html
Ну опять же, если можно будет и управлять через модем.
Для телеметри на самолет скорее нужны такие модемы www.bevrc.com/bevfy602-data-radio-p-221.html
Пля - там ценник ваще не гуманный. Хотя 10 км есть 10 км.
С другой стороны, когда будет дошлифован код на самолетном пирате, что мешает вколхозить в видео или аудио канал необходимый набор данных для наземной станции.
А для передачи на борт можно заюзать свободный канал радиоуправления (только нужно тогда придумать протокол передачи-приема данных по одному пропорциональному каналу).
Тем более что передавать на борт не так много данных требуется, а вот с борта прилично.
Ну опять же, если можно будет и управлять через модем.
Управлять через модем конечно можно и это уже даже реализовано, НО надежность оставляет желать лучшего 😦
И если с коптерами все более менее ясно и понятно (они редко дальше 100 метров отлетают), то с самолетами все очень не просто.
Я на данном технологическом этапе не готов доверить управление цифре на недорогом железе.
Ну б…ть. (прошу прощенья но слов уже нет…)
Короче - не шьется ОСД и все…
Или с програматором что-то или с ОСД.
Попробовал уже аж три версии Студио, еще пару программ и все до одного места…
Что делать не представляю…
Есть идеи?
5 проводков и LPT порт спасут отца русской демократии 😃