Включение/выключене с 1 канала нескольких нагрузок. Возможно-ли?

DJ_URAN
Dimac:

Не понял, имется ввиду перебор в обратную сторону?

да. например, имеется дискретный тумблер. положения -100, 0 и +100 соответственно
при положении 0 ничего не происходит
при +100 включается 1 канал
при отпускании тумблера в 0 1 канал остается включенным
еще раз тумблер в +100 – 2 канал включается (первый либо остается включенным, либо выключается, в зависимости от перемычки JP3)
при переводе тумблера из 0 в -100 последний включенный канал (в данном случае канал 2) отключается, первый остается включенным.
еще раз тумблер в -100 и первый канал отключается тоже.
в программе необходимо предусмотреть крайнее положение для -100 а именно, если все каналы и так уже выключены, чтоб при переводе тумблера в -100 не начинался обратный цикл, а то получится, что все каналы включатся и будут друг за другом выключаться при каждом переключении тумблера в положение -100.

  • еще возможно ли в программе учесть долгие нажатия тумблера?
    например:
    кратковременное переключение тумблера из нейтрали в крайние положения включают и выключают каналы соответственно,
    а при долгом нажатии в +100 включаются все каналы (6 штук в данном случае)
    при нажатии и удержании тумблера в положение -100 все каналы отключаются независимо от предыдущего их состояния.

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

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

Dimac

Понятно, всё описано довольно подробно, вопросов нет. Как будет время - попытаюсь реализовать. Сложного особо ничего нет, посто много надо будет делать с нуля.
Как сделать настраиваемый выбор количества каналов - я не знаю. Могу просто сделать максимум - 8, а если нужно меньше, то просто не использовать соответствующие выводы.

vasia
biver72:

Я бы сделал на серве и микрике.

Тут мне кажется особо ценным является возможность “дискретности переключений” на серве лекго можно проскочить положение включения нужного микрика, если это пиротехника то вообще будет тоскливо. Да и на 4-6 позиций прикрутить микрики к серве будет сложно.

DJ_URAN
Dimac:

Могу просто сделать максимум - 8, а если нужно меньше, то просто не использовать соответствующие выводы.

да, этот вариант тоже рассматривается.
или типа перемычки джампера сделать наподобие JP3, для фиксированных установок кол-ва каналов (4, 6 или 8. или 4 или 8)
спасибо за понимание!
с нетерпением жду прошивку

Dimac

RC_Switch_2313_3pos

Имеет максимум 8 выходов и 1 выход “потеря сигнала”
Работает с крутилкой, с простым и с 3-х позиционным тумблером.

Перед работой произвести калибровку:
Крутилкой: поставить крутилку в максимум и включить питание (вставить устройство в приёмник). Начнёт мигать диод “нет сигнала”. Перевести крутилку несколько раз в крайние положения.
Весь диапазон поделится на 9 частей: 1-ничего не горит, 2-горит диод D1, 3- D3, и т.д.
Тумблером: поставить тумбрер в максимум и включить питание (вставить устройство в приёмник). Начнёт мигать диод “нет сигнала”.переключить несколько раз.

При работе с простым тумблером: при каждом включении тумблера будет последовательно загораться диоды циклически: ничего не горит, D1, D2, D3 …D8, ничего не горит, D1…

При работе с 3-х позиционным тумблером: центр= 0, max= +100, min= -100
переключение: c центра в max и возврат в центр - переключение канала “вперёд”.
переключение: c центра в min и возврат в центр - переключение канала “назад”.
переключение: c центра в max и удержание там больше 3сек - включение всех каналов (далее их только возможно все выключить).
переключение: c центра в min и удержание там больше 3сек - выключение всех каналов.

