реклама на сайте
подробности

 
 
3 страниц V   1 2 3 >  
Reply to this topicStart new topic
> Регулятор яркости лампы накаливания, mega8, cvavr
LexRoss
сообщение Jul 21 2009, 15:31
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 377
Регистрация: 31-01-09
Пользователь №: 44 202



Переменка 3 вольта заведена на компаратор, он дает прерывание по каждому переходу через 0. В прерывании включаю ногу на несколько миллисекунд, затем отключаю. Так каждый полупериод. Нога подключена к управляющему выводу тиристора КУ202.
В cvavr написал цикл с увеличением задержки. Вроде бы лампочка должна медленно загораться и гаснуть, а она просто моргает.
Из-за чего? Может быть, тиристор не тот, и нужно поставить что-то типа BT137?
Go to the top of the page
 
+Quote Post
DpInRock
сообщение Jul 21 2009, 15:56
Сообщение #2


Гуру
******

Группа: Участник
Сообщений: 2 254
Регистрация: 4-05-07
Из: Moscow
Пользователь №: 27 515



Несколько миллисекунд - это сколько? Полпериода - всего 10 мс.

Чтобы плавно гасла-загоралась надо менять задержку включения с дискретй 40 МИКРОсекунд. (Можно и больше, но смотря что понимать под понятием "плавно").

"Нога" должна включаться не на несколько миллисекунд, а где-нибудь на 100 микросекунд. Можно меньше, если лампочка достаточной мощности.

BT137 не тиристор.


--------------------
On the road again (Canned Heat)
Go to the top of the page
 
+Quote Post
Herz
сообщение Jul 21 2009, 16:03
Сообщение #3


Гуру
******

Группа: Модераторы
Сообщений: 10 983
Регистрация: 23-11-05
Пользователь №: 11 287



Цитата(LexRoss @ Jul 21 2009, 17:31) *
Переменка 3 вольта заведена на компаратор, он дает прерывание по каждому переходу через 0. В прерывании включаю ногу на несколько миллисекунд, затем отключаю. Так каждый полупериод. Нога подключена к управляющему выводу тиристора КУ202.
В cvavr написал цикл с увеличением задержки. Вроде бы лампочка должна медленно загораться и гаснуть, а она просто моргает.
Из-за чего? Может быть, тиристор не тот, и нужно поставить что-то типа BT137?

Вот тиристор и включается в начале каждого полупериода, а выключается в конце, когда ток через него спадёт до нуля. Чтобы регулировать яркость, нужно подавать импульс включения с задержкой относительно перехода через ноль. Тогда, чем больше задержка - тем короче время включенного состояния и тем меньше яркость.
Go to the top of the page
 
+Quote Post
LexRoss
сообщение Jul 21 2009, 16:14
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 377
Регистрация: 31-01-09
Пользователь №: 44 202



DpInRock, все так и есть, как Вы сказали. Шаг 2 микросек, меняется от 0 до 10000 мкс примерно за 3 сек. Я думаю достаточно для плавности. smile.gif

Вот такой код

interrupt [ANA_COMP] void ana_comp_isr(void)
{

i++;
k=i;
PORTD.0 = 1;
while (k>0) {
k--;
delay_us(2);
}
PORTD.0 = 0;

if (i>500) {
i = i-500;
}


}

Может быть криво (первый раз пишу на си), но осциллограф на PD0 показывает, что все работает.
BT137 симистор.

Может напряжение маловато? Сейчас экспериментирую с лампочкой на 12В.

Herz, т.е. так?

