Типы входов и выходов плк

Подписаться
Вступай в сообщество «sinkovskoe.ru»!
ВКонтакте:

Входы и выходы — это базовое понятие любого контроллера умного дома, будь то промышленный контроллер (Beckhoff, Овен, Siemens, ABB — любой) или распределённая система KNX или HDL. В любой системе есть элементы типа «Модуль бинарных входов» или «Блок аналоговых выходов».

Поскольку для расчёта системы и вообще понимания того, откуда берётся её стоимость, очень важно знать разницу между входами и выходами, расскажу подробнее о них.

Вход контроллера

Вход — это клемма для подключения какого либо устройства, которое передаёт информацию в контроллер . На входы контроллера подключаются источники сигнала.

Выключатель — это источник сигнала. Сигнал может быть либо «нажато» либо «не нажато». То есть, либо логический ноль либо логическая единица. Выключатель подключается к клемме контроллера, которая видит, нажат он или нет.

Тут мы переходим к понятию того, что вход и выход может быть дискретным (бинарным или цифровым его могут называть) или аналоговым. Дискретный — значит, воспринимающий либо единицу либо ноль. Выключатель подключается к дискретному входу, так как он либо нажат, либо не нажат, других вариантов нет.

Дискретный вход может либо ожидать появления какого-то напряжения, либо замыкания входа на землю. Например, контроллер ОВЕН ПЛК воспринимает как логическую единицу появление на входе напряжения от +15 до +30 вольт. А контроллер WirenBoard ожидает, что на входе появится земля (GND). В первом случае на выключатель надо подать +24В, чтобы при нажатии кнопки на вход контроллера пришли +24 вольта, во втором — на выключатель подаём общий минус (землю), при нажатии она придёт на контроллер.

Датчик движения также подключается к дискретному входу контроллера. Датчик либо подаёт сигнал о том, что движение есть, либо о том, что движения нет. Вот схема подключения датчика Colt XS:


Два левых контакта — напряжение питания датчика, +12 вольт. Два средних контакта — тревожный контакт, он нормально-замкнут. То есть, если движения нет, то N и С замкнуты, если движение появляется, то N и С размыкаются. Так сделано для того, чтобы если злоумышленник перережет провод датчика или повредит датчик, то цепь разорвётся, что приведёт к сработке сигнализации.

В случае с контроллером Овен (а также Beckhoff и большинством других контроллеров), нам надо подать на N +24 вольта, а С подключить ко входу контроллера. Если контроллер видит на входе +24В, то есть, логическую единицу, то всё в порядке, движения нет. Как только сигнал пропадает, значит, датчика сработал. В случае с контроллером, который детектирует не напряжение, а землю, мы подключаем N к общему минусу контроллера, С так же к его входу.

Контакты Т датчика — это тампер. Они также нормально замкнуты, размыкаются при вскрытии корпуса датчика. Такие контакты есть у многих элементов охранных систем.

Датчик протечки воды — также подключается к дискретному входу. Принцип тот же, но он, как правило, нормально-разомкнут. То есть, при отсутствии протечки сигнала нет.

Аналоговый вход контроллера видит не просто есть сигнал или нет сигнала, он видит величину сигнала. Универсальный аналоговый сигнал — это от 0 до 10 вольт постоянного тока, такой сигнал даёт множество разных датчиков. Либо от 1 до 10 вольт. Есть ещё токовый сигнал — от 4 до 30 миллиампер. Почему не от нуля, а от 1 вольта или 4 миллиампер? Чтобы понимать, работает ли вообще датчик. Если датчик с выходным сигналом 1-10 вольт выдаёт 1 вольт, значит, это соответствует минимальному уровню измеряемой величины. Если 0 вольт — значит, он выключен или сломан или провод оборван.

Датчики температуры могут выдавать от 0 до 10 вольт. Если по паспорту датчик измеряет температуру в диапазоне от 0 до +50 градусов, значит, сигнал 0 вольт соответствует 0 градусов, сигнал 5 вольт соответствует +25 градусов, сигнал 10 вольт соответствует +50 градусов. Если датчика измеряет температуру в диапазоне от -50 до +50 градусов, то 5 вольт от датчика соответствуют 0 градусов, а, скажем, 8 вольт от датчика соответствуют +30 градусам.

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

То есть, аналоговый вход измеряет величину сигнала: ток или напряжение. Или, например, сопротивление, если говорить о резистивных датчиках. Многие датчики выпускаются в разных модификациях: с выходом по току или по напряжению. Если нам для системы надо найти какой-то редкий датчик, например, уровня определённого газа в воздухе, то, скорее всего, у него будет выход либо 0-10В либо 4-20мА. У более продвинутых — интерфейс RS485, о нём чуть позже.

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

Выходы контроллера

Выходы — это клеммы, на которые сам контроллер может подать сигнал. Контроллер подаёт сигнал, чтобы чем-то управлять.

Дискретный выход — это выход, на который контроллер может подать либо логический ноль, либо логическую единицу. То есть, либо включить либо выключить.

Свет без регулировки яркости подключается к дискретному выходу.

Электрический тёплый пол — тоже к дискретному выходу.

Клапан перекрывания воды или электрическая розетка или вентилятор вытяжки или привод радиатора — они подключаются к дискретным выходам контроллера.

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