Перемычки.
JP1 - нет - выход прямой, стоит - выход инверсный
JP2 - (обычный тумблер) нет - при выключении тумблера состояние выхода не изменяется, стоит - при выключении тумблера выход сбрасывается, в этом режиме при циклическом переключении нет отдельной позиции “ничего не горит” (когда цикл доходит до D8, следующий будет D1)
JP2 - (3-х поз. тумблер) нет - при включении следующего канала, предыдущий гаснет.
стоит - при включении следующего канала, предыдущий остаётся гореть.(при переключении “вперёд”). При переключении “назад” - предыдущий гаснет.
JP3 JP4 число каналов
нет нет 8
да нет 6
нет да 4
да да 2

JP5 - нет - на выходе крайнее состояние при потере сигнала, стоит - выход сброшен при потере сигнала.

p.s.
При изменении перемычками количества каналов - калибровку надо произвести заново.

RC_Switch_2313_3pos.rar

DJ_URAN

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

Dimac:

переключение: c центра в max и удержание там больше 3сек - включение всех каналов (далее их только возможно все выключить).

это если я все каналы включу, то далее их нельзя будет последовательно выключить многократным переключением тумблера из 0 в -100?
и вопрос по tiny25
там все просто на 4 канала, мало ли кому пригодится этот же алгоритм, только на 4 канала, без выбора, но с теми же алгоритмами работы.

Dimac

черт, столько понаписал и что-то сглючило. Попробую повторить…

DJ_URAN:

это если я все каналы включу, то далее их нельзя будет последовательно выключить многократным переключением тумблера из 0 в -100?

Да, это так, при вкл. всех каналов по удержанию +100. Просто логика работы переключения каналов - “назад” зависит от перемычки jp2. И она разная. Я, чтоб не усложнять систему, унифицировал режимы “вкл. всё” и “откл. всё” и выходы из этих режимов в не зависимости от перемычки jp2.
Можно попробовать сделать возможность переключения “назад”, из состояния “вкл. всё” при удержании +100, в зависимости от перемычки. При установленной перемычке, режим “назад” возможен. При отсутствии перемычки, переключение “назад” от состояния “вкл. всё” при удержании +100, невозможно, можно только “выкл. всё” при удержании -100. Только не будет ли это слишком мудрёно.

C Tiny25 что-то не вижу смысла заморачиваться. По стоимости Tiny25 и Tiny2313 примерно равны. Tiny2313, судя по предыдущим постам, более распространён, чем 25. При использовании микросхем в корпусе SOIC разница в весе и размере небольшая. както-так
1,5 сек сейчас сделаю.

RC_Switch_2313_3pos.rar

DJ_URAN

ок, насчет вкл все - лучше не заморачиваться, ЕСЛИ:
после того, как сработала команда “вкл все” (1,5 сек в режиме +100) и затем команда “выкл все” (1,5 сек в режиме -100) заново начинается исполнение программы переключения каналов по стандартной схеме, друг за другом.
так как если активировать команду вкл все, а затем лишиться возможности дальнейшего выключения или переключения каналов - нет логики, придется обесточивать систему, чтобы заново можно было поочередно выполнять включение каналов.
проще говоря - лучшее решение такой задачи это:

  1. При +100 на 1,5 сек срабатывает команда “вкл все”
  2. При -100 на 1,5 сек срабатывает команда “выкл все”
  3. При переключении тумблера в крайние положения происходит последовательное включение о отключение каналов соответственно.
    Не важно, из какого состояния, например если после команды “вкл все” мы дернем тумблер в +100 (коротко), то все каналы выключатся (первое положение), еще раз в +100 - включается первый канал.
    Если после команды “вкл все” дернуть тумблер в -100 (коротко), то останутся включенными 7 из 8 каналов (рассматриваю заранее на 8 каналов схему), а восьмой выключится, еще раз в -100 - остаются гореть 6 каналов…
    Туд возможен затык, если вместо переключателя используется крутилка.
    с ней вариант такой не проканает.
    да, кстати, как выбирается режим для проги крутилка или переключатель??
Dimac
DJ_URAN:

