Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Yazyk_AS_programmirovania.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
4.69 Mб
Скачать

9.4 Строковые функции

$CHR Выдает ASCII символы указанного значения.

$SPACE Выдает заданное количество пробелов.

$LEFT Выдает левосторонние символы в строке.

$RIGHT Выдает правосторонние символы в строке.

$MID Выдает заданное количество символов.

$DECODE Выделяет символы, разделенные заданными символами.

$ENCODE Выдает строку, созданную при помощи данных печати.

$ERRORS Выдает сообщение об ошибке с специальным кодом ошибки.

$ERROR Выдает сообщение об ошибке с отрицательным специальным кодом ошибки.

$DATE Выдает системную дату.

$TIME Выдает системное время в строке.

$CHR (real value)

Назначение

Выдает ASCII цепочку символов соответственно определенным ASCII значениям.

Параметр

Реальное значение или числовое выражение.

Задает значение для того чтобы изменить его в ASCII код.

Допустимые пределы 0 – 255.

Пример

$SPACE (number of blanks)

Назначение

Выдает определенное число пробелов

Параметр

Количество пробелов

Задает число пробелов. 0 или положительное число

Пример

На экране появится надпись “a dog”.

$LEFT (string, number of characters)

Назначение

Выдает определенное число символов, начиная с крайнего левого символа заданной цепочки.

Параметры

1. Строка

Символьная цепочка, строчная переменная или строчное выражение

2. Число символов

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

Пример

$RIGHT (string, number of characters)

Назначение

Выдает определенное число символов, начиная с крайнего правого символа заданной цепочки.

Параметры

1. Строка

Символьная цепочка, строчная переменная или строчное выражение

2. Число символов

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

Выдает определенное число символов, начиная с крайнего левого символа заданной цепочки.

Пример

$MID (string, real value, number of characters)

Назначение

Выдает заданное число символов из заданной строки.

Параметры

1. Строка

Символьная цепочка, строчная переменная или строчное выражение

2. Действительная величина

Задает позицию в строке, начиная с которой производится вывод информации.

3. Число символов

Задает число символов для извлечения.

Пояснение

Если начальная позиция не задана или задана 1 или меньшим числом, извлечение символов происходит с первого символа строки. Если начальная позиция задана нулем или отрицательным числом, или число символов больше символов строки, выводится пробел. Если число символов не задано, или когда оно больше числа символов строки, извлечение начинается с позиции (real value) и до конца строки.

Пример

Функция $MID выводит “cd” символы (два символа, начиная с третьего из строки) из строки “abcdef”, затем результат присваивается строковой переменной $substring

$DECODE (string variable, separator character, mode)

Назначение

Выдает строку, отделенную «разделительным символом».

Параметры

1. Строчная переменная

Определяет строку, из которой берутся символы. Символы, извлеченные при помощи этой функции, перемещаются из этой строки.

2. Разделительный символ

Определяет символ, который читается как разделительный знак. Любой символ в строке может быть определен как разделительный знак.

3. Режим

Определяет реальное число для действий, осуществляемых этой функцией.

Если число отрицательное или 0, или не задано, символы начинаются от первого символа в строчной переменной до разделительного знака. Выделенная строка перемещается из строчной переменной. Если число положительное, первый разделительный знак, который появляется в строке, выделяется. Выделенный разделительный знак перемещается из значения строчной переменной. Если более одного разделительного знака, символы появляются в строке постепенно, все разделительные знаки выделяются и перемещаются из строчной переменной.

Пояснение

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

Строка, выделенная как результат функции (строка, удаленная из первоначальной строки) могла быть или символами перед разделителем или разделителем непосредственно.

(ПРИМЕЧАНИЕ)

Эта функция изменяет первоначальную строку, в то время, когда она выделяет символы.

Символ разделителя не зависит от регистра.

Пример