Аналоговый выход — клемма, на которую контроллер может подать сигнал не только включено-выключено, но определённое значение управления. Это те же 0-10 (или 1-10) вольт либо 4-20 миллиампер. Далее на этот управляющий сигнал мы подключаем либо диммер освещения либо регулятор скорости вращения вентилятора либо что-то ещё, имеющее соответствующий вход.

Управление освещением — это силовой диммер, который в зависимости от сигнала 0-10 вольт с контроллера даёт на выходе от 0 до 230 вольт переменного тока для питания ламп накаливания или диммируемых светодиодных ламп.

Для светодиодных лент используется ШИМ-диммер (или ШИМ-драйвер или блок питания с диммированием), он по сигналу 0-10 либо 1-10 вольт с контроллера подаёт на ленту широтно-импульсно моделированный сигнал для диммирования.

Для вентиляторов используется тиристорный регулятор.

Интерфейсы контроллера

Ещё у любого контроллера есть разные интерфейсы связи, которые определяют, с какими ещё устройствами он может общаться. Интерфейсы связи обычно двухсторонние, то есть, контроллер может передавать на них информацию и получать информацию о состоянии.

Интерфейс Ethernet — это подключение к компьютерной сети и интернету для управления с мобильного приложения или общения с другими контроллерами.

Интерфейс RS-485 ModBus — самый распространённый для связи с разной техникой. Это кондиционеры, вентмашины, различные датчики и исполнительные устройства, модули расширения и много чего ещё.

RS-232 это интерфейс с маленькой дальностью линии. Обычно это, например, GSM модемы.

KNX — интерфейс связи с шиной KNX, на которой может находиться очень много устройств всех видов.

Получаем такую сводную картинку по входам и выходам контроллера:


Пример

Возьмём для примера ОВЕН ПЛК160.

У него 16 дискретных входов, из них 4 быстродействующих, то есть, подходящих для подключение быстро меняющихся сигналов, например, счётчиков импульсов. Напряжение на входе должно быть от 15 до 30 вольт, чтобы контролер считал его единицей.

12 дискретных выходов с коммутацией до 250 вольт 3 ампера. То есть, это 690 ватт при напряжении 230В. Подойдёт для десятка ламп накаливания или светодиодных ламп. Для тёплого пола или розеток надо ставить дополнительное реле с бОльшим током коммутации.

8 аналоговых входов. Входы можно настроить на приём унифицированных сигналов 0-10В, 0-5мА, 0-20мА, 4-20мА.

4 аналоговых выхода. В зависимости от модификации контролера выходной сигнал будет либо по напряжению (0-10), либо по току (4-20), либо изменяемый.

Интерфейсов связи у него много: Ethernet, RS-485, RS-232, USB (для прошивки).

При стоимости в 32 тысячи это отличный контроллер, на котором можно много чего реализовать даже без дополнительных блоков. И это контроллер промышленного класса надёжности.

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

Буду признателен за написание какого-либо короткого комментария к тексту. Он оказался полезен? Остались какие-то вопросы? Нашли ошибку? Напишите об этом, пожалуйста.

Мы выполняем проектирование современных инженерных систем для квартир и загородных домов. Также консультации, шеф-монтаж, аудит. Высылайте задачи и любые вопросы на почту

Аналоговый сигнал - сигнал данных, у которого каждый из представляющих параметров описывается функцией времени и непрерывным множеством возможных значений.

Различают два пространства сигналов - пространство L (непрерывные сигналы), и пространство l (L малое) - пространство последовательностей. Пространство l (L малое) есть пространство коэффициентов Фурье (счетного набора чисел, определяющих непрерывную функцию на конечном интервале области определения), пространство L - есть пространство непрерывных по области определения (аналоговых) сигналов. При некоторых условиях, пространство L однозначно отображается в пространство l (например, первые две теоремы дискретизации Котельникова).

Аналоговые сигналы описываются непрерывными функциями времени, поэтому аналоговый сигнал иногда называют непрерывным сигналом. Аналоговым сигналам противопоставляются дискретные (квантованные, цифровые). Примеры непрерывных пространств и соответствующих физических величин:

    прямая: электрическое напряжение

    окружность: положение ротора, колеса, шестерни, стрелки аналоговых часов, или фаза несущего сигнала

    отрезок: положение поршня, рычага управления, жидкостного термометра или электрический сигнал, ограниченный по амплитуде различные многомерные пространства: цвет, квадратурно-модулированный сигнал.

Свойства аналоговых сигналов в значительной мере являются противоположностью свойств квантованных или цифровых сигналов.

Отсутствие чётко отличимых друг от друга дискретных уровней сигнала приводит к невозможности применить для его описания понятие информации в том виде, как она понимается в цифровых технологиях. Содержащееся в одном отсчёте "количество информации" будет ограничено лишь динамическим диапазоном средства измерения.

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

Применение:

Аналоговые сигналы часто используют для представления непрерывно изменяющихся физических величин. Например, аналоговый электрический сигнал, снимаемый с термопары, несет информацию об изменении температуры, сигнал с микрофона - о быстрых изменениях давления в звуковой волне, и т.п.

2.2 Цифровой сигнал

Цифровой сигнал - сигнал данных, у которого каждый из представляющих параметров описывается функцией дискретного времени и конечным множеством возможных значений.

