Neketos 0 30 августа, 2012 Опубликовано 30 августа, 2012 (изменено) · Жалоба Вот набросал схемку. Покритикуйте, пожалуйста. Будет работать? Меня смущает только то, что на открытом симисторе MOC3023 падает около 2В и CPC1035 может не закрыться. Изменено 30 августа, 2012 пользователем Neketos Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ae_ 2 30 августа, 2012 Опубликовано 30 августа, 2012 · Жалоба Меня смущает только то, что на открытом симисторе MOC3023 падает около 2В и CPC1035 может не закрыться. Во входную цепь CPC1035 включить последовательно пару диодов или 1 красный светодиод, напряжение открывания будет выше 2V и симистор будет отключать нагрузку. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
batisto4ka 0 21 августа, 2013 Опубликовано 21 августа, 2013 · Жалоба Подскажите, пожалуйста, схему дискретных входов на 220 В (на оптопаре) и алгоритм опроса таких входов. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
KARLSON 1 21 августа, 2013 Опубликовано 21 августа, 2013 · Жалоба Опрашиваю по таймеру каждую мс. В массив из 50 элементов, смотрю есть ли хоть одна единица, считаю что сработал оптрон. Но есть недостаток. Ловится каждый чих. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vladec 10 21 августа, 2013 Опубликовано 21 августа, 2013 · Жалоба Возможны варианты, самый простой - берете оптрон, например, PC817, ставите последовательно на входы пару одноватных гасящих резисторов килоом по пятьдесят, для пропускания обратной полуволны шунтируете светодиод, обычным диодом, включенным в обратном направлении и сигнал с оптрона заводите на GPIO вход контроллера, включив на нем PULLUP резистор. Имеете на входе последивательность 50 Гц импульсов низкого уровня. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
toweroff 1 21 августа, 2013 Опубликовано 21 августа, 2013 · Жалоба сигнал с оптрона заводите на GPIO вход контроллера, включив на нем PULLUP резистор. а хватит ли pullup'а ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
batisto4ka 0 21 августа, 2013 Опубликовано 21 августа, 2013 · Жалоба Возможны варианты, самый простой - берете оптрон, например, PC817, ставите последовательно на входы пару одноватных гасящих резисторов килоом по пятьдесят, для пропускания обратной полуволны шунтируете светодиод, обычным диодом, включенным в обратном направлении и сигнал с оптрона заводите на GPIO вход контроллера, включив на нем PULLUP резистор. Имеете на входе последивательность 50 Гц импульсов низкого уровня. Необходимо опрашивать 50 раз в секунду вход МК и если за 1 секунду было 50 импульсов, считать что на входе есть сигнал, я правильно понимаю алгоритм? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Егоров 0 21 августа, 2013 Опубликовано 21 августа, 2013 · Жалоба Программистам не оптрона, им вычислительной мощности процессора не хватает чтобы один логический датчик обработать Попробуйте втиснуться в массив в 50 слов байтовых. Было бы в памяти 4к 32-разрядных и тактовая вчетверо выше - тогда кое-как. А пока с этим отдельный 100-ножечный процессор еле справляется. Ох-хо-хо... печаль и только. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
batisto4ka 0 21 августа, 2013 Опубликовано 21 августа, 2013 · Жалоба Программистам не оптрона, им вычислительной мощности процессора не хватает чтобы один логический датчик обработать Попробуйте втиснуться в массив в 50 слов байтовых. Было бы в памяти 4к 32-разрядных и тактовая вчетверо выше - тогда кое-как. А пока с этим отдельный 100-ножечный процессор еле справляется. Ох-хо-хо... печаль и только. зачем массив, если достаточно 1 переменной счетчика, вообще непонятны ваши опасания по поводу производительности процессора. никто вроде не говрил про какие -либо ограничения со строны МК Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Егоров 0 21 августа, 2013 Опубликовано 21 августа, 2013 · Жалоба зачем массив, если достаточно 1 переменной счетчика, вообще непонятны ваши опасания А, таки хватает одного счетчика и пары таймеров? Тогда опасания снимаются. Так скоро дойдем до прерывания или даже до простого опроса одного бита Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
KnightIgor 2 21 августа, 2013 Опубликовано 21 августа, 2013 · Жалоба Подскажите, пожалуйста, схему дискретных входов на 220 В (на оптопаре) и алгоритм опроса таких входов. В отличие от vladec я бы порекомендовал оптрон с AC-входом, то есть - двумя антипараллельными светодиодами внутри, как, например, H11AA1. В качестве гасящих сопротивлений - три последовательно-соединенных сопротивления minimelf порядка 33K, чтобы получить в общей сложности 100K. Почему три? Во-первых, нужно учитывать допустимое максимальное напряжение на сопротивлении, чтобы не случилось пробоя. Для minimelf это, как правило, 125V, что дает 375V для трех, то есть, амплитуду для 265V AC. Во-вторых, три сопротивления распределят максимально возможную мощность в 0.7W между собой, по 0.23W "на нос", что в рамках спецификации для minimelf. Реально рассеиваемая мощьность будет меньше, т.к. номинальное напряжение сети - 220V AC. Ны выходе оптрона - транзистор с эмиттером на земле, а коллектором - на вход CPU и сопротивлением, скажем, 10K на питание CPU. При приложении АС напряжения на вход там будет сигнал в 100Hz, длинные нули, короткие единицы. Алгоритм может быть таков: прием трех импульсов в течение некоторого времени (скажем, 5 периодов, то есть, 50мс) считается активным (напряжение подано). Каждая такая активация (пере)запускает таймаут на, скажем, 10 периодов (100мс). Если таймаут истек, принимается пассивное состояние (напряжение снято). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Егоров 0 21 августа, 2013 Опубликовано 21 августа, 2013 · Жалоба Почему 100кОм и зачем сеять впустую не менее 0.7 ватта? Разве пропустить 1мА через оптрон мало? Или даже 0.5мА? Выборка по трем значениям скопирована с дребезжащего контакта? Оптрон так дребезжать не будет. Случайно, по мифическим "помехам" он не подрабатывает. Достаточно поймать один фронт, чтобы уверенно говорить: на ближайшие 10-20мс напряжение подано. Если аккуратно включить на выходе оптрона небольшой фильтр, то и вовсе статический опрос входа. Нужно исходить из того, что мы поймать 220 можем только с ошибкой в 10-100мс, такова природа переменного сигнала. 220 может быть сейчас подано, но иметь нулевое мгновенное значение. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
sgs 0 21 августа, 2013 Опубликовано 21 августа, 2013 · Жалоба я бы порекомендовал оптрон с AC-входом, то есть - двумя антипараллельными светодиодами внутри, как, например, H11AA1. В качестве гасящих сопротивлений - три последовательно-соединенных Ны выходе оптрона - транзистор с эмиттером на земле, а коллектором - на вход CPU и сопротивлением, скажем, 10K на питание CPU. При приложении АС напряжения на вход там будет сигнал в 100Hz, длинные нули, короткие единицы. Масса программных вариантов - таймеры, счетчики, прерывания... Но для нескольких входов лучше действительно оптроны с относительно высокоомной нагрузкой (проще - PullUp) и конденсатор параллельно оптрону. Задержку "отпускания" RC схемы выбрать из соображений динамики процессов, но не меньше пары-тройки полупериодов сети. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
kovigor 5 21 августа, 2013 Опубликовано 21 августа, 2013 · Жалоба Необходимо опрашивать 50 раз в секунду вход МК и если за 1 секунду было 50 импульсов, считать что на входе есть сигнал, я правильно понимаю алгоритм? Возможно, секунды будет даже слишком много. Смотря зачем вам это нужно. Например, UPS после втыкания в него силовой вилки подключает нагрузку к сети (соответственно отключая ее от аккумуляторов) не мгновенно, а где-то через секунду, для подавления "дребезга". А вот на пропадание сети он реагирует мгновенно. Алгоритм может быть таким. Например, настраиваете таймер на прерывание основной программы 500 раз в секунду. В каждом обработчике прерывания опрашиваете вход и складываете в два отдельных счетчика нули и единички. На 500-м прерывании сравниваете счетчики - они должны быть примерно равны (по ~250 каждый). Вообще, алгоритмов можно придумать множество ... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
KnightIgor 2 21 августа, 2013 Опубликовано 21 августа, 2013 · Жалоба Почему 100кОм и зачем сеять впустую не менее 0.7 ватта? Разве пропустить 1мА через оптрон мало? Или даже 0.5мА? Оптроны имеют большой разброс по чувствительности. Надо пробовать и выбирать такое сопротивление, чтобы работало всегда. Я расчитываю на 2мА. Собственно, если принять "усиление" оптрона для худшего случая в 65%, то Ваши 0.5мА превратятся на выходе в 0.3мА или 10К подтяжка при 3.3V питания, если "забить" на фронты. Можно и так. Выборка по трем значениям скопирована с дребезжащего контакта? Оптрон так дребезжать не будет. Случайно, по мифическим "помехам" он не подрабатывает. Достаточно поймать один фронт, чтобы уверенно говорить: на ближайшие 10-20мс напряжение подано. В хороших условиях - да. Все зависит от требуемой надежности. Я наблюдал достоверно точно, что если силовые кабели проложены параллельно, то на соседнем могут наводиться приличные напряжения, приводящие к срабатыванию. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться