E-mail:
Пароль:
Блог электриков>Zelio Logic. с чего начать.

Zelio Logic. с чего начать.

[quote=shaban83][quote=Геополис] Булевые блоки[/quote]
???[/quote][quote=LightWay]5 декабря 2013, 13:03
shaban83
Геополис Булевые блоки
???
Посмотрите...[/quote]

Коллеги, руководство по программированию, на которое ссылается наш коллега Геополис, очень хорошее, но предназначено для специалиста. Для начинающего это не более, чем "китайская грамота".
Попробую объяснить в двух словах что такое Булевые блоки. Существует специальная область математики - булева алгебра, названная именем английского математика Джорджа Буля. Это алгебра логики. В общем-то для начинающего она тоже будет похожа на "китайскую грамоту", но для работы с логическими модулями некоторые её моменты необходимо уяснить.
Всем известно о существовании микросхем. Микросхема - это электронный блок, который содержит в своём довольно маленьком корпусе различные электрорадиоэлементы: транзисторы, диоды, резисторы, и др. Их количество в одном корпусе велико, и может достигать сотен тысяч. Микросхемы бывают аналоговые и цифровые. Аналоговые предназначены для обработки непрерывных во времени сигналов, например, усилитель звукового или радиосигнала, стабилизатор напряжения, и др. Входные и выходные электрические величины у аналоговых микросхем могут иметь любые значения в заданном диапазоне. Эту группу микросхем мы пока не рассматриваем.
В основу работы цифровой микросхемы заложена двоичная система счисления, в которой используются две цифры: 1 и 0. Ноль соответствует отсутствию напряжения, единица - наличию. С помощью единиц и нулей двоичной системы счисления можно записать любое десятичное число. Это та самая алгебра Буля. Для записи одноразрядного десятичного числа потребуется четыре двоичных разряда. С помощью четырех разрядов можно записать двоичные числа от 0000 до 1111, это будет соответствовать числам от 0 до 15 в десятичной системе.
Для пояснения рассмотрим таблицу, которая называется "таблица истинности".

Посмотрев таблицу можно заметить, что для перевода числа из двоичной системы в десятичную, нужно сложить степени числа 2, соответствующие разрядам, в которых записаны логические единицы. То есть, например, десятичному числу 9 будет соответствовать 1001, или 2 в 3-й степени плюс 2 в 0-й степени.
Если двоичное число содержит N разрядов, то максимальное десятичное число, которое можно записать с его помощью, будет равно 2 в степени N минус 1.

Теперь, для чего нам это всё нужно.
Основой цифровых микросхем являются логические элементы. Это электронные устройства, которые реализуют простейшие функции алгебры логики. Логический модуль "Zelio Logic" и аналогичный модуль "Logo!" содержат в своём корпусе микроконтроллер. Это тоже микросхема, но с очень высокой степенью интеграции, содержащая в своём составе несколько сотен тысяч элементов, возможно и больше. Рассмотрим четыре простейших логических элемента: И, ИЛИ, НЕ, И-НЕ. Элемент И-НЕ является комбинацией элементов И и НЕ.
Ниже показано условное графическое обозначение элемента И. Знак & в прямоугольнике - это символ элемента И.



Слева два логических входа, обозначены Х1 и Х2 (их может быть и больше), справа - выход, обозначен Y. Логика работы элемента следующая. Напряжение высокого уровня (единица) появляется на выходе, когда напряжение такого же уровня будет подано на все входы. Напряжение низкого уровня - это ноль.
Ниже таблица истинности работы элемента. Из неё мы видим, что высокий уровень, единица, появляется на выходе Y элемента только при наличии высоких уровней на его обоих входах X1 и X2. Во всех остальных случаях имеем на выходе низкий уровень, т. е. ноль.


 


Разобраться в логике работы элемента И, поможет схема его электрического аналога.



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

Рассмотрим работу элемента ИЛИ, ниже его условное графическое обозначение. Символ элемента - "1" внутри прямоугольника. У этого элемента также имеется два входа (может быть и больше) и один выход.



 

 

