Activity

Программирование аппаратур семейства IMAX 9x/TURNIGY/EURGLE/FLYSKY

Осмелюсь поправить. Емкости с кварцем образуют П-образный фильтр, для работы только на основной частоте (он и на гармонике может работать). А плохой запуск кварца связан в первую очередь с качеством самого кварца (если только не “подсел” генератор в проце), чаще всего - обрыв тоненького волосочка от кристалла до вывода. Если такой кварц запустить (а это возможно, через емкость зазора он будет работать), а потом постучать по нему пальцем, то будет видно амплитудную модуляцию выходного сигнала. И если стукнуть сильнее, то генерация оборвется.
Производители некоторых процев рекомендуют вешать параллельно кварцу 10 Мом для надежного запуска, но это связано с особенностями генератора, не кварца. Так что в нашем случае с мегой (без 10 Мом) кварц нужно заменить, так как не исключен его отказ в работе. К плохому запуску приводит также “грязь” на плате в районе кварца, создающая утечки и паразитные емкости, а также “плохие” (треснутые, непропаянные) емкости П-фильтра.

Наш ответ Китаю - Прошивка для TURNIGY \ EURGLE \ FLYSKY 9x

сейчас принято решение уйти с АВР на АРМ поэтому прошивка будет переписана под новый процессор (32ух битный STM32F100R

Значит ли это, что и нам уже пора в Турнигу готовить платку-адаптер под Кортекс?

Наш ответ Китаю - Прошивка для TURNIGY \ EURGLE \ FLYSKY 9x

Кто нить сможет проверить ? а то я в коммандировке - проверить не смогу до 16 декабря…
После проверки я обновлю ссылки на прошивку в шапке дневника…

До проверки уже стоял негатив, после прошивки 2311 (с чистым eeprom) встал позитив, после заливки епрома вернулся негатив. Т.е. по-умолчанию остался позитив…

VCoder2 - Новая версия ПО для Turnigy/Eurgle/FlySky 9x
msl_272

Если округлять промежуточные результаты в вычислении, то априори результат точным получить невозможо. Надо поставить правильный порядок вычислений с округлением конечного результата.
Для 0: 0*200/963+min= 0/963+(-100)=0-100=-100
Для 500: 500*200/963+min=100000/963+(-100)=103-100=3
Для 963: 963*200/963+min=192600/963+(-100)=200-100=100
Как видите все абсолютно точно!

ВитГо

гм… сейчас посмотрю !

Все именно так! Только сам бы я по-жадничал тратить кучку тактов на реальное умножение… а на сдвиг - не жалко 😃

VCoder2 - Новая версия ПО для Turnigy/Eurgle/FlySky 9x

Для сохранения точности до 3-го знака после запятой можно ввести множитель степени 2-ки. Тогда цена деления будет 963*1024/201=4906. Текущее показание 500*1024/4906 - 100=104-100=4. Максимум 963*1024/4906 - 100=201-100=101. Что уже значительно лучше. Увеличивая степень двойки можно увеличить точность…
Да… тут 201 правильный ответ получается, т.к. цену деления искали для 201 участков. А надо было для 200.

Наш ответ Китаю - Прошивка для TURNIGY \ EURGLE \ FLYSKY 9x
ВитГо;bt61481

гм… у меня нет кошельков 😦(( как то никогда не пользовался ими (плачу обычно картой, но easyelectronics не работает с пайпал 😦
может быть ктото предложит свой кошель да соберет сумму ?

кстати, а что лучше WM или яндекс деньги ?

Завести кошелек вебмани - дело 6 минут… Тем более, что этот магазин их принимает…

msl_272;bt61498

Нефиг мозг забивать всяким WM и т.п. Банковская карта у тебя есть, этого достаточно. Сходи в банк или посмотри договор на твою карту. Нужно здесь выложить

  1. ФИО
  2. Название отделения банка, его БИК и кор/счет
  3. Номер карточного счета для перевода или пополнения карты.

Я считаю, по 200 р для продолжения общего дела мы тебе организуем.

Банковские счета контролируются налоговыми органами, благотворительность тоже облагается… вряд ли я стал публиковать номера своих счетов…

VCoder2 - Новая версия ПО для Turnigy/Eurgle/FlySky 9x

Если пользователь установил предел от 1200 до 1800 мкс, то в этих точках должно наступать ограничение независимо от установленных субтриммеров.

Совершенно согласен. Иначе смысл в мин/макс пропадает. Я эти величины именно по отзыву серв настраиваю, как и указано в мануале…

Если же пользователь ставит ограничение отклонения руля от +30% до -30%, то руль должен отклоняться на указанные величины относительно субтриммированной точки.

Согласен, только если первый абзац в сообщении будет верен.

Наш ответ Китаю - Прошивка для TURNIGY \ EURGLE \ FLYSKY 9x

Странно, что Вы решились на такой шаг без схемы…
Схема дома есть. Похоже, вращением резистора замыкаете питающее напряжение (не так воткнули или впаяли?). На память - они (резисторы) 5-ю вольтами питаются (верхний вывод по схеме), нижний вывод - общий, средний - сигнал. Можно тестером мерить и крутить, если 5 вольт питания падает, то исправить подключение.
Хотя, там сверху и снизу еще делители есть вроде, так что на верхнем выводе 5 вольт не будет, меньше…

Наш ответ Китаю - Прошивка для TURNIGY \ EURGLE \ FLYSKY 9x

Виталий, а что за штука такая - два треугольника наложенных друг на друга? Вентиль? А SW_SEL управление всеми четырьмя? Чет я подзабыл со времен курсовых мнемонику и графику функциональников…
А идея в том, чтоб 4-х линейные источники подключить параллельно к одному разъему и по-очередно включать их землею? Или я не так понимаю?

Программирование аппаратур семейства IMAX 9x/TURNIGY/EURGLE/FLYSKY

Вадим, а если файлы прошивки разные - то тем более дело не в прошивке а в железке или программаторе наконец…

Именно это имел ввиду… слишком вольно выразился, видимо 😃
После заливки проца он ресетится обязательно, и если Александр видел меню и полазил в нем - то и фьюзы правильные, видимо… Настораживает только “обнулили епром” - нули чтоли записали? Такого издевательства я ни разу не проделывал (не догадался) 😃. А интересно, Виталий, как прога примет нулевые сектора и служебные байты в епроме?

Слил EEPROM. Обнулил.
Перепрошил еще раз, опять не включается.

Видимо, пишется… значит и питание есть… если не от программатора только.

Программирование аппаратур семейства IMAX 9x/TURNIGY/EURGLE/FLYSKY

Фьюзы правильно поставили? Самая простая проверка - сравнить зашитый бинарник в 128-м с файлом прошивки. Если одинаковы - то дело не в прошивке. А епром ни при чем должен быть - и без него должен исправно работать… Кроме того, имеет смысл измерить напряжение 5В, не просело ли от установки подсветки? Отключить ее в конце концов можно…

VCoder2 - Новая версия ПО для Turnigy/Eurgle/FlySky 9x

Не думаю что Виталию наша болтовня интересна.

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

Мой график и отображает эту формулу графически. И не более того.

Отображал бы, если б был смещен вправо на OFS от середины sourse… вся прямая, а не только точка 2…

VCoder2 - Новая версия ПО для Turnigy/Eurgle/FlySky 9x

Опять ввод в заблуждение… Согласно логике формирования:

диапазоны получателя берем те же что и у источника

т.е. dest_min=sourse_min
dest_mid=sourse_mid
dest_max=sourse_max

Все, края и середина с этих пор определены, никаких изменений наклонов 50%-ных еще нету. Это линия 1-3 на графике. Это перевод из SOURSE в DEST. Все.
Теперь строим второй график, где по горизонтали располагаем DEST с полученными на предыдущем шаге концами и серединой, по вертикали откладываем RES (выходной сигнал):

RES = (DEST_FIN-DEST_START) * SOURCE_VAL * PROC) \ ( (SOURCE_FIN-SOURCE_START) * 100)

Вот тут, и только тут, мы получаем новый тангенс угла наклона, зависящий от PROC.

VCoder2 - Новая версия ПО для Turnigy/Eurgle/FlySky 9x
Вячеслав Мягков

получатель DEST это физическая величина выхода микшера. Без концов и середины его существовать не может.

Т.е. как это не может? Ниже четко указано, в какой момент и как образуются концы у DEST…

если PROC > 0 то диапазоны получателя берем те же что и у источника для первого случая (SOURCE_MIN<SOURCE_VAL<SOURCE_MID):
DEST_START=DEST_MIN
DEST_FIN=DEST_MID

для второго случая (SOURCE_MID<SOURCE_VAL<SOURCE_MAX):
DEST_START=DEST_MID
DEST_FIN=DEST_MAX

Вячеслав Мягков

Красная линия это как раз частная характеристика связывающая мин/макс источника с мин/мах выхода dest.

Совершенно верно! Только зачем же Вы настойчиво выдергиваете MID точку их этой частной характеристики? Это не по правилам проекции…

VCoder2 - Новая версия ПО для Turnigy/Eurgle/FlySky 9x

На пересечении с горизонталью DEST MID1 ставим точку и от начальных точек рисуем наш график.

Это не совсем корректно, точку ставим на пересечении с красной линией, мы ведь изменили ВХОДНЫЕ диапазоны, а MID1 мы сформируем из полученного SOURSE_MID источника…
Стоит, наверное, еще напомнить, что изначально у получателя (DEST) нету ни концов, ни середины… пока мы не сформировали диапазоны источника.

VCoder2 - Новая версия ПО для Turnigy/Eurgle/FlySky 9x

Именно так, только триммер войдет в выходной сигнал с учетом всех процентов и кривых, т.к. SOURSE_VAL изменен на значение триммера и

теперь рассчитаем:
RES = (DEST_FIN-DEST_START) * SOURCE_VAL * PROC) \ ( (SOURCE_FIN-SOURCE_START) * 100)

VCoder2 - Новая версия ПО для Turnigy/Eurgle/FlySky 9x

если PROC > 0 то диапазоны получателя берем те же что и у источника

Т.е. сначала формируем диапазоны источника, тогда source_mid будет изменен на значение OFS и только затем новые диапазоны будут присвоены DEST получателю. Тогда на графике будем передвигать MID на оси SOURSE на величину OFS.

В итоге мы получаем кривую с изломом в центре.

В этом случае излома не будет (в 50-ти %-ном диапазоне).

VCoder2 - Новая версия ПО для Turnigy/Eurgle/FlySky 9x

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

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

VCoder2 - Новая версия ПО для Turnigy/Eurgle/FlySky 9x

Так в чем же отличие оффсета?

Совершенно согласен - никакого…

Вот только триммер дает абсолюно аналогичный результат. Для чего спрашивается огород городить?

Так ведь триммер к микшеру не присобачишь… а полетные режимы опять?

Наш ответ Китаю - Прошивка для TURNIGY \ EURGLE \ FLYSKY 9x

в эти выходные у меня сдох программатор 😦 заказал сейчас новый за 7 баксов… 😃

До последней версии ничего такого замечено не было точно, с новой версией не изменял пока - сегодня проверю.

VCoder2 - Новая версия ПО для Turnigy/Eurgle/FlySky 9x

опять таки остается возможность коррекции не только параметра OFS но и параметров конечных точек каналов (для того чтобы убрать неравномерность)… причем коррекция конечных точек возможна в зависимости от включенного режима полета (а не только при настройке модели)…

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

VCoder2 - Новая версия ПО для Turnigy/Eurgle/FlySky 9x

Еще проще говоря - ставим OFS на элероны. При неполных отклонениях стика вправо и влево модель будет в одну сторону крутиться больше чем в другую. Это очень нехорошо.

Это все легко подстраивается в крайних точках (как в Vcoder1). Кроме того, если нет возможности поставить рычаг сервы строго перпендикулярно и на защелках тяг уже нет резьбы - то оффсет единственный выход… и пусть будет несимметрия (которую легко поправить), главное чтоб оффсет стал расчетной серединой диапазона и от НЕГО отсчитывались кривые и прочие смешения.

VCoder2 - Новая версия ПО для Turnigy/Eurgle/FlySky 9x

Т.е. Offset - это аналог механического триммера, но с учетом конечных точек.

Если оффсет будет возможен в каждом микшере, то это очень нужная штука… и триммер для каждого полетного режима становится не нужным…

Наш ответ Китаю - Прошивка для TURNIGY \ EURGLE \ FLYSKY 9x

маркеровка и можно поподробней по ножкам плизз

Я использовал N-P-N КТ315, ну или подходящий корпус… в сущности - не важно какой… лишь бы единицей открывался, а нулем закрывался… хотя, это тоже может оказаться сложным…😃 N_P_N в общем…

Наш ответ Китаю - Прошивка для TURNIGY \ EURGLE \ FLYSKY 9x

Поставил подсветку дисплея (www.hobbyking.com/hobbyking/…/uh_viewItem.asp?idPr…).

Первую подсветку я сам мастерил из трех желтых диодов (фотки в мануале на прошивку на ней сделаны). Там ток потребления был около 50 мА, поэтому ставил через управление на 17-ю ногу (простой n-p-n транзистор впаял прям на верхнюю плату передатчика). Затем взял белую подсветку от ХК - в ней 2 белых светодиода последовательно с током 20 мА, поэтому включать ее через управление посчитал нецелесообразным. Тем более, что управление подсветки пока не регулируется и это немного напрягает, а когда горит постоянно с таким мизерным током - то напрягов не возникает. Даже ток не повышал - яркости вполне достаточно.

У кого крутилки сохраняются?

У меня две крутилки настроены от 0 до +20 и +15%, сохраняется без проблем…

Наш ответ Китаю - Прошивка для TURNIGY \ EURGLE \ FLYSKY 9x
Иван Лагунов

я PPM не трогал, тем не менее в симуляторах нормально работает

Это смотря у кого какой адаптер… У меня, например, своей разработки USB, на инверсном TTL сигнале пашет… многие TTL-ные такие же, уверен почему-то… а приемышу при этом - все равно, и так и так работает (что удивительно!😃).

Программирование аппаратур семейства IMAX 9x/TURNIGY/EURGLE/FLYSKY

А че ж там сложного то?

  1. Читаем даташит на процер в разделе Memory programming - SPI Serial programming, выписываем (или печатаем) от туда - на какие ноги чипа необходимо подавать сигналы программатора MOSI, MISO, SCK(CLK) и RESET.
    MOSI-PE0-2 нога
    MISO-PE1-3 нога
    CLK -PB1-11 нога
    RESET - 20 нога
    Землю - на любое удобное (ближайшее) место. Это минус питания аппы.
  2. Ищем на плате с процером эти ноги (счет ведем от ключа-точки атмеги против часовой стрелки сверху), от каждой нужной нам ноги там отходит дорожка к пятачку для припайки проводка. Вывод RESET пятачка не имеет (имхо), припаиваться будем к конденсатору (к его контактной площадке), который стоит в цепи RESET и который лучше выпаять вообще.
  3. Берем проводок своего программатора с нужным именем (надеюсь, каждый знает какой провод от программатора какое имя имеет) и припаиваем его к одноименному пятачку.
  4. Если в программаторе есть резисторы на выходе нужных нам цепей, то их нужно закоротить перемычкой.
  5. Подключаем программатор к компу, включаем аппу и программируем (не забываем только сохранить карту фьюзов и не трогаем их в дальнейшем).
Программирование аппаратур семейства IMAX 9x/TURNIGY/EURGLE/FLYSKY

А вот тут catalog.gaw.ru/index.php?page=document&id=16502 нашел даташит на атмега64А, там miso mosi clk и остальное вообще на других ногах. Где правда?

SPI порт на борту чипа и SPI для программирования чипа - суть разные вещи. Как правильно подключить программатор по SPI четко указано в даташите, на который ссылка, на стр 310.
Андрей, на фото Вашей припайки видны два красных провода - это питание? Его надо убрать, если питаете аппу от своих батарей. При подпаянном программаторе (не воткнутом в комп) включение аппы должно происходить как всегда - с экраном и полной работоспособностью. Тухнуть он должен только в процессе программирования или любого другого обращения к процу из программатора.