MAX THEN Delimiter := MAX; //адаптация к, временные и">
WWW.DISS.SELUK.RU

БЕСПЛАТНАЯ ЭЛЕКТРОННАЯ БИБЛИОТЕКА
(Авторефераты, диссертации, методички, учебные программы, монографии)

 

Pages:     | 1 |   ...   | 10 | 11 ||

«Автоматизация посредством STEP 7 с использованием STL и SCL и программируемых контроллеров SIMATIC S7-300/400 (Automating with STEP 7 in STL and SCL by Hans Berger) Перевод по изданию 2-му, исправленному 2001 SIMATIC ...»

-- [ Страница 12 ] --

Переименование стандартных функций Пользователь имеет возможность переименовывать стандартные функции. Для этого Вы можете выделить стандартную функцию (например, FC 8) в окне проекта и снова щелкнуть кнопкой мыши на имени выбранного объекта. Вокруг имени появится рамка, и в ней Вы можете задать новое имя (например, FC 98). Если теперь Вы нажмете F1, пока выделена стандартная функция (переименованная в FC 98), то Вы получите контекстную справку (функция Help), касающуюся изначальной Если при выполнении операции копирования окажется, что существуют два одноименных блока, то появится диалоговое окно, в котором следует выбрать один из двух вариантов выполнения копирования: копирование с переименованием блока или копирование с перезаписью существующего Символьная адресация функций В таблице символов пользователь может назначить символьные имена для системных и стандартных функций, так что эти функции могут быть адресованы в дальнейшем посредством символьных имен. Пользователь свободен в выборе имен в допустимых пределах, регламентированных для имен блоков. В примере символьные имена были заданы для каждого блока (для лучшей идентификации).

Пример "Checksum" ("Контрольная сумма") Данный пример разъясняет использование прямого доступа к параметру блока типа ANY с вычислением адреса переменной и с использованием косвенной адресации (см. 26.8).

26. Прямой доступ к переменным Рис. 26.8 Пример "Checksum" ("Контрольная сумма") Контрольная сумма должна быть сгенерирована исходя из структуры данных простым сложением всех байтов без учета корректности выполнения (переполнение, нарушение диапазона значений для DINT).

Все структуры данных (STRUCT и UDT) обрабатываются редактором как массивы с байтовыми элементами (размер элемента равен 1 байту), если применяются в параметре блока с типом ANY. Следовательно, с помощью этой программы Вы можете сгенерировать контрольную сумму не только для массивов с байтовыми компонентами (ARRAY OF BYTE), но также и для переменных типа структура (STRUCT). Если Вы хотите использовать программу с переменными другого типа, то Вы должны изменить соответствующую проверку (идентификатор ID типа данных в ANYуказателе).

Функция генерации контрольной суммы использует прямой доступ для получения абсолютного адреса параметра блока (или, более точно адреса, по которому редактор сохранил ANY-указатель). Сначала выполняется проверка идентификатора ID типа данных (на соответствие типу BYTE) и вводится множитель повторения (>1). В случае ошибки двоичный результат устанавливается в "0" и выполнение функции прерывается с возвращаемым значением функции, равным 0.

Начальный адрес фактического параметра (в режиме выполнения программы) находится в ANY-указателе. Он загружается в адресный Автоматизация посредством STEP с использованием STL и SCL регистр AR1. Если переменная размещена в блоке данных, то этот блок Следующий сегмент добавляет значения всех байтов, составляющих фактический параметр. Циклическое выполнение программы будет продолжаться до тех пор, пока переменная Quantity не будет иметь нулевое значение (при каждом проходе цикла значение переменной декрементируется). После этого сумма передается в возвращаемое Пример "Generate frame" ("Создание фрейма") Пример "Generate frame" ("Создание фрейма") показывает использование системной функции SFC 20 BLKMOV для копирования сложных Блок данных "Send_mailb" должен быть заполнен данными фрейма идентификатором ID и порядковым номером в его экземплярном блоке.

Собственно данные расположены в глобальном блоке данных; они копируются в блок "почтовый ящик для исходящих сообщений" ("send Значение времени суток поступает от часов реального времени, встроенных в CPU, с помощью функции "Clock_check" (см. выше), затем генерируется контрольная сумма методом простого сложения всех байтов заголовка фрейма сообщения и данных (см. пример "Checksum" ["Контрольная сумма"]). На рис. 26.9 показаны структура программы и "Measured_values" Values (Значение 1) Values (Значение 2) Values (Значение 3) Values (Значение 4) Рис. 26.9 Пример "Generate frame" ("Создание фрейма") 26. Прямой доступ к переменным Первый сегмент в функциональном блоке FB "Generate_frame" передает идентификатор ID, сохраненный в экземплярном блоке данных в заголовок фрейма. Порядковый номер ConsecNum инкрементируется (+1) и также поступает в заголовок фрейма.

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

В третьем сегменте Вы можете видеть принципы использования системной функции SFC 20 BLKMOV для копирования переменных, выбранных в процессе работы программы, без использования косвенной адресации. Следовательно, нет необходимости знать абсолютный адрес Принцип предельно прост: требуемая функция копирования выбирается с помощью распределителя переходов. Здесь при выборе перехода допускаются номера от 1 до 4. Пример "Buffer entry" ("Входной буфер") демонстрирует такую же функциональность, но на этот раз, с набором "переменных назначения" и с вычисляемым указателем в процессе работы программы (см. 26.10).

В следующем сегменте программы генерируется контрольная сумма с учетом заголовка фрейма и данных фрейма. Так как функция "Checksum" генерирует контрольную сумму по единой области данных, то сначала заголовок фрейма и данные фрейма объединяются во временную переменную Block. После этого содержимое переменной Block побайтно суммируется, и результат сохраняется как контрольная сумма в Функциональный блок FB "Generate_Frame" запрограммирован таким образом, что он может вызываться для генерации фрейма по фронту Пример "Store frame" ("Хранение фрейма сообщения") В примере "Store frame" ("Хранение фрейма сообщения") показано, как используется "переменная" ANY-указатель).