Таблица истинности работы элемента ИЛИ. Из таблицы мы видим, что логика работы совершенно иная.



 

 

Схема электрического аналога элемента ИЛИ.



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

Теперь элемент НЕ. У него может быть только один вход Х и один выход Y. Символ элемента НЕ тоже "1" в прямоугольнике, но ещё имеется маленький кружок, там, где линия выхода. Этот кружок - символ отрицания.



 

 

Таблица истинности работы элемента НЕ, очень простая логика работы.



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

 


Схема электрического аналога элемента НЕ.


Анализируя работу электрической схемы мы видим, что пока контакты кнопки разомкнуты (на входе 0), контакты реле замкнуты, лампа горит (на выходе 1). Замыкаем контакты кнопки, то есть имитируем наличие 1 на входе, срабатывает реле, размыкает свои контакты, лампа гаснет - на выходе 0).

Элемент И-НЕ, как мы уже знаем, является комбинацией элементов И и НЕ. Выход Y один, входов X может быть два и больше. Обозначение элемента ниже. На его обозначении присутствует знак & и маленький кружок на выходе. Логический элемент И-НЕ обладает еще одним весьма существенным свойством. Если его входы соединить вместе и подать на них сигнал высокого уровня, на выходе получим сигнал низкого уровня, и наоборот. То есть элемент И-НЕ превращается в элемент НЕ.




Таким образом, используя цифровые микросхемы, содержащие простейшие логические элементы, соединяя их между собой, можно собрать любую схему, обладающую необходимой логикой работы. То есть, берём необходимые микросхемы, устанавливаем на плату, паяем схему, присоединяем к её выходам те устройства, которыми будем управлять. На входы подаём сигналы с датчиков, кнопок, переключателей и др. В зависимости от сигналов и их комбинаций на входах, схема будет выполнять заданные логические действия, подачей соответствующих сигналов на выходы.
Как мы уже знаем, логический модуль Zelio Logic, и другие аналогичные - это большая цифровая микросхема или микроконтроллер, содержащая великое множество простейших логических элементов. Кроме них там ещё много чего содержится, но это пока рассматривать не будем, иначе тоже получится "китайская грамота".
Для управления логикой работы логического модуля мы имеем программный интерфейс. С его помощью на экране монитора компьютера мы создаём электрическую схему, используя простейшие логические элементы имеющиеся в составе модуля, соединяя их между собой, а также с входами и выходами. Мы делаем это виртуально, на экране монитора, а в микроконтроллере при этом создаются настоящие физические цепи.
Теперь рассмотрим схему управления АВР, которую показал Юрий Михайлович (Геополис), см. здесь:

http://www.volt-m.ru/forum/view/822/?fpage=1#comment_19006

Эта схема содержит Булевые блоки В14 и В15. В данном случае, на экране монитора, это виртуальные цифровые элементы, имеющие четыре входа и один выход. Также внизу мы видим таблицу истинности блока. Заполняя эту таблицу единицами и нулями, получаем необходимую логику работы Булевого блока. Примерно это выглядит так, как будто мы даем, с помощью таблицы, задание микроконтроллеру модуля Zelio Logic: если на входах блока есть определённый набор единиц и нулей, то сделай на выходе блока такое-то значение. Другое сочетание единиц и нулей на входах - сделай другое нужное нам значение. Контроллер отвечает: "Есть!", запоминает эту таблицу и всегда будет строить свои внутренние электрические цепи между входящими в его состав физическими логическими элементами именно так, как в таблице написано. То есть, для создания схемы, вместо использования нескольких отдельных простейших логических элементов, используем такой вот Булевый блок. Можно работать как с простейшими элементами логики, так и с Булевым блоком. Кому как удобнее.
Вот собственно и всё, в двух словах, для начинающего. Картинки взяты из литературы, самому рисовать было лень. Коллеги, прошу не кидаться камнями, пожалуйста поправьте, если что-то не так, или дополните.

Комментарии: