Smalltim OSD and autopilot (часть 2)
Увы никакого.
Я пока не понял, нужен ли он мне, или достаточно таймера на пульте.
Т.к. у меня квадрокоптер, у него жесткая отсечка по напряжению. При достижении определенного напряжения на аккумуляторе, контроллер просто снижает обороты и принудительно сажает коптер. Поэтому лучше следить за временем и напряжением. А это OSD показывает и без датчиков.
Может впоследствии я поставлю датчик, но пока нету.
Приветствую, коллеги.
Пока был 2 недели в стране заморской, в полетах (почти сутки в одну сторону блть!) и тама в свободное время очень сильно продвинулся в новой прошивке АП и, главное, в Контрольной Панели. Вылечил все баги новой прошивки, основательнейшим образом перетряхнул структуту логов, снизив объем с 180 или сколько там было до 72 байта на запись лога, увеличив время жизни лога в 2 с половиной раза, ускорил парсинг строк ГПС раза в четыре, подлечил работу ГПС в ненаших полушариях, и кучу прочего разного.
Полноценный парсер логов, заменяющий ексель, пока не дописал.
Прошивку новую пока выкладывать не хочу. Думаю, разумно будет ввести полет по не более чем трем контрольным точкам в базовый функционал автопилота.
Думаю, разумно будет ввести полет по не более чем трем контрольным точкам в базовый функционал автопилота.
Ура!
Опа! Замучали все-таки.
Скажите пожайлуста какой датчик тока совместим с этим ОСД? Я искал на форуме, но однозначного ответа так и не нашел. Где-то пишут про ACS755 а где-то про ACS754, но у одного нулю ампер соответствует выходное напряжение 0 вольт а у другого 2.5 Вольт, или ОСД может калиброваться под любой датчик? У меня прошивка 261, старая, так как использую модуль 406А
ACS754. И пока только он.
Честно говоря смотрю на 754, 756 и на 758 - везде I(zero)=Vcc/2.
Вопрос только в том, какой датчик в какой прошивке прошит. По первости были 50А датчики, потом стали комплектовать 100А. Кто что подскажет?
Тенденция, однако, все разработчики постепенно начинают вводить функцию полёта по точкам:
spreadsheets.google.com/ccc?key=0ArJJcNdRXxn7dFV2Q…
Что меня останавливает от приобретения СМ автопилота:
- Нет полёта по точкам.
- Нет GPS трекера антенны.
Почему я хочу купить СМ автопилот:
- Богатый функционал.
- Многочисленные инструкции и поддержка на русском языке.
to smalltim
Спасибо за подаренную надежду, относительно точек. Хотел бы попросить, я писал выше, кусок схемы с lm1881 и двумя видеобуферами, это по синхронизации изображения.
И ещё досада, приехал контроллер новый для АП, маркировка на нём 90USB1287-16AU вместо 90USB1287-AU, впаял - пишет неизвестное устройство и горит в полнакала первый жёлтый светодиод…
как понимать величины в лог файле? открыл екселем. что например такое baro_curspeed = -0.3411308 что это за цифра, да еще и с минусом?
или baro_curalt = 0.5234567
гденить есть описание как переводить в понятные величины? как посчитать удаление от места старта итд…
to smalltim Тимофей, а есть возможность выложить исходники прошивки телеметрии свежее, чем 252?
P.S. С такими комментариями, как в исходниках - любой школьник разберется как скорректировать прошивку под 150А датчик тока или добавить/убрать поддержку старых/новых GPS. Такой красивый код с такими комментариями вызывает не просто уважение - ВОСХИЩЕНИЕ! Как программист программисту - РЕСПЕКТ!
как понимать величины в лог файле? открыл екселем. что например такое baro_curspeed = -0.3411308 что это за цифра, да еще и с минусом?
Веичины высот - в метрах, скоростей - в километрах в час. Отрицательными могут быть - у датчиков есть шум и дрейф, а за ноль береться высота точки старта. Судя по Вашим числам - это домашние измерения. В полете значения будут большими и положительными.
как посчитать удаление от места старта
По координатам GPS. Простейшая формула дана здесь:
rcopen.com/forum/f90/topic205896/582
PS: более точно рассстояние можно измерить в Google Maps - введя координаты двух точек. Не удивляейтесь, если будет небольшое расхождение с показаниями телеметрии. 😃
Здравствуйте Уважаемые пилоты FPV!
Я недавно стал обладателем телеметрии … У Меня есть вопрос, где можно найти штекер для подключения балансиров батарей, тот что с маркировкой
“PWR” и для видео “VI” и “VO” ? Ткните пожалуйста носом.
в чип и дип или митино
[QUOTE=smalltim;2455822]Приветствую, коллеги.
Пока был 2 недели в стране заморской, в полетах (почти сутки в одну сторону блть!)
В Африке?
Всем привет!
Если оторвать отсюда модуль GPS
www.leapsecond.com/pages/MG1613S
его можно приладить к телеметрии?
to smalltim Тимофей, а есть возможность выложить исходники прошивки телеметрии свежее, чем 252?
P.S. С такими комментариями, как в исходниках - любой школьник разберется как скорректировать прошивку под 150А датчик тока или добавить/убрать поддержку старых/новых GPS. Такой красивый код с такими комментариями вызывает не просто уважение - ВОСХИЩЕНИЕ! Как программист программисту - РЕСПЕКТ!
Хех, спасибо 😃
На самом деле, асмовый код читать и писать тяжело, поэтому все комментарии я для себя делал, чтобы потом, скажем, через год, волосы не рвать на голове - " а как же я тут всё считал?"
Рад, что оказалось полезно 😃 Насчет того, что код красивый - не уверен. Компактный - да, в 8к столько запихать - подвиг. А вот красивый - ммээээ…
Попрошу ребят, чтобы выложили исходники самой свежей прошивки.
Компактный - да, в 8к столько запихать - подвиг. А вот красивый - ммээээ…
Во-первых, компактность само по себе уже красиво.
Во-вторых, вместо мешанины непонятных цифр, битов, гонений туда-сюда по регистрам непонятно чего - все расписано, разложено, все последовательно по полочкам, переменные заведены, все как по нотам…
НО! Вот тут мне непонятно:
Смотрю прошивку 252, это одна из последних перед переходом с утюжной платы на мини-телеметрию. Код, где считаем амперы. Комментарий говорит сам за себя:
; 100A corresponds to 4.5V of current sensor output, 0A is 2.5V
; it means 32768 samples for 0A and 65536*4.5/5=58982 samples for 100A
; full range is 58982-32768=26214 samples or 0.003814697265625 A per sample
; to get Ampers (*100 because I want 2 decimal digits) I have to multiply samples * 0.005086 A per sample and * 100,
; it gives Current = samples * 0.003814697265625, or Current = samples * 25000 / 65536;
Вот только по схеме и по плате напряжение с датчика ADC6 проходит через делитель 1/3. Что это и как? Ведь вроде прошивка работала и платы летали… Проверил у себя, показания врут в три раза… Или была хитрость и нижнее плечо выпаивали?
Попрошу ребят, чтобы выложили исходники самой свежей прошивки.
Тимофей, на сайте в нижнем меню не работает ссылка “Телемерия - Прошивки”. Поправьте. Строка “smalltim.ru/production/autopilot/…/firmwares/#"”
Добавление полёта по точкам это хорошо конечно, но почему только 3?
Или была хитрость и нижнее плечо выпаивали?
Да, выпаивали.
Добавление полёта по точкам это хорошо конечно, но почему только 3?
Чтоб халява не была безбрежной. Еще и ограничение на дальность будет.
Отчитываюсь.
На прошлой неделе воодушевленный успехами Zinchenko раскопал в закромах спаяную почти год назад на макетке телеметрию. Использована мега в диповом корпусе. После нескольких проверок и восстановления в памяти доделок/недоделок мега была прошита. Но первый запуск успехом не увенчался. После нескольких часов колдовства все запустилось. Первое, что сделал - выпял и впаял новую LM1881, не помогло. Затем выяснилось - на ноге питания LM1881 после указанного на схеме резистора в 4.7ком появлялось не 5в, а 2,4в. Резистор замкнул, изображение появилось. Много криков УРА!!! Но тяга к истине заставила выпаять LM1881 еще раз. Ну и дурак. Убедился, что первая LM-ка действительно была мертвой (или к этому привела выпайка-впайка). По даташитам различий между диповой и сотовой LM1881 быть не должно, однако сейчас телеметрия работает только с непосредственной подачей +5в на ногу питания.
Но смотреть на изображение телеметрии, где смысл несут только две цифры - напряжения питающих двух банок - скучно. 😃 Поэтому был расковырян сгоревший год назад древнейший CompactFlash GPS. Год назад было выяснено, что реально сгорел только контроллер CF, а сам модуль, с возможностью питания как +3.3 так и +5в (грамотно сделано, на модуле два разъема под разное питание с разной распиновкой, не ошибешься и в то же время универсально). Завел GPS, пошел на “рыбалку”. Но с подоконника ничего не наловил. На следующий день под чистым солнечным небом улов был намного лучше. GPS принес 9 спутников, телеметрия оживилась новыми циферками и шевелениями значочков.
Следующим шагом стали датчики. Датчик температуры проблем не представлял, в продаже их полно, стоит не безбожных денег (если не покупать в чипедипе). Был распаян, засунут подмышку. Через 5 минут показывал 36.2С. То, что доктор прописал. 😃
Датчик тока мне достался ACS758-50B. По даташиту - различий со штатным никаких, кроме тока. Было очевидно, что придется что-то править. Но, спасибо Тимофею, исходники пары версий есть. Но после того, как датчик был припаян к разъемам, укутан в термоусадку и вообще начал радовать глаз, выяснилось, что подключать его некуда! Да! Просто некуда! У диповой меги на два ADC меньше! Срочно напряглись затылочные мышцы, пин для третьей банки был выпаян за ненадобностью, на ADC2 заведен датчик тока (бародатчики планируются, поэтому входы для них в резерве). Дело встало за программой.
Во-первых, надо было сменить коэффициент при расчете ампер, т.к. диапазон датчика в два раза меньше. Это было сделано очень быстро благодаря очень подробным комментариям в исходниках. Сперва сделал некрасиво, прямо в месте расчета, потом вывел коэффициент в начло программы в константы. Теперь скомпилить прошивку по свой датчик тока себе сможет даже школьник (требований три - ноль тока=Vcc/2, ратиометрический, симметричный).
Во-вторых, надо было сменить порт, значения которого закреплены за датчиком тока. Или наоборот. Это заняло немного больше времени, т.к. потребовалось почитать немного хелпа по асму меги. (Заметьте, первую задачу я выполнил ВООБЩЕ не зная ничего о командах меги. Только благодаря комментариям Тимофея). Основную привязку в цикле опроса поменял быстро, потом подумал, и сделал еще быстрее и проще, просто перекинув третью банку на ADC6, а ток - на ее место. Еще выяснилось, что забыл поменять в том месте, где датчик калибруется. Почитал хелп по асму, понял назначения регистров и битовых масок, сделал, но выяснилось, что:
В-третьих, надо вернуть обязательную калибровку датчика тока при старте, т.к. ручную калибровку организовать мешает отсутствие ADC7. Было уже поздно ночью, поэтому просто изменил места пары меток перехода оставив в тылу горку неиспользуемого кода, в который программа никогда не зайдет. Стыдно, но пока ладно. В планах сделать ручную калибровку, через скажем порт датчика температуры. Т.е. снимаем датчик, замыкаем его порт, калибруем ток, выключаемся ,ставим датчик на место.
В планах попробовать покупку бародатчиков не таких, которые указаны в схеме штатно, а более поздних аналогов. Скажем MPXA6115 сейчас намного доступнее и дешевле, чем 4115, а по даташиту - он же. Посмотрим, что из этого выйдет. Продолжение следует.
ЗЫ: Фото выкладывать наверное смысла нет, т.к. диповая телеметрия на макетке - это зрелише не для слабонервных. Прошивку под датчик тока могу подготовить, когда появятся исходники версии посвежее. Вроде Тимофей в просьбе об их предоставлении не отказал, за что ему еще раз “ку”.
ЗЗЫ: По весу сейчас макетка - 23г., все в сборе с датчиками тока и температуры и с GPS - 52г. Что в принципе очень неплохо для такого безобразия.
В схеме усё правильно, это вы чуть промахнулись.
4R7 - 4,7 Ом ! Я поставил 10R и усё - ОК!
В некоторых ГОСТах СССР и Европы, даже есть такая маркировка
4Е7 что есть те-же - 4,7 Ом !
Для общего понимания
R47 - 0,47 Ом
Е47 - 0,47 Ом