Фрейм в блоке данных "Rec_mailb" должен быть внесен в следующую позицию в блоке данных "Buffer". Локальная переменная блока Entry определяет позицию в кольцевом буфере; адрес кольцевого буфера высчитывается, исходя из значения в данной позиции (см. рис. 26.10).

Если номер фрейма блоке "почтовый ящик для входящих сообщений" ("receive mailbox") изменился, то входящий фрейм должен быть записан в буфере в следующей позиции. Буфер должен представлять собой блок данных, который может накапливать до 8 фреймов. После прихода восьмого фрейма следующий, девятый фрейм, должен быть внесен вновь Функциональный блок "Store_Frame" сравнивает номер пришедшего фрейма с сохраненным номером в блоке данных "Rec_mailb". Если номера фреймов различаются, то номер, который сохранен, корректируется, и фрейм, находящийся в блоке "почтовый ящик для входящих сообщений" ("receive mailbox"), копируется в блок данных "Buffer" в следующую позицию. Системная функция SFC 20 BLKMOV Автоматизация посредством STEP с использованием STL и SCL Data (данные) Рис. 26.10 Пример "Store frame" ("Хранение фрейма сообщения") Область назначения может быть различной, в зависимости от состояния переменной Entry. Производится расчет абсолютного адреса области назначения, создается ANY-указатель в переменной ANY_pointer и передается в SFC в параметр DSTBLK.

Необходимо отметить, что для косвенной адресации временных локальных переменных Вы можете использовать только внутризонную Структура данных Frame имеет размер, равный 20 байтов (заголовок: байтов, собственно данные: 8 байтов и контрольная сумма: 4 байта).

Переменная Receive в блоке данных "Rec_mailb", следовательно, также имеет длину 20 байтов, точно также как и каждый компонент массива Entry в блоке данных "Buffer" имеет длину 20 байтов. Следовательно, отдельные элементы Entry[n] начинаются с байтового адреса n 20, где n соответствует номеру элемента переменной Entry.

Пример "Date conversion" ("Преобразование даты") Пример "Date conversion" ("Преобразование даты") иллюстрирует вопросы обработки переменных сложных типов данных с использованием прямого доступа к переменным и косвенной адресации посредством обоих Глобальный блок данных "Data66" содержит переменные CPU_Tim (тип данных DATE_AND_TIME) и Dat (тип данных STRING). Дата должна считываться из переменной CPU_Tim и сохраняться в виде строки символов в формате "YYMMTT" в переменной Dat.

Следующая программа в функции "DT_Conv" использует адресный регистр A1 и DB-регистр для указателя на входной параметр Tim.

26. Прямой доступ к переменным Адресный регистр A2 и DI-регистр в программе используются для указателя на значение функции (в соответствии с переменной Dat, относящейся к типу STRING, в блоке данных "Data66"). Данная программа размещена в функции, так что и DB-регистр, и DI-регистр, а также оба адресных регистра предоставляют пользователю неограниченный доступ.

В первом сегменте программы рассчитывается адрес фактического параметра для параметра блока Tim, остающийся действующим ("валидным") во время выполнения программы, после чего этот адрес сохраняется в DB-регистре в AR1. Фактический параметр сложного типа может быть размещен только в блоке данных (глобальных данных или экземплярных данных) или во временных локальных данных вызывающего блока (в V-области). Если фактический параметр находится в блоке данных, то номер этого блока данных будет загружен в DBрегистр, и указатель на область (area pointer) в адресном регистре AR будет содержать адресную область блока данных DB. Если фактический параметр находится в V-области, то в DB-регистр будет загружен нуль, и указатель на область (area pointer) в адресном регистре AR1 будет содержать адресную область V.

Во втором сегменте программы содержится "эквивалентная" программа для значения функции, адрес которого размещается в адресном регистре AR2 и в DI-регистре. Чтобы можно было использовать косвенную адресацию также посредством DI-регистра, адресная область DI должна быть введена в адресный регистр AR2. Тем не менее, в зависимости от определяется или DB для блока данных, или V - для V-области.

