Лабораторная работа № 1 Знакомство с программой моделирования логических цепей

Знакомство с программой моделирования логических цепей

 

Цель работы: изучение азов булевой алгебры, понятия булевых функций и их свойств, ознакомление с возможностями программы и приобретение практических навыков работы с основными булевыми функциями.

 

Далее рассмотрим работу программного обеспечения.

 

Запуск программы, программирование и проверка работы на практическом примере

Отметим, что для программирования булевых функций сложилась система записи, несколько отличающаяся от эквивалентного математического выражения. Входные переменные обычно обозначают символом «I» (от англ. input – вход). Результат функции, выход, обычно обозначают символом «Q» (соответствующий английский термин output – выход). Если в автоматической системе есть несколько входов и выходов, то их идентифицируют нижним цифровым индексом. Из булевских операций наиболее используемые – NOT (Ø, ), AND (Ù, &), OR (Ú, +) и XOR (Å), причем используют именно англоязычный термин поскольку именно в таком виде логические операции реализуются в языках программирования. Существует также множество специальных логических операторов или функций (см. пп. 2.2.3).

Перейдем к рассмотрению примера. Пусть необходимо исследовать следующую булевскую функцию

 

Q(I1, I2, I3, I4, I5, I6) =

= (I1 & ()) & ((I3 + I4) & (I5 Å I6)) =

= (I1 Ù (ØI2)) Ù ((I3 Ú I4) Ù (I5 Å I6)) =

= (I1 AND (NOT I2)) AND ((I3 OR I4) AND (I5 XOR I6)).

 

Для ее реализации необходимо сначала составить логическую схему устройства (рис. 3.1), а далее составить программу в виде схемы, как показано на рис. 3.2. Для этого нужно в программе LOGO! Soft Comfort создать новый проект, как это было описано в пп. 2.3. Далее можно рекомендовать следующую последовательность действий:

· помещаем в рабочую область все «Входы» I, блоки высокого и низкого уровней, выход Q1;

· переходим к меню «Основные функции»;

· выбираем оператор «И» и щёлкаем мышкой в рабочей области – появилась картинка оператора с обозначением В001;

· аналогичным образом вставляем еще один блок «И» (В002);

 

Рис. 3.1. Логическая схема устройства автоматики

· вставляем блок «Логическое ИЛИ» (В003);

· вставляем блок «Исключающее ИЛИ» (В004);

· вставляем блок «НЕ» (В005);

· включаем режим соединения блоков и, согласно заданной схеме, производим соединение.

В рабочей области программы должна получиться схема, показанная на рис. 3.2.

 

Рис. 3.2. Собранная схема логического устройства

 

Отметим, что для любого блока существует возможность инвертировать (использовать элемент «НЕ») вход. Для этого необходимо выделить мышью требуемый вход и в контекстном меню (вызывается правой клавишей мыши) выбрать пункт «Инвертировать».

Далее данную схему (или программу) возможно загрузить в модуль LOGO и, подключив конкретное техническое оборудование, управлять им. Выход Q1, в частности, может быть связан с катушкой контактора, включающего электродвигатель (напоминаем, что собственная мощность выходов модуля LOGO невелика), входа I1 … I6 – с технологическим оборудованием (например: I1 – контакты кнопки «Включить», I2 – контакты кнопки «Выключить», I3 … I6 – сигналы датчиков конкретного технологического оборудования, сочетание значений которых определяет возможность или невозможность работы исполнительного механизма, в нашем примере – электродвигателя). Для загрузки программы в модуль LOGO следует использовать команду главного меню «Tools → Transfer → PC -> LOGO!», а с помощью команды «Tools → Transfer → LOGO! -> PC» можно осуществить обратную операцию: загрузить готовую программу для исследования и модификации.

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

Для проверки работоспособности программы следует выбрать в главном меню «Сервис → Эмуляция (F3)». При этом в нижней части рабочей области появляется панель управления режимом эмуляции, показанная на рис. 3.3. Нажимая входы I1..I6, пользователь тем самым эмулирует (имитирует) наличие реальных сигналов, а с помощью картинок выходов (на рис. 3.3 показан один выход Q1) пользователь может наблюдать состояние выходов, которые, при наличии на них сигнала высокого уровня (логической единицы), принимают вид зажженной лампочки. Высокий (выделяется красным цветом) или низкий (выделяется синим цветом) уровни сигналов можно наблюдать также в рабочей области.

 

 

Рис. 3.3. Панель управления режимом эмуляции

 

Схема, показанная на рис. 3.2 представлена в виде набора функциональных блоков или на языке FBD (см. пп. 2.1). При необходимости представления схемы в контактном плане следует выбрать в главном меню «Файл → Конвертировать в LAD». Полученная после конвертации схема, рассматриваемая в примере, примет вид как на рис. 3.4.

 

 

Рис. 3.4. Схема логического устройства в LAD

 

Содержание работы

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

 

Порядок выполнения работы

1. Внимательно изучить теоретический материал, в том числе первый и второй раздел данного учебного пособия, записывая вопросы по неясным местам. По завершении прочтения обратиться к преподавателю и выяснить все возникшие вопросы.