после того, как сработала команда “вкл все” (1,5 сек в режиме +100) и затем команда “выкл все” (1,5 сек в режиме -100) заново начинается исполнение программы переключения каналов по стандартной схеме, друг за другом.

всё так.

Когда “вкл. всё” в результате удержания - после можно только “выкл. всё”
Когда “выкл. все” - после можно всё. Работа в обычном режиме, как после начального старта, когда всё выключено.

Режим крутилка / простой тумблер / 3-х позиционный тумблер выбирается во время калибровки. Программа по скачкам сигнала, во время калибровки, распознаёт с чем имеет дело и запоминает это в энергонезависимой памяти.
Далее уже идёт работа по соответствующей программе.

1 month later
Dimac

Собрал все свои наработки, которые использовал в предыдущих устройствах и сделал такой мега RC-Switch.
RC_Switch_2313_Deluxe

Имеет 8 выходов и 1 выход “потеря сигнала”
Работает с крутилкой, с простым и с 3-х позиционным тумблером.

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

Количество возможных комбинаций задаётся перемычками и может быть: 3, 5, 7, 9.
Если сказать по другому, то можно запрограммировать 3, 5, 7 или 9 байт (сколько - зависит от установленых перемычек), которые будут посылаться в выходной порт (8 выходов) с помощью крутилки или переключаться тумблером.

* Крутилка выбирает комбинацию своим положением.
* Простой тумблер, каждым прещёлкиванием из min в max, циклически переключает комбинации в прямом направлении по кругу.
* 3-х позиционный переключатель позволяет переключать комбинации:

  • вперёд (каждым прещёлкиванием из центра в max и обратно в центр);
  • назад (каждым прещёлкиванием из центра в min и обратно в центр);
  • в последнюю комбинацию (прещёлкиванием из центра в max и удержанием там больше 1,5 сек.);
  • в первую комбинацию (прещёлкиванием из центра в min и удержанием там больше 1,5 сек.);

Более подробное описание и схема - в архиве.

RC_Switch_2313_Deluxe.rar

ions

Наконец-таки добрались руки изготовить данную конструкцию. Моя цель поджигать пиротехнику на самолете, имея 6 каналку, управление тумблером 5 канала “Шасси”. Собирал вариант на Attiny 2313 (6 каналов). Собрал все запустилось с первого раза. Спасибо автору за хороший материал, можно собирать разные устройства. Выкладываю свою общию схему и печатку, может кому-нибудь пригодится.

Многоканальный силовой RC Cwitch ATtiny.rar

2 months later
misery13

вот мой вариант печатки для 4х канального свича на тини25, транзисторы irfz46n

RC-switch_25.rar

Dimac

Давно сделал, все что-то руки не доходили разместить.
Для схемы на ATtiny25 из 26 поста rcopen.com/forum/f87/topic297998/27

Новые прошивки:

RC_Switch_ATtiny25_v3_0 - (3-и канала + канал потеря сигнала) добавлена поддержка 3-х позиционного переключателя. Переключение каналов вперёд и назад - при переводе переключателя из центра, соответственно, вперёд или назад. Теперь работает с крутилкой, обычным тумблером (переключение циклически в одну сторону) и с 3-х позиционным (переключение в 2-е стороны).

RC_Switch_ATtiny25_v3_0_4ch - вместо канала “потеря сигнала” добавлен ещё 1 канал (всего теперь 4-е канала). Потеря сигнала отображается включением всех каналов. При калибровке мигают все каналы.

RC_Switch_ATtiny25_v3_1_4ch - те же 4-е канала, только изменена логика работы 3-х позиционного переключателя. Появилась возможность быстро перейти на последний канал или сброс всех, при удержании переключателя в крайнем положении больше 2-х секунд (переключение по удержанию). Простое переключение теперь поисходит при возврате тумблера в центральное положение, естественно с удержанием в крайнем положении менее 2-х секунд.

