Codesys (824048), страница 27

Файл №824048 Codesys (Руководство пользователя по программированию ПЛК в Codesys) 27 страницаCodesys (824048) страница 272021-01-15СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 27)

Фиксированные значенияотображаются красным.CoDeSys V2.35-11Редакторы CoDeSys5.2.3 Директивы компилятораДирективы используются для установки свойств переменных, касающихся компиляции. Их можно использовать в текстах программ и в разделе объявлений переменных.Директива записывается в фигурных скобках, причем регистр букв здесь не важен:{<Директива >}Если компилятор не понимает эту директиву, то она интерпретируется как обычный комментарий. Однако появляется предупреждение: „Ignore compiler directive ‚<Instruction text>’!“В зависимости от типа и параметров директивы она действует на строке, на которой она написана, илина всех последующих строках до директивы, ее отменяющей.

Если отменяющей директивы нет, то онадействует во всем разделе.Директива может следовать сразу за именем переменной, причем открывающие и закрывающие скобкидолжны находиться на одной строке.В настоящее время CoDeSys принимает следующие директивы:−{flag} инициализация, мониторинг и управление символьным файлом−{bitaccess...} битовый доступ−{parameter..}, {template...}, {instance...} создание вхождений для Менеджера параметров−{nonpersistent} исключение данных из PERSISTENTДирективы инициализации, мониторинга и управления символьным файломСинтаксис директивы:{flag [<flags>] [off|on]}<flag> - комбинация следующих флагов:NoinitПеременная не инициализируетсяNowatchНе производится мониторинг переменнойNoreadПеременная экспортируется в символьный файл без разрешения чтенияNowriteПеременная экспортируется в символьный файл без разрешения записиnoread, nowriteПеременная не экспортируется в символьный файлС помощью модификатора “on”директива включается и действует на все последующие объявления доее отключения другой директивой или с помощью ”off” {flag off}.

Без этих модификаторов директивадействует только на текущей строке.Примеры:Инициализация и мониторинг:Переменная a не инициализируется и не просматривается. Переменная b не инициализируется:VARa : INT {flag noinit, nowatch};b : INT {flag noinit };CoDeSys V2.35-12Редакторы CoDeSysEND_VARVAR{flag noinit, nowatch on}a : INT;{flag noinit on}b : INT;{flag off}END_VARНи одна из переменных не инициализируется:{flag noinit on}VARa : INT;b : INT;END_VAR{flag off}VAR{flag noinit on}a : INT;b : INT;{flag off}END_VARРазмещение переменных в символьном файле:Флаги “noread” и ”nowrite” используются для ограничения прав доступа к переменным. По умолчаниюпеременная обладает теми свойствами доступа, которые определены для POU, в котором она объявлена. Если переменная не доступна ни для чтения, ни для записи, то в символьный файл она не экспортируется.Пример:Если для POU установлено разрешение записи и чтения переменных, то переменная a экспортируется сразрешением записи, а переменная b не экспортируется вообще:VARa : INT {flag noread};b : INT {flag noread, nowrite};END_VARVAR{ flag noread on}a : INT;{ flag noread, nowrite on}b : INT;{flag off}END_VARНи переменная a, ни переменная b не экспортируются в символьный файл:{ flag noread, nowrite on }VARa : INT;b : INT;END_VAR{flag off}VAR{ flag noread, nowrite on}a : INT;b : INT;{flag off}END_VARCoDeSys V2.35-13Редакторы CoDeSysДействие одной директивы накладывается на действие другой:Пример: (Для всех POU установлено разрешение записи и чтения переменных)a : afb;...FUNCTION_BLOCK afBVARb : bfb {flag nowrite};c : INT;END_VAR...FUNCTION_BLOCK bfBVARd : INT {flag noread};e : INT {flag nowrite};END_VARПеременные a, c экспортируются с разрешением чтения и записи.Переменные b, e экспортируются без разрешения записи.Переменная d экспортируется без разрешения чтения.Директива битового доступа {bitaccess...}Используется для корректного отображения переменной, осуществляющей битовый доступ посредством глобальной константы.

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

Точка с запятой в концеэтой строки не нужна.Синтаксис:{bitaccess <Global Constant> <Bitnumber> '<comment>'}<GlobalConstant>:Идентификатор глобальной константы, которая должна быть определена в спискеглобальных переменных.<Bitnumber>:Значение глобальной константы.<comment>КомментарийОбратите внимание: опция 'Replace constants' (категория Build) должна быть активна!Пример применения данной директивы см.