2. Включить компьютер и войти в режим среды Windows.

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

4. Учитывая, что количество комбинаций сигналов на шести входах устройства равно 2n (n – количество входов), составить таблицу истинности (таблицу функционирования) как это показано в табл. 3.10.

Таблица 3.10

Состояния входов I1...I6

Состояние выхода Q1
            ?
            ?
... ... ... ... ... ... ?
            ?

 

5. Составьте несложную логическую задачу на естественном языке. Например:

1) при возникновении низкого уровня хотя бы на одном из двух датчиков включить тревожную сигнализацию;

2) компрессор в аквариуме следует включать на 3 минуты каждые полчаса;

3) при включении электродвигателя, если в течении 5 минут не получено подтверждение включения, подать команду на выключение электродвигателя;

4) освещение в подъезде следует включать в 18.00, выключать в 6.00, каждый день, кроме воскресенья.

Сформировать для этой задачи логическую функцию, построить для нее таблицу истинности и реализовать ее в программе LOGO! Soft Comfort на языках FBD и LAD. Проверить в отладчике работоспособность программы. При затруднениях обратиться к преподавателю.

 

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

 

Таблица 3.12

№ варианта Логическая функция Язык программирования
1. y(A,B,D)=(AB Ú B Ú )AD LAD
2. y(A,B,D)= Ø(A Ú ÚØ( Ú ÚD)) FBD
3. y(A,B,D)=(A Ú ÚAB )ÚAB LAD
4. y(A,B,D)= Ø(ABÚ Ú )ÚAD FBD
5. y(A,B,D)= BDÚ(AÚ ÚBD) Ú B FBD
6. y(A,B,D)= Ø( Ú ÚB()) FBD
7. y(A,B,D)= (ABÚ D)ÚBD FBD
8. y(A,B,D)= ABDÚ(( Ú )ÚD) LAD
9. y(A,B,D)= ADÚBDÚADÚDAB LAD
10. y(A,B,D)= (AB Ú B Ú )ÚAD LAD
11. y(A,B,D)= D∙(AÚDÚB)∙ FBD
12. y(A,B,D)= ( Ú ) Å  Å (BÚD) LAD
13. y(A,B,D)= (AB Ú B Ú )ÚAD FBD
14. y(A,B,D)= (ABD) Ú( D) Å () FBD
15. y(A,B,D)= ( Ú ) Å  Å (BÚD) FBD
16. y(A,B,D)= (ABÚ D)ÚBD LAD
17. y(A,B,D)= ABDÚ(( Ú )ÚD) FBD
18. y(A,B,D)= (B ÚABDÚ D)ÚD FBD
19. y(A,B,D)= Ø( Ú ÚB()) LAD
20. y(A,B,D)= (ABD) Ú( D) Å () LAD
21. y(A,B,D)= D∙(AÚDÚB)∙ LAD
22. y(A,B,D)= (B ÚABDÚ D)ÚD LAD
23. y(A,B,D)= Ø(A DÚA Ú D) FBD
24. y(A,B,D)= (A Ú ÚAB )ÚAB FBD
25. y(A,B,D)= Ø(A Ú ÚØ( Ú ÚD)) LAD
26. y(A,B,D)= BDÚ(AÚ ÚBD) Ú B LAD
27. y(A,B,D)= Ø(ABÚ Ú )ÚAD LAD
28. y(A,B,D)= Ø(A DÚA Ú D) LAD
29. y(A,B,D)= ADÚBDÚADÚDAB FBD
30. y(A,B,D)= (AB Ú B Ú )AD FBD

 

7. Подготовьте отчет по лабораторной работе. Отчет выполняется на листах формата А4 и содержит: титульный лист с наименованием работы и данными исполнителей, цель работы, рисунки схем и таблицы истинности.

 

 

Контрольные вопросы

1. Какими возможностями обладает программа LOGO! Soft Comfort?

2. Как осуществляется проверка работоспособности собранной логической цепочки?

3. Какие назначения имеют клавиши на корпусе модуля LOGO?

4. Какие физические сигналы могут быть подключены к входам и выходам модуля LOGO или дополнительных блоков?

5. Назовите отличия логического блока И (по фронту) от стандартной логической функции И.

6. Назовите отличия логического блока И-НЕ (по фронту) от стандартной логической функции И-НЕ.

7. Перечислите основные логические функции. Какие из них не реализованы в программе LOGO! Soft Comfort?

8. Перечислите известные Вам производные логические функции.

9. Опишите, как выставить время запуска и останова на блоке реле времени?

10. Перечислите функции, предназначенные для работы с аналоговыми сигналами. Каким образом аналоговый сигнал (или несколько сигналов) преобразовываются в дискретный?

11. Перечислите устройства, входящие в меню группы ¯SF. Как зависит возможность использования какого-либо устройства от конкретной модели модуля LOGO?

12. Составьте по аналогии с мажоритарной функцией логическую функцию, которую условно можно было бы назвать «функцией комитета пяти».

13. Предположите, как могла бы выглядеть функция «Исключающее ИЛИ» для трёх переменных.




double arrow
Сейчас читают про: