Язык SCL (Strucured Control Languageструктурированный язык управления) является языком высокого уровня, который предназначен для программирования контроллеров. По синтаксису этот язык похож на язык Паскаль. Этот язык удобно использовать тогда, когда в программе имеются различные вычисления и сравнения значений чисел.
Адресация к памяти CPU.
Прежде чем изучать синтаксис языка SCL рассмотрим адресацию памяти CPU. Каждый CPU имеет следующие области памяти, с диапазонами адресов, зависящими от типа CPU:
- * Дискретные входы и выходы (например, I0.5, Q1.0)
- * Аналоговые входы и выходы (например, PI0.5, PQ1.0)
- * Меркеры (например, M1.0)
- * Таймеры, счетчики (например, Т1, C1)
Префикс размера Префикс размера определяет длину области памяти. Можно, например, прочитать байт или слово. Использование префикса размера не обязательно в случае, если Вы хотите определить один бит.
Вы можете определять следующих префиксов:
Х — бит;
В — байт;
W — слово;
D — двойное слово.
Примеры:
STATUS3 := I1.1; // Обращение к биту.
STATUSBYTE :=IB10; // Обращение к байту.
MEASVAL := IW20; // Обращение к слову Индексная адресация к областям памяти CPU.
К областям памяти CPU можно обращаться как к элементам массива.
Например: компиляция индексный блок симулятор
Word_Val := IW[5]; //Обращение слову начиная с 5-го байта.
Bit_Val := I[ByteNo, BitNo]; //Обращение биту Использование индексной адресации позволяет организовать циклов For, While и т. д. При этом должны выполняться следующие правила:
- * При доступе к данным типа BYTE, WORD или DWORD можно использовать только один индекс. Индекс интерпретируется как адрес байта.
- * При доступе к данным типа BOOL используются два индекса. Первый индекс определяет адрес байта, а второй положение бита в байте.
Определение символических имен В программе на языке SCL имена переменных и функций являются символическими. Поэтому, прежде чем создавать код следует определить глобальных символических имен.
Для этого в окне SIMATIC Manager откройте выделите узел Simbols и выполните на нем двойной щелчок. При этом открывается окно редактора символов. Пока в этом окне определите два символических имен: FC_Add и ORG_Block.