Самодельный передатчик (часть 2)

ubd

В качестве вч модуля хочу применить ВЧ модуль 40 MHz WFLY RF MODULE Type WFTRF01-FM.

Все модули на 35 или 40 мгц, работают от 8-ми аккумуляторов MI-MH/Cd. В заряженном состоянии, напряжение где то 11В. Так же с успехом можно применить 3 банки Li-po. Многие Li-po используют, и я в том числе. В кодере предусмотренна программируемая сирена на разряд аккумулятором, т.е. для 3-x банок Li-po, сирену на 10В настраивать нужно.

Aleksey_Gorelikov
ubd:

Все модули на 35 или 40 мгц, работают от 8-ми аккумуляторов

Не стоит быть так котегоричным. Модули от мультиплекса к примеру являются исключением из этого правила.

oskar
EagleB3:

+1
Проверка дальности действия - это в первую очередь функционал передатчика.
А уж смотря по тому как в нем включается режим проверки дальности - может быть можно и кодер такой фишкой снабдить.

Ежели, скажем, используется Футабовский модуль от 6EX, то в нем вроде как можно. PigTail это убедительно показал снятыми осциллограммами, но в живую такую фишку еще никто не делал/не публиковал.

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

EagleB3

КМК, фишка интересная. Юзефульная для мегагерцовых апп.

А реализовать, сдается мне, не сложно. Перекладывать выбранный канал от Min до Max в пределах, установленных для одиночного расхода.

Интерфейс - в “Опциях”. Выбор канала, который будет использоваться для проверки и “On/Off”.
Выбор можно ограничить, КМК, первыми четырьмя каналами. По умолчанию - РН. Канал, проверяющийся функцией проверки положения ручки газа при старте аппы, из допустимых для выбора исключить.

Выбранное значение канала для проверки можно в EEPROM не сохранять (смысл не велик, КМК, а места мало). При входе всегда режим = “Off” и канал по умолчанию. Перевыбрать не трудно.

Режим проверки дальности - только пока аппа отображает этот пункт меню и состояние режима “On”. При выходе из этого пункта меню принудительно переключать состояние проверки в “Off” и выходить из режима проверки.

Или?..

P.S. На всякий случай - если модель = электричка, и если на приемнике FailSafe настроен в ненулевое значение в канале газа, то будьте готовы к тому, что мотор на модели, которую Вы держите в руках и уносите от передатчика, может включиться в самый неожиданный момент! И аппа этому никак не помешает (ни T-Cut’ом ни еще как) - это автономная настройка приемника.

ВитГо

и 3-ий канал лучше тоже заблокировать от изменений в режиме проверки… !
про файлсейф лучше напоминать при включении режима !

EagleB3

Газ не везде третий. Поэтому я и предложил принцип “Кого проверяем на ручку - тот и газ”.
Если кто себе переопределит газ в дефайнах - то и блокировка при проверке дальности переопределится автоматически.

Поминалочку - да, это правильно.

… “Осталось уговорить Рокфеллера!..” (с) Старый анекдот.

Lordik5

Вот читаю ваши мнения по поводу новой v1.9, и облизываюсь- дисплей-то у меня “перевёрнутый”,и залить 1.9 я не могу.Может,кто уже скомпиллил её под перевёрнутый 3310 ?Поделитесь,пожалуйста…😦

msv

Утром прочитал о предлагаемой фишке, днем осознавал чего и как…, а тут уже столько написано… 😃
А мои “думы” такие -
функция нужна не столько для проверки дальности, сколько для комплексного тестирования всех систем вплоть до “на отказ”. Проверяется ведь вся цепочка: и электроника пульта, и приемник, и машинки, и привода. Запустить скажем на часок и пусть дергается до опупения… Посматривать что не глючит ли приемник (вроде бы на 2.4 такое бывает…), ничего не заедает, а в конце теста пощупать как нагрелся BEC… Вообщем, имхо, весьма полезно.
Шевелить будем не выходные каналы, а виртуально двигать все ручки и щелкать тумблеры. А дальше пусть все идет своим чередом: расходы, микшеры итп…
Что-бы не нагружать меню тестирования, в меню Contorls для каждого органа управления (канал газа ДВС-никам тоже неплохо подергать) будет добавлен параметр, что-то типа testing, где можно указать с шагом скажем 100мс время “перекладывания” из одного крайнего положения в другое. 0 в этом параметре- не участвует в тестировании. Ну и дальше в Options добавить “Testing” “On/Off”.
Осталось подождать когда желание сделать это, совпадет со свободным временем… 😃

