roboforum.ru

Технический форум по робототехнике.

6 Кнопочный PPM переключатель для трейнер порта

6 Кнопочный PPM переключатель для трейнер порта

Акелла » 04 фев 2015, 01:02

Занимаясь полетами на коптере, решил сделать себе кнопочный пульт для переключения режимов.
Долгие поиски в интернете привели меня к 2 разным скетчам для ардуины. Один работает с LCD дисплеем + кнопки он работает хорошо с трейнер входом в пульте.
Второй сделан для управления сигналом вместо крутилки на пульте.
Проблема в том что в первом мне не нравится как работают кнопки. Они подключаются все 6 через один аналоговый вход и делятся резисторами, иногда возинкают ошибки чтения и сигнал скачет.
Во втором управление кнопками реализованно через 6 аналоговых выходов, но мне не хочется вскрывать пульт чтобы подключить кнопки, через трейнер удобнее.
Я пытался как-то обьеденить эти 2 скетча, но моих познаний в этом деле не хватило, и в итоге ничего не выходит.

Это код первого скетча с LCD дисплеем
display.ino
Скетч с LCD
(6.28 КиБ) Скачиваний: 291

Это скетч с хорошим переключением кнопок но он не генерирует PPM сигнал
MODESW2_x6_megapilotpsb.ino
Скетч с кнопками
(2.29 КиБ) Скачиваний: 297


Это скетч для генерации PPM сигнала без кнопок управления
Generate_PPM_signal_nodelay.ino
Генератор РРМ
(2.22 КиБ) Скачиваний: 273



Помогите собрать код воедино.
Чтобы работало как вариант 2 но сигнал выдавало как в варианте 1. Ну и поддержка LCD желательно, для визуального отображения выбранного режима.

Re: 6 Кнопочный PPM переключатель для трейнер порта

dccharacter » 04 фев 2015, 04:48

Я не понял, что ты хочешь, если честно. Пульт уже собран, распаян и тебе неохота его переделывать? При чем тогда тут скетч с кнопками на 6-ти аналоговых входах?
У тебя уже нет шести аналоговых входов. У тебя есть только один и резисторная лестница. Может с ним разобраться и понять, что не работает?

Добавлено спустя 5 минут 20 секунд:
У тебя в первом скетче, где идет обработка кнопок, всегда в цикле БЕЗУСЛОВНО обновляется экран. Это отнимает много времени, из-за этого лагает считывание кнопок и генерация сигнала. Тебе надо обновлять ЛСД _только_ тогда, когда обнаружено _новое_ нажатие кнопки.
Пока не пояснишь, что такое "ошибки чтения" и "сигнал скачет" дельше траблшутить смыла нет.

Re: 6 Кнопочный PPM переключатель для трейнер порта

Акелла » 04 фев 2015, 13:29

Обьясняю что это такое и для чего я это затеял. :)
У меня есть пульт для управления Spectrum dx8
вот такой
dx8-glamour.png


А затеял я вот такую штуку или вот тут намного лучше показанно
но проблемма у этих двух вариантов что они подключаются вместо крутилки на пульте. (это нужно разбирать пульт чтобы подключить)

В том скетче что я писал выше с дисплеем он подключается в трейнер порт пульта и работает как buddy box и его можно с легкостью переставлять на любой друй пульт.
В MODESW2_x6_megapilotpsb.ino я собрал этот вариант пробывал подключить вместо крутилки, все работает отлично.
В варианте с дисплеем я сказал что ошибки чтения это когда я смотю в пульте проверку движения осей то при переключениях кнопок сигнал должен меняться от -100 до 100, и на каждой кнопке свой уровеь 1 -100, 2 -80, 3 -40, 4 40, 5 80, 6 100, (цыфры не точные), но вместо того чтобы двигать на заданный сигнал оно его включает например 4 и параметр скачет от 35 до 60 и т.п при каждом нажатии оно скачет по разному иногда разброс больше иногда его совсем нету

Re: 6 Кнопочный PPM переключатель для трейнер порта

Акелла » 04 фев 2015, 20:59

Вообщем я сделал то что хотел, остался один вопрос сейчас все работает но сигнал выдается для 1 канала, как сделать так чтобы сигнал выдавался для 6 канала
т.е. это выглядит так
Код: Выделить всёРазвернуть
   -----  -----     -----
___|    |_|    |___|     |_|
     1ch    2ch      3ch    ......

меняются режимы на 1 канале остальные идут в 50% т.е. в 0
как сделать чтобы 1-5 было в 50%, 6 канал менялся -100% до 100% как сейчас это делает 1 канал, 7 и 8 были 50%
Вот рабочий скетч
APM_mode_switch_w_ino.ino
(4.08 КиБ) Скачиваний: 296


cron
Rambler\'s Top100 Mail.ru counter