Проект Мегапират на самик!

Syberian

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 просто так из драйвера не вытащить, она там обрабатывается побайтно и не хранится.

LeonVS

Эх, увы, переход на 19200 результата не дал… симптомы те же…
К стати а где в Б8 меняется скорость порта телеметрии???

Нашел, в файле config.h в общем проблема походу в прошивке Б1… В Б8 для квадрика без проблем конектимся как на 19200 так и на 57600…

alex-ber

Ребята!! Нужна помощь!!!
Вообщем пришла ОСД, подпаялся к площадкам для програмирования, закачал АВР Студио 4.18 (програматор AVR910-01).
Вообщем в проге не могу законектить процессор, соответственно и прошиться…
Вопросы:
1 при програмировании питалово подавать на БАТ 1 или через програматор (есть возможность отключить питание через програматор)
2 могли бы подсказать какой версией Студио лучше шить с моим програматором (или он не катит?).
ЧТО ДЕЛАТЬ???
С уважением, Александр.

Syberian

я с бат1 подавал и все, но у меня от ЮСБ прогер питается.
пользуюсь студией 4.13
Если сам по себе ОСД работает, значит, неправильно подпаял ноги…

LeonVS:

В Б8 для квадрика без проблем конектимся

Что-то я не припомню, чтобы в квадрике ПИДы сразу читались при коннекте

tusik

А как проверить работоспособность АРС220. В HK’s Ground Control Station в кмандной строке пишет проверка скорости 57200 и все, дальше никаких действий. Как проверить?

alex-ber

[QUOTE=Syberian;2773622]я с бат1 подавал и все, но у меня от ЮСБ прогер питается.
пользуюсь студией 4.13
Если сам по себе ОСД работает, значит, неправильно подпаял ноги…

Олег.
А ты можешь скинуть фотку (или от руки схемку) подключения ног?
Я нашел фотку на РСГруппс там ты еще ответил челу что все правильно (по подключению выводов при програмировании ОСД) - вот по ней и подключался…

Кинь распиновку плиз…
Спасибо!

Syberian

плата чипом вверх, дырками к тебе: MOSI, MISO, SCK, RESET, GND, VCC
Тип микросхемы выбрать Atmega88
FUSE-биты не трогать!!!11111111 выбери файл в первой же вкладке и жми program

ViktorDoma

Олег, спасибо - сегодня покодю осд для ремзи, посмотрим что получится.

По Е-ОСД - фотка с подписанными ножками. Питание подавалось через програматор ( +5 из USB ).

Я ОСД прошивал из CodeVisionAVR и мастеркитовский AVR910 (BA9010) программатор.

Программатор доработан до нормального. Заменены резисторы на ножках на низкоомные и на 2-ю ногу подкинто питалово из ЮСБ.

Олег - а можно для отладки, сделать команду TEST -> OSD, что бы видеть в компе строки, которые выливаются в ОСД. Как настройка уровня или компаса ???
Или это геморно ?

ViktorDoma

Переделанный программатор AVR910 от МастерКит

Syberian

Вопрос на повестке дня:
стоит ли переделывать, чтобы домашняя позиция ЖПС определялась каждый раз при включении питания и достаточном кол-ве спутников? Или оставить все как есть (чтоб на балкон улетал)…
В переделке тоже есть недостаток: если дернется питание, домашняя позиция определится в воздухе, что опасно. С другой стороны, к месту “дома” можно подобраться поближе и восстановить управление вручную… Координаты-то есть

Второй вопрос:
Действительно ли так мешает обзору темный квадрат в центре и стоит ли его запихнуть куда-то в угол? (мне лично не мешает)

И этта… .не спрашивайте меня, как подключать телеметрию - я ее еще не нюхал даже 😃

ViktorDoma

По поводу домашней позиции Моё ИМХО:

Запоминать при включении и наличии, ну скажем от 5ти спутников (точность ±100 метров), но при этом обязательно запоминать и время фиксации точки старта.

Алгоритм запоминания точки старта:

Проверить статус ЖПС.
Если 0 или 1 - нет фиксации положения в пространстве - ждем изменения статуса.
Проверить количество спутников.
Если количество спутников < N ждем когда наберется нужное количество. Значение N - делать настраиваемым, но не менее 5ти.

Если количество спутников достаточное определить состояние борта:

  • Проверить статус борта: (на земле или в воздухе, проверить можно например по скорости движения)
    Если включились в полете - значит берем старую точку старта ПОЛЮБАСУ, если она есть конечно. Если её нет - становиться на круг и ждать когда пилот разберется
    или поменяет точку старта вручную.

Если на земле:

  • проверять разницу между текущим временем (получить из ЖПС) и временем фиксации последней точки старта.

Если разница > k точку старта изменить, если меньше использовать старую. Значение k - сделать настраиваемым (примерно от 20 минут до 2-х часов)

Как то так. Извините если сумбурно.

Про чёрный квадрат: Если просто летать - то пофиг, а вот если летать с заданиями разными, то мешает.

Олег, а убрать квадрат не вариант вообще ?
Может сделать горизонт чуть пожирнее и обвести чЁрным ободком ?

alex-ber

Спасибо всем, кто откликнулся!!!
По подключению - все правильно у меня.
По програматору - проштудировал еще и темку по програмированию аппы (аналогичная проблема у людей была…) так вот там советовали резисторы в програматоре закоротить (те что на выходах) , которые Виктор менях на низкоомные. Вот и думаю - искать и менять на низкоомные или просто закоротить?
Олег.
Идея (если выполнимо) Виктора на счет запоминания Дома вроде классная, или можно сделать по принципу кнопки ресета - если не нажал (в проге) - запоминаем то, что введено ранее через программу, нажал - запомнили точку при включении. Организовать этот принцип допустим двойным перевключением в отрезок времени (30-40 сек) - врядли в полете произойдет двойное перевключение…
По квадрату - сам пока еще не затестил, но по Вашим видео - мне нравится! Оставте, иначе при полете в облаках, на Солнце или зимой цифирек не видно будет…
Решил попробовать закоротить… Буду пробовать - отпишусь…