Установкой 24-го бита в адресном регистре AR2 в состояние "1" мы можем изменить адресную область с DB на DI, но мы никак не сможем зафиксированное для фактического параметра в значении функции, может быть использовано в следующем сегменте. Эта длина должна состоять по крайней мере из 6 символов. Если длина короче 6 символов, то в двоичный результат BR записывается значение "0" (в противоположном случае BR = "1"), после чего завершается обработка блока. Таким образом, Вы можете контролировать наличие ошибок обработки с помощью проверки двоичного результата после вызова В следующем сегменте программы считываются год и месяц из переменной Tim (в формате двоично-десятичного [BCD] числа), после чего эти значения преобразуются в символы ASCII (с предшествующим символом "3") и записываются в качестве возвращаемого значения функции. Так же выполняется обработка данных, которые определяют Обработка программы заканчивается корректировкой длины в значении Автоматизация посредством STEP с использованием STL и SCL 26 - 26 Automating with STEP 7 in STL and SCL Автоматизация посредством STEP Структурированный язык управления SCL Структурированный язык управления SCL (Structured Control Language) является языком программирования высокого уровня для SIMATIC S7.

Язык базируется на стандарте DIN EN 61131-3 (часть "Structured Text" ["Структурированные тексты"]) и имеет сертификат совместимости с PLC Base Level [Базовый уровень] версии V4.01 при использовании интернациональных мнемоник (в данной книге изначально использованы мнемоники, принятые в Германии). Язык SCL оптимизирован для программирования программируемых контроллеров (PLC). SCL содержит в себе элементы языка Паскаль (Paskal) наряду с типичными для PLC элементами, такими, например, как "вход" ("input") и "выход" ("output").

SCL особенно подходит для программирования сложных алгоритмов или для задач, относящихся к области управления данными. Язык SCL поддерживает характерную для STEP 7 блочную структуру, а также позволяет создавать S7-программы, включающие в себя фрагменты на базовых языках программирования STL, LAD и FBD.

Программное обеспечение S7-SCL является опционным (то есть, поставляемым по отдельному заказу) программным продуктом. ПО S7SCL может быть поставлено вместе с базовым пакетом STEP 7 Basic Package. Описание S7-SCL в данной книге базируется на версии языка При инсталляции ПО S7-SCL данный язык программирования полностью интегрируется с утилитой SIMATIC Manager и может после этого использоваться наряду с базовыми языками программирования (например, STL). Используя редактор SCL-программ, пользователь может создавать в S7-проекте исходные программы, которые он должен затем скомпилировать с помощью SCL-компилятора. Программа пользователя содержит скомпилированные SCL-блоки; эта программа, кроме того, может содержать скомпилированные блоки, написанные на других языках программирования. Пользователю также предоставляется возможность протестировать блоки, созданные с использованием языка SCL, в интерактивном (online) режиме в CPU с использованием отладчика SCL Элементы языка SCL в синтаксисе инструкций отличаются от элементов других (базовых) языков программирования (имеются в виду операторы, выражения, присвоение значений). Однако, все они совместно используют типы данных, адресные области, символьные имена и блочную структуру.

Используя управляющие операторы (control statements), пользователь может организовывать ветвление программы, выполнять программные циклы. С помощью использования операций переходов можно прерывать Автоматизация посредством STEP с использованием STL и SCL последовательное выполнение программы, а затем продолжать ее выполнение, начиная с другой точки блока.

С использованием SCL пользователь может запрограммировать блоки и затем - организовать их вызов в программе (как говорится, вставить блоки в программу), что может быть выполнено как с использованием языка SCL, так и с использованием другого языка программирования для S7.

Используя язык SCL, Вы можете получить доступ к любой системной Стандартные функции, такие как функции преобразования, доступны в виде SCL-функций; кроме того, пользователь, используя языки SCL или STL, может запрограммировать свои собственные функции. И, наконец, для обработки переменных сложных типов пользователь в своей программе может использовать IEC-функции из базового пакета программного обеспечения STEP 7 Basic Package.

27 Введение, элементы языка Интеграция с системой SIMATIC; адресация; операторы; выражения;

28 Операторы управления IF, CASE, FOR, WHILE, REPEAT, CONTINUE, EXIT, GOTO, RETURN.

Вызовы блоков; передача параметров; переменная OK; механизм Функции таймеров; функции счетчиков; функции преобразования;

математические функции; функции сдвига и циклического сдвига;

программирование собственных функций пользователя с использованием языков программирования SCL и STL.

Функции преобразования; функции сравнения; STRING-функции (функции для работы с переменными типа STRING); функции обработки даты и времени; функции для работы с числами.

27 Введение. Элементы языка В данной главе рассматриваются требования, которые должны выполняться при программировании на языке SCL. В главе "Программное обеспечение STEP 7" и в главе 3 "SIMATIC S7-программа" содержится детальное описание данного вопроса, поэтому Вы найдете В главе 2 "Программное обеспечение STEP 7" предоставлено введение в вопросы, касающиеся средств программирования, таких как, редактор символов (symbol editor), редактор SCL-программ (SCL program editor), компилятор и отладчик. В главе также говорится о программноаппаратной среде программирования на языке SCL.