EagleB3

КМК, даже при таком сурьезном подходе есть смысл разнести на два вида - “Проверка дальности” и “Полный тест”. “Проверка дальности” будет базироваться на функциях, написанных для “Полного теста”.

Ну, все таки проверка дальности бывает чаще, и ползать по куче настроек (даже просто взглядом…) когда надо только чтобы один канал дергался - не гут…

Aleksey_Gorelikov
oskar:

такая фишка есть в дорогой Футабе.

Есть и в дешевой турниджи 😃

oskar

Да ребята - хотел маленькую функцию в помощ а вишла огого

[QUOTE=EagleB3;1898745]КМК, даже при таком сурьезном подходе есть смысл разнести на два вида - “Проверка дальности” и “Полный тест”. “Проверка дальности” будет базироваться на функциях, написанных для “Полного теста”.

Мож проще одну функцию а в нее окошки и ставь галочки чем управлять будет , а по выходу из функции автоматически отмена ?

EagleB3

Да все можно. Но вот представь: приехал ты на поле, летать надо; солнце уходит, дни короткие - а ты галочки расставить должен.

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

На той же Футабе 6EX проверка дальности запускается тривиально: кнопочку на панельке зажал перд включением аппы - и готово. Минуту попискивает, работая в режиме ограниченной мощности, а потом сама из него выходит.

=============================================
Кстати! На тему поисковой сирены мы недавно говорили…

Если на приемнике есть файл-сейв и некоторый избыток каналов, то на неиспользуемом канале поставить файл-сейв в 100%. И сирену на него. Выключил аппу - сирена воет.

У Lordik5 - Assan, а на ассановском приемнике такая фича точно есть - файл-сейв настраивается на каждом канале индивидуально.

…А у меня сейчас неясные мысли, как бы нашу аппу заставить файл сейв на Ассане программировать. Один из способов программирования - поставить ручки аппы в требуемое положение перед включением приемника.

…Кстати, проверку положения ручки газа при запуске аппы, наверное, надо бы вынести на настройку в меню, в разрезе модели. Если на модели стоит регулятор с проверкой газа при подаче питания - эта проверка пользы не добавляет, а программированию Fail-Safe (если он программируется таким образом, как в Assan’е - вредит).

msv

…солнце уходит, дни короткие - а ты галочки расставить должен.

Ну “галочки” и дома расставить можно. Настройки сохранятся в eeprom для модели. Комплексная проверка всего чего можно нужна не так часто, согласен, но потом можно задать тот минимум, который нужен для поля.

…если он программируется таким образом, как в Assan’е - вредит…

Не в теме, каким образом вредит? Как там программируется FailSave? (Можно в личку)

EagleB3
msv:

Не в теме, каким образом вредит? Как там программируется FailSave?

“Вредит” - я, наверное, выразился слишком сильно, сорри. Скорее, требует лишних телодвижений.
Суть такая: передатчик при включении запоминает состояние каналов как “Файл-сейф”.
Стало быть, чтобы этой фичей воспользоваться, надо:

  • включить аппу (со стиком на минимуме),
  • передвинуть стик газа в “Файл-сейф”, причем на глазок;
  • передвинуть все остальные регуляторы (хотя, строго говоря, они в нейтральном положении, а оно и должно соответствовать “Файл-сейф”. Но не факт!);
  • включить приемник;
  • убрать газ в нуль.

…А как в эту схему вплетать калибровку регулятора (при подаче питания на регулятор сигнал с приемника = ручка газа на максимуме, потом ручка убирается в ноль <=> вот и рабочий диапазон) - так пока сам для себя решить не могу… 😃

