Самодельный передатчик (часть 1)
Остался вопрос который тут уже - что за вольты кажет дисплей? у меня сейчас 4.5в при питании от 8банок
делитель 1-10 как на схеме в пдф
Там нужно резистор R2 подобрать. Подобрать так что бы напряжение на индикаторе соответствовало действительному на аккуме. У меня где то 4,7 К получилось. Там же простой делитель. Просто разобраться же.
Второй вопрос какое напряжение выставлять подстроечником R4 ?
я сейчас выставил на ощупь чтоб калибровка примерно в центре была.
но границы не чётко отрабатываются иногда уже край квадрата а ход ручки ещё есть…
Напряжение должно быть чуть больше чем выходит с резисторов. Где то вольта 2,5 - 3 В. Я просто на глаз подобрал, так что бы работало всё.
трейтий вопрос - почему то периодически бузер начинает пикать на другой частоте то выше то ниже. Это что кварц на разных частотах запускается
или бузер подгорает?
Поменяй пьезик. Видимо дохловатый попался.
И вопрос ко всем. А ЭТОТ КОДЕР РАЗВЕ НЕ 8 КАНАЛЬНЫЙ? Я к нему собрал 8-ми канальный приёмник и
всё работает.
PS. A7 просто не используется. Он зашунтирован конденцатором.
Второй вопрос какое напряжение выставлять подстроечником R4 ?
я сейчас выставил на ощупь чтоб калибровка примерно в центре была.
но границы не чётко отрабатываются иногда уже край квадрата а ход ручки ещё есть…
rcopen.com/forum/f8/topic28745/400
Это было раньше. Можно былоб почитать форум самостоятельно и найти ответы.
Забыл спросить а в калибровочном окне нижняя полоска - индикатор под квадратами что отображает?
у меня она дублирует один из джойстиков причём вправо(правые процентов 20) просто исчезает и появляется аж с краю экрана с другой стороны.
АЦП запаяны только 4 потенциометра и батарея
Эта полоска показывает 5-й пропорциональный канал.
Забыл спросить а в калибровочном окне нижняя полоска - индикатор под квадратами что отображает?
у меня она дублирует один из джойстиков причём вправо(правые процентов 20) просто исчезает и появляется аж с краю экрана с другой стороны.
АЦП запаяны только 4 потенциометра и батарея
Это просто АЦП проца глючит, так как вход висит в воздухе. Если подпаяешь резюк - все будет ок, будет еще один канал.
Насчет калибровки, что убегает - это еще один глюк, но калибруется нормально, покрайней мере если сначала двигать резюк в максимум, а потом в минимум глюка не будет… А! Во! Вспомнил!!! Еще неплохо бы с этим резюком поставить парочку последовательно, чтоб напряжение не уходило за пределы напряжений джойстика в крайних положениях.
Насчет резюка, на АРЕФ, его надо задвинуть в крайнее положение, т.е. на напряжение поданное на резюки. В противном случае повышая точность ацп мы теряем линейность. (нейтараль - вовсе не нейтраль, видно при калибровке). Выход?!? Диф. вход АЦП решит проблему, но Женя почему-то от него отказался… Почему??? Да потому, что с его резисторами (Хайтек) все клево, ибо у них ход равен ходу ручки. Наверно по этому… Соответственно, на АРЕФ у него, скорее всего 5в.
Вот испаравленная прошивка. Исправлен глюк с восьмым каналом, поменяны местами триммеры на дисплее (Для Ubd). Скорость триммера уменьшена вдвое.
кто- нибудь пробовал собрать кодер на МЕГА8 и Индикатором от телефона например nokia3310??
По поводу использования меги 8 вот что могу сказать: про нормальное использование граф дисплея можно забыть - некуда девать буффер. Матеатика поместится. Но вот графику запихнуть проблема будет. Я делал первый кодер на меге16. Все с натяжкой влезло в нее. Прога выложена в начале ветки где-то.
Я делал первый кодер на меге16. Все с натяжкой влезло в нее.
Очень увлекаетесь конструкциями вроде lcd_pixel(8,24,1); Это занимает много места и работает долго. Напишите функцию вывода спрайтов и задавайте картинки (спрайты) в виде констант. Так как рисунок ч/б то можно кодировать 1 бит = 1 пиксел; это даст экономию по памяти и быстродействию.
Насчет резюка, на АРЕФ, его надо задвинуть в крайнее положение, т.е. на напряжение поданное на резюки. В противном случае повышая точность ацп мы теряем линейность. (нейтараль - вовсе не нейтраль, видно при калибровке). Выход?!? Диф. вход АЦП решит проблему, но Женя почему-то от него отказался… Почему??? Да потому, что с его резисторами (Хайтек) все клево, ибо у них ход равен ходу ручки. Наверно по этому… Соответственно, на АРЕФ у него, скорее всего 5в.
И что, нет смысла в этом переменном резисторе? Дело то в том что 5-ти килоомный резистор перемещается всего на 1 К в одну сторону и в другую 1К - амплитуда примерно 2К. Если подать на него 5В, то на выходе будет - в крайнем нижнем положении ручки 1,5В а в верхнем положении 3,5В. А на AREF нужно подать немного больше того что подаётся на аналоговые входы АЦП. Т.е. оптимально 4В. Значит этот переменный резистор очень нужен. В принципе, будет и с 5В работать… А линейность, линейность будет, ведь калибровка на то и нужна…
Focus, огромное тебе спасибо! Завтра прошъю на работе и посмотрю как всё будет работать.
Удачи всем!
А линейность, линейность будет, ведь калибровка на то и нужна…
Дык тогда надо всю логику подправить. Появившуюся нелинейность калибровка не спасет. Прошьешь - упидишь, при калибровке - “глазки” будут косые. Собственно и нейтраль машинок - тоже. С шайтековскими джойстиками проблем то нет, т.к. резистивное покрытие у них только в рабочем диаппазоне хода ручки. Тут как раз ставишь 5 вольт (или выкидываешь резистор) и все нормально, “глазки” не косые. А в вашем случае именно диф. вход предпочтителен.
А вопрос как один контрол засунуть в два канала с разными кривыми?
Это нужно во всех вертолётах с коллективным шагом
кривые шаг газ с одной ручки снимаются и могут быть весьма произвольными.
Насколько я понял кривая привязана к контролу и как тогда быть?
Последнюю прошивку ещё не пробовал а на этой при попытке зайти в users1 или users2 вешается и через несколько секунд сыпет мусор на экран
Переключатели режимов не запаяны. кроме нормала.
Focus, ты перепутал. Я просил поменять местами руль высоты и газ, а ты поменял местами элероны и руль поворота. Теперь получается что перепутаны тримера на всех органах управления.
А чувствительность тримеров, более менее нормальная стала. Хотя говорить так уверенно я не буду, нужно в полёте попробовать. Пока так оставим.
Focus, пожалуйста поправь ещё раз…
Ждём следующую версию…
_________.rar Дело то в том что 5-ти килоомный резистор перемещается всего на 1 К в одну сторону и в другую 1К - амплитуда примерно 2К. Если подать на него 5В, то на выходе будет - в крайнем нижнем положении ручки 1,5В а в верхнем положении 3,5В.
Вот таким образом изменил резисторы,хотя про токопроводящий клей уже писали.
Дискретность около 800
Поспешность и мерзкое отсутствие осцилоскопа сделали своё злое дело - начал летать на фпшнике - и прикладывал по комнате пока не сломал обе лопасти.И это при том что он у меня отстроенный и нормально управлялся на родном пульте.
Проблема переползания с китайских прошитых пультов следующая - надо точно знать что у них шло с каналов - сколько мс центр и каков размах. Потому как в делюксе пашет замечательно а на верте - не управляется нифига причем не сразу понятно почему.
Вопервых надо точно выставить центр по рудеру иначе гиры не хватает в какую либо сторону.
Во вторых я не знаю где китайцы замикшировали ревомикс - на пульте или на приёмнике
Поэтому повторяю свой вопрос - как отдать контрол (тягу) в два канала
в данном случае тяги и микс рудера - с разными кривыми?
Пожелание к прошивке будет такое - возможность замерять оригинальный и свой ппм и казать в цифрах
например в окне калибровки
Поэтому повторяю свой вопрос - как отдать контрол (тягу) в два канала
в данном случае тяги и микс рудера - с разными кривыми?Пожелание к прошивке будет такое - возможность замерять оригинальный и свой ппм и казать в цифрах
например в окне калибровки
Есть каналы Юзерс. Заходишь в меню, там выбираешь с какого джойстика брать инфу и забиваешь свою кривую. Проще некуда, все интуитивно понятно.
Есть каналы Юзерс. Заходишь в меню, там выбираешь с какого джойстика брать инфу и забиваешь свою кривую. Проще некуда, все интуитивно понятно.
понял
они у меня как раз и не работают 😦 вешают пульт
буду сегодня пробовать последнюю прошивку что фокус для ubd выложил
Focus, ты перепутал. Я просил поменять местами руль высоты и газ, а ты поменял местами элероны и руль поворота. Теперь получается что перепутаны тримера на всех органах управления.
Мои извинения… 😃 Вот, поправил.
они у меня как раз и не работают вешают пульт
буду сегодня пробовать последнюю прошивку что фокус для ubd выложил
Она такая же как и предыдущая, только изменена скорость и привязка триммеров.
Мои извинения… 😃 Вот, поправил.
Она такая же как и предыдущая, только изменена скорость и привязка триммеров.
Пришлось потереть еепром - полечило.
Припаял два потенциометра на проп и ад1
проп не каибруется и рисуется с ошибками - курсор кидает влево с определенной правой позиции.
мелкий недочёт - в меню controls назавания смещены на 1 писель вверх.
при введении имени модели последние буквы не отображаются сразу - только после перезагрузки
после некоторых действий разваливается max ch количество каналов - рисуется мусор и не работает.
Пришлось потереть еепром - полечило.
А нужно было пямять ЕЕПРОМ, сохранить отдельным файлом, а после обновления программы, загрузить его опять - все бы настройки сохранились…
Припаял два потенциометра на проп и ад1
проп не каибруется и рисуется с ошибками - курсор кидает влево с определенной правой позиции.
ад 1 не существует. Как я понял, есть только пять пропорциональных канала - элероны, руль высоты, газ, руль поворота и дополнительный канал, он подключается к 61 ноге, т.е. ADC0. Вот он как раз калибруется нормально.
мелкий недочёт - в меню controls назавания смещены на 1 писель вверх.
У меня всё нормально.
при введении имени модели последние буквы не отображаются сразу - только после перезагрузки
Это не страшно, можно питание выключить и включить. Лиш бы всё остальное работало…
А нужно было пямять ЕЕПРОМ, сохранить отдельным файлом, а после обновления программы, загрузить его опять - все бы настройки сохранились…
дык изза неё как раз и не работали юзерсы Поэтому пришлось тереть.
ад 1 не существует. Как я понял, есть только пять пропорциональных канала - элероны, руль высоты, газ, руль поворота и дополнительный канал, он подключается к 61 ноге, т.е. ADC0. Вот он как раз калибруется нормально.
а у меня такое впечатление что зашкал идёт.
Фокус, калибровка всех джойстков независима друг от друга?
Китайцы в моём пульте применили 5к резюки и задействовали среднюю зону 3.4к оставив по краям 810ом мёртвые зоны
А на пропы я поставил резюки на 20к …
У меня всё нормально.
не может быть. Зайди в controls потом в ailerons и увидишь что надпись вверху - Ailerons подпрыгнула на пиксел
Это не страшно, можно питание выключить и включить. Лиш бы всё остальное работало…
Это да но вот то что макс ch может развалиться напрягает. Вчера сделал модель - для сима назаначил 8 каналов и забыл
сегодня сунулся туда - мусор вместо цифры 8. Причём это не просто на экране мусор - оно в натуре не работает.
Вопрос: отображаются только три режима. Все остальные тумблеры давишь вслепую? swXX, kmodX, дуалы…
нигде не индицируются?
Из пожеланий:
калибровочный экран под mode2 переделать
сделать монитор всех контролов в цифре и миллисекундах
добавить проп2 на всякий случай - на вертолётных пультах до трёх крутилок бывает
скоро приедет ccpm верт и тогда точно всё скажу
Залез в код
по поводу смещения на пиксель - да стоит 7 а не 8 в этих меню. Поправил.
по поводу prop
в math.c он присваивается ad[7] которого не существует - при компиляции ворнинг
есть подозрение что он не идёт в канал в результате этого.
if (AD[4]>0) input[7]=AD[4]*Kmax[4]/10;
else input[7]=AD[7]*Kmin[4]/10;
по поводу калибровки prop
я вывел в эран калибровки все значения в цифре AD[x] и проч
ubd - если у тебя калибруется нормально то значит у тебя абсолютное значение с ацп значительно меньше 1023
А у меня со всех джойстиков максимум 1023. Бага в следующем
В коде рисуется палка длиной 50 писелей и маркер.
x2=(AD[4]-ADmin[4])*50/(ADmax[4]-ADmin[4])+23 ;
lcd_rectangle(23,50,73,52,1);
lcd_fillrect(x2-1,48,x2+1,54,1);
как видно при умножении чисел от 656 до 1023 на 50 результат переполняет двухбайтовую внутреннюю переменную.
поэтому следует либо уменьшить длину полозка до 31 либо както навязать longint в процессе вычисления -
я не спец в си.
Фокус!Желательно проверить весь код на переполнение в процессе вычислений.