Библиотека Standard AgavaSCADA/AgavaPLC: различия между версиями

Материал из docs.kb-agava.ru
Перейти к навигации Перейти к поиску
Строка 262: Строка 262:
 
====Функции для работы со строками====
 
====Функции для работы со строками====
 
  '''<big>string EncodeMD5(string strText)</big>'''
 
  '''<big>string EncodeMD5(string strText)</big>'''
'''Назначение''': Кодирование строки в MD5 хэш
+
 
'''Возвращаемое значение''': MD5 хэш параметра
+
* '''Назначение''': Кодирование строки в MD5 хэш
'''Аргументы''': string strText - исходная строка
+
* '''Возвращаемое значение''': MD5 хэш параметра
'''Примечания''': функция доступна с версии <code>AS 1.2.34+</code>
+
* '''Аргументы''': string strText - исходная строка
 +
* '''Примечания''': функция доступна с версии <code>AS 1.2.34+</code>
  
 
====Другие функции====
 
====Другие функции====

Версия 10:53, 11 августа 2026

1 Standard - стандартная библиотека

1.1 Математические и тригонометрические функции

1.1.1 Преобразование IEEE битов

Функция Действие Аргументы
float fpFromIEEE(uint bits) Преобразует 32-битное IEEE-754 представление в число float bits (uint) - битовое представление
uint fpToIEEE(float value) Преобразует число float в 32-битное IEEE-754 представление value (float) - исходное число
double fpFromIEEE(uint64 bits) Преобразует 64-битное IEEE-754 представление в число double bits (uint64) - битовое представление
uint64 fpToIEEE(double value) Преобразует число double в 64-битное IEEE-754 представление value (double) - исходное число

1.1.2 Сравнение с допуском

Функция Действие Аргументы
bool closeTo(float a, float b, float epsilon = 0.00001f) Сравнивает два числа float с заданной погрешностью a (float) - первое число

b (float) - второе число epsilon (float, опционально) - погрешность (по умолчанию 0.00001)

bool closeTo(double a, double b, double epsilon = 0.0000000001) Сравнивает два числа double с заданной погрешностью a (double) - первое число

b (double) - второе число epsilon (double, опционально) - погрешность (по умолчанию 1e-10)

1.1.3 Тригонометрические функции

Функция Действие Аргументы
float cos(float angle) Вычисляет косинус угла angle (float) - угол в радианах
float sin(float angle) Вычисляет синус угла angle (float) - угол в радианах
float tan(float angle) Вычисляет тангенс угла angle (float) - угол в радианах
float acos(float value) Вычисляет арккосинус (обратный косинус) value (float) - значение в диапазоне [-1, 1]
float asin(float value) Вычисляет арксинус (обратный синус) value (float) - значение в диапазоне [-1, 1]
float atan(float value) Вычисляет арктангенс (обратный тангенс) value (float) - значение
float atan2(float y, float x) Вычисляет арктангенс двух переменных y (float) - координата Y

x (float) - координата X

1.1.4 Гиперболические функции

Функция Действие Аргументы
float cosh(float x) Вычисляет гиперболический косинус x (float) - значение
float sinh(float x) Вычисляет гиперболический синус x (float) - значение
float tanh(float x) Вычисляет гиперболический тангенс x (float) - значение

1.1.5 Экспоненциальные и логарифмические функции

Функция Действие Аргументы
float log(float x) Вычисляет натуральный логарифм (по основанию e) x (float) - значение > 0
float log10(float x) Вычисляет десятичный логарифм (по основанию 10) x (float) - значение > 0

1.1.6 Степенные функции

Функция Действие Аргументы
float pow(float base, float exponent) Возводит число в степень base (float) - основание

exponent (float) - показатель степени

float sqrt(float x) Вычисляет квадратный корень x (float) - неотрицательное значение

1.1.7 Функции округления и остатка

Функция Действие Аргументы
float ceil(float x) Округляет вверх до ближайшего целого x (float) - значение
float abs(float x) Вычисляет абсолютное значение (модуль) x (float) - значение
float floor(float x) Округляет вниз до ближайшего целого x (float) - значение
float fraction(float x) Выделяет дробную часть числа x (float) - значение

1.2 Специализированные функции