«Приложение В: Операнды в CoDeSys» раздел «Переменные», «Доступ к битам в переменных».Директивы создания вхождений для Менеджера параметровВключение таких директив в объявление переменных позволяет добавлять элементы списка управляемого Менеджером параметров (Parameter Manager). Наличие Менеджера параметров в среде программирования CoDeSys определяется целевой платформой. Поддержка Менеджера параметров включаетсяCoDeSys V2.35-14Редакторы CoDeSysспециальным флагом на страничке сетевых опций Networkfunctionality в настройках целевой платформы.Синтаксис:• Директива заключена в фигурные скобки, регистр ввода не учитывается: { <Инструкция>}.

Еслиона включена в «нормальное» объявление переменной, то должна стоять до заверщающей точки с запятой.• Директивы, использующие интерфейс VAR_CONFIG, должны вводиться отдельной строкой, безточки с запятой.•Описание ключей записывается через пробел, внутри фигурных скобок.•<name>: имя списка параметров. Если указанный список отсутствует, он будет создан.• <key>: ключ или имя атрибута, т.е.

название столбца в списке параметров ("Name", "Value","Accesslevel" и т.д.). Ключи зависят от типа списка. Определение ключей записывается через пробелы,все вместе заключенные в прямоугольные скобки. Аналогичный синтаксис используется для включения элементов массивов, структур или функциональных блоков (см. 3, ниже).• <value>: значение атрибута, заданное <key>.

Если значение <value> имеет пробелы, то его необходимо заключить в двойные кавычки. Например: accessright="read only".Обратите внимание: директивы компиляции «срабатывают» только при предварительном анализе текста, который выполняется после изменения фокуса ввода, то есть при выходе из окна редактора. Ошибки вводасообщаются только при полной компиляции.Директивы определяют следующие вхождения:1. Вхождения в списки типа 'Variables'(a) из раздела объявлений программ и списков глобальных переменных:Вхождение в список типа 'Variables' для переменной из объявлений PROGRAM или VAR_GLOBAL задается следующим образом:{parameter list=<name> [ <key>=<value> <key>=<value> ...прочие ключи ] }Пример: Переменная bvar объявлена в программе. Она должна входить в список параметров parlist1(типа 'Variables') с именем bvar1, значением 102, индексом 16#1200 и подиндексом 16#2l.VARbvar:INT{parameter list=parlist1 [name=bvar1 value=102 index=16#1200subindex=16#1 ] };END_VAR(б) из объявления интерфейса VAR_CONFIG:Вхождение в список типа 'Variables' для переменной из окна VAR_CONFIG (вне зависимости от определения конфигурационной переменной) задается следующим образом:{parameter list=<name> path=<path> [ <key>=<value> <key>=<value> ...

прочие ключи ] }<path> путь к переменной, например, "PLC_PRG.act1.var_x"Пример: Для переменной var_x an создается вхождение в список "varlist1", символьное имя – "xvar".VAR_CONFIGCoDeSys V2.35-15Редакторы CoDeSys{parameter list=varlist1 path=PLC_PRG.act1.var_x [ name=xvar ] }END_VAR2. Вхождения в списки типа 'Template' через функциональные блоки и структурыДиректива в объявлениях функциональных блоков или структур позволяет создавать вхождения в списки типа: 'Template':{template list=<name> [ <key>=<value> <key>=<value> ...

прочие ключи ] }Пример: переменная strvar, являющаяся элементом структуры "stru1", должна входить в список"templ1" типа 'Template'; символьное имя "struvar1", уровень доступа "low":TYPE stru :STRUCTivar:INT;strvar:STRING{template list=vorl1 [member=struvar1 accesslevel=low]};END_STRUCTEND_TYPE3. Вхождения в списки типа ' Instance'(для массивов переменных структуры или функциональногоблока)(a) из раздела объявлений программ и списков глобальных переменных:При объявлении массивов, функциональных блоков или элементов структуры можно задать вхождениев список типа 'Instance':{instance list=<name> template=<template> baseindex=<index>basesubindex=<subindex>[<key>=<значение первого элемента> <key>=< значение первого элемента>...прочие ключи первого элемента ] | [ <key>=<значение второго элемента> <key>=< значение второго элемента > ..

прочиеключи второго элемента ] | [ключи последующих элементов]}<key>=<value> <key>=<value>...следующие ключи ] }Для массивов ключ "template" будет определен автоматически с помощью неявного шаблона "ARRAY".Для структур и функциональных блоков соответствующий шаблон должен быть создан в Менеджерепараметров и должен быть частью заданного здесь определения.Для каждого отдельного элемента структуры, массива или функционального блока может быть предопределено собственное индивидуальное вхождение в список параметров. Например: вместо единогоопределения "name" можно указать собственное определение [name=<имя_элемента>] для каждогоэлемента.Определение ключей для каждого отдельного элемента (заключается в квадратные скобки) выполняется в строке, разделенной пробелами.

Характеристики

Список файлов книги

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6367
Авторов
на СтудИзбе
309
Средний доход
с одного платного файла
Обучение Подробнее