В главе 3 "SIMATIC S7-программа" представлена структура программы пользователя. В главе описываются различные варианты выполнения программы, структура блоков, а также перечислены все требуемые для программирования блоков ключевые слова. Вы найдете там также введение в темы "адресация переменных" и "типы данных, Примеры, рассматриваемые в данной главе, Вы можете найти на прилагаемой дискете в библиотеке STL_Book library в разделе " Language Elements" ("Элементы языка").

27.1 Интеграция с SIMATIC 27.1.1 Инсталляция (установка) Инсталляция средств программирования на языке SCL требует наличия устанавливается посредством программы установки SETUP; при программирования для установки требуется около 8 Мб на жестком диске.

Кроме того, Вам потребуется также выполнить авторизацию SCL (подтвердить права на использование), для чего служит специальная Автоматизация посредством STEP с использованием STL и SCL 27.1.2 Создание проекта Утилита SIMATIC Manager является ключевым средством также и для работы с языком программирования SCL. Для того, чтобы создать программу на SCL, пользователь должен сначала запустить SIMATIC Manager и создать проект также, как и при создании программ на одном из стандартных языков программирования (см. раздел 2.1 "Базовый пакет STEP 7 (STEP 7 Basic Package)"). При этом пользователь может создать проект "вручную" или воспользоваться для его создания специальной программой Wizard -"мастером создания проектов".

При конфигурировании станции достаточно назначить CPU, чтобы SIMATIC Manager создал разделы для связанной с проектом S7программы. Можно также создать S7-программу непосредственно в проекте и назначить CPU позднее.

Кроме того, можно также использовать уже готовый проект. Необходимо, чтобы были созданы разделы: S7 Program [S7 программа], Blocks [Блоки], а также Symbols [Символы] для таблицы символов. Если какой-либо объект не существует, необходимо создать его. Для этого нужно выделить раздел более низкого уровня и выбрать опцию меню Insert (Вставка).

Если используется уже существующий проект, то в этом случае в нем уже могут присутствовать исходные программы на STL или скомпилированные блоки, созданные, скажем, с помощью FBD. Это не нарушает работы SCLредактора. Пользователь может даже вызывать в своей SCL-программе ранее созданные и скомпилированные блоки, независимо от языка, который использовался для их создания.

27.1.3 Редактирование SCL-программы Выделите раздел Sources [Исходные программы] и затем выберите опции меню: Insert -> SCL Source (Вставка -> Исходная программа SCL) (такая опция меню будет доступна для использования, только в том случае, если Вы установили SCL в своей системе). Теперь Вы можете переименовать вставленный объект SCL Source(1). Дважды щелкнув кнопкой мыши на этом объекте, вызовите редактор SCL-программ, который отобразит при открытии на экране монитора "пустой" исходный SCL-файл. Теперь Вы можете вводить SCL-программу.

Как использовать для ввода программ SCL-редактор, описывается в разделе 2.5.4 "Редактор SCL-программ (SCL-Program Editor)". Написание программы начинается с ввода (редактирования) блока. Структура блока и необходимый набор ключевых слов описываются в разделе 3. "Программирование кодовых блоков на SCL".

Здесь для начала мы рассмотрим простой пример: мы запрограммируем функцию ограничителя "Delimiter", которая должна ограничивать входные величины, адаптируя их к заданному диапазону значений (между верхним и нижним пределами); кроме того, в примере мы запрограммируем вызов этой функции в организационном блоке (см. рис. 27.1).

27. Введение. Элементы языка FUNCTION Delimiter : INT VAR_INPUT END_VAR BEGIN IF IN > MAX THEN Delimiter := MAX; //адаптация к верхнему значению ELSIF IN < MIN THEN Delimiter := MIN;//адаптация к нижнему значению END_IF;

END_FUNCTION

ORGANIZATION_BLOCK Mainjprogram VAR_TEMP SINFO : ARRAY [1..20] OF BYTE;

END_VAR BEGIN Result := Delimiter (MAX := Maximum, IN := INPUT_VALUE, MIN := Minimum);

END_ORGANIZATION_BLOCK

Рис. 27.1 Пример программы функции ограничителя "Delimiter" Пример программы начинается с объявления типа блока ограничителя "Delimiter" (функция FC) и типа для значения функции (INT). Далее следует описание параметров блока: параметры MAX (максимальное значение, верхняя граница), IN (величина входного сигнала) и MAX (максимальное значение, нижняя граница) объявляются входными параметрами (INPUT), относящимися к типу данных INT. Сама программа следует за разделом объявления переменных. В соответствии с программой, если входная величина IN больше, чем заданная максимальная величина, то функция принимает значение, равное максимальной величине. Если это не так, и входная величина IN меньше, чем заданная минимальная величина, то функция принимает значение, равное минимальной величине. Если оба рассмотренных случая не дали положительного результата, то функция принимает значение, равное Теперь мы запрограммируем вызов этой функции в организационном блоке "Main Program". Программируя на языке SCL, Вы должны также зарезервировать 20 байтов в области временных локальных данных для стартовой информации организационного блока, даже если Вы не планируете их использовать.