Сообщение отредактировал LexRoss - Jul 21 2009, 16:10
Прикрепленные изображения
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
rezident
сообщение Jul 21 2009, 16:14
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Во-первых, с помощью тиристора можно коммутировать только одну фазу переменки. Для коммутации переменки в обеих фазах нужно включить его через выпрямительный диодный мост. Для коммутации переменки применяются симмисторы (симметричные тиристоры, триаки), но для управления ими нужно подавать импульсы с полярностью, соответствующей фазе напряжения питания. Управлять симмистором прямо от пина МК несколько затруднительно. Поэтому для управления симмисторами обычно применяют оптоизоляторы или импульсные трансформаторы.
Во-вторых, у тиристора есть такой параметр, как минимальный ток удержания. Если к концу управляющего импульса ток тиристора (и нагрузки) не достигнет величины минимального тока удержания, то тиристор закроется сразу после окончания управляющего импульса. Сравните минимальный ток удержания для используемого тиристора и ток нагрузки в конце вашего миллисекундного управляющего импульса.
Рекомендую почитать "Тиристоры и симмисторы - десять золотых правил для успешного применения" в оригинале или в некотором переводе на русский.
Go to the top of the page
 
+Quote Post
DpInRock
сообщение Jul 21 2009, 16:29
Сообщение #6


Гуру
******

Группа: Участник
Сообщений: 2 254
Регистрация: 4-05-07
Из: Moscow
Пользователь №: 27 515



