Реле с управлением по rs 232

Управление несколькими реле от порта RS -232 (COM-порта)

Расшифровку посылок интерфейса RS-232 удобно выполнять с помощью микроконтроллера (однокристального микрокомпьютера). К счастью, можно обойтись и без самостоятельного написания программ для него, пользуясь микроконтроллером PIC 16С54А, запрограммированным для решения подобных задач фирмой Stone Mountain Instruments. Приведенная схема и программа на языке BASIC демонстрируют его работу. Каждый модуль SMI101B имеет 8 логических выходов. Кроме того, к одному последовательному порту можно подключить до 7 модулей SMI101B. Три вывода группы N позволяют присвоить каждому модулю определенный идентификационный номер: от 0 до 6.

Если все три вывода заземлены, идентификационным номером будет 0; если вывод N1 соединен с шиной +5 В, то 1, и т. д. (в двоичном коде). При включении питания все выходы неактивны (находятся в состоянии лог. 0). Для включения выхода надо послать команду в формате вида xNy, где х есть идентификационный номер соответствующего модуля SMI101B, а у определяет, какой из выходов модуля будет включен Для выключения выхода надо использовать символ F вместо N (то есть, например, 0F3). Связь должна производиться в формате 8 бит данных и без битов контроля четности. Скорость передачи может составить 9600 бод, если модуль работает с кварцевым резонатором на 4 МГц, или 1200 бод с керамическим резонатором 500 кГц. На рисунке показано, что для управления каждым реле требуется транзистор, резистор и защитный диод. Для сокращения общего количества элементов схемы можно использовать специальную микросхему, управляющую нагрузками индуктивного характера (в частности, реле), например типа UDN2987 производства компании Allegro; в ней есть все необходимое для управления восемью малогабаритными реле от сигналов со стандартными логическими уровнями.

Аналоги зарубежных деталей можно найти в разделе

Источник

Реле на COM-порт

Из приведенной статьи вы узнаете как управлять реле через COM-порт компьютера. Для переключения реле используется DTR-сигнал, находящийся на 4 ножке 9-ти контактного разъема D-SUB 9.

Как видно из вышеприведенной схемы, реле подключен не напрямую к последовательному интерфейсу, а через составной (дарлингтоновский) транзистор. Для лучшей защиты COM-порта, рекомендуется заменить транзисторы оптопарой (IC ≥ 100 mA). Разумеется, тогда резистор R2 нужно будет подобрать к оптопаре.

Транзистор BC517 можно заменить отечественным КТ645А.

Причиной присутствия в схеме транзистор (оптопары) является то, что выходная мощность COM-порта недостаточна для переключения катушки реле и требуется дополнительно питание. Напряжения питания 5В здесь будет достаточно, плюс его можно взять с блока питания компьютера. Только не рекомендую брать питание от USB! Это может привести к выходу из строя USB-порта или контроллера.

В Windows системах есть небольшой недостаток: во время загрузки винды реле будет щелкать несколько раз. Количество переключений зависит от версии Windows, к примеру в XP щелкает около 7 раз.

После того, как вы собрали конструкцию, возникает резонный вопрос: а как же управлять реле?

В операционных системах Windows прямой доступ к регистрам запрещен, поэтому для управления последовательным портом, мы пойдем другим путем. В C++ можно использовать функции Windows API. Для примера приведу несколько строчек кода:

В Linux системах можно использовать функции модема:

Источник

Реле с управлением по rs 232

(язык — visual basic 6.0)
1. Суть метода
Часто в конференциях от радиолюбителей можно услышать вопрос:»Я сделал (хочу сделать) какое-то внешнее устройство и имею желание подключить его к компьютеру по СОМ порту, чтобы им как-то управлять, но не знаю как». СОМ порт более предпочтителен для таких экспериментов, так как у него выше, чем у LPT нагрузочная способность, и поэтому меньше шансов спалить порт.

Если у вас установлен Visual Basic и есть какие-то навыки программирования на нём, то наиболее простой, по-моему, путь- использовать компонент управления (контрол) MSComm Control, который вызывается Project->Components->и поставить галочку на MSComm Control. Далее необходимо поместить этот контрол на форме и написать код программы для него.

Читайте также:  Где находится реле поворотников бмв е39