Сигналы представляют собой дискретные электрические или световые импульсы. При таком способе вся емкость коммуникационного канала используется для передачи одного сигнала. Цифровой сигнал использует всю полосу пропускания кабеля. Полоса пропускания - это разница между максимальной и минимальной частотой, которая может быть передана по кабелю. Каждое устройство в таких сетях посылает данные в обоих направлениях, а некоторые могут одновременно принимать и передавать. Узкополосные системы (baseband) передают данные в виде цифрового сигнала одной частоты.

Дискретный цифровой сигнал сложнее передавать на большие расстояния, чем аналоговый сигнал, поэтому его предварительно модулируют на стороне передатчика, и демодулируют на стороне приёмника информации. Использование в цифровых системах алгоритмов проверки и восстановления цифровой информации позволяет существенно увеличить надёжность передачи информации.

Замечание. Следует иметь в виду, что реальный цифровой сигнал по своей физической природе является аналоговым. Из-за шумов и изменения параметров линий передачи он имеет флуктуации по амплитуде, фазе/частоте (джиттер), поляризации. Но этот аналоговый сигнал (импульсный и дискретный) наделяется свойствами числа. В результате для его обработки становится возможным использование численных методов (компьютерная обработка).

ПЛК взаимодействует с внешними устройствами через модули ввода/вывода. Они могут входить в состав базового модуля ПЛК или быть выполненными в виде отдельных блоков . Количество и тип используемых модулей зависит от класса ПЛК, его назначения и цены. В более дешевых ПЛК используется ограниченное количество функций, имеется меньшее количество портов. Дорогие ПЛК имеют расширенный функционал и более высокое быстродействие. В них возможно использовать до нескольких тысяч отдельных каналов ввода/вывода.

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

Цифровые входы ПЛК

В ПЛК обычно используются маломощные цифровые (дискретные) входы. Величина входного сигнала обычно не превышают 30 В. Входы ПЛК оснащены оптопарами (оптронами) обеспечивающими гальваническую развязку цепи питания. В этом случае напряжение поступающее на вход не имеет соединения с электронными узлами ПЛК. Это позволяет защитить ПЛК от повреждения при попадании высокого напряжения на цифровой вход. Таким образом при аварии из строя выходит только модуль ввода. При этом сам ПЛК остается исправным.

Использование оптической развязки вносит ограничения в работу порта. Оптроны имеют ограниченное быстродействие поэтому скорость приема данных определяется их техническими характеристиками. Оптические датчики обладающие высокой скоростью переключения имеют высокую цену. Поэтому в бюджетных моделях используются дешевые оптроны с низким быстродействием.

Релейные выходы.

Это наиболее распространенный тип выхода. Внутри модуля ПЛК находятся миниатюрные электромагнитные реле управляемые программой ПЛК. При подаче сигнала от блока управления на катушку реле K1 происходит замыкание ее контакта K1.1. Контакты реле К1.1. выведены на клеммную колодку к которой можно подключать различную нагрузку: электромагнитные клапаны, катушки контакторов и мощных реле, нагреватели, лампы.


Коммутирующее напряжение может быть как постоянного, так и переменного тока. Ток через контакты реле не должен превышать предельного значения (обычно 3 – 7 А). Релейным выходам присущи недостатки обычных электромагнитных реле - механический износ и низкое быстродействие. Релейные модули нельзя использовать для задач для которых требуется частое переключение выходов. Для этой цели обычно используют транзисторные выходные модули.

Транзисторные выходы

Транзисторный выход (как и релейный) может принимать два состояния (открыт/закрыт). В качестве коммутирующего элемента в этих модулях используется мощный транзистор. По сравнению с релейным модулем этот тип выхода может коммутировать меньшие токи (обычно 0,5 – 1,5 А). Транзисторные выходы имеют полярность подключения и их нельзя использовать для коммутации переменного напряжения. Существует два типа выходов - NPN и PNP (по типу используемого транзистора). Для каждого типа выхода используется своя схема подключения нагрузки. На рисунке показана схема подключения для выхода NPN типа:


Хотя транзисторные выходы имеют меньшую нагрузочную способность, они обладают рядом преимуществ. В них отсутствуют механические коммутирующие элементы и поэтому они имеют большой ресурс (количество переключений). Они могут обеспечивать большую скорость (частоту) переключения. Частота переключения зависит от скорости выполнения программы в ПЛК. Транзисторные выходы используются при необходимости частой коммутации, для выдачи управляющих маломощных сигналов, для управления твердотельными реле или мощными контакторами. Они также могут использоваться для реализации аппаратных функций ПЛК таких как позиционирование (управление шаговым двигателем или серво приводом) или частотное управление (создание импульсного сигнала заданной частоты).

Аналоговые входы

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

Внутри аналогового модуля с помощью АЦП аналоговое значение преобразуется в цифровое. Это значение сохраняется в определенной области памяти к которой программа в ПЛК может свободно обращаться во время работы. Измерение аналогового сигнала производится один раз за цикл опроса программы. При использовании цифровых фильтров за один цикл опроса программы производится несколько измерений и затем из них формируется одно усредненное значение. Точность измерения сигнала определяется разрядностью АЦП.

Для 10-битного АЦП преобразованное аналоговое значение может принимать значения в диапазоне 0 … 1024. Для 8-битного АЦП доступны всего 255 цифровых значений.

Аналоговые выходы