Есть такой параметр - ток защелкивания тиристора. Это раз. (Маленькое напряжение - маленький (возможно) ток.

В прерывании какая-то фигня написана. Импульс запуска симистора должен быть фиксированной длины. 100 микросекунд. (Это необязательно, конечно, но лучше сразу так сделать, для краткости дальнейших объяснений).
А вот фаза запуска - должна быть разной...


По жизни должно быть так.
В копмараторе у вас должен устанавливаться (корректироваться) таймер фазовой задержки.

По срабатыванию этого таймера - срабатывать другой таймер (или этот же) на 100 микрсекунд для формирования импульса запуска тиристора.

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


--------------------
On the road again (Canned Heat)
Go to the top of the page
 
+Quote Post
Herz
сообщение Jul 21 2009, 16:38
Сообщение #7


Гуру
******

Группа: Модераторы
Сообщений: 10 983
Регистрация: 23-11-05
Пользователь №: 11 287



Цитата(LexRoss @ Jul 21 2009, 18:14) *
Herz, т.е. так?

Совершенно верно. Остальное Вам уже разьяснили.
Go to the top of the page
 
+Quote Post
LexRoss
сообщение Jul 21 2009, 17:03
Сообщение #8


Местный
***

Группа: Свой
Сообщений: 377
Регистрация: 31-01-09
Пользователь №: 44 202



Кое-что получилось.

interrupt [ANA_COMP] void ana_comp_isr(void)
{
delay_ms(5);
PORTD.0 = 1;
delay_us(100);
PORTD.0 = 0;
}

Зажигаю вполнакала (с пятой милисекунды).
Лампа горит так, как задаю задержкой, но она моргает случайным образом через 0,5-1 сек
Go to the top of the page
 
+Quote Post
Vishv
сообщение Jul 21 2009, 17:27
Сообщение #9


Местный
***

Группа: Участник
Сообщений: 310
Регистрация: 11-07-09
Из: Екатеринбург
Пользователь №: 51 154



Возможно у Вас просто "грязная" сеть и соответственно в некоторые моменты времени компаратор отрабатывает раньше или позже желаемого.
Кроме того 3 В переменки маловато - переход через 0 нечеткий, особенно если у Вас компаратор без гистерезиса.
Я в этих случаях беру сигнал для формирования прерываний сразу после выпрямителя, но при этом необходим дополнительный развязывающий диод перед входным фильтром.
Go to the top of the page
 
+Quote Post
LexRoss
сообщение Jul 21 2009, 17:40
Сообщение #10


Местный
***

Группа: Свой
Сообщений: 377
Регистрация: 31-01-09
Пользователь №: 44 202



добавил до 5в на вход компаратора, заработало!
Подскажите еще как правильно сделать цикл, чтобы задержка менялась?
Go to the top of the page
 
+Quote Post
Vishv
сообщение Jul 21 2009, 18:02
Сообщение #11


Местный
***

Группа: Участник
Сообщений: 310
Регистрация: 11-07-09
Из: Екатеринбург
Пользователь №: 51 154



Попробуйте такой вариант:
interrupt [ANA_COMP] void ana_comp_isr(void)
{
static int i,k;
i++;
if(i>100)
{
k++;
i=0;
if(k>9) k=0;
}

delay_ms(k);
PORTD.0 = 1;
delay_us(100);
PORTD.0 = 0;
}
По идее должно работать так - загорается в полный накал и потом гаснет ступенями по 10% в течении 10 сек.
Go to the top of the page
 
+Quote Post
LexRoss
сообщение Jul 21 2009, 18:11
Сообщение #12


Местный
***

Группа: Свой
Сообщений: 377
Регистрация: 31-01-09
Пользователь №: 44 202



Vishv, я что-то подобное пробовал, ошибку пишет, что delay_ms(k), k должна быть константа.
Сейчас вот так работает:

unsigned int k=0, p=0, i=0;
interrupt [ANA_COMP] void ana_comp_isr(void)
{
p++;

if (p==5) {
i++;
p=p-5;
}

k=i;

while (k>0) {
k--;
delay_us(2);
}
PORTD.0 = 1;
delay_us(100);
PORTD.0 = 0;

if (i>700) {
i = i-700;
}
}
Go to the top of the page
 
+Quote Post
rezident
сообщение Jul 21 2009, 18:43
Сообщение #13


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Не нужно никаких delay_ms() Тем более в прерывании. В прерывании компаратора нужно лишь установить новое значение для таймера, который аппаратно генерирует сигнал ШИМ, который в свою очередь управляет симмистором.
Go to the top of the page
 
+Quote Post
Vishv
сообщение Jul 21 2009, 19:05
Сообщение #14


Местный
***

Группа: Участник
Сообщений: 310
Регистрация: 11-07-09
Из: Екатеринбург
Пользователь №: 51 154



"Не нужно никаких delay_ms() Тем более в прерывании" - утверждение абсолютно правильное, в том случае, если процессор делает еще что-нибудь.
Ну а тут, как я понял, ему больше ничего и делать не надо.
Я просто не знаю уровень Ваших, уважаемый LexRoss, знаний (sorry!) про потроха процессора и степень его (процессора) загруженности,
поэтому и привел простейший вариант (увы неработоспособный) решения Вашей задачи
Go to the top of the page
 
+Quote Post
LexRoss
сообщение Jul 22 2009, 07:05
Сообщение #15


Местный
***

Группа: Свой
Сообщений: 377
Регистрация: 31-01-09
Пользователь №: 44 202



Не совсем понятно
Цитата
В прерывании компаратора нужно лишь установить новое значение для таймера, который аппаратно генерирует сигнал ШИМ, который в свою очередь управляет симмистором.

Т.е. в прерывании компаратора нужно включить таймер, а потом по прерыванию таймера включить симистор?
Go to the top of the page
 
+Quote Post
rezident
сообщение Jul 22 2009, 14:37
Сообщение #16


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Цитата(LexRoss @ Jul 22 2009, 13:05) *
Т.е. в прерывании компаратора нужно включить таймер, а потом по прерыванию таймера включить симистор?
Можно и так. Но лучше, если таймер будет сам генерить сигнал ШИМ с периодом равным полупериоду сетевой частоты и длительностью равной углу отсечки симмистора. Нужно лишь синхронизировать ШИМ с сетью (для этого задействовать компаратор). А при необходимости изменить параметры ШИМ достаточно всего лишь обновлять значения регистров таймера, формирующего этот ШИМ. Правда для этого придется разобраться с архитектурой и аппаратурой самого таймера. laughing.gif
Go to the top of the page
 
+Quote Post
Vishv
сообщение Jul 22 2009, 14:41
Сообщение #17


Местный
***

Группа: Участник
Сообщений: 310
Регистрация: 11-07-09
Из: Екатеринбург
Пользователь №: 51 154



Я бы Вам посоветовал разобраться как работает и управляется ШИМ в Вашем процессоре. А дальше Вы сами поймете что нужно делать в прерываниях компаратора.
Для начала попробуйте с помощью вывода процессора (к которому подключен выход ШИМ) управлять яркостью светодиода (без привязки к сети).
Ну а для полной конкретики - укажите хотя бы тип процессора - будет проще давать советы.
Go to the top of the page
 
+Quote Post
rezident
сообщение Jul 22 2009, 15:11
Сообщение #18


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Цитата(Vishv @ Jul 22 2009, 20:41) *
Ну а для полной конкретики - укажите хотя бы тип процессора - будет проще давать советы.
Тип МК в заголовке указан - mega8, т.е. ATmega8.
Go to the top of the page
 
+Quote Post
Vishv
сообщение Jul 22 2009, 15:29
Сообщение #19


Местный
***

Группа: Участник
Сообщений: 310
Регистрация: 11-07-09
Из: Екатеринбург
Пользователь №: 51 154



Цитата(rezident @ Jul 22 2009, 21:11) *
Тип МК в заголовке указан - mega8, т.е. ATmega8.

Прошу прощения - между глаз попало..
Go to the top of the page
 
+Quote Post
rezident
сообщение Jul 22 2009, 15:34
Сообщение #20


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Цитата(Vishv @ Jul 22 2009, 21:29) *
Прошу прощения - между глаз попало.
Нет, это типичная ошибка топикстартеров. Важные исходные данные нужно размещать (или по крайней мере дублировать) в теле сообщения.
Go to the top of the page
 
+Quote Post
LexRoss
сообщение Jul 22 2009, 16:26
Сообщение #21


Местный
***

Группа: Свой
Сообщений: 377
Регистрация: 31-01-09
Пользователь №: 44 202



Придется разбираться с шим... wink.gif
И еще, после этого хочу автоматизировать включение/выключение света, считая число вошедших/вышедших человек. Поставить на входе в комнату ик светодиод и 2 приемника. TSOP, наверно, будет излишне. Какие приемники попроще?

Сообщение отредактировал LexRoss - Jul 22 2009, 16:26
Go to the top of the page
 
+Quote Post
Vishv
сообщение Jul 22 2009, 17:05
Сообщение #22


Местный
***

Группа: Участник
Сообщений: 310
Регистрация: 11-07-09
Из: Екатеринбург
Пользователь №: 51 154



Цитата(LexRoss @ Jul 22 2009, 22:26) *
Придется разбираться с шим... wink.gif
И еще, после этого хочу автоматизировать включение/выключение света, считая число вошедших/вышедших человек. Поставить на входе в комнату ик светодиод и 2 приемника. TSOP, наверно, будет излишне. Какие приемники попроще?

Ну разбираться с ШИМ совсем не обязательно, просто с использованием ШИМ программа будет короче. Можно написать "программный" ШИМ, тоже будет работать. Так что Вам решать...
Приемник "попроще" можно сделать на расыпухе - схем море, на любой вкус, однако для достижения конечного результата лучше взять готовую микросхему и не заморачиваться.
Решение задачи счета вошедших/вышедших в настоящий момент обсуждается на Форуме в теме "ENCODER"(кажется так) - почитайте и поймете, что это по сущности то, что Вам нужно.

Сообщение отредактировал Vishv - Jul 22 2009, 17:17
Go to the top of the page
 
+Quote Post
LexRoss
сообщение Jul 23 2009, 10:33
Сообщение #23


Местный
***

Группа: Свой
Сообщений: 377
Регистрация: 31-01-09
Пользователь №: 44 202



255 значений таймера оказалось очень мало для плавной регулировки, а с 16-ти битным таймером я так и не смог подобрать нужный интервал: при верхнем значении ШИМ в 3FF и 125кгц период 8мкс * 1023 = 8мс (мало), а при 15,625 кгц период 64мкс * 1023 = 66мс слишком много - на полпериода остается только около 150 значений. Что посоветуете?
Go to the top of the page
 
+Quote Post
rezident
сообщение Jul 23 2009, 15:04
Сообщение #24


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Цитата(LexRoss @ Jul 23 2009, 16:33) *
Что посоветуете?
Выбрать период перезагрузки таймера чуть больше полупериода сетевой частоты (>10мс), а для синхронизации сбрасывать таймер в прерывании от компаратора.
Go to the top of the page
 
+Quote Post
DpInRock
сообщение Jul 23 2009, 15:18
Сообщение #25


Гуру
******

Группа: Участник
Сообщений: 2 254
Регистрация: 4-05-07
Из: Moscow
Пользователь №: 27 515



Цитата(Vishv @ Jul 22 2009, 21:05) *
Ну разбираться с ШИМ совсем не обязательно, просто с использованием ШИМ программа будет короче. Можно написать "программный" ШИМ, тоже будет работать. Так что Вам решать...
Приемник "попроще" можно сделать на расыпухе - схем море, на любой вкус, однако для достижения конечного результата лучше взять готовую микросхему и не заморачиваться.
Решение задачи счета вошедших/вышедших в настоящий момент обсуждается на Форуме в теме "ENCODER"(кажется так) - почитайте и поймете, что это по сущности то, что Вам нужно.

1. Tаймер 0 или 2 делаете частотой 100 гц *1024 (максимально близко к этому) - Учтите, что вы будете программировать не частоту, а длительность между тогглами - поэтому расчитывайте на 200*1024 (Тогда частота будет как раз 100*1024).

2. Таймер 1 прогрммируете на ШИМ от 0 до 3FF. Ставите момент установки внешнего пина, который управляет симистором где-нибудь 3F0.
Тогда в итоге вы получите последовтельность импульсов длиной 3FF - 3F0 с частотой примерно 100 герц.

Без синхронизации от компаратора лампочка будет достаточно плавно менять яркость. (Зависит от точности 100 герц). Это полезно. Далеко не все переходы через 0 вы сможете засечь (помехи и пр.). Так что диммер некоторое время продержится и без синхронизации.

----
Забыл. Выход таймера 0 или 2 подаете на счетный вход таймера 1. Проводочком.

3. В прерывании от компаратора перезагружаем значение TCNT1. В зависимости от фазы.

Таким образом, весь код который работает будет в пункте 3. Т.е. ровно одна сишная строчка.

Сообщение отредактировал DpInRock - Jul 23 2009, 15:19


--------------------
On the road again (Canned Heat)
Go to the top of the page
 
+Quote Post
LexRoss
сообщение Jul 23 2009, 16:13
Сообщение #26


Местный
***

Группа: Свой
Сообщений: 377
Регистрация: 31-01-09
Пользователь №: 44 202



Цитата
Выбрать период перезагрузки таймера чуть больше полупериода сетевой частоты (>10мс), а для синхронизации сбрасывать таймер в прерывании от компаратора.

так и делал

Цитата
Выход таймера 0 или 2 подаете на счетный вход таймера 1. Проводочком.

ноги жалко, еще много на них повесить хочу.

Сейчас сделал так: в прерывании компаратора цикл, в котором включается таймер примерно на 10 микросекунд, цикл повторяется столько раз, сколько установлено кнопками - от 0 до 1000, т.е. задержка от 0 до 10 миллисекунд.
Go to the top of the page
 
+Quote Post
LexRoss
сообщение Jul 26 2009, 12:57
Сообщение #27


Местный
***

Группа: Свой
Сообщений: 377
Регистрация: 31-01-09
Пользователь №: 44 202



Нужно теперь научить регулятор понимать пульт от муз. центра. Нашел ИК приемник, подключил к входу звуковой карты (внизу то, что получилось). Протокол похож на nec, но стартовый бит только 4мс. Остался не задействован только 1 таймер (16бит), и, я так понимаю, приемник надо вешать на INT0. В общих чертах объясните, как распознать 5 кнопок. help.gif

Сообщение отредактировал LexRoss - Jul 26 2009, 13:03
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
DpInRock
сообщение Jul 26 2009, 15:09
Сообщение #28


Гуру
******

Группа: Участник
Сообщений: 2 254
Регистрация: 4-05-07
Из: Moscow
Пользователь №: 27 515



Измерять таймером длительности нулей и единиц. (т.е. результат - массив из длительностей).Потом их анализировать.
А можно и сразу. Для каждой кнопки такая последовательность будет уникальной.

Длительность стартового можно не учитывать. Ибо он выйдет за разрядность 8 бит.
Где-то так. Лично я именно так делал. Тогда не нужно знать что там за протокол в пульте. И вообще наплевать на него.
Правда, стоит учесть, что автоповтор у пульта - тоже хитрый. Но - дойдете сами до этого...


--------------------
On the road again (Canned Heat)
Go to the top of the page
 
+Quote Post
LexRoss
сообщение Jul 26 2009, 15:32
Сообщение #29


Местный
***

Группа: Свой
Сообщений: 377
Регистрация: 31-01-09
Пользователь №: 44 202



Да, про массив я бы не догадался, спасибо. Автоповтор - это при удержании кнопки? При удержании он выдает стартовый и 2 единицы, с этим, думаю, разберусь.
Go to the top of the page
 
+Quote Post
DpInRock
сообщение Jul 26 2009, 15:48
Сообщение #30


Гуру
******

Группа: Участник
Сообщений: 2 254
Регистрация: 4-05-07
Из: Moscow
Пользователь №: 27 515



автоповтор - он одинаковый для всех кнопок.

ну и когда будете реальные значения получать, увидите, что длительности будут иметь совсем мало вариантов. И их можно смело заменять битами.
Скажем длительности от 25 до 33 - это 0, а от 44 до 67 - 1. Будет короче и быстрее. (Единицы я привел крайне условные).

Сообщение отредактировал DpInRock - Jul 26 2009, 15:51


--------------------
On the road again (Canned Heat)
Go to the top of the page
 
+Quote Post
Diko
сообщение Jul 30 2009, 08:40
Сообщение #31


Частый гость
**

Группа: Свой
Сообщений: 114
Регистрация: 14-08-07
Из: Харьков, Украина
Пользователь №: 29 773



Впринципе есть вариант воспользоваться пультом с известным протоколом RC-5, например и воспользоваться готовыми процедурами анализа посылок от этого пульта. Данные пример есть наверное на все МК, в частности на Atmel и MSP430.


--------------------
Жизнь сложна и не предсказуема, незачем её усложнять.
Go to the top of the page
 
+Quote Post
Goodefine
сообщение Jul 30 2009, 14:29
Сообщение #32


Местный
***

Группа: Свой
Сообщений: 211
Регистрация: 6-08-07
Из: Приднестровье, Тирасполь
Пользователь №: 29 581



Цитата(LexRoss @ Jul 26 2009, 15:57) *
... Нашел ИК приемник, подключил к входу звуковой карты (внизу то, что получилось). Протокол похож на nec, но стартовый бит только 4мс. ...

Это nec-подобный протокол, встречался мне в пультах от Samsung-а:
Прикрепленное изображение

Написал к нему декодер (Си). Кроме него распознает еще два nec-подобных протокола от
JVC:
Прикрепленное изображение

и msi(собственно, чистый nec):
Прикрепленное изображение

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


--------------------
Любой, заслуживающий внимания, опыт приобретается себе в убыток...
Go to the top of the page
 
+Quote Post
LexRoss
сообщение Aug 1 2009, 06:07
Сообщение #33


Местный
***

Группа: Свой
Сообщений: 377
Регистрация: 31-01-09
Пользователь №: 44 202



Goodefine, да, хотелось бы посмотреть. Хотя я уже сделал, но все равно, может, что-то поправлю.

И еще, вопрос совсем простой. Есть число X. Как его загрузить в TCNT1H, TCNT1L ?
В хелпе cvavr нашел такую строку:
TCNT1=0x1111; /* Write to TCNT1L & TCNT1H registers */
Пишет ошибку.

Все, разобрался. Что-то запутался с sfrw.

TCNT1 работает.

Сообщение отредактировал LexRoss - Aug 1 2009, 05:29
Go to the top of the page
 
+Quote Post
LexRoss
сообщение Aug 1 2009, 13:55
Сообщение #34


Местный
***

Группа: Свой
Сообщений: 377
Регистрация: 31-01-09
Пользователь №: 44 202



Появилась проблема.
Лампой управляет оптотиристор ТО125-12.5. Контроллер распознает кнопки от пульта только при отключенном от питания светодиоде оптотиристора. Как только подключаю тиристор, с выхода фотоприемника начинает сыпаться мусор. Питания разделял - не помогло. Кондер на питании и резисторы у фотоприемника стоят как по ДШ.

Может, развязать фотоприемник с контроллером оптроном?
Go to the top of the page
 
+Quote Post
Goodefine
сообщение Aug 1 2009, 16:44
Сообщение #35


Местный
***

Группа: Свой
Сообщений: 211
Регистрация: 6-08-07
Из: Приднестровье, Тирасполь
Пользователь №: 29 581



Цитата(LexRoss @ Aug 1 2009, 09:07) *
Goodefine, да, хотелось бы посмотреть. Хотя я уже сделал, но все равно, может, что-то поправлю.

Выложил здесь.


--------------------
Любой, заслуживающий внимания, опыт приобретается себе в убыток...
Go to the top of the page
 
+Quote Post
LexRoss
сообщение Aug 2 2009, 07:58
Сообщение #36


Местный
***

Группа: Свой
Сообщений: 377
Регистрация: 31-01-09
Пользователь №: 44 202



Goodefine, спасибо.

С оптроном не получается. Осцил показывает, что сигнал на INT0 проходит, однако ничего не работает.
Посмотрите схему, я правильно подключаю?

Сообщение отредактировал LexRoss - Aug 2 2009, 08:00
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
=AK=
сообщение Aug 2 2009, 09:16
Сообщение #37


pontificator
******

Группа: Свой
Сообщений: 3 055
Регистрация: 8-02-05
Из: страны Оз
Пользователь №: 2 483



Цитата(LexRoss @ Aug 2 2009, 17:28) *
С оптроном не получается.

"Оптрон после фотоприемника" выглядит просто как издевательство над здравым смыслом. В сущности это точно соответствует присказке "водку продали, деньги пропили".

Как бороться с помехами - читайте здесь
Go to the top of the page
 
+Quote Post
LexRoss
сообщение Aug 7 2009, 11:06
Сообщение #38


Местный
***

Группа: Свой
Сообщений: 377
Регистрация: 31-01-09
Пользователь №: 44 202



Развязал тиристор с контроллером, он давал помехи по земле. Проблему ликвидировал.

Осталось всего 2 ноги. Хотелось бы еще связать это все с компутером. Где можно почитать про RS232, интересует именно программа для компьютера (на си или делфи)?
Или может быть есть более простое решение (через LPT)? Нужно всего 3 команды.
Go to the top of the page
 
+Quote Post

3 страниц V   1 2 3 >
Reply to this topicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 24th July 2025 - 02:14
Рейтинг@Mail.ru


Страница сгенерированна за 0.01733 секунд с 7
ELECTRONIX ©2004-2016