Сложность заключается в том, что приём-передача через СОМ порт требуют строгого соблюдения протокола RS-232, и не всем радиолюбителям под силу разработка контроллера, который бы этот протокол поддерживал. Между тем этот контрол MSComm позволяет считывать и управлять отдельными выводами СОМ порта и тем самым напрямую управлять какими-то внешними устройствами без формирования временных последовательностей RS-232 протокола.

В качестве примера такого внешнего устройства можно привести популярный программатор PonyProg (правда он написан не на VB, но принцип одинаковый). Если внимательно посмотреть на его схему, то видно, что в некоторых случаях (например, при программировании микросхем 24хх), главные информационные сигналы СОМ порта Rx (2) и Tx (3) не используются вообще. Весь обмен идет через вспомогательные выводы CTS(8), DSR (6), DTR (4), RTS (7) (хотя кое-где используется 3-й вывод Tx, об этом мы тоже поговорим).

Для того чтобы считать состояние вывода, достаточно на вход порта компьютера подать однополярные положительные сигналы и обойтись без преобразователей уровня TTL-RS232. Вообще-то это не соответствует стандарту RS-232, однако большинство портов с такими уровнями замечательно работают.

Итак, три вывода СОМ порта — CD, CTS, DSR можно опросить. Команда, которая позволяет считать состояние например вывода CTS (8), выглядит примерно так:

То есть этой командой мы опрашиваем 0 или 1 присутствует на выводе CTS.

На два вывода СОМ порта — DTR и RTS можно вывести (+12В) или (-12В), и тем самым зажечь светодиод, включить реле или какой-то другой исполнительный механизм. Например, для вывода RTS, это команды:

На основе этих команд (1)-(4) можно организовать как простой обмен данными с компьютером, так и довольно сложные протоколы, например I2C, SPI, MiсroWire и т.д. В качестве примера можете посмотреть DS1621 pc thermometer, и как, используя эти команды, Альберто Риччи организовал I2C протокол обмена с микросхемой термометра DS1621.


Рис.1. Схема для проверки

Если в качестве практики вы не поленитесь за 10 мин собрать схему рис.1 (можно прямо навесным монтажом на разъёме DB9), и запустить программу Com_device, то сможете увидеть как реагирует программка на замыкание кнопки и включает-выключает светодиод (кнопкой LED) с помощью именно тех команд, о которых я говорил выше (на кнопку »Ввод» пока не обращайте внимания).

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


Рис.2. Временная диаграмма RS-232

Как видно, первым идёт старт-бит, затем биты данных, затем стоп-бит (обратите внимание, что 0- это +12В, 1- это -12В) . Предположим, мы посылаем старт-бит, затем сразу же за ним какое-то число нулей, например, в битах 0-1-2-3. Получим такой импульс


Рис.3. Формирование импульса

Меняя число импульсов вслед за стартовым, мы сможем менять длительность импульса (правда с шагом в длительность бита). Для этого на порт необходимо посылать одно из следующих чисел: FF, FE, FC, F8, F0, E0, C0, 80, 00. Причём при FF длительность импульса будет минимальная, при 00- максимальная. На рис.3 код импульса — F0.

Чтобы компьютер выдал на COM порт такой сигнал нужно всего-то выполнить команду

Этой командой на порт выдается ASCII код символа. А как нам послать на порт, например, число F0 (240 в десятичном виде)? Вот таким нехитрым способом:

То есть мы сперва преобразуем число 240 в какой-то символ (я даже не знаю какой, можете посмотреть по таблице ASCII кодов) и этот символ отправляем на выход порта.

Таким образом мы можем из компьютера сделать 8-уровневый формирователь ШИМ сигнала и управлять, например, скоростью вращения какого-нибудь моторчика постоянного тока, вентилятора и т.д. Только сигнал этот придется усилить по току и без внешнего питания вы вряд ли обойдётесь, так как макс. ток, который может выдать СОМ порт- что-то около 25мА. Можете это питание взять с блока питания компьютера. Возможно, придётся ещё и усреднить этот ШИМ сигнал RC-цепочкой или интегрирующим усилителем, это зависит от вашего устройства.

Читайте также:  Как прозвонить обмотку втягивающего реле

