Для желающих !
Я могу разработать такое устройство.
1 - Задача - при изменении положения ручек включаются 4 ! дискретных устройства
Сколько ручек будет задействованно? Не написано. И каких ручек? Дискретные каналы буду использоваться или пропорциональные.
Можно по подробнее.
В протеусе, то же можно.
Только беду делать на PICBasic. Для таких дел, он подходит превосходно!
Пробуйте
4_ch_switch.rar
А почему предложение от dmitryu, а не от radioham?
Так значит задание такое:
; Длительность:
; 1,0-1,2 мс - включен выход 1
; 1,2-1,4 мс - выход 2
; 1,4-1,6 мс - все выходы выключены
; 1,6-1,8 мс - выход 3
; 1,8-2,0 мс - выход 4
; длительность меньше 1 мс или больше 2 мс - все выходы выключены
;
; нужно сделать:
; задержку переключения состояния
; проверку длительности паузы
А что за задержка переключения состояния?
А зачем проверку длительности паузы делать?
А блин понял. Это dmitryu уже сделал… сообщения подряд идут и запутася.
Я хотел сделать с калибровкой. Но не хватает одного порта что бы светодиод вывести.
Калибровка - можно программировать с помощью кнопки и светодиода, точки срабатывания каналов. Если это делать то нужно другой проц выбрать, предлагаю PIC16F630(676). Если не устроит, то тогда фиксированные точки, на проце 12F675(629).
Надо калибровку?
Паузу нужно проверять, если требуется что-то делать при пропадании сигнала - сейчас устройство исполняет последнюю команду, пока сигнал не появится.
Задержка уже сделана - она нужна, если команды, например, движком подаются - при быстром перемещении из края в край, если нет задержки, по очереди включатся все устройства, а оно надо?
…Я для гусеничной электромодели такой девайс замышлял - отклоняя “руль”, сначала реле вырубают двигатель, дальнейшее отклонение его реверсируют.
Вобщем все правильно
Естественно лучше с калибровкой и записью во заданным точкам срабатывания
Но на край можно и с фиксированными точками
Задержка надо
Длительность:
; 1,0-1,2 мс - включен выход 1
; 1,2-1,4 мс - выход 2
; 1,4-1,6 мс - все выходы выключены
; 1,6-1,8 мс - выход 3
; 1,8-2,0 мс - выход 4
; длительность меньше 1 мс или больше 2 мс - все выходы выключены
;
; нужно сделать:
; задержку переключения состояния
; проверку длительности паузы
Именно так!
Схема в виде картинки:
4_ch_sw.rar
работает на tiny45 есть схема и прошивки из журнала практическая электроника(Анг) на pic84.
Попробуйте мой поект, с калибровкой. Фиксированных точек нет, их можно устанавливать на любой длительности импульса. Значения калибровки записываются в ЕЕПРОМ.
Применил проц 16F630, т.к. всё ровно у 12F629(675), не хватает одного порта, для кнопки калибровки. По этому решил установить по светодиоду на каждый канал управления, как индикатор вклчения канала. Это может быть удобно, видно будет какой канал включен. Тем более за калибровкой очень удобно следить. Если не устроит, можно один светодиод сделать.
Запускаем проект в протеусе. И пробуем калибровать.
Инструкция по калибровке:
- Нажимаем кнопку S1, удерживаем её и запускаем схему (подаём питание), и отпускаем кнопку. Светодиоды HL1, HL2, HL3, HL4 загорятся и погаснут четыре раза. Это значит программа вошла в режим калибровки.
- Далее начнёт часто мигать светодиод HL1, это значит что программа ждёт записи точки срабатывания канала 1. Устанавливаем ручку на передатчике (резисор RV2 в Протеусе) в то положение где должен срабатывать канал 1 и наживаем на кнопку S1. Светодиод HL1, загориться на 1 сек, значит запись точки произошла успешно.
- Далее начнёт часто мигать светодиод HL2, записываем следующую точку, срабатывания канала 2.
И так далее все 4 точки.
Как только четвёртая точка будет записана, сразу начинает работать основная программа, отслеживающая канальный импульс.
Программе нет разницы, если левому положению будет соответствовать импульс 1 мс или 2мс.
Извините, но архив запаролен. Пароль выслан заказчику, личкой.
Вот под PIC16F84.