ViktorDoma

Я когда аппу шил (ТУРНИГУ 9ch), я резики просто закоротил. Потом отнес товарищу и под мелкоскопом припаяли правильные резисторы.

Если вы уверены в правильности подключения и правильном “камне” - резисторы можно и не паять.

Резисторы нужны для защиты программатора от нештатных ситуаций за разъемом (коротыши, волшебный дым и прочее).

После замены резисторов - программатор без проблем перешил две аппы, e-osd и Вортекс через ISP.

Syberian
ViktorDoma:

а убрать квадрат не вариант вообще ? Может сделать горизонт чуть пожирнее и обвести чЁрным ободком ?

Убрать можно, но на фоне неба не видно будет нифига.
“черный ободок” делается схемотехнически (smalltim, msv), с помощью ЦАП (eagletree) или аппаратно на чипе (текстовые ОСД, использующие м/сх MAX****)
Можно было бы вообще заварганить полный графический ОСД высокого разрешения с оттенками серого и проч требухой на ПЛИС, но я сознательно выбрал самое бесплатное решение, т.к. денег тю-тю.

ViktorDoma

Значит не стоит заморачиваться с квадратом. Лучше шлифовать автопилот. А вот когда шлифовка подойдет к стадии прикручивания всяких Фкусностей, тогда стоит заняться нормальным ОСД.

На текущий момент есть несколько вариантов ГОТОВЫХ решений, которые можно комбинировать с E-OSD.

Исходники E-OSD выложены, желающие могут ковырять под себя как угодно.

Как только я с Ремзи разберусь, я выложу код сюда. Это если работа меня не доканает (вчера база упала у бухов 😦 , так что я несколько буду занят пару дней).

Не отвлекайтесь от того, что не сделает простой обыватель (я в том числе).

vadson

ТОВАРИЩИ! Принимайте меня в ряды 😃 - сегодня сделал заказик. Будем тестить., имею носитель с размахом 3 метра самодельный из потолочки и полетным временем хоть 2 часа на моторе.
По советам граждан приобрел Блек Вортекс. Сейчас её вроде и в размерах уменьшили.
Вы платы крепили на площадки?

Планируется установка логгера для подсчета потраченной энергии, вывода оборотов мотоустановки., и остальных вкусностей.?
Ну как по мне для начала главное чтобы он не сходил с ума. и при потере РУ возвращал самик.

По поводу запоминания точки дома., есть свои плюсы и минусы. Если брать с точки зрения военной надежности, то лучше вводить точку вручную.
Если подходить к вопросы со стороны удобства, тогда лучше чтобы он запоминал при вкл.,
Будет ли возможность цепляния доп. датчика - например трубки пито, для возврата самолета в сильный встречный ветер?, хотя мы в такую погоду не летаем, но если отлетев на десяток км. нарватся на грозовой фронт, который за несколько десятков км. сосет в себя воздух как пылесос, в такой ситуации при потере РУ носитель может и не вернуться.

Для телеметри на самолет скорее нужны такие модемы www.bevrc.com/bevfy602-data-radio-p-221.html

Я конечно не юзал но APC220 с заявленной дальность в 1км. никуда не годится для самолета., для квадрокоптера - да.

ViktorDoma
vadson:

доп. датчика - например трубки пито

Поддерживаю. Датчик воздушной скорости, самолету, жизненно необходим.

Тем более в коде мегапирата есть обработка воздушной скорости (airspeed).

Олег, может стоит начать приобретать ? Что Вы думаете на счет вот такого датчика store.diydrones.com/product_p/br-0004-03.htm ?

vadson

У меня в загашнике игловский датчик скорости валяется.
Опять же вопрос с модемами. Многие используют ЛРС на частотах 433мхз.
Получается что модемы будут мешать! Выход - иметь модемы на частоте 2,4ггц что не есть гуд. т.к. видео у всех на 1,2ггц. - да и иметь столько вч на борту - это уже перебор.
А можно с помощью модемов подмешивать ППМ с пульта? Тогда проблема отчасти решилась. Для полного счастья иметь модемы с пропускной способностью передавать управление, данные и видео сигнал., с минимальной задержкой, вот это была бы бомба!
Ну ещё как вариант к модемам APC220 использовать бустера на основе RA07M4047M
www.flytron.com/108-7w-booster-for-uhf.html
Ну опять же, если можно будет и управлять через модем.

ViktorDoma
vadson:

Для телеметри на самолет скорее нужны такие модемы www.bevrc.com/bevfy602-data-radio-p-221.html

Пля - там ценник ваще не гуманный. Хотя 10 км есть 10 км.

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

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

vadson:

Ну опять же, если можно будет и управлять через модем.

Управлять через модем конечно можно и это уже даже реализовано, НО надежность оставляет желать лучшего 😦

И если с коптерами все более менее ясно и понятно (они редко дальше 100 метров отлетают), то с самолетами все очень не просто.

Я на данном технологическом этапе не готов доверить управление цифре на недорогом железе.

alex-ber

Ну б…ть. (прошу прощенья но слов уже нет…)
Короче - не шьется ОСД и все…
Или с програматором что-то или с ОСД.
Попробовал уже аж три версии Студио, еще пару программ и все до одного места…
Что делать не представляю…
Есть идеи?

LeonVS

5 проводков и LPT порт спасут отца русской демократии 😃