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

ADima

дисплей тут явно не при чем. на АЦП выходит ещё JTAG проверь фьюз выключен или нет. Хотя если мне не изменяет память если фьюз включен то на 1 и 2 пине порта 4,5 висят постоянно.

EagleB3

А какая версия прошивки? Откуда бралась?

Воля Ваша, но, КМК, что-то не ладное творится с цепями AVcc/ARef/AGnd.
Проверьте качество пайки всех дорожек и всех деталей, начиная от того места, в котором от +5V отпочковывается то, что в конце-концов даст AVcc и ARef. Может быть, плохое качество у подстроечника R18.
Прошивку - с дисплеем. В режиме цифрового монитора каналов.
И двигайте там стики, ловите свой отказ.

Если Вы с такой уверенностью ловите этот глюк с трехкратным движением стика газа - погоняйте стики таким же образом в режиме в режиме калибровки. Потом отресетьте EEPROM и сделайте то же самое еще раз.

sasas

Прошивка от dollop под неоригинальный дисплей 3310, печатка от него же под HobbyKing. Во время глюка на экране ничего не происходит,все так же. В режиме монитора явно видно что расход по каналу элерона уменьшается с началом работы и не восстанавливается до перезапуска. Кстати при экспериментах выявилось, что возможно зависание как в максимум так и в минимум. Чаще в максимум. Jtag действительно включен оказался. Сейчас не дома, буду завтра попробую перепрограммировать. Это может действительно влиять? Потому что все остальное раз 20 проверено.

ADima
sasas:

Jtag действительно включен оказался. Это может действительно влиять?

У меня влияло и очень сильно.

EagleB3
sasas:

В режиме монитора явно видно что расход по каналу элерона уменьшается с началом работы и не восстанавливается до перезапуска

Только по каналу элерона?
А реально, тестером? Что в начале, что в конце? Что на верху потенциометра, что внизу, что на движке, что на ноге МЕГИ?
Сравнить с другими?
Перекинуть провода потенциометров РВ и элерона (причем все три, и на плате!) - глюк останется в канале элерона или переедет на РВ?

sasas

Коллеги! Коллективный разум побеждает!
Вроде починил я свою игрушку. Действительно включенный фьюз JTAG оказывает такое влияние. Вот уже почти 3 часа гоняю по-всякому и все работает!
Еще буду присматриваться, если за 2 дня не глюкнет-значит победа.
Будут проблемы обязательно поделюсь.
Вот что в итоге вышло.
Всем кто принял участие в моей проблеме- огромное спасибо!

sashok17

Где можно почитать какие функции имеются в кодере?

Нашел…

sashok17

В общем надумал собирать этот кодер sites.google.com/site/samocoder/…/mainstream_msv Прошивка 1.9.1. Но, в спектруме 5 на стиках переменные резисторы сопротивлением 12Ком, а надо 5 (да и к тому же с малым ходом), потом к этой прошивке просто так родной спектрумовский ВЧ модуль не соединить без исправления прошивки (этого я к сожалению делать не умею=( ). Что посоветуете?

EagleB3

Посоветуем понять то, что:

  1. Программа микроконтроллера работает по отсчетам АЦП (привыкайте к буржуйской аббревиатуре ADC);
  2. ADC измеряет не сопротивление потенциометра, а напряжение на ноге микроконтроллера.
    От напряжения 0В до напряжения на ноге ARef укладывается 1024 значения (“тика”) ADC, включая края.

Разверните потенциометры так, чтобы крайнее положение стика (условно - левый или нижний) находились у края колодки +5 градусов поворота. На другой край колодки подайте +5В (если надо - можно и больше, но это с ухищрениями. И потенциально не безопасно для микроконтроллера).
Допустим, полное отклонение потенциометра = 300 градусов, имеем 300/5 = 60 градусов на вольт, или 1/60 вольта на градус.
Отклонение стика (обычно) = 60 градусов. Тогда после полного отклонения стика получите 60+5=65 градусов.
Еще 5 градусов будем “иметь в виду” с другого края, как защиту от переполнения разрядности АЦП. Итого надобно оцифровать 70 градусов колодки. На угле отклонения 70 градусов напряжение движка должно быть
70*(1/60)=7/6=1,16(6)В
Дайте на ногу ARef напряжение = 1,16 вольт. Получите примерно 1023/70=14,6 тиков ADC на градус.

Тогда на нижнем (левом) краю хода стика ADC выдаст значение 73 (помните про 5 градусов смещения? 5*14,6=73),
На верхнем (правом) 1023-73=950.

И заметьте, мы нигде вообще не вспоминали про номинальное сопротивление потенциометра.
Важно только чтобы все потенциометры были одинакового номинала и линейными.

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

jonison
sashok17:

В общем надумал собирать этот кодер sites.google.com/site/samocoder/…/mainstream_msv Прошивка 1.9.1. Но, в спектруме 5 на стиках переменные резисторы сопротивлением 12Ком, а надо 5 (да и к тому же с малым ходом), потом к этой прошивке просто так родной спектрумовский ВЧ модуль не соединить без исправления прошивки (этого я к сожалению делать не умею=( ). Что посоветуете?

По поводу сопротивлений 12ком в спектруме это норм работать должен хорошо.
а про вч часть с пятерки кажется кто-то из севастополя выкладывал исходники
перетянуть в прошивку 1.9.1 алгоритм работы дсм2 большого труда несоставит
если надо помощь стучи в аську
упс за меня ответили пока писал 😃

Spektrum DX5
forum.rcdesign.ru/search.php?searchid=106159
вот что выдал поиск по сайту
rcopen.com/forum/f8/topic28745/1545
а вот вариант исполнения

Dj_smart
EagleB3:

И заметьте, мы нигде вообще не вспоминали про номинальное сопротивление потенциометра.

Ну да. Только тогда думаю они могут быть даже разными. Важна лишь линейность. Можно и без математики:). По ссылке указано выставить образцовое на 10-20% больше максимально выдаваемого стиком. И всё.
Но математически… придаёт уверенности:).