В отличие от стандартных языков программирования, в языке SCL функция FC с возвращаемым значением функции является Автоматизация посредством STEP с использованием STL и SCL "реальной" функцией, которая вставляется в выражение вместо адреса (идентификатора), и при этом обеспечивается совместимость типов данных. При вызове в организационном блоке "Main Program" функции ограничителя "Delimiter" ее значение присваивается глобальной переменной "Result" ("Результат"); теперь эта переменная будет содержать в себе значение "Input_value", ограниченное предельными значениями "Maximum" и "Minimum".

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

После написания исходной SCL-программы сохраните ее, используя опции меню: File -> Save (Файл -> Сохранить). Так как в примере мы использовали символьную адресацию, то мы должны заполнить таблицу символов (Symbol Table) перед компилированием исходной программы.

27.1.4 Заполнение таблицы символов (Symbol Table) Заполнение таблицы символов (Symbol Table) в SCL производится так же как и в стандартных языках программирования (см. раздел 2.5.2 "Таблица символов (Symbol Table)"). Вы также можете вводить информацию в уже существующую и частично заполненную таблицу символов. При этом в любой данной S7-программе может присутствовать только одна единственная таблица символов. Таблица символов в разделе S Program [S7 программа] представляется объектом Symbols [Символы].

Вы можете вызвать редактор символов (symbol editor), выбрав опции меню: Options -> Symbol Table (Опции -> Таблица символов) в редакторе SCL-программ или дважды щелкнув кнопкой манипулятора "мышь" на объекте Symbols [Символы] в окне утилиты SIMATIC Manager. После того, как откроется таблица (пустая, новая или ранее частично заполненная), Вы можете ввести символьные имена Ваших параметров (см. табл. 27.1).

После заполнения таблицы, ее необходимо сохранить.

Таблица 27.1 Таблица символов (Symbol Table) для примера функции ограничителя 27. Введение. Элементы языка 27.1.5 Компилирование SCL-программы Для того, чтобы выполнить компилирование исходной SCL-программы откройте раздел Sources [Исходные программы] (если он еще не открыт).

Компилятор Вы можете найти, используя опции меню: Options -> Customize (Опции -> Установки пользователя) на вкладке "Compiler" ["Компилятор"]. (При необходимости создания блоков выберите опцию "Blocks generated" ("Создание блоков")).

Компилирование исходной SCL-программы может быть выполнено с помощью опций: File -> Compile (Файл -> Компиляция); скомпилированные блоки сохраняются в разделе Blocks [Блоки]. Более подробная информация о компиляции блоков представлена в разделе 2.5. "Редактор SCL-программ (SCL-Program Editor)".

Вы можете организовать пакетный режим компиляции сразу нескольких исходных программ; использование специального управляющего файла позволяет проводить компиляцию этих исходных файлов в любом Необходимо отметить, что вызываемые блоки или функции должны быть доступны в момент компилирования или как уже скомпилированные блоки, хранящиеся в разделе Blocks [Блоки], или как (заведомо не имеющие ошибок) исходные программы, хранящиеся в разделе Sources [Исходные программы], или как стандартные функции, хранящиеся в библиотеке стандартов Standard Library.

27.1.6 Загрузка SCL-блоков Если программатор (программирующее устройство PLC) подключен к CPU, то с помощью опций меню: PLC -> Load (PLC -> Загрузка) Вы можете загрузить скомпилированные блоки в пользовательскую память CPU. Сам CPU должен быть при этом в режиме STOP (СТОП), потому что порядок следования загружаемых блоков может отличаться от порядка Более подробная информация об этом и других аспектах, на которые Вы должны обратить Ваше внимание, представлена в разделе 2. "Интерактивный режим (Online mode)".

Вы можете также обрабатывать блоки в "интерактивном" ("online") и в "автономном" ("offline") окнах утилиты SIMATIC Manager.

27.1.7 Тестирование SCL-блоков SCL-отладчик позволяет проводить тестирование отдельных блоков с помощью функции "Program Status" ("Состояние программы") в режиме последовательного мониторинга выбранных регистров и переменных или в пошаговом режиме. С помощью функции "Program Status" ("Состояние программы") Вы можете наблюдать, как меняются значения переменных в Автоматизация посредством STEP с использованием STL и SCL процессе выполнения программы. В пошаговом режиме Вы можете останавливать выполнение программы в точке прерывания и выполнять программу оператор за оператором, отслеживая состояние переменных (см. раздел 2.7 "Тестирование программы").

Таблица переменных (VAT) также может использоваться для тестирования SCL-программы. С помощью этой таблицы Вы можете устанавливать значения переменных и затем наблюдать при выполнении программы результаты таких назначений.

27.1.8 Адреса и типы данных Адресные области Адреса и переменные, применяемые при программировании на языке SCL, соответствуют адресам и переменным, применяемым при написании программ на стандартных языках программирования (см. раздел 1. "Адресные области"):

• временные и статические локальные данные (только символьная адресация);

• организационные блоки ОВ, функциональные FB, функции FC как с возвращаемым значением, так и без него; блоки данных DB.

Функции таймеров Т и функции счетчиков С обрабатываются в SCLпрограммах как "стандартные функции" (см. раздел 30.1 "Функции таймеров Т" и раздел 30.2 "Функции счетчиков С").