Специализированные функции среды разработки, доступные для использования в скриптах, приведены в таблицах ниже.

1.2.1 Функции для работы с узлами

Определение функции Описание
float GetNodeValueAsFloat(string strNodePath) Получить значение узла в виде float по заданному пути
void SetNodeValueAsFloat(string strNodePath, float fValue) Установить значение узла в float по заданному пути
int GetNodeValueAsInt(string strNodePath) Получить значение узла в виде int по заданному пути
void SetNodeValueAsInt(string strNodePath, int iValue) Установить значение узла в int по заданному пути
string GetNodeValueAsString(string strNodePath) Получить значение узла в виде string по заданному пути
void SetNodeValueAsString(string strNodePath, string strValue) Установить значение узла в виде string по заданному пути
bool GetNodeValueAsBool(string strNodePath) Получить значение узла в виде bool по заданному пути
void SetNodeValueAsBool(string strNodePath, bool bValue) Установить значение узла в виде bool по заданному пути
bool NodeValueIsError(string strNodePath) Проверка значения узла на ошибку
void StartNode(string strNodePath) Запуск узла по заданному пути
void StopNode(string strNodePath) Остановка узла по заданному пути

1.2.2 Функции для работы с окнами

Определение функции Описание
void CloseWindow(string strNodePath, int iDisplay) Закрыть окно по заданному пути на дисплее с номером iDisplay
void ShowWindow(string strNodePath, int iDisplay) Отобразить окно по заданному пути на дисплее с номером iDisplay.

Координаты - абсолютные, установленные в свойствах окна.

int LoadComposition(string strWindowPath, string strCompositionPath, int iDisplay) Загрузить композицию strCompositionPath в окно strWindowPath на дисплее с номером iDisplay.

AS 1.6.25+

1.2.3 Функции для работы с временем

Определение функции Описание
int GetCurrentTime() Получение текущего времени в UNIX формате (количество секунд с 01 января 1970 года)
uint64 GetCurrentTimeMs() Получение текущего времени в UNIX формате (количество миллисекунд с 01 января 1970 года) (AS 1.2.55+, AS 1.6.1+)
int GetLocalTime() Получение текущего времени в UNIX формате (количество секунд с 01 января 1970 года) с учетом часового пояса
int GetHours(int iTime) Получение текущего часа из времени в формате UNIX
int GetMinutes(int iTime) Получение текущих минут из времени в формате UNIX
int GetSeconds(int iTime) Получение текущих секунд из времени в формате UNIX

1.2.4 Функции для работы с событиями

int StoreMessage(int iMessageLevel, string strMessage)
Назначение Генерация информационного события (типа "сообщение"). Событие помещается в группу "Системные".
Возвращаемое значение 0 - успешно, иначе код ошибки
Аргументы int iMessageLevel - уровень сообщения (1-наивысший): 1=FATAL, 2=ERROR, 3=WARNING, 4=NOTICE, 5=INFO, 6=TRACE, 7=DEBUG
string strMessage - текст сообщения
Примечания функция доступна с версии AS 1.2.34+
int StoreMessage(int iMessageLevel, string strMessage, string strGroup)
Назначение Генерация информационного события (типа "сообщение"). Событие помещается в указанную при вызове группу.
Возвращаемое значение 0 - успешно, иначе код ошибки
Аргументы int iMessageLevel - уровень сообщения (1-наивысший): 1=FATAL, 2=ERROR, 3=WARNING, 4=NOTICE, 5=INFO, 6=TRACE, 7=DEBUG
string strMessage - текст сообщения
string strGroup - имя группы, в которую должно помещаться событие.
Примечания функция доступна с версии AS 1.6.20+

1.2.5 Функции для работы со строками

string EncodeMD5(string strText)
  • Назначение: Кодирование строки в MD5 хэш
  • Возвращаемое значение: MD5 хэш параметра
  • Аргументы: string strText - исходная строка
  • Примечания: функция доступна с версии AS 1.2.34+

1.2.6 Другие функции

Проверка на nan.

bool isnan(double)

Запуск процесса в операционной системе.

int LaunchProcess(string process)

Запуск производится в блокирующем режиме, то есть возврат из функции осуществляется по завершению процесса.