Самодельный передатчик (часть 2)
Да, запутался я еще больше 😃
Вот я сейчас сделал так:
где стоит одна серва, 60%–40%
а где 2 сервы: 60%–20%–20%
(мне нужно уменьшить расходы по элеронам/элеватору )
Правильно ли, что сумма всех - 100%?
А на первый ротор - который до 100 процентов не дотягивает, можно микс от руля направления завести, чтобы при рулении нос (в моем примере, или “хвост” - в вашей реализации) не проваливался при повороте “руля направления”.
Это единственная причина, почему в вашем примере первый ротор до 100% не дотягивает в сумме коэффициентов микширования? Или есть глубокий смысл, которого я не вижу по причине отсутствия опыта?..
да, правильно. Где одна серва - там по рулю высоты расход в 2 раза побльше, чем на двух других и другого знака. (т.к. проекция плеча у тарелки в 2 раза больше). Газ - во всех каналах одинаковый. Элероны - на двух сервах равны и противоположны.
Ни в одном канале превышения 100 быть не должно. Если за счет газа будете чутье по элеронам увеличивать, то в канале, где одна серва будет меньше 100, и это нормально.
Это единственная причина, почему в вашем примере первый ротор до 100% не дотягивает в сумме коэффициентов микширования? Или есть глубокий смысл, которого я не вижу по причине отсутствия опыта?..
Нет. У него как бы плечо в два раза больше. 😃 А нам нужен баланс для плеч и перемещений. До 100 то его можно догнать, но тогда по другим каналам либо крена не хватит, либо за расходы по крену выползем. Если на этом принципе квадрик сделать, то там все симметрично будет.
Всем привет, подскажите у меня есть аппа Hobby King 2.4Ghz 6Ch V2 можно ли ее переделать под этот кодер, но оставить родной ВЧ модуль и приемник.
Конечно. И ее уже тут переделывали вроде бы. И платки уже разведенные выкладывали.
Доброго времени суток! Разрабатываю свою аппаратуру радиоуправления.
Особенности - приемник с прямого преобразования с ПЧ 22Кгц, поэтому в передатчик и приемник ставятся 2 одинаковаых кварца.
ПЧ загоняется на компаратор атмеги 48.
Метод кодирования оригинальный, каждый полубайт полезных данных в эфире передается 6ти битовыми словами, в которых 3 еденицы и 3 нуля. Это позволяет избавится от постоянной составляющей в сигнале, а еще кодововое расстояние таких слов 2 и более, поэтому без труда обнаруживается 1 кратная ошибка. Кадровая синхронизация обеспечивается 8ми разрядным словом. Обнаружение сигнала кадровой синхронизации и битовой синхронизации обеспечивается корреляционными алгоритмами (8ми разрядные корр регистры). Скорость данных в эфире 2400 бит/с, передается 6 8ми разрядных каналов 30 кадров/с. Модуляция ЧМ, частота 27МГц.
Готовность проекта
передатчик железо 100%
передатчик софт, только самое необходимое для передачи 6ти каналов и управления мощностью
приемник дейсвующий макет с сервами (EK2-0508), готовы чертежи платы в пикаде.
Буду писать статью в одном известном журнале, думаю закончить до конца года.
Хотелось бы обменятся опытом с такими же самодельщиками, особенно по части практики реализации протоколов передачи данных, возможно я еще не все знаю? Или буду кому полезен со своим опытом.
Если есть люди хорошо изучившие микростар, расскажите о том какое кодирование они используют.
каждый полубайт полезных данных в эфире передается 6ти битовыми словами, в которых 3 еденицы и 3 нуля.
Чет не пойму, как к четырем битам данных добавить 2, чтобы всегда получалось 3+3 нуля/единицы…
И хотелось бы понять, в чем сверхзадача проекта? Ведь не заморачиваясь с совместимостью с существующими “стандартами”, все имхо можно более проторенными способами решить.
А я не совсем догнал про приемник прямого преобразования с промежуточной частотой 22кгц. 😃
Гетеродинный, с пч22кгц? С одинаковыми кварцами? А как кварц на 22кгц затянуть? Стабильности ж никакой не будет. Или дедовским способом, распаять корпус и подтачивать ластиком пластину?
Или прямого усиления полосой 22кгц? ? А кварц в качестве полосового фильтра? Нифига не понимаю… Или регенеративный? Тогда полоса широченная… Или прямого преобразования (преобразование в 0!), тогда причем тут ПЧ?
Можно схему
В микростаре используется обычный ППМ.
Биты к полубайту не добавляются, а преобразуются с помощью таблцы:
const unsigned char __flash TRTAB[0x10]={
0x0B,0x0D,0x13,0x15,
0x16,0x19,0x1A,0x23,
0x25,0x26,0x29,0x2A,
0x2C,0x31,0x32,0x34};
По сравнению с манчестером приемущество в том, что код позволяет обнаружить 1 кратную ошибку и в 1.5 а не 2 раза увеличивает спектр.
Посравнению с прямой передачей данных (NRZ код) - отсутсвует постоянная составляющая в сигнале.
Кроме того коррелятору легче востановить битовую синхронизацию, сигнал насыщен перепадами из 1в0 и обратно.
По прямоу преобразованию, ну не совсем прямое, супер с низкой ПЧ. Кварцы на 5кГц затягиваются легко, в передатчеке емкостью в приемнике дроселем + умножение частоты на 2 в передатчеке + смеситель на встречных диодах в приемнике. Грел кварцы до 60с уход 600Гц для моей схемы это не критично.
Совсем прямое преобразование - сложное дело.
А сверхзадача - сделать аппу под себя с цифровым кодированием, ппм всетаки прошлый век, но и с цифровым кодированием не так-то все просто, методов тьма, но далеко не все подходит и эффективно работает, нужно подбирать под конкретные условия.
По прямоу преобразованию, ну не совсем прямое, супер с низкой ПЧ.
Рискуете словить таксиста с 200Вт в антене по зеркальному каналу. Да и 27мгц весьма чумавой бенд. Днем можно не услышать соседа по улице, но общаться с Украиной или Испанией… Я бы не рискнул.
Согласен на все 100%. Не самая лучшая техника для приема, и не самый лучший диапазон, вернее сказать самый неудачный. Как владелец Микростара, также подтверждаю, в Микростаре стандартный ППМ!
Биты к полубайту не добавляются, а преобразуются с помощью таблицы
Понял, перекодирование с избыточностью. Интересное развитие 4B/5B, который хоть и строго говоря, содержит постоянную составляющую, но по радиоканалу в принципе есть шанс, что пройдет.
ппм все таки прошлый век
Оно конечно… но, как ни странно, на практике убедился, что при гениальной простоте, это очень неплохой тип кодирования для аналогового канала… Не думаю, что цифра сколь нибудь существенно выиграет в реальном радиоканале при узкополосной модуляции.
Про сам радиоканал - согласен с Алексеем. Не самый лучший выбор диапазона и технологии приема. Обычно такое преобразование на сверхнизкое ПЧ применяется в дешевых FM-тьюнерах, где стоит задача сделать все на одном чипе с мин. внешних элементов и настроек. О качестве и параметрах таких приемников говорить не приходится, зато просто и дешево…
Тем не менее, желаю удачи!
Сподобился таки прикрутить передатчик к компьютеру. Пока только сохранение/загрузка параметров текущей модели. Также можно передавать настройки с одного передатчика на другой.
Для подключения к компьютеру необходимо распаять линии RX(PD2), TX(PD3), и Ground от передатчика до преобразователя UART-USB.
Готовые преобразователи RS-232-USB не подходят - они не рассчитаны на сигналы TTL уровня. Отлично подходят преобразователи для
подключения к компьютеру мобильных телефонов. Я использовал преобразователь на базе популярной микросхемы Profilic PL-2303.
На компьютере он видится как обыкновенный последовательный порт. В принципе, никто не мешает установить преобразователь в корпус
и встроить USB разъем непосредственно в передатчик.
После выбора пункта меню
“Options\PC/TX Link” управление передается компьютеру. Выход из режима связи - “стрелка влево”.
Для обмена настройками между передатчиками (передача параметров текущей модели от Master передатчика к Slave) необходимо:
Соединить передатчики крест накрест (RX-TX) линиями RX(PD2), TX(PD3), Groung/
Выбрать на Master передатчике режим PC/TX Link
Выбрать на Slave передатчике режим Load Config
Нажать кнопку “стрелка вправо”.
Выйти из режима связи - “стрелка влево”.
Помимо интерфейса с компьютером есть еще ряд отличий от оригинальной версии 1.9.1:
Под дисплей 3410
Под старую разводку платы (без замены выводов на динамик и SW2)
Нет индикации температуры на основном экране
Изменено расположение элементов на основном экране.
Нет индикации тока в антенне на основном экране
в режиме тахометра добавлен ползунок канала газа
Полные названия полетных режимов (Normal, Landing, Pilotage)
Индикация на главном экране типа модуляции (PPM-iPPM)
Дополнительный режим работы окна Monitor (еще раз стрелка вправо) с идикацией длительности канальных импульсов в микросекундах
Если на основном экране нажать стрелку влево будут показаны напряжение батареи и значения триммеров в цифровом виде.
Убраны из меню пункты про изменерение тока в антенне и частоту ВЧ модуля
При калибровке выводятся цифровые значения АЦП
По умолчанию у каждой модели не 6 а 8 каналов
По умолчанию звук выключен.
При выключении звука кодер никаких звуков не издает, даже при старте.
Контроль положения ручки газа при старте можно включить/выключить из меню “Options\Alarms” (по умолчанию, контроль отключен)
В меню “Options” появился пункт PC/TX Link - для обмена с компьтером или Slave передатчиком
В меню “Options” появился пункт Load Config - для загрузки конфигурации текущей модели с Master передатчика
В перспективе хочу, добавить возможность сохрянять все модели и менять настройки каждой модели с компьютера
C уважением,
Евгений Зайцев
Интересная доработка.
Мне кажется, наиболее полезным развитием был бы интерфейс загрузки-выгрузки модели “кодер-компьютер” и редактирование модели на компьютере.
В этом случае на компьютере можно было бы держать сколько угодно моделей и загружать в передатчик то, что нужно.
При такой концепции редактировать модель “в кодере” - не обязательно.
Мысли (раскатавши губы):
Держать в интерфейсе 2 списка моделей: “Архив” и “В памяти кодера”.
То, что “В памяти” обновляется при подключении кодера (юзера спрашивают, он должен подтвердить, что “да, обновляем” - иначе можно потерять изменения сделанные в компьютере при отключенном кодере).
Желательно иметь возможность обновить не все модели в памяти, а только какую-то одну.
Редактировать можно любую модель - “В архиве” или “В памяти”.
Если редактируем ту, что “В памяти” и нажимаем кнопку “Сохранить”, то (только при подключенном кодере?) сразу предложить обновить модель в памяти.
To: Евгений Зайцев!Конечно респект за проделанную работу!Но зачем было убирать такие Функции как индикации температуры на основном экране,индикации тока в антенне и изменерение тока в антенне и частоту ВЧ модуля?Зачем?
Да, просто нет у меня градусника и ВЧ модуль стоит ASSAN. Включить индикацию температуры и тока в антенне на основном экране - дело двух минут - убрать комментарии в dysplay.c и уточнить координаты вывода на экран. Изменение частоты ВЧ модуля. тоже вернуть не очень сложно, но все-таки надо повспоминать где что убрал. Если действительно надо верну, хотя, мне кажется, сегодня уже правильнее использовать готовые модули на 2.4 ГГц. Надежно, стабильно и недорого.
С уважением,
Евгений Зайцев
Вообщем пора уже делать контрольную панель на компе и как конструктор собирать прошивку, кому что надо…😃
Дык, есть уже такая “панель”. Файл def.h.
Всем сотоварищам, модифицирующим прошивки, советую:#define, #ifdef, #ifndef = очень правильные вещи!
Совсем без редактирования параметров на передатчике нехорошо. В поле настраивать передатчик с ноутбука неправильно. Хотя кто-то из китайцев так и делает. А по поводу логики программы мысли у меня следующие:
Приложение на большом брате должно уметь
- считать/залить настройки текущей модели (ну только это собственно сейчас и реализовано)
- cчитать/залить настройки всех моделей, возможно вместе с остальными параметрами лежащими в EEPROM
- организовать систему закладок (одна модель-одна закладка). На закладке будут собраны все параметры одной модели. Параметры модели можно будет считать с передатчика или загрузить из файла. Также можно будет сохранить отредактированные параметры с любой закладки.
делать автоматический перенос параметров пока не планирую - можно ненароком нужные настройки убить.
Может есть еще какие идеи/пожелания по поводу связи с компом. Запал вроде еще не остыл…
А, насчет “панели” и конструктора мысль верная. Жаль что я когда пустился во все тяжкие и начал править прошивку не пошел по этому пути.
Сейчас вспомнить что и где модифицировал уже нереально.
С уважением,
Евгений Зайцев
Всегда можно сравнить результаты своей работы и исходников, на которых базировался.
Есть прекрасные системы сравнения текстовых файлов. Открывают два окна рядом и показывают какие строки добавлены, какие изменены, какие удалены.
Я пользуюсь встроенным "Фрегат"овским; наверняка есть, например, какой-нибудь плагин к Total Commander и т.п.
а кто нить встречал программы которые их .hex файла могут сделать бинарник и наоборот?