В примере, показанном ниже, числа, разделенные запятыми или пробелами, перемещаются из строки “$input”. Первая инструкция в DO структуре перемещает от первых установленных символов $input и заменяет их затем в переменной “$temp”. Следующая функция VAL изменяет строку, увеличенную в предыдущей инструкции в реальное значение. Реальное значение затем заменяется в массиве переменных “value”. Затем программное выполнение переходит к следующей функции $DECODE и разыскивает следующий разделительный знак.

Если значения $input выглядят, как следующие

Как результат выполнения программы, значение строковой переменной $input становятся “” (или пробелом).

$ENCODE (print data, print data, ….)

Назначение

Выдает строку, созданную из данных печати, определенных в параметрах. Строка, созданная таким образом, аналогична, как и при выполнении команды TYPE.

Параметр

Данные печати

Выбирается один или более. Разделяются данные запятой, когда задано больше одного.

    1. символьная строка

    2. реальное значение выражения (значение вычисляется и отображается)

    3. Информация форматирования (управляет форматом вывода сообщения)

Пояснение

Эта функция разрешает создание строк внутри программы, используя те же самые данные, что и в команде TYPE. В отличие от TYPE, $ENCODE функция не отображает созданные строки, но вместо этого использует результаты в программе как величины.

Следующие коды используются, чтобы задать выходной формат для числовых выражений. Используется один и тот же формат, до последующего изменения. В любом формате, если значение гораздо больше, чем может быть отображено, в строке появляются (*).

/D – используется по умолчанию. Это то же самое, что задание формата /G15.8, за исключением того, что нули, следующие за числовыми выражениями и все пробелы между числовыми значениями удаляются.

/Em.n – выражает числовое значение в экспоненциальном виде (в виде мантиссы и порядка т.е. –1.234Е+02). “m” описывает общее число символов, показанных на терминале, “n” – число десятичных разрядов. “m” должно быть больше “n” на шесть или более и меньше чем 32.

/Fm.n – выражает числовое значение с фиксированной точкой (т.е. –1.234). “m” – описывает общее количество символов, “n” – число десятичных разрядов.

/Gm.n – если значение больше чем 0.01 и может быть выражено в формате Fm.n внутри “m” цифр, величина выражается в данном формате. Иначе величина выражается в Em.n формате.

/Hn – значение выражается шестнадцатиричным числом в “n” цифровом поле.

/In – значение выражается десятичным числом в “n” цифровом поле.

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

/Cn – вставляет перевод строки n раз в месте, где этот код введен в начале или после данных печати. Если этот код расположен внутри данных печати, n-1 пустых строк вставляются.

/S – линия не вводится

/Xn – вставляется n пробелов.

/Jn – выражается величина в шестнадцатиричном виде в n цифровом поле. Ноли используются в месте пробелов (опция).

/Kn - выражается величина в десятичном виде в n цифровом поле. Ноли используются в месте пробелов (опция).

/L – это то же самое что /D за исключением, что все пробелы перемещаются с этим кодом (опция).

Пример

Величина действительной переменной “count” преобразуется в строку в формате, заданном /F6.2 и добавляется в конце строки “$output”. Затем комбинированная строка заменяется назад в строковой переменной “$output”.

$ERRORS (error code)

Назначение

Выдает сообщение об ошибке с определенным кодом ошибки. Код ошибки выдается, как символьная цепочка с сообщением об ошибке.

Параметр

Код ошибки

Определяет код ошибки в следующем формате: Pxxxx, Wxxxx, Exxxx, Dxxxx.

$ERROR (error number)

Назначение

Выдает сообщение об ошибке с определенным кодом ошибки.

Параметр

Номер ошибки

Задает номер ошибки отрицательным числом. Коды ошибки преобразуются в отрицательные номера ошибок.

$DATE (date form)

Назначение

Выдает системную дату в определенном строчном формате.

Параметр

Форма даты

Задается номерами 1 – 3, данные формата для вывода.