Аналоговые выходы предназначены для формирования выходного аналогового напряжения. Величина выходного напряжения пропорциональна цифровому значению соответствующей ячейки в памяти ПЛК. Значение ячейки изменяется в процессе выполнения пользовательской программы ПЛК. Аналоговый модуль с помощью ЦАП преобразует это цифровое значение в аналоговый сигнал. Аналоговый сигнал, формируемый ПЛК, может использоваться для управления различными приводами, специализированными контроллерами и регуляторами, для передачи некоторого параметра в ведомое устройство посредством изменения величины аналогового сигнала.

Конструктивно аналоговые выходы гораздо проще аналоговых входов. Используемые в них ЦАП обладают большим быстродействием. Процесс преобразования сигнала требует значительно меньше времени чем при АЦП, поэтому задержек при преобразовании сигнала практически не происходит. Точность преобразования выходного сигнала зависит от разрядности ЦАП. Чем больше разрядность ЦАП тем более плавно осуществляется изменение сигнала.

В аналоговом выходном модуле используется 8-битный ЦАП. Диапазон напряжений которые может выдавать аналоговый модуль составляет 0 … 10В. Разрешение 256 единиц. 0 это выдача напряжения 0В а 255 это выдача напряжения 10В. Значение одной единицы составляет 40 мВ (квант напряжения). Для выдачи напряжения 4,8 В нужно подать число 120.

Цифровые входы

Входную цепь МК в цифровом режиме проще всего представить в виде логического КМОП-элемента, который по параметрам примерно соответствует стандартным

сериям микросхем 74HC, 74AC, К561. «Примерно», потому, что есть разница в электрических характеристиках продукции разных фирм, изготавливающих МК.

В отличие от микросхем обычной логики, на входе МК находится подтягивающий резистор и программно управляемый ключ SIN (Рис. 2.25). Если ключ разомкнут, то входное сопротивление МК очень велико. В некоторых семействах резистор присутствует постоянно или же он «притягивается» к общему проводу через отдельный ключ (Рис. 2.26, а...г).



Рис. 2.26. Варианты подключения внутренних резисторов в МК: а) постоянное соединение резистора с цепью питания (MCS-51); б) постоянное соединение резистора с общим проводом; в) программное подключение резистора к общему проводу; г) программный выбор резистора «pull-up»/«pull-down» (Texas Instruments MSP430x21).

Логический элемент DDI, что на Рис. 2.25, выполняется по технологии КМОП и имеет характеристику триггера Шмитта (КМОП-Ш, Рис. 2.27). Это повышает помехоустойчивость. Той же цели служит линия задержки A1, которая отсекает короткие импульсные помехи.

Резисторы RUP, RDOWN, как и в подсистеме сброса, изготавливаются на основе интегральных полевых транзисторов, поэтому прозвонить их омметром нельзя. Большой технологический разброс определяет широкие допуски, вплоть до ±50% от номинала, например, 30...100 кОм.

Редко, но встречаются МК с индивидуальной настройкой сопротивления входных резисторов. Например, для Texas Instruments MSP430x11x (версия с MaskROM) обеспечивается выбор 10 градаций сопротивлений в диапазоне 2.1...506 кОм путем пережигания плавких перемычек в заводских условиях.

Резисторы имеют англоязычные названия: «pull-up» («тянуть вверх»), «pull-down» («тянуть вниз»). Если для коммутации резисторов применяется ключ («switch»), то используются похожие термины «switched pull-up», «switched pull-down». Почему вверх и вниз? Потому что на электрических схемах принято рисовать общий провод внизу, а вывод питания вверху.

Диоды VD1, VD2 защитные, антистатические. Они присутствуют в МК так же, как и в обычных микросхемах КМОП-логики. При входном напряжении выше уровня VCC открывается диод VD1. При уменьшении входного напряжения ниже уровня GND открывается диод VD2.

Насколько большими в абсолютных числах могут быть скачки напряжения? Для большинства МК по даташитам допускается не более +0.3/-0.3 В, как например, в Microchip PIC12/16/18/24. Встречается повышенная устойчивость входов к перенапряжениям +0.5/-0.5 В (Atmel AVR, Analog Devices Blackfin). Бывают


несимметричные уровни +0.5/-0.3 В (Maxim/Dallas DS89C430) или +0.5/-1.0 В (Atmel AT90S).

В даташитах можно найти параметр «Input/Output clamp current* или «DC injection current*. Для МК фирмы Microchip его значение составляет +20/-20 мА, что хорошо согласуется с рекомендациями международной ассоциации JEDEC для микросхем КМОП-логики (Рис. 2.28) . Что же означает этот параметр? Имеется в виду максимальное значение прямого тока, которое выдерживают защитные диоды VD1 и VD2 при выходе напряжения за нормальные пределы. Это стрессовый параметр аварийного режима, на который нельзя ориентироваться при разработках.

Но в некоторых даташитах указываются гарантированные прямые токи, после воздействия которых микросхема возвращается в исходное состояние без повреждения полупроводниковых структур. Например, TMS320F фирмы Texas Instruments официально допускает длительное протекание тока через защитные диоды +2/-2 мА, а в MC9S08 фирмы Freescale Semiconductor указан суммарный ток через все защитные диоды не более 5 мА. Рекордные токи гарантируются в семействе STR71 фирмы STMicroelectronics: +5/-5 мА длительно для одного диода, но не более 25 мА суммарно по всем диодам.

Схемные разновидности цифровых входов показаны на Рис. 2.29, а...в. Сокращение ТТЛ-КМОП означает логический элемент, выполненный по технологии КМОП, но имеющий входные уровни, совместимые с ТТЛ (+0.4/+2.4 В). Приме-