RC_Switch_ATtiny25_v3_1_4ch.rarRC_Switch_ATtiny25_v3_0_4ch.rarRC_Switch_ATtiny25_v3_0.rar

1 month later
Dimac

RC_Switch_ATtiny25_v3_1_4ch - была найдена ошибка в программе, при работе с 3-х позиционным тумблером. Исправлено.

RC_Switch_ATtiny25_v3_2_4ch

RC_Switch_ATtiny25_v3_2_4ch.rar

2 months later
vasia

999 строк кода… сильно . На таких примерах можнош изучать ассемблер. Было бы совсем здорово, если бы автор еще и подробно (понятно, что в коментариях итак все подробно) описал устройство программы и назначение входящих в нее подпрограмм…Это я так (когда, что то есть хочется еще больше), а так спасибо автору.

3 months later
ССМ=

Вместо ATtiny25 не пойдет ATtiny13?
В местном магазине ни ATtiny25 ни ATtiny45 нет в наличии(((

DJ_URAN

под этот код - нет. назначение выводов другое.

3 months later
sashok17

Прошу совета и помощи. В общем хочется сделать управление меню Шторма (автопилот) через RC передатчик. Алгоритм работы следующий: Имеем приблуду у которой 2 RC входа и 3 дискретных выхода. RC входы подклчаются в два канала приемника.
Смысл работы следующий: когда на передатчике оба 3х позиционных тумблера находятся в среднем положении - на выходах приблуды логические 1. Если левый тумблер перевести вверх, на выходе (#1) будет лог. 0. Если перевести в самый низ, то на выходе (#2) будет лог. 0.
Переходим к правому 3х поз. тумблеру: Если перевести тумблер вверх, то на выходе #3 будет лог. 0. Если перевести тумблер вниз, то на выходах #1,2 будет лог. 0.

Такое можно реализовать либо с помощью двух RC Switch и одной логики. Либо на одном контроллере имеющим 5 портов. К сожалению писать прошивки я не умею (пробовал только флаукод, но как реализовать считывание длины импульса там я не знаю). А готовой схемы RC переключателя на 2 нагрузки с центральным (выключенным) положением я не нашел. Поэтому прошу помощи, в теории алгоритм не сложный…

Как мне кажется тут бы хватило одной тиньки 13 или пика 12f. Соответсвенно и себестоимость была бы мизерной. Можно было бы взять схему переключателя на 25 тиньке, но понадобилось бы их 2 штуки, а по цене это вышло бы не дешево.

-------
таки нашел схемку рц свича с нейстарльным положением 3х позиционника на тиньке 13. Но прийдется использовать тогда два таких свича и логику. Хотелось бы все уместить в одном контроллере.

vasia
sashok17:

В общем хочется сделать управление меню Шторма (автопилот) через RC передатчик

как это ни пародоксально но два ключа и логика это самый простой путь! Но мы не ищем легких путей, тем более нам потребуется 2 канала, а это противоречит названию темы : “Вкл/выкл с одного канала нескольких нагрузок” …
На передатчике можно организовать на Arduino вот такую дискретизацию ШИМ:
hobby.msdatabase.ru/project-updates/…/modesw как раз 5 кнопок вверх/низ, право/лево.
На самолете к выходу ШИМ с Rx подключаем еще одну Ardu которая определяет длительность ШИМ и в зависимости от этого переключает соответстивующие выходы “0” или “1”. Вот скетч для принимающей стороны hobby.msdatabase.ru/…/moswsw_decoder. Плюс к этому у нас есть еще 1 кнопка ( а их ведь можно и добавить) к свободным выходам подключаем силовые ключи и управляем… ну напримерой петардой для самоуничтожения самолета…

sashok17

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

Dimac

Я делал по просьбе одного человека прошивку для 25 тиньки на 2-а входа и 2-а выхода (для управления лебёдками сделанных из серв - чтоб питание им отключать, когда стик в среднем положении).
Постараюсь переделать на три выхода по описанной логике, должно быть несложно.