Теперь пришло время нажать кнопку «Ввод» в программе Com_device. Вы увидите окно ввода чисел. Если вы введёте одно из десятичных числел 255, 254, 252, 248, 240, 224, 192, 128, 0 , то вы получите гладкий импульс на 3(Tx) выводе DB9. Если же у вас нет осциллографа, подключите вольтметр постоянного тока между 5(GND) и 3(Tx) выводами и посмотрите, как меняется напряжение. У меня получилась такая зависимость:

Как видно, довольно линейная картинка.

Посмотрите, как изменится сигнал при изменении свойства Interval таймера Timer2, а также попробуйте в строке MSComm1.Settings = «1200,N,8,1» изменять скорость обмена (параметр baud rate- в этой строке= 1200).

Если 8 уровней вам не хватает, можете посылать подряд 2 байта:

Получится уже 16 уровневый формирователь. С помощью его уже можно организовать 4-разрядный ЦАП, а если его дополнить внешним компаратором, выход которого опрашивать с помощью команд (1),(2) одним из выводов CD, CTS, DSR; то можно и получить 4-разрядный АЦП, например последовательного приближения.

Com_device.rar(5,2 Kb) — архив с исходным текстом программы на VB.

Схема ниже показывает как можно управлять скоростью вращения вентилятора с помощью ШИМ сигнала, сформированного из Тх-сигнала СОМ-порта. Вентилятор можно использовать от блока питания компьютера.


Рис.4. Схема управления скоростью вращения вентилятора

Заметьте, что выводы 2 и 3 разъёма DB9 в ней объединены.

Запустив программу FunControl (рис.5) и щёлкая по радиокнопкам, можно дискретно изменять скорость вращения вентилятора.

Рис.5. Окно программы управления скоростью вращения вентилятора FunControl.

Ехе-файл программы FunControl находится в архиве Exe.rar.

Первый раз сказал Мяу!

Зарегистрирован: Пн апр 18, 2011 12:55:22
Сообщений: 35
Откуда: Россия, Липецк
Рейтинг сообщения: 0

