Макрос – это функция, программируемая пользователем. Макросы расширяют возможности
пользователя, предоставляя ему арифметические операции, функции сравнения и другие
функции, не предусмотренные среди стандартных инструментов проектирования NS-Designer. С
помощью этих функций можно управлять отображением экранов или обрабатывать данные, т.е.,
выполнять операции, которые ранее возлагались на ПЛК. Благодаря этому также снижается
загруженность ПЛК. Событие
руководстве “условием выполнения макроса”. Классифицируя макросы по условиям выполнения,
можно выделить следующие типы макросов:
-Макросы, выполняемыепособытиюпроекта
-Макросы, выполняемыепособытиюэкрана
-Макросы, выполняемыепособытиюфункционального объекта
Количество макросов, которое может быть создано для одного проекта/экрана, не
ограничено
Объем макроса не должен превышать 3000 символов. Символ разрыва (перевода) строки
засчитывается за два символа. Количество строк в макросе также не ограничено.
Пример:
$W0=10; 7 символов + перевод строки (2 символа)
STRCPY($W10”,ABCDE”); 21 символ Вданномслучаеиспользуется 30 символов.
Макрос может быть создан для проекта, экрана и функционального объекта. Макрос может
быть создан для одного из условий выполнения, перечисленных ниже.
Условия выполнения для проекта
Ниже перечислены условия выполнения макроса, которые могут быть использованы для
проекта.
Откройте закладку [Settings (Настройка)]-[Project properties (Свойства проекта)]-[Macro (Макрос)] в
NS-Designer, укажите условия выполнения и запрограммируйте макрос.
Подробное описание регистрации (назначения) макросов смотрите в Руководствепоэксплуатации NS-Designer (6-1 Назначение макроса - 6-1-1 Назначениемакросапроекту).
Условие выполнения Пояснение
When Loading a Project
(Призагрузкепроекта)
Alarm/Event ON Timing
(Привозникновениитревоги/события)
Alarm/Event OFF Timing
(Приотменетревоги/события)
Условия выполнения для экрана
Ниже перечислены условия выполнения макроса, которые могут быть использованы для
каждого экрана.
Откройте закладку [Settings (Настройка)]-[Screen properties (Свойства экрана)]-[Macro (Макрос)] в
NS-Designer, укажите условия выполнения и запрограммируйте макрос.
Подробное описание регистрации (назначения) макросов смотрите в Руководствепоэксплуатации NS-Designer (6-1 Назначение макроса - Назначениемакросаэкрану).
Условие выполнения Пояснение
When Loading a Screen
(Приоткрытииэкрана)
When Unloading a Screen
(Призакрытииэкрана)
Выполнение непосредственно перед загрузкой первого
экрана по завершению запуска аппаратной части NS
Выполнение при возникновении тревоги/события
Выполнение при отмене тревоги/события
Выполнение сразу после считывания данных экрана до
его отображения
Выполнение непосредственно после закрытия текущего
экрана
конечномэкране)
User screen->User screen
(Экранпользователя->Экранпользователя)
User screen->Transfer screen
(Экранпользователя->Экранпередачи)
User screen->System menu
(Экранпользователя->Системноеменю)
System menu->User screen
(Системноеменю->Экранпользователя
User screen->Screen Saver
(Экранпользователя->Сбережениеэкрана)
Screen Saver->User screen
(Сбережениеэкрана->Экранпользователя)
Выполняется Выполняется
Не выполняется Выполняется
Не выполняется Выполняется
Выполняется Не выполняется
Не выполняется Не выполняется
Не выполняется Не выполняется
При закрытии экрана
(выполнение на конечном
экране)
1-4
Раздел 1 Введение в макросы
Серия NS - Справочное руководство по макросам
Условия выполнения для функциональных объектов
В следующей таблице перечислены условия выполнения макроса, которые могут быть
использованы для функционального объекта.
Чтобы назначить макрос функциональному объекту, откройте диалоговое окно настройки
свойств для этого объекта, откройте закладку [Macro (Макрос)], выберите условие
выполнения и создайте макрос.
Подробное описание регистрации (назначения) макросов смотрите в Руководствепоэксплуатации NS-Designer (6-1 Назначение макроса - 6-1-2 Назначение
функциональному объекту).
Условие выполнения Пояснение
Touch on Timing (По нажатию) Макрос выполняется после нажатия
(прикосновения) нафункциональныйобъект
Touch off Timing (По отжатию) Макрос выполняется после отпускания
(снятияпальца) функциональногообъекта,
накоторыйбылопроизведенонажатие
Before Inputting numeral or
character string
(Передвводомчислового
назначение или символьной
строки)
Before Writing numeral or character
string (Перед записью числового значенияилисимвольнойстроки)
When changing numeral and
character string
(Приизменениичисловогозначенияилисимвольнойстроки)
When Processing Display Area
(Понажатиювзонеотображения)
When Selecting an Alarm/Event
(Повыборутревоги/события)
When selecting a list
(Повыборуобъектаизсписка)
Макрос выполняется непосредственно перед
отображением десятиклавишной или
виртуальной клавиатуры для ввода значений
или строк
Макрос выполняется непосредственно перед
передачей числового значения или текстовой
строки в контроллер
Макрос выполняется после изменения
числового или строкового значения по
данному адресу.
Макрос выполняется после нажатия на
область отображения тревоги.
Макрос выполняется после выбора
определенной строки (тревоги/события) в
Табло сводки и архива тревог/событий
Макрос выполняется после выбора
определенной строки в списке.
Примечание
Если для функционального объекта установлен пароль, перечисленные ниже
макросы выполняются после ввода пароля. Если пароль был отменен (пароль не
введен), макрос выполнен не будет.
- Выполнениепонажатию/отжатию
- Выполнениепередвводомчисла/строки
- Выполнениепонажатиювзонеотображения
- Выполнениепривыборетревоги/события
- Выполнениепривыбореобъектаизсписка
макроса
1-5
Раздел 1 Введение в макросы
Серия NS - Справочное руководство по макросам
Условия выполнения, которые могут быть выбраны для функциональных объектов, перечислены
в следующей таблице.
При изменении
По нажатию
Функциональный
объект
Кнопка "ВКЛ/ВЫКЛ" OK OK - - - Регистровая кнопка OK OK - - - Кнопка "Команда" OK OK - - - Однобитовая лампа - - OK - - Регистровая лампа - - OK - - Числовое поле
отображения и ввода
Строковое поле
отображения и ввода
Барабанный
переключатель
Текст - - - - - Текстовый список - - - - - OK
Измеритель уровня
(Вертикальная шкала)
Линейный тренд - - - - - Растровый объект - - - - - Аналоговый
измеритель
(Круговая шкала)
Отображение
видеосигналов
Дата - - - - - Время - - - - - Тренд протокола
данных
Таблица блока
данных
- - OK OK OK -
- - OK OK OK -
- - OK - OK -
- - - - - -
- - - - - -
- - - - - -
- - - - - -
- - - OK OK -
По отжатию
числа/строки
Перед вводом
числа/строки
Перед записью
числа/строки
объекта из списка
При выборе
[Alarm/Event object (Объект тревоги/события)]
Функциональный
объект
Однострочное табло
тревог/событий
Табло сводки и
архива
тревог/событий
When Pressing a Display Area
(Понажатиювзонеотображения)
OK -
-OK
When selecting an Alarm/Event
(Повыборутревоги/события)
1-6
Раздел 1 Введение в макросы
Серия NS - Справочное руководство по макросам
1-3 Программированиемакросов
В данном разделе описаны процедуры создания макросов, а также даны определения
терминов, используемых при программировании.
Синтаксис макроса
Символ разделителя в программе
В конце каждой строки необходимо размещать символ разделения (;). Это
необязательно делать лишь для инструкций IF (), ELSEIF (), ELSE(), ENDIF.
Пример;
$W0=2;
IF ($W0>=10)
$W5=$W0-$W2;
ELSE
$W5=$W0+$W2;
ENDIF
Комментарий
Чтобы разместить в программе комментарий, введите перед текстом комментария
одиночную кавычку (‘). Весь текст после кавычки до конца строки является
комментарием.
Пример:
$W0 = 100; ‘Комментарий
‘Комментарий
IF ($W1==200)
···
Термины, используемые при написании программы
При написании программы символы верхнего и нижнего регистров не различаются,
поэтому можно использовать символы любого регистра.
Пример:
-MovePopwDown () и MOVEPOPWDOWN() – это одна и та же функция.
-[Host1:DM0] и [host1:dm0] – этоодинитотжеадресстанции.
В тексте программы макроса могут использоваться следующие переменные.
Определе-
ние
дрес
в контроллере
Память
программируемого
терминала
Индекс
(Указатель)
При обращении к данным, расположенным по определенному адресу в
контроллере, используйте для связи функции READCMEM и WRITECMEM.
Адрес заключается в квадратные скобки [ ]
Пример:
Для адресации битов и слов в памяти программируемого терминала (ПТ)
используются указатели (индексы).
Адрес с указанным в конце индексом воспринимается следующим образом:
[указанный адрес + значение индекса]
Всего может быть использовано 10 индексов (I0…I9).
Укажите для значений $SW27 … $SW36 индексы I0…I9.
Пример:
Ниже описано применение классификаторов, которые устанавливаются для переменных.
Классификаторы применяются для работы с 32-битовыми данными, а также для
обращения к битам как к числу.
Параметр Пояснение
Обращение к
слову (16 бит)
как к двойному
слову (32 бит)
Обращение к
битам как к
числу
В конце переменной разместите “L”. Обращение к двум словам.
$W0L=1000000; ‘Обращение к $W0, $W1 как к 32-битовой переменной
$W100L=1000*1000; ‘Обращ. к $W100, $W101 как к 32-битовой переменной
Разместите в конце переменной “:n”. В “n” укажите значение, определяющее
группу битов (до 32, с кратностью 4 бита).
Исключения: Если n=16, введите ”W”. Если n=32, введите “L”.
$B0:4 = 3; ‘Запись значения 3(0011) в группу из 4 битов $B0…$B3
$B0W = 12345; ‘Запись 2345 (0011000000111001) в группу из 16 битов
'$B0…$B15
$W20 = 123
1-8
Раздел 1 Введение в макросы
Серия NS - Справочное руководство по макросам
Константа
В следующей таблице перечислены константы, которые могут применяться в программах
макросов.
Параметр Пояснение
Десятичная константа При использовании слова (16 битов) можно ввести
значение в диапазоне от -32768 до 32767
При использовании двух слов (32 бита) можно ввести
значение от -2147483648 до 2147483647
Шестнадцатеричная
константа
Символьная строка Заключите в кавычки (“ “)
При использовании слова (16 бит) можно ввести значение
от H0 до HFFFF
При использовании двух слов (32 бита) можно ввести
значение от H0 до HFFFFFFFF
Пример: ”ABCDE”
Ветвления
Для определения условий можно использовать следующие ключевые слова.
Параметр Пояснение
IF
ELSEIF
ELSE
ENDIF
Условия выполнения, размещаемые после IF и ELSEIF,
заключаются в круглые скобки ( ).
В конце конструкции обязательно размещайте ENDIF. Допускается
до 8 вложений.
Количество строк в выражении IF не ограничено. Однако общее
количество символов в макросе не должно превышать 3000.
Пример:
Для определения условий в конструкции IF используются следующие условные
выражения. Они действуют для любых типов данных (слово, слово в формате двойного
слова, бит, группа битов в формате числа).
Параметр Пояснение
A == B Если A равно B, тогда TRUE.
A > B Если A больше B, тогда TRUE.
A >= B Если A больше или равно B, тогда TRUE.
A < B Если A меньше B, тогда TRUE.
A <= B Если A меньше или равно B, тогда TRUE.
A <> B
A ! = B
A && B
A AND B
A || B
A OR B
Если A не равно B, тогда TRUE.
Если и A, и B истинны (true), тогда TRUE (AND)
Если A или B истинно (true), тогда, TRUE (OR)
Справка
Результат (A&&B, A>B) можетбытьподставленвкачествепеременной.
Пример: $B100=$W0>100;
Еслизначение $W = “100” илименьше, тов $B100 будет записан “0”. Еслизначение $W больше ”100”, в $B100 будет записана “1”.
1-10
Раздел 1 Введение в макросы
Серия NS - Справочное руководство по макросам
Основные операторы
В программе можно использовать следующие операторы.
Операция Символ Пример Значение
Присвоение = A = B Присвоение значения B операнду A
Добавление + C = A+B Запись результата A+B в C
Вычитание - C = A–B Запись результата A–B в C
Умножение * C = A*B Запись результата AxB в C
Деление / C = A/B Запись результата A/B в C
Остаток % C = A%B Запись результата A%B в C
ИЛИ | C = A|B Логическое ИЛИ операндов A и B
И & C = A & B Логическое И операндов A и B
НЕ ! C = !A Запись в C отрицания A
Исключающее ИЛИ ˆ C = A^B Запись в C логического ИЛИ
Дополнение до 1 ~ B = ~A Запись в B дополнения А до 1
Сдвиг на один разряд
(влево)
Сдвиг на один разряд
(вправо)
<< C = A<<B Запись в C значения, полученного
>> C = A>>B Запись в C значения, полученного
операндов A и B
после сдвига А на B битов влево
после сдвига А на B битов вправо
Справка
Логические операции должны выполняться над данными одного типа (например,
над словами, битами или словами в формате двойных слов)
Пример: $SW0L=$SW10L&$W20L;’Обращение к словам как к двойным словам’
В одном выражении можно комбинировать несколько операций.
Пример: A=(B+C)*(D+E/2)
При выполнении операций соблюдается следующий порядок очередности.
Приоритет Символ
Старший ( )
~
*, /,%
+, << ,>>
&
ˆ
|
Младший =
1-11
Раздел 1 Введение в макросы
Серия NS - Справочное руководство по макросам
Функции
Для программирования макросов в серии NS предусмотрены следующие функции.
Действие/Операция Функция
Значение в формате BIN
форматов BCD/BIN
Преобразование
символьных строк
Статистика
тревог/событий
Специальные функции
программируемого
терминала
Обмен данными
Завершение процесса Прекращение программы
Установка даты/времени Изменение содержимого
->значение в формате BCD
Значение в формате BCD
->значение в формате BIN
Копирование символьной строки STRCPY/STRCPYW
Преобразование из кодировки
ASCII в кодировку Unicode
Преобразование из кодировки
Unicode в кодировку ASCII
Обнуление количества
произошедших тревог/событий
Вывод записанного значения и
измененного значения
Переключение экрана SHOWPAGE/SHOWPAGEBCD
Перемещение объекта по экрану MOVEPARTS
Отображение диалогового окна с
сообщением
Получение координат
прямоугольника объекта
Перемещение всплывающего
окна
Перемещение всплывающего
окна вверх
Перемещение всплывающего
окна вниз
Перемещение всплывающего
окна влево
Перемещение всплывающего
окна вправо
Закрытие всплывающего окна CLOSEPOPW
Чтение данных по указанному
адресу
Запись данных по указанному
адресу
Чтение бита по указанному
адресу
Чтение слова по указанному
адресу
Запись бита по указанному
адресу
Запись слова по указанному
адресу
макроса
внутренних часов
программируемого терминала
BCD Преобразование
BIN
STRM2W
STRW2M
RSTALARMCNT
GETNUMVAL
MSGBOX
GETPARTS
MOVEPOPW
MOVEPOPWUP
MOVEPOPWDOWN
MOVEPOPWLEFT
MOVEPOPWRIGHT
READCMEM
WRITECMEM
READHOSTB
READHOSTW
WRITEHOSTB
WRITEHOSTW
RETURN
SETTIME
1-12
Раздел 1 Введение в макросы
Серия NS - Справочное руководство по макросам
Чтение содержимого (значений в
двоичном формате) указанного
файла в карте памяти (CF) и
запись в память
программируемого терминала.
Сохранение содержимого памяти
программируемого терминала в
карту памяти (CF).
Запись одновременно по
нескольким адресам
BCDOK OK OK OK OK OK OK OK OK OK OK OK OK
BIN OK OK OK OK OK OK OK OK OK OK OK OK OK
CLOSEPOPW OK OK OK OK OK OK OK OK OK OK OK OK
GETNUMVAL
GETPARTS OK OK OK OK OK OK OK OK OK OK
MOVEPARTS OK OK OK OK OK OK OK OK OK OK
MOVEPOPW OK OK OK OK OK OK OK OK OK OK OK OK
MOVEPOPWDOWN OK OK OK OK OK OK OK OK OK OK OK OK
MOVEPOPWLEFT OK OK OK OK OK OK OK OK OK OK OK OK
MOVEPOPWRIGHT OK OK OK OK OK OK OK OK OK OK OK OK
MOVEPOPWUP OK OK OK OK OK OK OK OK OK OK OK OK
MSGBOX OK OK OK OK OK OK OK OK OK OK OK OK OK
READCMEM OK OK OK OK OK OK OK OK OK OK OK OK OK
RETURN OK OK OK OK OK OK OK OK OK OK OK OK OK
RSTALARMCNT OK OK OK OK OK OK OK OK OK OK OK OK OK
SHOWPAGE OK OK OK OK OK OK OK OK OK OK OK OK OK
SHOWPAGEBCD OK OK OK OK OK OK OK OK OK OK OK OK OK
STRCPY(W) OK OK OK OK OK OK OK OK OK OK OK OK OK
STRM2W OK OK OK OK OK OK OK OK OK OK OK OK OK
WRITECMEM OK OK OK OK OK OK OK OK OK OK OK OK OK
SETTIME OK OK OK OK OK OK OK OK OK OK OK OK OK
READCF OK OK OK OK OK OK OK OK OK OK OK OK OK
WRITECF OK OK OK OK OK OK OK OK OK OK OK OK OK
MEMCOPY OK OK OK OK OK OK OK OK OK OK OK OK OK
SWAP OK OK OK OK OK OK OK OK OK OK OK OK OK
SWAPL OK
SETFOCUS OK OK OK OK OK OK OK OK
RELEASEFOCUS OK OK OK OK OK OK OK OK
FOR, NEXT OK OK OK OK OK OK OK OK OK OK OK OK OK
BREAK OK OK OK OK OK OK OK OK OK OK OK OK OK
CONTINUE OK OK OK OK OK OK OK OK OK OK OK OK OK
READHOSTB OK OK OK OK OK OK OK OK OK OK OK OK OK
READHOSTW OK OK OK OK OK OK OK OK OK OK OK OK OK
WRITEHOSTB OK OK OK OK OK OK OK OK OK OK OK OK OK
WRITE HOSTW OK OK OK OK OK OK OK OK OK OK OK OK OK
BITSET OK OK OK OK OK OK OK OK OK OK OK OK OK
MEMSET OK OK OK OK OK OK OK OK OK OK OK OK OK
п
оекта
т
По возникновению
т
евоги/события
евоги/события
По отмене
Макрос
экрана
При загрузке
к
ана
Макрос функционального объекта
значение
При выгрузке
к
ана
По отжатию
По нажатию
Перед вводом
числа/ст
Когда изменяется
оки
*
числа/ст
оки
При записи
*
*Числовоеполеотображенияиввода
область отоб
Текстовый список
По нажатию на
При выборе
т
евоги/события
аж.
1-14
Раздел 1 Введение в макросы
Серия NS - Справочное руководство по макросам
Добавленные функции
Действие/Операция Функция Замечания
Установка даты/времени SETTIME Добавлено в NS-Designer V3.0
В следующей таблице описана номенклатура переменных и значений, которые могут быть
указаны в качестве аргумента для макроса. Буквами S,D,n,x,y и т.п. в строке обозначаются
параметры, которые используются в 2-2Подробноеописаниефункций - Формат.
Память
программируемого
Аргумент
Функция
BCDS 0 0 0 0 0
BIN
CLOSEPOPWn 0 0 0 0 0
GETNUMVAL
GETPARTS
MOVEPARTS
MOVEPOPW
MOVEPOPWDOWN
MOVEPOPWLEFT
MOVEPOPWRIGHT
MOVEPOPWUP
MSGBOX
S
Нет
N
Left,
Top,
Right,
Bottom
n 0 0 0 0 0
X
Y 0
n
x 0 0 0 0 0
y
n
y 0
n
x
n
y
n 0 0 0 0 0
y 0
S1
S2 0 0 0 0
S3
$B $HB $SB
терминала
как число
Группа битов
0 0 0 0 0
0
0 0 0
0
000 0
000 0 000 0
0
0
0
000 0
000 0 000 0 000 0
0
0
0
0
000 0 000 0
000 0 000 0
000 0
0
0 0
Адреснастороне
$W $HW $SW
формате
двойного слова
Константа
Слово в
Строка
0 0 0
00 0
Указатель (индекс)
2-2
Раздел 2 Функции
Серия NS - Справочное руководство по макросам
Память
программируемого
Аргумент
$B $HB $SB
Функция
терминала
$W $HW $SW
Группа битов
как число
двойного слова
формате
Адрес на стороне
Константа
Слово в
Строка
контроллера
Указатель (индекс)
D
READCMEM
RETURNS
RSTALARMCNTS
SHOWPAGES
SHOWPAGEBCDS
STRCPY(W)
STRM2W
STRM2M
WRITECMEM
SETTIMES
READCF
WRITECF
SWAP
SWAPL
MEMCOPY
SETFOCUSN
RELEASEFOCUSНет
S
N
D
S
D
S
D
S
D
S
n
Mem
Size
File
Dev
Mem
Size
File
Dev
S
n
S
n
S
D
N
0
0
0
0
0
0 0
0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0
0 0
0 0
0 0
0 0
0 0
0
0 0
0 0
0 0
0
0
0
0
0
0
0
0
0
0 0
0 0 0
0 0
0 0
0 0
0 0
0
0
0
0
0
0
00
00
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2-3
Раздел 2 Функции
Серия NS - Справочное руководство по макросам
READHOSTB
READHOSTW
WRITEHOSTB
WRITEHOSTW
BITSET
MEMSET
D
h
ch
addr
r
n
D
h
ch
Addr
n
h
ch
addr
r
S
n
h
ch
addr
S
n
D
c
n
D
c
n
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2-4
Раздел 2 Функции
Серия NS - Справочноеруководствопомакросам
2-2 Подробное описание функций
В данном разделе подробно описаны стандартные функции, которые используются для
программирования макросов.
BCD Преобразование значения в формат BCD
Поддержка Система версии 2 или выше
Формат BCD(S)
Функция
Возвращаемое
значение
Пример
Преобразование значения “s” в формат BCD
Диапазон преобразуемых значений: от 0 до 99999999
Если указанная строка символов превышает допустимый диапазон,
происходит переполнение.
В конце текстовой строки размещается “0”.
Значения в формате BCD
$W0 = 1234; ‘Запись значения 1234 в $W0
$W10 = BCD($W0); ‘Запись значения в формате BCD (H1234) в $W10
$W20L = 12345678;
‘Записьзначения 12345678 в $W20…$W21
$W22L = BCD($W20L);
‘Записьзначениявформате BCD (H12345678) в $W22…W23
BIN Преобразование из формата BCD в обычный числовой формат
Поддержка
Формат BIN(S)
Функция
Возвращаемое
значение
Пример
Система версии 2 или выше
Преобразование значения S из формата BCD в обычный числовой формат
Диапазон преобразуемых значений: от H0 до H99999999
Значение в числовом формате
$W0 = H1234; ‘Записьзначениявформате BCD (H1234) в $W0
$W10 = BIN($W0); ‘Запись 1234 в $W10
$W20L = H334455;
‘Записьзначениявформате BCD (H334455) в $W20…$W21
$W22L = BIN($W20L); ‘Запись 334455 в $W22…$W23
2-5
Раздел 2 Функции
Серия NS - Справочное руководство по макросам
BITSET Запись (0/1) одновременно в несколько битов в памяти
программируемоготерминала
Поддержка
Формат BITSET(D, c, n)
Функция
Возвращаемое
значение
Пример - Запись битов 1…10, начиная с $B100 ($B100 … $B109)
Система версии 6.2 или выше
Запись n-го количества состояний c (0/1) в биты памяти ПТ ($B/$HB), начиная
с бита по адресу D.
*Диапазондопустимыхзначенийдля “n”: 0…32767. Отрицательноезначениевоспринимаетсякак 0. Вкачествеадресамогутбытьуказаны $W, $HW и
$SW.
CLOSEPOPW Закрытие всплывающего окна
Поддержка
Формат
Функция
Возвращаемое
значение
Пример CLOSEPOPW(15);‘Закрыть всплывающий экран 15
Система версии 2 или выше
CLOSEPOPW(n)
Закрытие всплывающего окна с указанным номером экрана “n”
Диапазон допустимых значений для “n”: 0…3999. Если всплывающий экран с
указанным номером не существует, операция выполнена не будет.
Нет
2-7
Раздел 2 Функции
Серия NS - Справочное руководство по макросам
CONTINUE Повторение программы
Поддержка Система версии 6 или выше
Формат
Функция
Возвращаемое
значение
Пример
CONTINUE
Возвращение к началу цикла “FOR - NEXT” при выполнении данного цикла и
повторное выполнение цикла “FOR - NEXT”.
Нет
Если $W50I0>30=ИСТИНА, произойдет возврат к началу цикла и программа
цикла будет возобновлена с самого начала.
*Диапазондопустимыхзначенийдля “n”: 0…32767. Отрицательноезначениевоспринимаетсякак 0. Вкачествеадресамогутбытьуказаны $W, $HW и
$SW.
2-8
Раздел 2 Функции
Серия NS - Справочное руководство по макросам
FOR(n), NEXT n; количество повторов
Поддержка Система версии 6 или выше
Формат FOR(n), NEXT n; a LOOP
Функция
Возвращаемое
значение
Пример
Группа операторов, выполняемых циклически указанное количество раз.
Цикл “FOR - NEXT” не может быть вложен в другой цикл “FOR - NEXT”.
(Только одинарный цикл)
Нет
Цикл ”FOR - NEXT” выполняется 10 раз, в операнды $W0~$W9 записывается
GETNUMVAL Возврат записанного и измененного значения
Поддержка Система версии 2 или выше
Формат GETNUMVAL( )
Функция
Возвращаемое
значение
Пример
Получение значения, записываемого или изменяемого с помощью числового
объекта отображения и ввода.
Используйте данную функцию для условий выполнения макроса “Перед
записью числового значения” или “При изменении числового значения”
числового объекта отображения и ввода.
GETPARTS Получение координат прямоугольника объекта
Поддержка Система версии 2 или выше
Формат GETPARTS(n, Left, Top, Right, Bottom)
Функция
Получение координат прямоугольника для объекта с идентификатором “n”.
Координаты левого верхнего и правого нижнего углов прямоугольника
записываются в аргументы (Left,Top) и (Right,Bottom) соответственно.
(Left Top)
Возвращаемое
значение
Пример
(Right, Bottom)
Диапазон значений "n": 0…1023. Если указано другое значение или объект с
указанным идентификатором не существует, возвращается значение -1.
MOVEPARTS Перемещения объекта в области отображения
Поддержка
Формат MOVEPARTS (n,x,y)
Функция
Возвращаемое
значение
Пример
Система версии 2 или выше
Перемещение объекта с идентификатором “n” в точку с указанными
координатами (x, y).
Указываются координаты (x, y) верхнего левого угла перемещаемого
объекта.
Диапазон допустимых значений для “n”: 0...1023. При вводе другого значения
или при отсутствии объекта с указанным идентификатором возвращается
значение –1. Значения “x, y” не ограничены. Однако значения координат x и y
следует указывать таким образом, чтобы объекты оставались в пределах
экрана.
некорректных значениях некоторые или все объекты экрана могут быть
удалены.
0: Выполнено без ошибок
-1: Указанныйобъектнесуществует
MOVEPARTS (3, 150, 200);
Перемещение объекта с идентификатором 3 в позицию (150,200)
Значения следует указывать продуманно, поскольку при
Справка
ЕслидлякнопкиВКЛ/ВЫКЛ, регистровойкнопкииликнопкиуправленияиспользуетсямакрос
“MOVEPARTS” и данные кнопки или данные кнопки с кадром перемещаются, необходимо
выбрать условие выполнения ″по отжатию″. Если выбрано “по нажатию”, тогда состояние
кнопки будет определено как ″нажато″.
Макрос MOVEPARTS нельзя применить для объекта отображения видео.
2-13
Раздел 2 Функции
Серия NS - Справочное руководство по макросам
MOVEPOPW Перемещение всплывающего окна
Поддержка
Формат MOVEPOPW(n,x,y)
Функция
Возвращаемое
значение
Пример
Система версии 2 или выше
Перемещение левой верхней координаты всплывающего окна с указанным
номером экрана “n” в точку с указанными координатами (x, y).
Диапазон допустимых значений для “n”: 0…3999. Если указано другое
значение или экран с указанным номером не существует, возвращается
значение “-1”. Значения “x, y” не ограничены. Однако значения координат x и
y следует указывать таким образом, чтобы объекты оставались в пределах
экрана. При
полное удаление объектов экрана.
0: Выполнено без ошибок
-1: Указанныйэкраннесуществует
$W0=MOVEPOPW(10, 140, 160);
‘Перемещениевсплывающегоэкранасномером 10 в указанную позицию
(140, 160), и возврат значения “0” в $W0.
‘Есливсплывающий экран не отображается, в $W0 возвращается “-1”.
Перемещение всплывающего окна с номером экрана “n” вниз.
Диапазон допустимых значений для “n”: 0…3999. Если указано значение вне
диапазона или экран с указанным номером не существует, возвращается
значение “-1” Значение координаты “y” не ограничено. Однако значение y
следует указывать таким образом, чтобы всплывающее окно оставалось в
пределах экрана. При вводе некорректного значения может произойти
частичное или
0: Выполнено без ошибок
-1: Указанныйэкраннесуществует
$W0=MOVEPOPWDOWN(10, 32);
‘Сдвигвсплывающегоокнасномером 10 на 32 точкивниз,
‘ивозврат “0” в $W0. Есливсплывающийэкраннеотображается,
‘в $W0 возвращается “-1”.
полноеудалениеобъектовэкрана.
2-14
Раздел 2 Функции
Серия NS - Справочное руководство по макросам
MOVEPOPWLEFT Перемещение всплывающего окна влево
Поддержка Система версии 2 или выше
Формат MOVEPOPWLEFT (n, x)
Функция
Возвращаемое
значение
Пример
Перемещение всплывающего окна с номером экрана “n” влево на x точек.
Диапазон допустимых значений для “n”: 0…3999. Если указано значение вне
диапазона или экран с указанным номером не существует, возвращается
значение “-1” Значение координаты “x” не ограничено. Однако значение x
следует указывать таким образом, чтобы всплывающее окно оставалось в
пределах экрана. При вводе некорректного значения может произойти
частичное или полное удаление объектов экрана.
0: Выполнено без ошибок
-1: Указанныйэкраннесуществует
$W0=MOVEPOPWLEFT (10, 32);
‘Сдвигвсплывающегоокнасномером 10 на 32 точкивлевоивозврат “0” в
$W0. Есливсплывающее окно не отображается, в $W0 возвращается значение “-1”.
Перемещение всплывающего окна с номером экрана “n” вправо на x точек.
Диапазон допустимых значений для “n”: 0…3999. Если указано значение вне
диапазона или экран с указанным номером не существует, возвращается
значение “-1”. Значение координаты “x” не ограничено. Однако значение x
следует указывать таким образом, чтобы всплывающее окно оставалось в
пределах экрана. При вводе некорректного значения может произойти
частичное или полное удаление объектов экрана.
0: Выполнено без ошибок
-1: Указанныйэкраннесуществует
‘Сдвигвсплывающегоокнасномером 10 на 32 точкивправоивозврат “0” в
$W0. Есливсплывающее окно не отображается, в $W0 возвращается значение “-1”.
2-15
Раздел 2 Функции
Серия NS - Справочное руководство по макросам
MOVEPOPWUP Перемещение всплывающего окна вверх
Поддержка Система версии 2 или выше
Формат MOVEPOPWUP (n, y)
Функция
Возвращаемое
значение
Пример
Перемещение всплывающего окна с номером экрана “n” на y точек вверх.
Диапазон допустимых значений для “n”: 0…3999. Если указано значение вне
диапазона или экран с указанным номером не существует, возвращается
значение “-1”. Значение координаты “y” не ограничено. Однако значение y
следует указывать таким образом, чтобы всплывающее окно оставалось в
пределах экрана. При вводе некорректного значения может произойти
частичное или полное удаление объектов экрана.
0: Выполнено без ошибок
-1: Указанныйэкраннесуществует
$W0=MOVEPOPWUP (10,32);
‘Сдвигвсплывающегоокнасномером 10 на 32 точкивверхивозврат “0” в
$W0. Есливсплывающее окно не отображается, в $W0 возвращается значение “-1”.
2-16
Раздел 2 Функции
Серия NS - Справочное руководство по макросам
MSGBOX Отображение диалогового окна с сообщением
Поддержка Система версии 2 или выше
Формат MSGBOX (S1, S2, S3)
Функция
Отображение указанного диалогового окна с сообщением.
S1: строкасообщенияЧтобывставить в сообщение признак разрыва строки, выполните следующиедействия.
Выберите Setting – Project Properties (Настройка – Свойствапроекта) в
NS-Designer, чтобыотобразитьдиалоговоеокно Project Property
(Свойствапроекта). Выберитеопцию (установитефлажок) “Recognize
“\n” in the message as a line feed code”, если при использовании макроса
отображения окна сообщения (MSGBOX) сообщения должны
отображаться в виде нескольких строк
разделения строки должна использоваться последовательность “\n”.
С помощью MSGBOX может быть отображено только одно окно сообщения. При попытке отображения
другого окна сообщения с помощью MSGBOX новое окно сообщения не отображается, возвращается
значение “1”.
Предположим, первым выполняется макрос для лампы 1. Изменение значения $B0 приводит к отображению
сообщения для лампы 1. Сообщение для лампы 2 не отображается, в $W1 записывается значение ″1″.
Если в закладке PT системного меню включен (ON) или выключен (OFF) звуковой сигнал (Buzzer Sound) и
выбрана пиктограмма СТОП или ВОСКЛИЦАНИЕ, в этом случае отображение диалогового окна сообщения
сопровождается звуковым
В соответствии с произведенной настройкой отображается следующее
диалоговое окно сообщения
сигналом.
2-18
Раздел 2 Функции
Серия NS - Справочное руководство по макросам
READCF Чтение содержимого (двоичных значений) из указанного файла карты
памяти
Поддержка Система версии 4 или выше
Формат READCF(Mem, Size, File, Dev)
Функция
Возвращаемое
значение
Пример
Чтение содержимого (в двоичном формате) из указанного файла карты
памяти в память ПТ.
Mem: Начальный (″верхний″) адресназначения. ($W, $HW или $SW). Можноуказатьиндекс.
Диапазондопустимыхзначенийдля $W: 0…32767;
для $HW: 0…8191. $B, $HB и $SB указатьнельзя.
Size: Объемчитаемыхданных (единицы: слово)
Размерданныхможноуказатьнепосредственновдвойныхсловах (long)
иликосвенно, используя $W или $HW (используетсяДиапазондопустимыхзначенийдля $W: 0…32767; для $HW:
0…8191. Если заданное значение превышает допустимый диапазон,
возникаетошибкадоступаиотображаетсясообщениеобошибке.
Еслидля Size указанозначение 0 илименьше, в память программируемого терминала будет прочитан указанный объем данных.
Еслиразмерданныхпревышаетзначение, указанноев Size (Size>0),
будетпрочитанобъемданных,
Еслиразмерфайламеньшезначения, указанногов Size (Size>0),
будетпрочитанвесьфайлвтомобъеме, которыйимеется.
File: ИмячитаемогофайлаИмяфайламожетбытьуказанонепосредственно, спомощьютекстовойстроки, либокосвенноспомощью $W или $HW
(используется 2 слова). Чтениепроизводитсяпословно, однакопринечетном количестве байтов в файлечитаемогофайлапрочитаннебудет. (Возвращаетсязначение 0). В качестве имени файла можно ввести до 43 алфавитно- цифровыхсимволов (“0…9”, “A…Z”, “ a…z”, “$”, “_”) включаярасширение.
Dev: Адресуемое устройство. Всегда указывается 0, поскольку адресуемым устройствомвсегда
READHOSTBЧтение битовых данных по указанному адресу
Поддержка
Формат READHOSTB(D, h, ch, addr, r, n)
Функция
Возвращаемое
значение
Пример Станции зарегистрированы под именами Serial A и Serial B:
Система версии 6.2 или выше
Чтение n-го кол-ва битов из станции h и запись в память ПТ ($B/$HB) по
адресу D.
D: Начальныйадресдлязаписиданных ($B0…$B32767, $HB0…$HB8191)
h: Станция (имястанции / номерстанции)
ch: Типадресастанции *1
addr: Начальныйадресвстанции
r: Биты
n: Количествозаписываемыхэлементов (от 1 до 126)
*1: См. Числовые обозначения типов адресавконцеданнойглавы.
Завершение без ошибок: 0x0000
Ошибка: старшие 8 битов (B8…B15): MRES (главный код ответа)
младшие 8 битов (B0…B7) : SRES (дополнительный код ответа)
*Информациюо MRES и SRES смотритев5-2-7 Ошибки связи и способы их
устранения в Руководстве по программированию (Серия NS).
- ЧтениедесятибитовизПЛК, подключенногокстанциисименем=[Serial
B] (последовательный порт B), начиная с адреса DM2000.05, и запись прочитанныхбитовв $HB10…$HB19.
READHOSTB($HB10, [SerialB], 300, 2000, 5, 10);
2-21
Раздел 2 Функции
Серия NS - Справочное руководство по макросам
READHOSTW Чтение слов данных по указанному адресу
Поддержка
Формат READHOSTW(D, h, ch, addr, n)
Функция
Возвращаемое
значение
Пример Станции зарегистрированы под именами Serial A и Serial B:
Система версии 6.2 или выше
Чтение n-го кол-ва слов данных из станции (h) и запись в память ПТ
($W/$HW) поадресу D.
D: Начальныйадресдлязаписиданных ($W0…$W32767, $HW0…$HW8191)
h: Станция (имястанции / номерстанции)
ch: Типадресастанции *1
addr: Начальныйадреснасторонестанции
n: Количествозаписываемыхэлементов (от 1 до 126)
*1: См. Числовые обозначения типов адресавконцеданнойглавы
Завершение без ошибок: 0x0000
Ошибка: старшие 8 битов (B8…B15): MRES (главный код ответа)
младшие 8 битов (B0…B7) : SRES (дополнительный код ответа)
*Информациюо MRES и SRES смотритев5-2-7 Ошибки связи и способы их
устранения в Руководстве по программированию (Серия NS).
- Чтение десяти слов данных из ПЛК, подключенного к станции с
именем=[Serial B] (последовательный порт B), начиная с DM2000, и
запись прочитанных слов в $HW10…$HW19.
READHOSTW($HW10, [SerialB], 300, 2000, 10);
.
2-22
Раздел 2 Функции
Серия NS - Справочное руководство по макросам
RELEASEFOCUS Снятие ″фокуса″ собъекта
Поддержка Система версии 5 или выше
Формат
Функция
Возвращаемое
значение
Пример
RELEASEFOCUS();
Аргументы не используются.
Если на какой-либо числовой или строковый объект отображения и ввода
установлен ″фокус″ (т.е., выделение объекта для ввода), данный макрос
снимет ″фокус″ с объекта.
- Макрос снимет ″фокус″ с объекта, если объект с ″фокусом″ имеется на
текущем отображаемом экране.
- Если ни на один из объектов на текущем отображаемом
не установлен, данный макрос НЕ работает.
- Если ″фокус″ установлен на объект, который располагается на самом
верхнем слайде кадра, с данного объекта также будет снят ″фокус″.
- Если ″фокус″ размещен на объекте накладного экрана, с данного объекта
также будет снят ″фокус″.
Макрос RELEASEFOCUS НЕ срабатывает по следующим условиям
выполнения.
Если значение “S”=“0”, программа макроса прерывается и для
функционального объекта продолжается дальнейшая обработка. Если
введено значение, не равное “0”, программа макроса завершается,
дальнейшая обработка для функционального объекта прекращается.
Нет
RETURN(0); ‘прерывание макроса и продолжение обработки
RETURN(1); ‘прерывание макроса и прекращение обработки
RSTALARMCNT Обнуление количества возникших тревог/событий
Поддержка Система версии 2 или выше
Формат RSTALARMCNT(S)
Функция
Возвращаемое
значение
Пример
Если значение “S”=0, обнуляется количество возникших тревог. Если
значение “S”=1, обнуляется количество возникших событий.
В случае установки ″фокуса″ на объект, указанный самым первым в списке
порядка ввода (Input Order List), введите ”-1”.
- Данный макрос НЕ сработает, если ″фокус″ уже установлен
объект.
- ″Фокус″ НЕ будет установлен, если указанный объект находится на
слайде кадра, не являющемся самым верхним. (При выполнении
макроса отобразится диалоговое окно с сообщением об ошибке
выполнения макроса.)
- Если указанный объект не является числовым или строковым
объектом отображения и ввода, данный макрос НЕ сработает.
- ″Фокус″ не
Макрос SETFOCUS НЕ запускается по следующим условиям выполнения.
SETTIME Изменение показаний внутренних часов программируемого
терминала
Поддержка Система версии 3 или выше
Формат SETTIME(S)
Функция
Возвращаемое
значение
Пример
Значения предварительно записываются по указанному адресу S, а затем
записываются во внутренние часы ПТ. Диапазон допустимых значений для S:
$W0…$W32765 или $HW0…$HW8189. (см. примечание)
Записываемые значения должны быть представлены в формате BCD.
Используется 3 слова, первое из которых находится по указанному адресу.
Примечание: Для указания адреса можно использовать индекс (указатель).
Нет
Установка даты/времени: Декабрь 31, 2002 18:59:20.
Переключение на экран с номером “S”.
Диапазон допустимых значений для “S”: 0…3999. Если указано значение вне
диапазона, происходит ошибка выполнения макроса. Если указан номер
несуществующего экрана, происходит ошибка чтения страницы (экрана).
Нет
2-26
Раздел 2 Функции
Серия NS - Справочное руководство по макросам
SHOWPAGEBCD
Поддержка Система версии 6 или выше
Формат SHOWPAGEBCD(S)
Функция
Возвращаемое
значение
Пример Переключение на экран 10
Переключение к экрану с номером n.
S: номер экрана (H0…H3999)
Переключение на экран с номером “S”.
Диапазон допустимых значений для “S”: H0…H3999. Если значения
превышают допустимый диапазон или не соответствуют формату BCD,
происходит ошибка выполнения макроса. Если указан номер
несуществующего экрана, происходит ошибка чтения страницы (экрана).
‘null’ соответствует “00” в кодировке ASCII и “0000” в кодировке Unicode.
При записи строки в $W32767 необходимо соблюдать осторожность, поскольку символ null
также копируется. Копирование строковых данных и null в $W32767 может быть не выполнено
с помощью STRCPY(W), поскольку включение символа null может привести к выходу за
Копирование строки символов из D в S
При копировании также копируется пустое значение (null).
Нет
STRCPYW ($W0”,ABC”);
‘Размещение “ABC” в $W0 to $W2
$W100=H6400;STRCPY($W110,$W100);
‘Размещение “d” в $W110
STRM2W Преобразование символьной строки из ASCII в Unicode
Поддержка Система версии 2 или выше
Формат STRM2W (D,S)
Функция
Возвращаемое
значение
Пример
Преобразование строки символов, размещенной по адресу “S”, из кодировки
ASCII в кодировку Unicode, и запись результата по адресу “D”.
При копировании также копируется пустое значение (null).
Нет
STRM2W($W0”, ABC”);
‘Преобразование “ABC” в Unicode изаписьв $W0…$W2
2-28
Раздел 2 Функции
Серия NS - Справочное руководство по макросам
STRW2M Преобразование символьной строки из Unicode в ASCII
Поддержка
Формат STRW2M (D,S)
Функция
Возвращаемое
значение
Пример
Система версии 2 или выше
Преобразование строки символов, размещенной по адресу “S”, из кодировки
Unicode в кодировку ASCII, и запись результата по адресу “D”.
При копировании также копируется пустое значение (null).
Нет
STRW2M($W0, “ABC”);
‘Преобразование “ABC” в ASCII изаписьв $W0…$W1.
2-29
Раздел 2 Функции
д
Серия NS - Справочное руководство по макросам
SWAP Перестановка местами старших и младших разрядов по указанному
адресу
Поддержка Система версии 4 или выше
Формат SWAP(S,n)
Функция
Возвращаемое
значение
Пример
Перестановка местами старшего байта и младшего байта для n слов или n
внутренних слов хранения, начиная со слова S.
S: Старшийадресдляперестановкибайтов ($W или $HW). (см. примечание).
n: Количествослов, начинаясадреса S.
Допускаютсяследующиедиапазонызначений:
Принепосредственномуказании “n”: 1 ... 32767
Прикосвенномуказании “n”: $W0 … $W32767
$HW0 … $HW8191
Примечание: Если для указания S используется адрес, может
быть добавлен
указатель (индекс). Диапазон возможных значений для $W: 0…32767; для
$HW: 0…8191.
Нет
SWAP($W100,3);
Перестановка местами старшего и младшего байтов в трех словах, начиная с
$W100.
<Передвыполнением
Перестановкастаршегои
SWAP>
мла
шего байто в
<Послевыполнения
SWAP>
$W100
$W101
$W102
.
.
.
1 2 3 4
5 6 7 8
9 0 1 2
$W100
$W101
$W102
.
.
.
3 4 1 2
7 8 5 6
1 2 9 0
2-30
Раздел 2 Функции
Серия NS - Справочное руководство по макросам
SWAPL Перестановка местами старшей и младшей пар байтов для указанного
двойногослова.
Поддержка Система версии 4 или выше
Формат SWAPL(S,n)
Функция
Возвращаемое
значение
Пример SWAPL ($W100, 3);
Перестановка местами старшего и младшего слов (пар байтов) для трех
Перестановка старшей группы байтов (2 байта) и младшей группы байтов (2
байта) для n двойных слов или n внутренних слов хранения, начиная с S.
S: Старший адрес для перестановки пар байтов ($W или $HW) (см.
примечание).
(указатель). Диапазондопустимыхзначенийдля $W: 0…32767; для $HW:
0…8191.
Нет
двойных слов, начиная с $W100.
<Довыполнения SWAPL>
$W100
$W101
$W102
$W103
$W104
$W105
1 2 3 4
5 6 7 8
9 0 1 2
3 4 5 6
7 8 9 0
1 2 3 4
Перестановка
местами
старшего и
младшего
слов
<Послевыполнения
SWAPL>
$W100
$W101
$W102
$W103
$W104
$W105
5 6 7 8
1 2 3 4
3 4 5 6
9 0 1 2
1 2 3 4
7 8 9 0
2-31
Раздел 2 Функции
Серия NS - Справочное руководство по макросам
WRITECF Сохранение содержимого памяти программируемого терминала
в карту памяти (CF)
Поддержка Система версии 3 или выше
Формат WRITECF (Mem, Size, File, Dev)
Функция
Возвращаемое
значение
Пример
Сохранение содержимого памяти ПТ в указанный файл карты памяти.
Содержимое, хранящееся по указанному адресу, записывается в файл в
двоичном формате.
Mem: Начальный ("верхний") адрес данных источника ($W, $HW или $SW)
Может быть указан индекс.
Диапазондопустимыхзначенийдля $W: 0…32767; для $HW: 0…
либо косвенно с помощью $W или $HW (используется 2 слова)
Диапазон допустимых значений для $W: 0…32767; для $HW: 0…8191. Если
указанное значение превышает допустимый диапазон, возникает
ошибкадоступаиотображаетсясообщениеобошибке.
File: Имя файла назначения Имяфайламожноуказатьнепосредственноспомощьюсимвольнойстроки, либокосвенносЕслиуказанноеимяфайла “F” ужесуществует, файл с данным именем будетперезаписанбезотображения сообщения подтверждения
(возвращаетсязначение 0 (выполнение без ошибок)). Для имени файла можетбытьвведенодо 43 алфавитно-цифровых символов
(“0…9”, “A…Z”, “a…z”, “$”, “_”), включая расширение.
Dev: Всегда указывается 0, поскольку устройством назначения всегда являетсякартапамяти.
Чтение содержимого n битов/n каналов из “S” и запись по указанному адресу
“D” станции. Максимальное количество записываемых точек.
Бит
126 битов
Слово
126 каналов
Если указанное значение “n” превышает допустимый диапазон, происходит
ошибка связи или ошибка выполнения макроса. Максимальное количество
записываемых точек зависит от типа ПЛК.
WRITEHOSTB Запись битовых данных по указанному адресу
Поддержка
Формат WRITEHOSTB(h, ch, addr, r, S, n)
Функция
Возвращаемое
значение
Пример Станции зарегистрированы под именами Serial A и Serial B:
Система версии 6.2 или выше
Чтение содержимого n битов из памяти ПТ ($B/$HB), начиная с S, и запись в
указанную станцию h.
h: Станция (имястанции / номерстанции)
ch: Типадресастанции *1
addr: Начальныйадреснасторонестанции
r: Биты
S: Начальныйадрес источника ($B0…$B32767, $HB0…$HB8191)
n: Количествозаписываемыхэлементов (от 1 до 126)
* 1: См. Числовые обозначения типов адресав конце данной главы.
Завершение без ошибок: 0x0000
Ошибка: старшие 8 битов (B8…B15): MRES (главный код ответа)
- Запись битов хранения $HB10…$HB19 в ПЛК, подключенный к станции с
именем=[Serial B] (последовательный порт B), начиная с DM1000.05.
WRITEHOSTB([SerialB], 300, 1000, 5, $HB10,10);
2-34
Раздел 2 Функции
Серия NS - Справочное руководство по макросам
WRITEHOSTW Записьсловпоуказанномуадресу
Поддержка
Формат WRITEHOSTW(h, ch, addr, r, S, n)
Функция
Возвращаемое
значение
Пример Станции зарегистрированы под именами Serial A и Serial B:
Система версии 6.2 или выше
Чтение содержимого n слов из памяти ПТ ($W/$HW), начиная с S, и запись в
указанную станцию h.
h: Станция (имястанции / номерстанции)
ch: Типадресастанции *1
addr: Начальныйадреснасторонестанции
S: Начальныйадрес источника ($W0…$W32767, $HW0…$HW8191)
n: Количествозаписываемыхэлементов (от 1 до 126)
* 1: См. Числовые обозначения типов адресав конце данной главы.
Завершение без ошибок: 0x0000
Ошибка: старшие 8 битов (B8…B15): MRES (главный код ответа)
- Запись слов хранения $HW10…$HW19 в ПЛК, подключенный к станции с
именем =[Serial B] (последовательный порт B), начиная с DM1000.
WRITEHOSTW([SerialB], 300, 1000, $HW10, 10);
2-35
Раздел 2 Функции
Серия NS - Справочное руководство по макросам
Числовые обозначения типа адреса
Тип адреса
Числовое обозначение типа
BCD Двоичное
Память прогр. терм. - $B 0 0
Память прогр. терм. - $W 1 1
Память прогр. терм. - $SB 2 2
Память прогр. терм. - $SW 3 3
Память прогр. терм. - $HB 4 4
Память прогр. терм. - $HW 5 5
Область данных (CIO) 100 64
Область хранения (HR) 101 65
Дополнительная область (AR) 102 66
Область связей (LR) 103 67
Рабочая область (WR) 104 68
Таймер (TIM)
Возможно только для READHOSTW /
WRITEHOSTW
Счетчик (CNT)
Возможно только для READHOSTW /
WRITEHOSTW
200 C8
201 C9
Область памяти данных (DM) 300 12C
Расширенная память данных (EM) 301 12D
Расширенная память данных 0 (EM0) 302 12E
Расширенная память данных 1 (EM1) 303 12F
Расширенная память данных 2 (EM2) 304 130
Расширенная память данных 3 (EM3) 305 131
Расширенная память данных 4 (EM4) 306 132
Расширенная память данных 5 (EM5) 307 133
Расширенная память данных 6 (EM6) 308 134
Расширенная память данных 7 (EM7) 309 135
Расширенная память данных 8 (EM8) 310 136
Расширенная память данных 9 (EM9) 311 137
Расширенная память данных A (EMA) 312 138
Расширенная память данных B (EMB) 313 139
Расширенная память данных C (EMC) 314 13A
адреса
2-36
Раздел 3 Список сообщений об ошибках
Серия NS - Справочное руководство по макросам
Раздел 3 Список сообщений об ошибках
В данном разделе описаны сообщения об ошибках, которые отображаются в окне списка
ошибок при назначении макроса проекту, экрану и функциональному объекту.
В следующей таблице перечислены сообщения об ошибках, которые отображаются в окне списка
ошибок при выполнении проверки на ошибки.
Сообщение об ошибке Описание Пример
Format error
(Ошибкаформата)
Variable name error
(Ошибкаименипеременной)
( is missing ["(" отсутствует] В функции или конструкции
No. of ( ) does not agree (Кол-
во открывающих и
закрывающих скобок не
совпадает)
Position of , is incorrect
("," размещенанекорректно)
Function argument error
(Ошибкааргументафункции)
= Command error
(Ошибкакоманды)
End of program is incomplete
(Программанезавершена)
If sentence error
(Ошибкавыражения "If" )
, or ; is missing
(Отсутствует "," или ";")
(Ошибкавыражения FOR)
Программа содержит
неинтерпретируемый элемент, не
являющийся именем переменной,
названием функции или элементом
синтаксиса. Проверьте правильность
введенной информации.
Для переменной выбрано
недопустимое имя
Программа содержит некорректно
установленный символ запятой ",".
В одной из функций программы указан
некорректный аргумент. Например, для
функции, оперирующей только битами,
выбрана память слов.
Проверьте аргумент, используя
информацию в Разделе 2 “Описание
функций – таблица соответствия
функции и аргумента“.
Программа содержит недопустимое
выражение присвоения, например,
3=10 или $B0=3.
Введенная программа не завершена $W10=10+;
Программа содержит некорректное
выражение (конструкцию) IF, ELSE или
ENDIF
Отсутствует символ запятой "," после
аргумента функции. Отсутствует
символ разделения строк программы
";".
В выражении FOR(n) указано число вне
диапазона 0…32767, либо в цикл FOR
вложен другой цикл (вложение циклов
не допускается).
$W0=ABC+100;
$B0:3=1;
IF$W0==1)
IF($W0=1)!($W1=0
IF($W0==1),($W1==0)
$W0=BCD($B0);
$W0=”ABCDE”
IF($W0==1)!($W1==0)
$W10=1;
ELSE
$W10=10;
$W10=1
FOR(50000) FOR Statement Error
FOR(3)
$W0=$W0+1;
FOR(5)
$W10=$10+10;
NEXT;
NEXT;
3-2
Авторизованный дистрибьютор:
Cat. No. V075-RU2-04Примечание: Технические характеристики могут быть изменены без предварительного уведомления
Loading...
+ hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.