1 - $DATE(1) mm/dd/yyyy

Если дата 10 июля 2002 года, значение выводится в виде 07/10/2002

2 - $DATE(2) dd/mmm/yyyy

Значение выводится в виде 10/JUL/2002

3 - $DATE(3) yyyy/mm/dd

Значение выводится в виде 2002/07/10

$TIME

Назначение

Выводит системное время в следующем формате строки

hh:mm:ss

Пример

18:27:50

Часы выражаются в 24 часах

10. ПРОГРАММЫ УПРАВЛЕНИЯ ПРОИЗВОДСТВЕННЫМ ПРОЦЕССОМ

Эта глава описывает мониторные команды и программные инструкции, используемые с программами управления производственным процессом (РС программами). В скобках справа М – указывает мониторную команду, Р – программную инструкцию. Поэтому и М и Р могут быть использованы либо как команды, либо как инструкции.

PCSTATUS Отображает статус определенной РС программы. (M)

PCEXECUTE Выполняет заданную РС программу. (M, P)

PCABORT Мгновенно останавливает выполнение заданной РС программы.

(M, P)

PCEND Заканчивает выполнение заданной РС программы. (M, P)

PCCONTINUE Продолжает выполнение прерванной PC программы. (M)

PCKILL Инициализирует стек выполнения PC программ. (M)

PCSTEP Выполняет один шаг PC программы (M)

PCSCAN Задает время обработки PC программы (опция) (P)

Пример

Ключевое слово параметр

Параметр, выделенный цветом можно опустить.

Всегда вставляйте пробел между ключевым словом и параметром

PCSTATUS PC program number:

Назначение

Отображает состояние PC программ (мониторная команда) (М)

Параметр

Номер PC программы

Выбирает номер программы для отображения. Допустимые границы от 1 до 5. Если параметр не задан, устанавливается 1.

Пояснение

Состояние PC программ отображается в следующем формате.

(1) Состояние программы описывает следующее:

Программа не выполняется. Программа, в настоящее время, не выполняется.

Программа выполняется. Программа, в настоящее время выполняется.

Программа ожидает. Программа выполняется, но ожидает наступления условия, заданного WAIT командой.

(2) Завершенные циклы.

Отображает число выполненных циклов.

(3) Оставшиеся циклы.

Отображает количество циклов до сих пор не выполненных. Если выполнение циклов задано отрицательным числом (-1) в PCEXECUTE команде, на дисплее будет надпись “infinite”

(4) Программное имя

(5) Шаг

Отображает номер выполняемого шага и выполняемую в настоящее время инструкцию.

PCEXECUTE PC program number: program name, execution cycle, step number

Назначение

Выполняет PC программы (М, Р)

Параметры

1. Номер PC программы

Задает номер программы для выполнения. Допустимые пределы 1 – 5. Если параметр не задан, устанавливается 1. Вплоть до 5 программ могут быть выполнены в одно и то же время.

2. Имя программы

Задает имя программы для выполнения в номере PC программы. Если параметр не задан, выполняется последняя программа, заданная этой инструкцией.

3. Выполнение цикла

Задает, сколько раз выполняется PC программа. Если параметр не задан, выполняется один раз. Если задана –1 выполняется бесконечное число раз.

4. Номер шага

Задает шаг, с которого начинается программное выполнение. Если параметр не задан, выполнение начинается с первого шага программы.

Пояснение

Эта команда идентична мониторной команде EXECUTE, за исключением того, что она запускает выполнение PC программ вместо управляющих программ робота. Отображаемое мерцание звездочки «*» в конце имени, говорит о том, что выполняется PC программа.

PCEXECUTE может быть использована, как мониторная команда, так и как программная инструкция.

Пример

Программа “control” выполняется непрерывно до тех пор, пока не выполнится команда PCABORT, или инструкции PAUSE, HALT изнутри программы, или пока не произойдет ошибка.