Рис. 2.29. Варианты включения логического элемента DD1 в схеме на Рис. 2.25:

а) вход ТТЛ, выход КМОП;

б) параллельное соединение элементов ТТЛ-КМОП и КМОП-Ш;

в) параллельное соединение двух одинаковых элементов КМОП-Ш.

ром может служить серия микросхем 74HCT (ТТЛ-КМОП), которая отличается по входным характеристикам от аналогичной серии 74HC (КМОП, КМОП-Ш).

Элементы ТТЛ-КМОП, показанные на Рис. 2.29, а, встречаются в семействе Microchip PIC16, причем вперемежку с КМОП. С одной строны это хорошо, т.к. можно напрямую подключать к входам МК микросхемы ТТЛ-логики, но с другой стороны доставляет хлопоты, поскольку надо запоминать, какой вывод микросхемы какой характеристикой обладает - ТТЛ или КМОП. В дальнейшем фирма Microchip отказалась от специализации и в своих новых семействах PIC18/24 сделала их единообразными КМОП-Ш. На фирме STMicroelectronics пошли по другому пути и ввели в семейство STR71 программно переключаемые входы. Хочешь, на выбор, КМОП-Ш или ТТЛ-КМОП.

Схема, показанная на Рис. 2.29, б, относится к классу многофункциональных цифровых портов. Такое встречается, например, в Microchip PIC16F684 и выделяется дробью в обозначении вывода - RA5/T1CKI. Входной сигнал разделяется на два потока: цифровой вход с логическим элементом DD1 (ТТЛ-КМОП) и вход таймера прерывания с логическим элементом DD2 (КМОП-Ш). Оба элемента имеют разные пороги срабатывания по напряжению, поэтому может возникнуть курьёзный случай, когда МК в режиме обычного цифрового входа работает нормально, а при обслуживании запросов прерывания INT даёт сбои.

Схема, показанная на Рис. 2.29, в, тоже является многофункциональной, но в правой и левой частях стоят одинаковые логические элементы. Альтернативными каналами могут быть UART и SPI, синхронные и асинхронные входы обработки прерываний. Параллельное включение двух элементов DD1, DD2 не влияет на суммарное входное сопротивление МК, слишком уж оно велико у полевых транзисторов. Цифровые каналы также могут разделяться не возле входа, а после общего буферного элемента, т.е. вход элемента DD2 соединяется с выходом DD1.

Важный практический нюанс, общий для всех входных цифровых схем. Если линии портов настроены как входы без внутренних «pull-up» резисторов и к ним ничего извне не подключается, то потребляемый МК ток увеличивается чуть ли не на четверть. Парадокса здесь нет, просто «парящие в воздухе» высокоомные КМОП-входы находятся в неустойчивом состоянии (то ли «нуль», то ли «единица») и любая внешняя наводка приводит к «дребезгу». Это заставляет хаотично работать логические элементы внутри МК, что приводит к увеличению динамических потерь и повышению энергопотребления. Рекомендация - все неиспользуемые в схеме входы надо снаружи или изнутри нагружать на резисторы сопротивлением 10...100 кОм или же переводить линии в режим цифровых выходов.

Подведение итогов. Базовой для идеализированного МК предлагается выбрать схему, приведенную на Рис. 2.25. Входы с альтернативными цифровыми функциями будут замещаться схемой, изображенной на Рис. 2.29, в, которая содержит однотипные элементы КМОП-Ш.

Аналоговые входы

Аналоговый режим отличается от цифрового, в первую очередь, уровнями подаваемых на вход сигналов. Для цифрового режима - это стандартные двоичные перепады напряжения НИЗКИЙ/ВЫСОКИЙ. Для аналогового режима допускаются сигналы любой формы в диапазоне 0. VCC.

Изолированные аналоговые входы в МК встречаются редко. В целях экономии места их совмещают с цифровыми линиями и используют как альтернативную функцию порта. В условном изображении МК такие выводы легко идентифицируются по аббревиатуре, начинающейся с первой буквы латинского алфавита: «AN», «ADC4», «AIN» и т.д. Пример - линия RA0/AN0 в микросхеме Microchip PIC16F628A или PC1/ADC1/PCINT9 в микросхеме Atmel ATmega168.

Аналоговые входы МК отождествляются с аналоговым компаратором и АЦП.

Принцип работы аналогового компаратора (Рис. 2.30) заключается в сравнении между собой сигналов на положительном («+», AIN0) и отрицательном («-», AIN1) входах. Если на «положительном» входе напряжение станет хотя бы на несколько милливольт больше, чем на «отрицательном», то выходной сигнал компаратора DA1 станет ВЫСОКИМ, и наоборот. Результат сравнения помещается в один из регистров из области SFR. В некоторых МК сигнал AIN физически выводится наружу, что показано на схеме пунктиром. Программно управляемый переключатель S1 служит для подачи на вход компаратора сигнала от внутреннего источника опорного напряжения (ИОН) или от внешнего вывода AIN0. В некоторых семействах МК переключатель S1 многопозиционный и обеспечивает не два, а несколько дополнительных вариантов коммутации.


Рис. 2.30. Структурная схема узла аналогового компаратора.

Диоды VD1...VD4 и логические элементы DD1, DD2 относятся к цифровому порту (никуда от них не денешься!), но они имеют очень высокое сопротивление и на точность работы компаратора не влияют. Важно только проследить, чтобы цифровые «pull-up» резисторы были программно отключены, иначе пострадают показания абсолютных уровней сигналов.