EagleB3
Dj_smart:

По ссылке указано выставить образцовое на 10-20% … И всё.
Но математически… придаёт уверенности.

Я бы сказал чуть по-другому:
инструкции “выставить образцовое на 10-20%” достаточно для того, кто верит.
А математика необходима тому, кто хочет понять.

P.S. Кстати, да. Потенциометры могут быть разного номинала, но линейные и на одинаковый угол полного отклонения.

EagleB3

А еще совсем-совсем кстати! Вышел CodeVision AVR версии 2.05.0 !
Как и все версии от 2.04.06 и старше, он должен нормально работать под Windows7.

Если гуглить “CodeVision AVR 2.05.0”, то в интернете легко можно найти всю интересующую информацию об этой версии.

jonison
EagleB3:

Я бы сказал чуть по-другому:
инструкции “выставить образцовое на 10-20%” достаточно для того, кто верит.
А математика необходима тому, кто хочет понять.

P.S. Кстати, да. Потенциометры могут быть разного номинала, но линейные и на одинаковый угол полного отклонения.

даже без угла отклонения главное линейность

ADima

А входное сопротивление АЦП несколько МОм так что номинал переменников может менятся достаточно в больших пределах
PS:Кстати для тех кто не внимательно читал документацию на мегу, ниже 1В подавать на Aref бессмысленно так как это минимальный предел сравнения АЦП
PPS: На самодельном пульте, что взял у Юры на 5кОм переменниках у меня получается 1,2В при максимальном отклонении стика, углы не знаю не мерял.

crafter

Сделал первый шаг к кодеру - отфрезировал основную плату. Буду тихонько переделывать Futaba 6EX. Только одна неувязочка, дисплея tic154 поблизости не нашел, можно будет на этой плате использовать дисплей 3310? Или все же tic154 поискать? Как сделать, переходы с одной стороны платы на другую? И последний вопрос, кто нибудь менял в аппаратуре потенциометры на не штатные, (исключая безконтактные)?

sashok17

Ух, ты! В первый раз вижу чтоб платы делали путем фрезеровки. Я фоторезистом делаю:)

МаркАнтоний

А зачем надо было фрезеровать? Почему нельзя протравить?
Я переходы делаю так: беру монтажный провод, снимаю изоляцию, распускаю на отдельные “волоски” и вставляю эти волоски в отверстия где неоходима двухсторонняя пайка. Даже если туда будет вставляться ножка какого либо элемента. Это особо актуально при пайке разъёмов, потому что с одной стороны можно запаять ножки а вот с другой стороны корпус разъёма мешает пропаять. А в моём случае там уже проволочка запаяна.

sashok17

Переходы можно сделать вставив проволочку и припаяв с обеих сторон.

МаркАнтоний
sashok17:

Ух, ты! В первый раз вижу чтоб платы делали путем фрезеровки. Я фоторезистом делаю:)

Я тоже фоторезистом пользуюсь, плёночным.