Правильным решением, конечно, было бы программировать “Файл-сейф” на приемнике ассановским фирмешным USB-шным переходником. Но это ж надо его где-то взять…

Simmer
EagleB3:

Правильным решением, конечно, было бы программировать “Файл-сейф” на приемнике ассановским фирмешным USB-шным переходником. Но это ж надо его где-то взять…

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

Вот возник такой вопрос… только не пинайте сильно. Не для кого не секрет, что частенько народ использует в своих передатчиках два ВЧ модуля (один FM, второй 2,4). Вот мне и подумалось о том, что может есть возможность сделать так, что при использовании FM ВЧ модуля в прошивке присутствовали все, изначально заложенное функционалом, а при использовании ВЧ модуля на 2,4 Ггц излишний функционал отключался. Извините если криво описал, но что то с мыслями сегодня бардак полный))))).

ADima
Simmer:

Вот мне и подумалось о том, что может есть возможность сделать так, что при использовании FM ВЧ модуля в прошивке присутствовали все, изначально заложенное функционалом, а при использовании ВЧ модуля на 2,4 Ггц излишний функционал отключался.

Чтото не понял что считать излишним функционалом?

EagleB3

“Лишний” для 2,4ГГц только пункт меню “Frequency”. Не ходите туда - и будет счастье.
Если все же зайдете и что-то там прошуршите - ни на что оно не повлияет.

И еще значение/индикатор и пиктограмма “ток антенны”.
Но:

  1. У msv вроде были мысли приделать и для 2,4ГГц какой-то юзефульный измеритель на этот параметр.
  2. Отображением тока и пиктограммы на дисплей довольно просто рулить программной настройкой. Надо только добавить эту настройку в “Опции”.
  3. Рулить поведением пункта меню программной настройкой Тоже можно. А вот начисто исключить пункт “Frequency” таким образом - очень тяжко, КМК.

…Я в своем варианте программы сделал условную компиляцию.
#define AntennaCtrlUse” в начале Coder.c и “#ifdef AntennaCtrlUse” далее по текстам.
Убрал два слеша - все как обычно. Поставил два слеша = 2,4ГГц.
Если не используются 2,4ГГЦ и МГц попеременно - все окейно.

Simmer

EagleB3 совершенно прав. Я и имел в виду то, что он сказал. Сегодня мысли немного более в порядке и немного подробнее опишу, что я хотел сказать. Я предлагал добавить в схему еще один переключатель, который бы переключал бы ВЧ модули и при этом делал бы активными (или не активными) пункты меню о которых говорилось выше.

max-umc
EagleB3:

Думаю, выделить изменения (по всем файлам проекта…) - практически не реально.

Зато есть куча софта, который позволяет сравнивать текстовые файлы, причем делает это вполне интеллектуально. Показывает добавленные, удаленные и измененные строки.
Сам я пользуюсь встроенной утилитой “Фрегата”, поэтому сторонними никогда особо не интересовался; но точно знаю - они есть.

Вот так это выглядело у меня (я перепирал изменения MSV 1.9 в свои исходники, клонированные от MSV 1.8):

В общем-то выделить изменения по всем файлам проекта достаточно реально. Для этого существует такая штука как cvs.

Denn

Немного поразмышлял над алгоритмом обработки канального импульса.
Специально не смотрел на исходники MSV.
Получилось следующее:

  1. Получаем данные АЦП или тумблера.
  2. Получаем Rate для каждой стороны рулевой машинки.
  3. Обрабатываем кривую, где +100 и - 100 – это Rate , причём своё значение для верха кривой, и для низа.
  4. Здесь добавляем миксеры и отсюда же берём выход для миксера на другие каналы.
  5. Добавляем субтриммер, просто сдвигая характеристику.
  6. Окончательная проверка значения по <= EPA для каждой стороны.

Про виртуальные каналы:
мне кажется , что источником виртуального канала должно быть данные АЦП или тумблера исходного канала.
Так будет меньше непредсказуемых реакций при программировании режимов.

А может всё так и есть сейчас?