Главное достоинство аналогового компаратора заключается в высоком быстродействии, иначе его уже давно бы заменили узлом АЦП. Только время покажет, устоит ли аналоговый компаратор перед технологическими достижениями и останется ли он в будущих моделях МК.

Принцип работы многоканального АЦП в МК заключается в измерении абсолютного уровня входного сигнала методом последовательных приближений (чаще) или дельта-сигма-преобразованием (реже). Основным параметром АЦП

считается разрядность. Обычно она составляет 8...12 битов при максимальной частоте выборок 0.1...2 МГц. Для справки, 8-битный АЦП обеспечивает точность измерения входных напряжений около 0.4%, а 10-битный АЦП - около 0.1%, чего вполне достаточно для любительских конструкций.

На Рис. 2.31 в качестве примера показана структурная схема модуля АЦП, применяемого в МК Atmel ATmega16-16PU . С незначительными изменениями её можно распространить и на все остальные AVR-контроллеры.


Рис. 2.31. Структурная схема модуля АЦП в МК Atmel ATmega16.

Преобразование «аналог-цифра» осуществляется в 10-битном АЦП последовательного приближения. Для его нормальной работы требуются три сигнала: входной VIN, тактовый ^АцП, образцовый VREF.

Сигнал VIN поступает от мультиплексора, коммутирующего восемь аналоговых каналов с линий PA0...PA7 и два тестовых напряжения 0 и +1.22 В. Выбор источников сигнала осуществляется программным способом через регистр ADMUX. Этот и другие задействованные регистры входят в область SFR.

Сигнал ^АцП получается из тактового сигнала FCLK путем деления на коэффициент 2.128, программно задаваемый регистром ADCSRA. Внутри блока АЦП частота ^ацп делится ещё раз на 13 или 14 в зависимости от однократного или непрерывного режима измерений. Это и будет истинным значением частоты дискретизации сигнала /д. Для справки, второе деление производится потому, что используется АЦП последовательного приближения, а ему для вычисления результата необходимы 13 или 14 машинных тактов.

Пример. Пусть FCLK = 8 МГц, коэффициент деления установлен 16, следовательно, ^Ацл = 500 кГц, i-д = 38.5 кГц (13 тактов) или i-д = 35.7 кГц (14 тактов).

Сигнал VREF может поступать из трёх направлений: от входной линии AREF, от внутреннего ИОН +2.56 В, от источника питания AVCC. Переключение направлений осуществляется электронным ключом, который управляется регистром ADMUX. Вывод AREF имеет непосредственную электрическую связь с модулем АЦП, поэтому, для уменьшения наводок, его обычно шунтируют керамическим

конденсатором ёмкостью 0.1 мкФ. Температурная стабильность ИОН в Atmel ATmega16 оставляет желать лучшего, поэтому для повышения инструментальной точности рекомендуется использовать внешнюю микросхему ИОН с нормированными параметрами и выходным напряжением не более Vcc.

Результат каждого измерения помещается в регистры ADCH (старшие 2 бита) и ADCL (младшие 8 битов). Итого в двух регистрах образуется число в диапазоне 0...1023. Цена одного деления - VREF /1024. Это справедливо для «чистого» режима 10 бит. В ATmega16 имеется ещё один режим, условно называемый 8/10 бит. В нём измерение проводится с точностью 10 битов, но индицируются всего лишь 8 старших битов, т.е. диапазон составляет 0...255, цена одного деления VREF /256.

При работе АЦП надо в начале программы отключать входные «pull-up» резисторы, поскольку линии ADC0.ADC7 по совместительству служат ещё и цифровыми входами PA0...PA7. На структурной схеме Рис. 2.31 для простоты не показаны защитные диоды на линиях ADC0.ADC7, хотя реально они существуют. Диоды ограничивают сверху и снизу измеряемое напряжение VIN. Всё, что выходит за пределы 0. VCC, не обрабатывается и приравнивается снизу к AGND, а сверху к VCC.

Цифровые выходы

Основная функция цифровых выходов в МК заключается в формировании НИЗКИХ и ВЫСОКИХ логических уровней. Выходную цепь в цифровом режиме можно представить КМОП-элементом, который имеет «закрытый» или «открытый» выход со стандартной или повышенной нагрузочной способностью. Прототипы подобных элементов широко представлены в сериях микросхем 74HC, 74AC, КР1561, КР1554.

Различают четыре основных варианта организации выходов в МК:

Двухтактный каскад с выходными уровнями, близкими к VCC и GND (Рис. 2.32, а, б). Сокращённое название «push-pull». Встречается практически во всех микроконтроллерных семействах;

Логический элемент с «истинно» открытым стоком или на сленге с «открытым коллектором» (Рис. 2.33, а, б). Сокращённое название «open drain» или «true open drain». Встречается в семействах Microchip PIC12/16, STMicroelectronics STR71xF, в МК с ядром MCS-51;

Логический элемент с квазиоткрытым стоком (Рис. 2.34, а, б). Сокращённое название «false open drain» из-за присутствия ограничительного диода VD1. Встречается в МК с двунаправленными портами;

Логический элемент с открытым стоком, дополненный внутренним нагрузочным резистором RUP (Рис. 2.35 а, б). Сокращённое название «квазидвунаправленный», встречается в МК с ядром MCS-51.