программирования. Более подробное изложение вопроса, посвященного адресным идентификаторам в SCL, представлено в разделе 27.2. "Абсолютная адресация".

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

Типы данных Назначение типа данных определяет:

• тип и значение (компонентов) данных (например, integer [целая], character string [строка символов]);

(например, числовой диапазон, длина строки символов);

27. Введение. Элементы языка Типы данных, применяемые при программировании на языке SCL, такие же как те, что применяются при написании программ на стандартных языках программирования (в разделе 3.7 "Переменные и константы" представлен соответствующий обзор в табличной форме, а в главе "Типы данных" Вы найдете детальное описание вопроса).

Численные значения могут быть представлены как десятичные числа, как шестнадцатеричные числа, как восьмеричные числа (8#17 соответствует Классы типов данных В связи с возможностью группирования значений, в SCL определяют классы типов данных, которые представляют одинаковое поведение • класс ANY_INT включает в себя данные типов INT и DINT;

• класс ANY_NUM включает в себя данные типов INT, DINT и REAL;

• класс ANY_BIT включает в себя данные типов BOOL, BYTE, WORD и Указанные классы типов данных были введены, чтобы сделать яснее описание операторов; переменные не могут быть описаны с помощью Запись констант Константы - это фиксированные значения, которые в общем случае не изменяются при выполнении программы. Константы используются для предопределения начальных значений переменных при описании последних или для объединения (комбинирования) их в программе с другими переменными (например, при применении в качестве граничных В языке SCL константа не определяет "свой" тип данных, пока она не будет обработана в арифметической операции. Например, константа может относиться к типу данных INT или к типу данных REAL, в В языке SCL Вы можете назначать тип данных для константы (так называемая запись константы со спецификацией типа - "type-defined").

предопределить переменную WORD в разделе объявлений с помощью десятичного, шестнадцатеричного, восьмеричного или двоичного числа.

Ниже представлен пример, в котором переменная, имеющая в каждом из случаев одинаковое значение, имеет различное представление:

Автоматизация посредством STEP с использованием STL и SCL Тип данных при абсолютной адресации Абсолютный адрес всегда принадлежит к классу типов данных ANY_BIT (например, двойное слово меркеров MD10 имеет тип данных DWORD).

Операнд может иметь тип данных (отличный от ANY_BIT) только в случае, если имеет символьное имя ("когда он обращен к переменной"), или после преобразования типа данных.

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

они должны вводиться в формате $hh (здесь hh означает значение ASCII символа в шестнадцатеричной форме).

Для продолжения строки символов на следующей строке или для вставки комментария в разрыв строки символов (если не нужно отображать этот комментарий при печати и при выводе на дисплей) предназначены две специальные комбинации символов '$>' и ''//продолжение следует

Pages:     | 1 |   ...   | 10 | 11 ||


Похожие работы:

«XVIII МЕНДЕЛЕЕВСКИЙ СЪЕЗД ПО ОБЩЕЙ И ПРИКЛАДНОЙ ХИМИИ 23 - 28 сентября 2007 года Москва, Россия Уважаемые коллеги! Приглашаем Вас принять участие в работе XVIII Менделеевского съезда по общей и прикладной химии, посвященного 100-летию Менделеевских съездов. XVIII Менделеевский съезд открывает серию научных мероприятий, приуроченных к празднованию в 2009 году 175-летия со дня рождения Д.И. Менделеева. Менделеевские съезды проводятся не реже одного раза в 45 лет в крупнейших научных и культурных...»

«Проект Повышение качества инвестиционной среды Артемовского района Донецкой области Экспертное заключение ЦЗИ по вопросам регионального инвестиционного развития, рассматриваемым в диссертационных работах Исполнитель: главный юрисконсульт ЦЗИ Дурнева Ю.А. Донецк-2011 2 По вопросу привлечения инвестиций в регион для изучения было отобрано 6 украинских кандидатских диссертаций и 39 кандидатских диссертаций, защищенных в Российской Федерации. За период 2005гг. в нескольких российских диссертациях...»

«СОДЕРЖАНИЕ 1 Общие положения 1.1. ФГОС по направлению подготовки ВПО и другие нормативные документы, необходимые для разработки ООП 1.2 Нормативные документы для разработки ООП бакалавриата по направлению подготовки 210400 Радиотехника, профиль Аудиовизуальная техника 1.3.Общая характеристика вузовской основной образовательной программы высшего профессионального образования (бакалавриат) 1.3.1. Цель (миссия) ООП бакалавриата по направлению Радиотехника, профиль Аудиовизуальная техника,...»

«УДК 312.9: 004.413.2 ОСОБЕННОСТЬ ОРГАНИЗАЦИИ ПРОФОРИЕНТАЦИОННОЙ РАБОТЫ ВУЗОВ С АБИТУРИЕНТАМИ В ЗАВИСИМОСТИ ОТ ПЛОТНОСТИ НАСЕЛЕНИЯ ©2012 Е. Е. Ураева ассистент каф. программного обеспечения и администрирования информационных систем e-mail: [email protected] Курский государственный университет В работе на примере Курской области изучено влияние плотности населения административно-территориальных единиц на число поступающих в периферийные вузы и даны рекомендации руководствам высших учебных...»

«Министерство образования и науки РФ ФГБОУ ВПО Дагестанский государственный технический университет Кафедра иностранных языков для экономических специальностей УТВЕРЖДАЮ Ректор ФГБОУ ВПО ДГТУ, V.. i-S Ж д.т.н., профессор _ Т.А. Исмаилов 2014 г. ПРОГРАММА ВСТУПИТЕЛЬНОГО ЭКЗАМЕНА ПО ИНОСТРАННОМУ ЯЗЫКУ Одобрена на заседании кафедры иностранных языков для экономических специальностей (протокол №6 от 19 февраля 2014 г.) Зав. кафедрой иностранных языков для ЭС к.ф.н., профессор Абуева Н.Н. Махачкала...»

«ФГБОУ ВПО Ульяновская ГСХА им. П.А. Столыпина Колледж агротехнологий и бизнеса Ульяновской ГСХА УТВЕРЖДАЮ Директор колледжа К.В. Шленкин 2013 г. РАБОЧАЯ ПРОГРАММА УЧЕБНОЙ ДИСЦИПЛИНЫ Основы микробиологии Уровень подготовки базовый Квалификация (степень) выпускника Ветеринарный фельдшер (бакалавр, магистр, дипломированный специалист) Форма обучения очная (очная, очно-заочная, и др.) 2013 МИНИСТЕРСТВО СЕЛЬСКОГО ХОЗЯЙСТВА РОССИЙСКОЙ ФЕДЕРАЦИИ ФГБОУ ВПО УЛЬЯНОВСКАЯ ГСХА ИМ. П.А. СТОЛЫПИНА...»

«ПРОГРАММИРОВАНИЕ I Программа курса Современные методы и понятия программирования на 2013-1014 гг составил доцент, к.ф.-м.н. Бульонков М.А. ЦЕЛИ ОСВОЕНИЯ ДИСЦИПЛИНЫ Целью курса является освоение студентами базовых понятий базовых понятий и методов программирования. Вводная часть курса даёт представление о различных сторонах программировании - как инженерной деятельности, как методологии и как научной дисциплины – и их взаимосвязи. Основная часть курса построена вокруг рассмотрения языков...»

«ОСНОВНАЯ ОБРАЗОВАТЕЛЬНАЯ ПРОГРАММА ПОСЛЕВУЗОВСКОГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ с. 2 из 16 ПО СПЕЦИАЛЬНОСТИ 02.00.03 – Органическая химия 1 ОБЩИЕ ПОЛОЖЕНИЯ 1.1 Настоящая основная образовательная программа послевузовского профессионального образования (далее – ООП ППО), реализуемая Бийским технологическим институтом (филиалом) ФГБОУ ВПО Алтайский государственный технический университет имени И.И. Ползунова (далее – БТИ АлтГТУ) по подготовке аспирантов по специальности 02.00.03 – Органическая...»

«ПЕТЕРБУРГСКИЙ МЕЖДУНАРОДНЫЙ ЭКОНОМИЧЕСКИЙ ФОРУМ 16–18 ИЮНЯ 2011 Деловой обед УЕХАТЬ, ЧТОБЫ ВЕРНУТЬСЯ: ПРОГРАММА ПОДГОТОВКИ МОЛОДЫХ РОССИЙСКИХ ПРОФЕССИОНАЛОВ В ВЕДУЩИХ ВУЗАХ МИРА Создание творческого капитала в России 18 июня 2011 г. — 12:00–13:15, Ресторан, Зона деловых завтраков №2 Санкт-Петербург 2011 Президент Российской Федерации Д.А. Медведев объявил о внедрении новой формы поддержки обучения российских студентов и специалистов в ведущих университетах мира, по примеру программ, которые...»

«Министерство образования и науки РФ Государственное образовательное учреждение высшего профессионального образования ПЕНЗЕНСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ФАКУЛЬТЕТ ПРИБОРОСТРОЕНИЯ, ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ И СИСТЕМ кафедра Метрология и системы качества ПРОГРАММА ВСТУПИТЕЛЬНЫХ ИСПЫТАНИЙ В МАГИСТРАТУРУ ПО НАПРАВЛЕНИЮ 27.04.02 (221400.68) УПРАВЛЕНИЕ КАЧЕСТВОМ ПЕНЗА 2014 Предисловие 1 РАЗРАБОТАНА на основе следующих нормативных документов: федерального государственного образовательного стандарта...»

«МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ ФГБОУ ВПО Кемеровский государственный университет Новокузнецкий институт (филиал) Факультет гуманитарный РАБОЧАЯ ПРОГРАММА ДИСЦИПЛИНЫ ОПД.Р.4 Акмеология для специальности 030301.65 Психология специализации 020403 Социальная психология Новокузнецк 2013 Сведения о разработке и утверждении рабочей программы дисциплины Рабочая программа дисциплины ОПД.Р.4 Акмеология входит в состав общепрофессиональных дисциплин регионального компонента и...»

«ВВЕДЕНИЕ Программа повышения квалификации Производство работ на особо опасных, технически сложных и уникальных объектах предназначена для удовлетворения потребностей руководящих работников и специалистов в сфере градостроительной деятельности в совершенствовании и получении новых знаний в указанной области. Целью программы является повышение квалификации руководителей и специалистов строительных организаций-соискателей свидетельств о допуске на работы, оказывающие влияние на безопасность...»

«Формам ЭИР-1 Электронные учебники (учебные пособия), образовательные, справочные, энциклопедические и другие издания на CD-ROM Назначение CD-ROM Учебник Лабораторный практикум Энциклопедия Справочник Тестовые программы + Обучающие игры Образовательная программа Класс Фонд библиотеки образовательном процессе на уроках Информатики (да/нет) Обменный фонд (кол-во экз.) Кол-во экз-ов находящихся в образовательном процессе учителями предметниками Кол-во экз-ов в библиотеке Используется учащимися...»

«www.innoclusters.ru Информационно-справочный материал для участников территориальных кластеров Томской области Возможности и порядок участия в Президентской программе повышения квалификации инженерных кадров на 2012годы Томск 2013 Аннотация В Информационно-справочном материале изложены сведения о содержании, возможностях и порядке участия в Президентской программе повышения квалификации инженерных кадров на 2012-2014 годы. Материал предназначен для руководителей, менеджеров и специалистов...»

«МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ Филиал федерального государственного бюджетного образовательного учреждения высшего профессионального образования Кемеровский государственный университет в г. Анжеро-Судженске Кафедра психологии и педагогики РАБОЧАЯ ПРОГРАММА по дисциплине Основы медицинских знаний и здорового образа жизни для специальности 050706 Педагогика и психология факультет педагогики и психологии курс 3, ДО семестр 5 лекции – 84часов зачет – 5 семестр практические...»

«Используемые пакеты по специальностям ГОС-2 (год поступления до 2010) ФГОС-3 (год поступления с 2011) Специальность Дисциплина Изучаемая программа Направление Дисциплина Семестр Изучаемая программа Семестр Информатика и основы Corel Draw + Corel MS Office 4 3 компьютерных технологий PhotoPaint 270100.62 – Информатика и основы САПР в архит. проектировании Corel Draw ArchiCAD 5 Архитектура, 270301.65 – компьютерных технологий Композиционное компьютерное 270101.62 – профиль Архитектура; AutoCAD+...»

«Become an Xcoder Русское издание Начни программировать под Mac OS X используя Objective-C Bert Altenberg, Alex Clarke, Philippe Mougin Лицензия Уведомление об авторском праве Copyright © 2008 Bert Altenburg, Alex Clarke и Philippe Mougin. Версия 1.15 Опубликовано под Creative Commons лицензией 3.0 версии без права на коммерческое использование http://creativecommons.org/licenses/by/3.0/ Установление авторства: лицензиары Bert Altenburg, Alex Clarke и Philippe Mougin позволяют копировать,...»

«Зарегистрировано в Минюсте России 14 октября 2013 г. N 30163 МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ ПРИКАЗ от 12 сентября 2013 г. N 1061 ОБ УТВЕРЖДЕНИИ ПЕРЕЧНЕЙ СПЕЦИАЛЬНОСТЕЙ И НАПРАВЛЕНИЙ ПОДГОТОВКИ ВЫСШЕГО ОБРАЗОВАНИЯ (в ред. Приказа Минобрнауки России от 29.01.2014 N 63) В соответствии с частью 8 статьи 11 Федерального закона от 29 декабря 2012 г. N 273-ФЗ Об образовании в Российской Федерации (Собрание законодательства Российской Федерации, 2012, N 53, ст. 7598; 2013, N 19,...»

«МУНИЦИПАЛЬНОЕ БЮДЖЕТНОЕ ОБЩЕОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ОСНОВНАЯ ОБЩЕОБРАЗОВАТЕЛЬНАЯ ШКОЛА № 10 МУНИЦИПАЛЬНОГО ОБРАЗОВАНИЯ ГОРОД-КУРОРТ ГЕЛЕНДЖИК 2011 год Информационная карта программы 353481, Краснодарский край, г.Геленджик, Юридический адрес с.Марьина Роща, ул.Ленина, 25 муниципальное бюджетное общеобразовательное учреждение основная общеобразовательная школа № 10 муниципального образования город-курорт Геленджик тел./факс (86141)2-68-43 e-mail: [email protected] сайт: mou-oosh.ucoz.ru...»

«Образование Education УДК 378 Разработка примерного учебного плана подготовки бакалавров по направлению 280700 – Техносферная безопасность В. А. Девисилов, доцент, канд. техн. наук Московский государственный технический университет имени Н.Э. Баумана e-mail: [email protected] Ключевые слова: Предложен примерный учебный план подготовки бакалавров по направлению образовательный стандарт, 280700 — Техносферная безопасность. Учебный план разработан в соотобразовательная программа, ветствии с...»






 
2014 www.av.disus.ru - «Бесплатная электронная библиотека - Авторефераты, Диссертации, Монографии, Программы»

Материалы этого сайта размещены для ознакомления, все права принадлежат их авторам.
Если Вы не согласны с тем, что Ваш материал размещён на этом сайте, пожалуйста, напишите нам, мы в течении 1-2 рабочих дней удалим его.