2. Расширяем число линий вывода
Всё бы хорошо, но в большинстве случаев два вывода СОМ порта — DTR и RTS — это катострофически мало. Выход из этой ситуации давно известен и очень прост. Он очень часто используется разработчиками устройств на микроконтроллерах при дефиците выводов (ну например, даже в моём проекте Цифровой термометр . Суть его заключается в использовании регистров сдвига. На схеме (рис.6) IC1- широко распространённый регистр сдвига 74НС595. Транзисторы- ну например КТ3102, R1..R3-10kOm, R20. R22-1kOm, R12. R19 -100 Om.

Сигналы с СОМ-порта компьютера через разъём DB9 подаются на схемы сопряжения (транзисторы Q1. Q3). Вместо них можно использовать какой-нибудь МАХ232.

RTC выступает в качестве входа последовательных данных (serial data input), Тх- в качестве сигнала сдвига (shift register clock input), DTR — в качестве сигнала записи (защёлки) (storage register clock input) — в скобках обозначения по даташиту, который я советую скачать.


Рис.6. Увеличение числа линий вывода с помощью регистра сдвига 74HC595

На рис.7 показано окно программы. Скачайте исходник на VB6 ехе-файл (52кБ) .


Рис.7. Окно программы
Нажимая на кнопки 0. 7 выберете комбинацию и нажмите кнопку «Ввод». Должны загореться соответствующие светодиоды. Кнопка «Очистить » гасит все светодиоды. Вместо светодиодов можно использовать реле или другие исполнительные механизмы (конечно, с учётом их нагрузочной способности).

Число линий вывода можно увеличивать наращиванием числа сдвиговых регистров, при этом вывод 9 надо соединить со входом 14 последующего (как, например на схеме ниже).

JLCPCB, всего $2 за прототип печатной платы! Цвет — любой!

Зарегистрируйтесь и получите два купона по 5$ каждый:https://jlcpcb.com/cwc

Первый раз сказал Мяу!

Зарегистрирован: Пн апр 18, 2011 12:55:22
Сообщений: 35
Откуда: Россия, Липецк
Рейтинг сообщения: 0

Читайте также:  Схема подключения датчика реле температуры дткб

3. Вывод даты-времени на 4-разрядный LED-индикатор

Конечно СОМ порт проигрывает LPT по скорости обмена, но часто больших скоростей и не требуется. Но чтобы у вас не сложилось впечатление, что это уж слишком «тормознутый» порт, предлагаю посмотреть, как можно вывести системные дату-время на 4-разрядный LED-индикатор. Причём с динамической индикацией- и без всяких микроконтроллеров! При этом частота регенерации составила около 70Гц и мерцания вообще не видно.


Рис.8. Схема вывода даты-времени на 4-разрядный LED-индикатор

IC1,IC3 — регистры сдвига 74HC595, индикаторы- от старых AT-корпусов компьютеров.

На регистр IC1 выводится код цифры, на IC3- позиция включаемого знака.


Рис.9. Окно программы VB_clock и макетная плата

При нажатии кнопкок «Время» и «Дата» выводится соответственно системное время и дата.

VBclock.rar — ехе-файл программы VBclock.

Сборка печатных плат от $30 + БЕСПЛАТНАЯ доставка по всему миру + трафарет

Первый раз сказал Мяу!

Зарегистрирован: Пн апр 18, 2011 12:55:22
Сообщений: 35
Откуда: Россия, Липецк
Рейтинг сообщения: 0

4. Вывод бегущей строки
На следующем примере показана возможность вывода символов на светодиодную матрицу 7х7 программой RunString. Входные цепи идентичны предыдущей схеме.


Рис10.

Нажав кнопку «Символ», можно вывести одиночный символ, кнопка «Строка» выводит бегущую строку произвольной длины, которую вы можете ввести в окне ввода строки. Все буквы любого набранного вами текста будут переведены в верхний регистр. В окне программы RunString (рис.11) есть поле 7х7 мнемонических индикаторов, которые дублируют вывод на светодиодную матрицу.


Рис.11.

Ехе-файл программы RunString находится в архиве Exe.rar

5. Создание «мультфильма»

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

Нажимая на кружки нарисуйте картинку- это будет кадром. Сохраните его, нажав на одну из кнопок «>» или «|>» (рис.12). Иногда картинку удобнее рисовать «с чистого листа», а иногда следующая картинка — лишь незначительное изменение предыдущей. Кнопка «>» сохраняет предыдущий кадр и переходит к чистому следующему (все светодиоды погашены), кнопка «|>» также сохраняет предыдущий кадр, но следующий кадр будет повторением предыдущего, который вы сможете изменять по своему желанию. Кнопка «
_________________

Рассмотрим особенности, характеристики и технологии проектирования продукции RECOM: AC/DC-преобразователи для установки на плату и для внешнего монтажа, изолированные DC/DC-преобразователи, импульсные регуляторы и силовые модули, а также средства отладки для поддержки разработчиков и ускорения выхода разработок на рынок.

Модератор

Карма: 68
Рейтинг сообщений: 424
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Сообщений: 13492
Откуда: Тамбовская обл.
Рейтинг сообщения: 0
Медали: 1

Создать интеллектуальный пожарный датчик, который будет не только оповещать о возгорании, а способен легко интегрироваться в системы умного дома или предприятия и выполнять ряд дополнительных действий, возможно с компонентами STMicroelectronics: высокопроизводительным радиочастотным трансивером S2-LP и малопотребляющим усилителем TSV629x. Рассмотрим подробнее это решение, отладочные комплекты и программный пакет ST.

Первый раз сказал Мяу!

Зарегистрирован: Пн апр 18, 2011 12:55:22
Сообщений: 35
Откуда: Россия, Липецк
Рейтинг сообщения: 0

Мои вопросы:
1.) Если администрация разрешит, то я выложу ссылки на исходники программ.
2.) Не работает схема для проверки, позднее опишу ход своих действий, надеюсь вы поможете мне.

Первый раз сказал Мяу!

Зарегистрирован: Пн апр 18, 2011 12:55:22
Сообщений: 35
Откуда: Россия, Липецк
Рейтинг сообщения: 0

Модератор

Карма: 68
Рейтинг сообщений: 424
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Сообщений: 13492
Откуда: Тамбовская обл.
Рейтинг сообщения: 0
Медали: 1

Первый раз сказал Мяу!

Зарегистрирован: Пн апр 18, 2011 12:55:22
Сообщений: 35
Откуда: Россия, Липецк
Рейтинг сообщения: 0

Модератор

Карма: 68
Рейтинг сообщений: 424
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Сообщений: 13492
Откуда: Тамбовская обл.
Рейтинг сообщения: 0
Медали: 1

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

Источник

Оцените статью
Adblock
detector