Для облегчения понимания физики процессов, в функциональные схемы вводятся эквивалентные переключатели SOUT. Они замещают реальные электронные ключи, выполненные на полевых транзисторах. В верхнем положении переключателя SOUT формируется ВЫСОКИЙ, а в нижнем - НИЗКИЙ логический уровень. В тех схемах, где переключатель SOUT является двухполюсником, его разомкнутое состояние эквивалентно «выходу в обрыве» (Рис. 2.33, а, Рис. 2.34, а) или выходу с высокоомным «pull-up» резистором RUP (Рис. 2.35, а).


Управляются переключатели SOUT записью «нуля» или «единицы» в один из битов регистра из области SFR. Например, в линейках микросхем Atmel AVR и Microchip PIC регистры называются PORTx, где «x» - порядковая буква латинского алфавита номера порта МК.

Диоды VD1, VD2 - это антистатические диоды, аналогичные тем, которые рассматривались ранее в схемах организации цифровых входов на Рис. 2.25, Рис. 2.26, а...г. Они являются частью конструкции микросхемы и никуда не исчезают при смене направления с входа на выход. Это своеобразная «плата» за двунаправленность цифровых портов.

Резистор RUP для «квазидвунаправленного» выхода имеет в статическом состоянии такое же большое сопротивление, как и его «тёзка», применяемый на Рис. 2.26, а. Основное отличие заключается в том, что на этапе перехода с НИЗКОГО уровня в ВЫСОКИЙ сопротивление данного резистора на короткое время становится очень малым, формируя тем самым крутой нарастающий фронт сигнала. Эта особенность является фирменной меткой всех МК, совместимых с

ядром MCS-51 .

Низкоомные резисторы R1H и R0L представляют собой сопротивления открытых каналов соответственно ^-МОП и и-МОП транзисторов выходного каскада. В числовом выражении это единицы-десятки ом в зависимости от технологии изготовления и нагрузочной способности по току (Табл. 2.6).

Таблица 2.6. Классификация выходных КМОП-каскадов в МК

В двухтактных схемах («push-pull») токовая нагрузка при НИЗКОМ и ВЫСОКОМ уровнях может быть разной. «Заковыка» заключается в мощности рассеяния транзисторов, входящих в комплементарную пару выходного каскада. Например, в семействе Atmel AT90S верхний по схеме транзистор «слабый», ток нагрузки I1H = 1.5...3 мА, а нижний - «стандартный», ток нагрузки I0L = 10...20 мА.

Бывает, что во всех портах оба выходных транзистора «слабые» (Philips LPC2104) или оба «стандартные» (Atmel AVR, Microchip PIC). А вот всех линий с «мощными» каскадами в одной микросхеме не бывает. Они применяются, как правило, в 16- и 32-битных МК, но в единичном количестве, и служат полезным дополнением к уже имеющимся выходам.

Наиболее толерантным к типам выходных каскадов оказалось семейство Atmel AT91S, в котором мирно уживаются все три градации, перечисленные в Табл. 2.6.

Самые востребованные и ходовые - это симметричные выходные каскады «Standard» с примерно одинаковой нагрузочной способностью при НИЗКОМ и ВЫСОКОМ уровне. Для разработчика такая ситуация очень удобна, поскольку не надо мучительно долго вспоминать, на какую шину (к питанию или к «массе») допускается присоединять нагрузку. Именно этот вариант и предлагается выбрать в качестве основного для цифровых выходов идеализированного МК.

На Рис. 2.36, а, б показаны усреднённые вольт-амперные характеристики (ВАХ) выходного транзисторного каскада «Standard».




Рис. 2.36. Усреднённые ВАХ цифровых выходов идеализированного МК: а) вытекающий ток I1H при ВЫСОКОМ уровне; б) втекающий ток I0L при НИЗКОМ уровне.

Чтобы сравнивать между собой графики, приведенные в даташитах для конкретных типов МК, следует чётко ориентироваться в терминологии:

I1H = 20...25 мА, I0L = 20...25 мА - это максимальные токи нагрузки через резисторы R1H, R0L, при которых ещё гарантируются выходные логические КМОП-уровни от 0 до (0.1...0.2) VCC и от (0.6...0.8) VCC до VCC;

IMAX = 35.. .45 мА - это предельный ток нагрузки на одну линию порта, длительное превышение которого может привести (хотя и не обязательно) к отказу МК;

1КЗ = 100...150 мА - это ток короткого замыкания линии порта на общий провод или на шину питания. Если не снять замыкание в течение первых 10.15 с, то температурный перегрев транзисторов выходного каскада с большой долей вероятности приведёт к фатальным последствиям.

Аналоговые выходы

Считается, что «истинно» аналоговые выходы имеются только в канале ЦАП (англ. DAC - Digital-to-Analog Converter), поскольку широтно-импульсный модулятор, с помощью которого тоже получают аналоговые сигналы, теоретически относится к классу цифровых устройств.

Линии ЦАП при малейшей возможности стараются физически удалять от цифровых портов для уменьшения перекрёстных помех. Их выполняют в виде автономных узлов с обособленной группой выводов. И только при нехватке линий портов производят совмещение функций, как, например, в Atmel ATXmega.

На Рис. 2.37 показана структурная схема 12-битного ЦАП, применяе-


