PSN 1000 рублей PlayStation Network
PSN 1000 рублей PlayStation Network


17 VISA VIRTUAL (RUS BANK)
17 VISA VIRTUAL (RUS BANK)


Разблокировка Supra M727G
Разблокировка Supra M727G


В начало

ОТЧЕТ ПО ЛАБОРАТОРНОЙ РАБОТЕ.

Создание программы на языке LD

 

ЗАДАНИЕ

создать программу на языке LD согласно условиям задания 1.

 

РЕШЕНИЕ

 В LD-редакторе помещаем необходимые контакты и катушки в секцию, соединяя с источником питания, т.е. подключаем к левой шине питания.

 

Рис. 3.  Решение на языке LD

 

 

 

 

 

 

 

 

 

Рис. 2

Рис. 3

 

ОТВЕТЫ НА КОНТРОЛЬНЫЕ ВОПРОСЫ

1. Охарактеризуйте язык лестничной диаграммы LD.

Язык LD (Ladder Diagram) – графический язык, основанный на принципах релейно-контактных схем (элементами релейно-контактной логики являются: контакты, обмотки реле, вертикальные и горизонтальные перемычки и др.) с возможностью исполь­зования большого количества различных функциональных блоков. Язык релейных схем существует со времен Т. Эдисона и адаптиро­ван к ПЛК в начале 70-х годов прошлого века. Символика этого языка была заимствована из проектирования в области электро­техники.

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

2. Что такое катушка в языке LD?

Катушка является LD-элементом, которая передает состояние горизонтальной связи на левой стороне неизменяемым горизонтальной связи на правой стороне. В этом процессе состоя­ние связанной переменной или прямого адреса будет сохранено.

3. Что такое контакт  в языке LD?

    Контактом является LD-элемент, который передает состояние горизонтальной связи левой стороны горизонтальной связи на правой стороне. Это состояние – результат булевой AND-операции состояния горизонтальной связи с левой стороны с состоянием ассоциированной переменной или прямого адреса. Контакт не изменяет значение связанной переменной или прямого адреса.

4.  Каким типом данных должен быть фактический параметр для контактов и катушек?

Для контактов и катушек типом данных фактического пара­метра должен быть тип данных BOOL.

5. Для чего служат связи? Какие связи различают в языке LD?

Связями являются соединения между контактами, катушками и блоками FFB. Несколько связей могут быть соединены с контактом, катушкой или выходом FFB. Пункты любого такого соединения отмечаются жирной точкой.

Типы данных соединенных входов/выходов должны совпадать.

Связи могут быть отредактированы в режиме Select. Разреша­ется перекрытие другими объектами.

При размещении контактов и катушек горизонтальные связи автоматически связываются со смежными, несвязанными контактами или катушками, если контакты или катушки и входы/выходы FFB находятся на той же самой вертикали. Связь с шиной питания будет установлена, только если контакт помещен поблизости. Если катушка или контакт помещены на уже существующую горизонтальную связь, она будет автоматически разорвана, и контакт или катушка вставлены (это не применимо к команде Move). При размещении фактических параметров они могут накладываться на другой объект, но не нарушать рамки фрейма секции. Если соеди­нение с другим объектом установлено через одну связь, эта связь будет проверена. Если соединение не разрешено, то появляется сообщение и связь не будет сгенерирована.

При удалении контактов или катушек любые присоединенные контакты или катушки будут также удалены. Те же самые условия используются здесь при их размещении.

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

Горизонтальные связи автоматически устанавливаются после размещения.

Частным случаем связи является вертикальная связь. Верти­кальная связь используется как логическое ИЛИ. Эта форма свя­зывания по ИЛИ позволяет связать 32 входа (контакта) и 64 выхо­да (катушек, связей).

        6. Что является необходимым условием выполнения FFB в диаграмме LD?

FFB будут редактироваться, только если, по крайней мере, один булев вход соединен с левой шиной питания. Если FFB не имеет булева входа, должен использоваться EN вход FFB. Если FFB должен быть выполнен по условию, булев вход может быть предварительно соединен через контакты или другие FFB.

Каждый FFB без булевой связи с левой шиной питания вызовет сообщение об ошибках при загрузке в ПЛК. На рисунке 4 приведен пример использования FFB в языке LD.

Рис. 4. – Использование блоков FFB в редакторе LD

Если при вызове FFB значение EN равно ”0”, алгоритмы, определенные FFB не будут выполняться. В этом случае, значение ENO автоматически устанавливается в ”0”.

Если при вызове FFB значение EN равно ”1”, алгоритмы, определенные FFB, будут выполнены. После того, как эти алгоритмы выполнились без ошибки, значение ENO автоматически устанавливается в ”1”. Если происходит ошибка во время выполнения этих алгоритмов, ENO будет установлен в ”0”.

Поведение выхода FFB не зависит от FFB, вызываемого без EN/ENO или с EN=1.

EFB AND_BOOL, NOT_BOOL, OR_BOOL, R_TRIG и F_TRIG недоступны в LD. Их функциональные возможности реализуются с помощью контактов. EFB MOVE не может использоваться с типом данных BOOL.