мого в микроконверторах семейства ADuC812 фирмы Analog Devices. Выходной сигнал DAC0 имеет характерные ступеньки напряжений и формируется по классической схеме на коммутируемой матрице резисторов «R-2R». Резисторы здесь настоящие, прозваниваемые, причём достаточно высокой точности.

Цифровой код, соответствующий выходному напряжению, записывается в регистры из области SFR. Для адресации 12 бит требуются два 8-разрядных регистра. Блок переключателей содержит электронные ключи, которые электрически соединяют выводы резисторов «2R» с общим проводом или с ИОН. В качестве последнего может на выбор использоваться или внутренний источник, или внешний эталон.

Усилитель DA1 служит буфером, снижающим выходное сопротивление и уменьшающим влияние нагрузки на точность уровней ЦАП. Иногда ставят усилитель с программируемым коэффициентом передачи, что позволяет оперативно масштабировать выходное напряжение. Задача сглаживания формы выходного сигнала решается внешними RC-фильтрами или активными ФНЧ. Чем выше разрядность ЦАП (обычно 8...14 бит), тем проще устройство выходного фильтра.

Для изготовления микроконтроллерного ЦАП требуется гибридная технология, позволяющая объединить на одной кремниевой пластине цифровые и аналоговые узлы, в частности, логические элементы и прецизионные резисторы. Если наличие ЦАП чрезмерно повышает стоимость микросхемы, то в качестве альтернативы можно использовать обычный МК с каналом ШИМ и внешним фильтром. Этот метод хорошо отработан как на аппаратном, так и на программном уровне.

Слабым подобием узла ЦАП также можно считать внутренний программно управляемый ИОН, имеющийся, например, в Microchip PIC16F628A. Если настроить линию VREF в режим выхода и программно изменять опорное напряжение согласно его градациям, то результирующий сигнал будет иметь чёткие ступеньки, как в ЦАП. Недостаток такого решения заключается в малом количестве самих ступенек и низкой точности абсолютных значений напряжения.

В идеализированном МК отдельный модуль ЦАП пока «не смотрится», поскольку на нынешнем этапе развития он, скорее, заморская диковинка, чем реальная вещь.

Двунаправленные порты ввода/вывода

МК, как и любое другое уважающее себя электронное устройство, не может в одночасье работать и на ввод, и на вывод. Только последовательно во времени, сначала ввод, затем вывод, или наоборот. Однако оперативно переключать режимы «Вход/Выход» МК может, чем широко пользуются программисты.

Электрическая схема совмещённого порта ввода/вывода показана на Рис. 2.38. Она получается как суперпозиция схем, изображённых на Рис. 2.25 и Рис. 2.32, а.


Переключатель SOUT имеет две взаимосвязанные группы контактов. Он отвечает за коммутацию НИЗКОГО и ВЫСОКОГО уровней, а также за подключение и отключение резистора RUP. Переключатель SIN выбирает режим ввода (верхнее по схеме положение) или режим вывода данных (нижнее по схеме положение).

Переключатель SIN действует независимо от SOUT. Оба переключателя управляются двумя программно-доступными регистрами из области SFR. В разных семействах МК они имеют разные названия (Табл. 2.7). Здесь регистр PORTx эквивалентен переключателю SOUT, а регистры DDRx, TRISx - переключателю SIN. Изменение битов в регистрах вызывает соответствующее замыкание контактов.

Таблица 2.7. Управление режимами в AVR- и PIC-контроллерах




Если сравнивать AVR- и PIC-контроллеры, то заметна большая разница в сочетаниях битов, переключающих направление «Вход/Выход» и уровни «ВЫСОКИЙ/НИЗКИЙ». Стандартизация, к сожалению, отсутствует, что следует учитывать при переходе от одного семейства МК к другому.

Наличие совмещённых портов ввода/вывода является большим достоинством МК, т.к. позволяет конструировать гибкие по функциональным возможностям изделия. Изредка встречаются МК, у которых часть выводов жёстко настроена только на приём или только на передачу информации, например, Zilog Z86L33, но их меньшинство.

Идеализированный МК должен иметь усреднённые характеристики, поэтому базовой для него предлагается схема, приведенная на Рис. 2.38. Программной настройкой управляющих регистров контроллер может перестроиться в режимы, аналогичные Рис. 2.32, а, Рис. 2.34, а, Рис. 2.35, а. В последнем случае НИЗКИЙ уровень формируется «нулевым» напряжением на выходе, а ВЫСОКИЙ - переводом МК в режим входа с «pull-up» резистором.

Важное замечание. При начальном включении питания или подаче сигнала сброса все линии портов обычного МК независимо от желания программиста переходят в «оборванное» высокоимпедансное Z-состояние, что эквивалентно режиму входа без «pull-up» резистора (Рис. 2.34, а). Исключение из правила составляют МК, совместимые с MCS-51, у которых при сбросе резистор не отключается (Рис. 2.35, а).

Данный момент надо учитывать при разработке реальных схем. В частности, если нагрузкой выходной линии МК служит транзисторный ключ, то, чтобы его база или затвор при сбросе не «висели в воздухе», в AVR- и PIC-контроллерах ставят дополнительные внешние резисторы сопротивлением 10.100 кОм на общий провод или на цепь питания. Для МК с ядром MCS-51 этого делать не надо из-за постоянного присутствия на выходе внутреннего резистора RUP.

← Вернуться

×
Вступай в сообщество «sinkovskoe.ru»!
ВКонтакте:
Я уже подписан на сообщество «sinkovskoe.ru»