Исходный код вики Функции для разработки фоновых макросов
Версия 22.1 от knetyaga на 2022/02/15 14:11
Последние авторы
| author | version | line-number | content |
|---|---|---|---|
| 1 | === === | ||
| 2 | |||
| 3 | {{children style="h4"/}} | ||
| 4 | |||
| 5 | === bool IsGCodeRunning () === | ||
| 6 | |||
| 7 | Позволяет проверить, находится ли PUMOTIX в режиме выполнения G-кода. | ||
| 8 | |||
| 9 | Возвращаемое значение: | ||
| 10 | |||
| 11 | * true – если PUMOTIX находится в режиме выполнения G-кода; | ||
| 12 | |||
| 13 | === bool IsMDIRunning () === | ||
| 14 | |||
| 15 | Позволяет проверить, находится ли PUMOTIX в режиме выполнения команды ручного ввода. | ||
| 16 | |||
| 17 | Возвращаемое значение: | ||
| 18 | |||
| 19 | * true – если PUMOTIX находится в режиме выполнения команды ручного ввода; | ||
| 20 | |||
| 21 | === bool IsRunning () === | ||
| 22 | |||
| 23 | Позволяет проверить, находится ли PUMOTIX в режиме выполнения G-кода или команды ручного ввода. | ||
| 24 | |||
| 25 | Возвращаемое значение: | ||
| 26 | |||
| 27 | * true – если активен любой из двух режимов IsGCodeRunning() или IsMDIRunning(); | ||
| 28 | |||
| 29 | === bool IsIdle () === | ||
| 30 | |||
| 31 | Позволяет проверить, находится ли PUMOTIX в режиме ожидания (состояние Вкл кнопки включения). | ||
| 32 | |||
| 33 | Возвращаемое значение: | ||
| 34 | |||
| 35 | * true – если PUMOTIX находится в режиме ожидания; | ||
| 36 | |||
| 37 | === bool IsEStop () === | ||
| 38 | |||
| 39 | Позволяет проверить, находится ли PUMOTIX в режиме EStop (состояние Выкл кнопки включения). | ||
| 40 | |||
| 41 | Возвращаемое значение: | ||
| 42 | |||
| 43 | * true – если PUMOTIX находится в режиме EStop. | ||
| 44 | |||
| 45 | === void FloodEnable () === | ||
| 46 | |||
| 47 | Включение подачи охлаждающей жидкости поливом. | ||
| 48 | |||
| 49 | === void FloodDisable () === | ||
| 50 | |||
| 51 | Выключение подачи охлаждающей жидкости поливом. | ||
| 52 | |||
| 53 | === void MistEnable () === | ||
| 54 | |||
| 55 | Включение подачи охлаждающей жидкости распылением. | ||
| 56 | |||
| 57 | === void MistDisable () === | ||
| 58 | |||
| 59 | Выключение подачи охлаждающей жидкости распылением. | ||
| 60 | |||
| 61 | === void Sleep (number milliseconds) === | ||
| 62 | |||
| 63 | Ожидание в течение указанного количества миллисекунд. | ||
| 64 | |||
| 65 | Параметры: | ||
| 66 | |||
| 67 | * number milliseconds – количество миллисекунд, в течение которых выполнение фонового макроса будет приостановлено. | ||
| 68 | |||
| 69 | === void DisplayMessage (string message) === | ||
| 70 | |||
| 71 | Отображение в пользовательском интерфейсе сообщения от фонового макроса. Для корректного отображения символов национальных алфавитов файл макроса должен быть сохранён в кодировке UTF-8. | ||
| 72 | |||
| 73 | Параметры: | ||
| 74 | |||
| 75 | * string message – текст сообщения, которое должно быть показано пользователю. | ||
| 76 | |||
| 77 | === void Stop () === | ||
| 78 | |||
| 79 | Остановка выполнения G-кода. | ||
| 80 | |||
| 81 | === void EStop () === | ||
| 82 | |||
| 83 | Экстренная остановка выполнения G-кода и перевод системы в режим Выкл. | ||
| 84 | |||
| 85 | === void SetUserVariable (number index, number value) === | ||
| 86 | |||
| 87 | Установка значения пользовательской переменной. Данное значение может быть прочитано при выполнении другого макроса, в том числе после перезапуска PUMOTIX. | ||
| 88 | |||
| 89 | Параметры: | ||
| 90 | |||
| 91 | * number index – номер переменной, целое число от 0 до 99; | ||
| 92 | * number value – значение пользовательской переменной (вещественное число), которое необходимо установить. | ||
| 93 | |||
| 94 | === number GetUserVariable (number index) === | ||
| 95 | |||
| 96 | Получение значения пользовательской переменной. | ||
| 97 | |||
| 98 | Параметры: | ||
| 99 | |||
| 100 | * number index – номер переменной, целое число от 0 до 99. | ||
| 101 | |||
| 102 | Возвращаемое значение: | ||
| 103 | |||
| 104 | * текущее значение пользовательской переменной (вещественное число). | ||
| 105 | |||
| 106 | === string str (number value) === | ||
| 107 | |||
| 108 | Преобразование вещественного числа в строку. | ||
| 109 | |||
| 110 | Язык Lua поддерживает неявное преобразование числа в строку, но по умолчанию для очень маленького вещественного числа результат преобразования может иметь экспоненциальный формат, что не позволяет использовать строку как часть строки G-кода. Для удобства можно использовать функцию str, которая гарантирует, что число будет иметь десятичное представление. | ||
| 111 | |||
| 112 | Параметры: | ||
| 113 | |||
| 114 | * number value – вещественное число, которое необходимо преобразовать. | ||
| 115 | |||
| 116 | Возвращаемое значение: | ||
| 117 | |||
| 118 | * строковое представление заданного числа. | ||
| 119 | |||
| 120 | === number GetSystemTickCount () === | ||
| 121 | |||
| 122 | Получение количества миллисекунд, прошедшего с момента запуска операционной системы. Может использоваться для замера интервалов времени. Для получения текущих календарных даты и времени в UnixTime необходимо использовать стандартную функцию Lua (% style="color: rgb(36,39,41);" %)**os.time()**. | ||
| 123 | |||
| 124 | Возвращаемое значение: | ||
| 125 | |||
| 126 | * количество миллисекунд, прошедшее с момента запуска операционной системы. | ||
| 127 | |||
| 128 | === bool Is_THC_Mode () === | ||
| 129 | |||
| 130 | Позволяет проверить, находится ли PUMOTIX в режиме плазменной резки. | ||
| 131 | |||
| 132 | Возвращаемое значение: | ||
| 133 | |||
| 134 | * true – если PUMOTIX находится в режиме плазменной резки; | ||
| 135 | * false – если активен другой режим. | ||
| 136 | |||
| 137 | === number GetCurrentVoltage () === | ||
| 138 | |||
| 139 | Получение текущего значения напряжения в режиме плазменной резки. | ||
| 140 | |||
| 141 | Возвращаемое значение: | ||
| 142 | |||
| 143 | * текущее напряжение, В. | ||
| 144 | |||
| 145 | === number GetDesiredVoltage () === | ||
| 146 | |||
| 147 | Получение установленного значения желаемого напряжения в режиме плазменной резки. | ||
| 148 | |||
| 149 | Возвращаемое значение: | ||
| 150 | |||
| 151 | * желаемое напряжение, В. | ||
| 152 | |||
| 153 | === void SetDesiredVoltage (number value) === | ||
| 154 | |||
| 155 | Установка значения желаемого напряжения в режиме плазменной резки. | ||
| 156 | |||
| 157 | Параметры: | ||
| 158 | |||
| 159 | * number value – желаемое напряжение, В. | ||
| 160 | |||
| 161 | === bool GetThcTorchOn () === | ||
| 162 | |||
| 163 | Позволяет проверить, включен ли факел в режиме плазменной резки. | ||
| 164 | |||
| 165 | Возвращаемое значение: | ||
| 166 | |||
| 167 | * true – если факел в режиме плазменной резки включен; | ||
| 168 | |||
| 169 | === bool Is_Oxy_Mode () === | ||
| 170 | |||
| 171 | Позволяет проверить, находится ли PUMOTIX в режиме газовой резки. | ||
| 172 | |||
| 173 | Возвращаемое значение: | ||
| 174 | |||
| 175 | * true – если PUMOTIX находится в режиме газовой резки; | ||
| 176 | * false – если активен другой режим. | ||
| 177 | |||
| 178 | === bool GetOxyCuttingOn () === | ||
| 179 | |||
| 180 | Позволяет проверить, включен ли режущий факел в режиме газовой резки. | ||
| 181 | |||
| 182 | Возвращаемое значение: | ||
| 183 | |||
| 184 | * true – если режущий факел в режиме газовой резки включен. | ||
| 185 | |||
| 186 | === bool GetOxyPreheatOn () === | ||
| 187 | |||
| 188 | Позволяет проверить, включен ли прогрев в режиме газовой резки. | ||
| 189 | |||
| 190 | Возвращаемое значение: | ||
| 191 | |||
| 192 | * true – если прогрев в режиме газовой резки включен. | ||
| 193 | |||
| 194 | === number, bool ReadModbusRegister (string name) === | ||
| 195 | |||
| 196 | Получение значения Modbus-регистра. | ||
| 197 | |||
| 198 | Параметры: | ||
| 199 | |||
| 200 | * string name – имя регистра, настроенного в меню Настройка Modbus. | ||
| 201 | |||
| 202 | Возвращаемые значения: | ||
| 203 | |||
| 204 | * value - значение Modbus-регистра. Возвращает последнее успешно прочитанное значение из кеша, обновляющегося с интервалом 100 мс (периодичность обновления может изменяться в зависимости от определённых условий). Если значение ни разу не было успешно прочитано, возвращается 0. | ||
| 205 | * is_online - логическое значение, определяющее, была ли последняя попытка прочитать значение Modbus-регистра успешной. | ||
| 206 | |||
| 207 | === number, bool ReadModbusRegisterUpdated (string name) === | ||
| 208 | |||
| 209 | Получение значения Modbus-регистра без использования кеша. Значение регистра запрашивается каждый раз при вызове команды. | ||
| 210 | |||
| 211 | Параметры: | ||
| 212 | |||
| 213 | * string name – имя регистра, настроенного в меню Настройка Modbus. | ||
| 214 | |||
| 215 | Возвращаемые значения: | ||
| 216 | |||
| 217 | * value - значение Modbus-регистра. | ||
| 218 | * is_online - логическое значение, определяющее, была ли последняя попытка прочитать значение Modbus-регистра успешной. | ||
| 219 | |||
| 220 | === bool WriteModbusRegister (string name, number value) === | ||
| 221 | |||
| 222 | Установка значения Modbus-регистра. | ||
| 223 | |||
| 224 | Параметры: | ||
| 225 | |||
| 226 | * string name – имя регистра, настроенного в меню Настройка Modbus. | ||
| 227 | * number value - значение регистра, которое необходимо установить (16-битное целое число). | ||
| 228 | |||
| 229 | Возвращаемое значение: | ||
| 230 | |||
| 231 | * true - если установка значения Modbus-регистра выполнена успешно. | ||
| 232 | |||
| 233 | === bool IsRealDeviceConnected () === | ||
| 234 | |||
| 235 | Позволяет проверить, установлено ли подключение к контроллеру. | ||
| 236 | |||
| 237 | Возвращаемое значение: | ||
| 238 | |||
| 239 | * true – если выбрано реальное устройство (не симулятор) и подключение к нему установлено. | ||
| 240 | |||
| 241 | === number GetExecutingMCode () === | ||
| 242 | |||
| 243 | Возвращает номер, выполняющегося макроса. Если макрос не запущен возвращает -1. | ||
| 244 | |||
| 245 | Возвращаемое значение: | ||
| 246 | |||
| 247 | * номер макроса. | ||
| 248 | |||
| 249 | === bool GetLedUserValue (number index) === | ||
| 250 | |||
| 251 | Выводит значение пользовательской переменной. | ||
| 252 | |||
| 253 | Параметры: | ||
| 254 | |||
| 255 | * number index – номер переменной, целое число от 0 до 29. | ||
| 256 | |||
| 257 | Возвращаемое значение: | ||
| 258 | |||
| 259 | * bool - значение пользовательской переменной. | ||
| 260 | |||
| 261 | === void SetLedUserValue (number index, bool a_value) === | ||
| 262 | |||
| 263 | Установка значения пользовательской переменной. Данное значение может быть прочитано при выполнении другого макроса, в том числе после перезапуска PUMOTIX. | ||
| 264 | |||
| 265 | Параметры: | ||
| 266 | |||
| 267 | * number index – номер переменной, целое число от 0 до 29; | ||
| 268 | * bool a_value – значение пользовательской переменной. | ||
| 269 | |||
| 270 | === number GetNumUserValue (number index) === | ||
| 271 | |||
| 272 | Выводит значения пользовательской переменной. | ||
| 273 | |||
| 274 | Параметры: | ||
| 275 | |||
| 276 | * number index – номер переменной, целое число от 0 до 29. | ||
| 277 | |||
| 278 | Возвращаемое значение: | ||
| 279 | |||
| 280 | * number - значение пользовательской переменной. | ||
| 281 | |||
| 282 | === void SetNumUserValue (number index, number value) === | ||
| 283 | |||
| 284 | Установка значения пользовательской переменной. Данное значение может быть прочитано при выполнении другого макроса, в том числе после перезапуска PUMOTIX. | ||
| 285 | |||
| 286 | Параметры: | ||
| 287 | |||
| 288 | * number index – номер переменной, целое число от 0 до 29; | ||
| 289 | * number value – значение пользовательской переменной (вещественное число), которое необходимо установить. | ||
| 290 | |||
| 291 | === string GetStrUserValue (number index) === | ||
| 292 | |||
| 293 | Выводит значения пользовательской переменной. | ||
| 294 | |||
| 295 | Параметры: | ||
| 296 | |||
| 297 | * number index – номер переменной, целое число от 0 до 29. | ||
| 298 | |||
| 299 | Возвращаемое значение: | ||
| 300 | |||
| 301 | * string- значение пользовательской переменной. | ||
| 302 | |||
| 303 | === void SetNumUserValue (number index, string value) === | ||
| 304 | |||
| 305 | Установка значения пользовательской переменной. Данное значение может быть прочитано при выполнении другого макроса, в том числе после перезапуска PUMOTIX. | ||
| 306 | |||
| 307 | Параметры: | ||
| 308 | |||
| 309 | * number index – номер переменной, целое число от 0 до 29; | ||
| 310 | * string value - значение пользовательской переменной (строка), которое необходимо установить. | ||
| 311 | |||
| 312 | === string Get_Message (number messageId) === | ||
| 313 | |||
| 314 | Получение одного из предопределённых локализованных текстовых сообщений. | ||
| 315 | |||
| 316 | Параметры: | ||
| 317 | |||
| 318 | * number messageId – идентификатор сообщения (в качестве этого параметра должна передаваться одна из констант, определённых в списке Messages). | ||
| 319 | |||
| 320 | Возвращаемое значение: | ||
| 321 | |||
| 322 | * локализованное текстовое сообщение. | ||
| 323 | |||
| 324 | === void RunGCode () === | ||
| 325 | |||
| 326 | Запуск выполнения G-кода (аналогично нажатию кнопки Старт). | ||
| 327 | |||
| 328 | === void RunMDI (string command) === | ||
| 329 | |||
| 330 | Выполнение заданной строки G-кода. Функция сразу же после вызова возвращает управление и выполнение фонового макроса продолжается. | ||
| 331 | |||
| 332 | Параметры: | ||
| 333 | |||
| 334 | * string command – строка G-кода, которая должна быть выполнена. | ||
| 335 | |||
| 336 | === bool UseOmichSensor () === | ||
| 337 | |||
| 338 | Позволяет проверить, включено ли в настройках использование омического датчика PLL-R2. | ||
| 339 | |||
| 340 | Возвращаемое значение: | ||
| 341 | |||
| 342 | * true – если использование омического датчика PLL-R2 включено. | ||
| 343 | |||
| 344 | === number GetOmichSensorDelta () === | ||
| 345 | |||
| 346 | Получение заданного в настройках омического датчика значения поправки dZ. | ||
| 347 | |||
| 348 | Возвращаемое значение: | ||
| 349 | |||
| 350 | * значение поправки dZ, заданное в настройках омического датчика. | ||
| 351 | |||
| 352 | === void SetOmichSensorDelta (number value) === | ||
| 353 | |||
| 354 | Установка значения поправки dZ для омического датчика. | ||
| 355 | |||
| 356 | Параметры: | ||
| 357 | |||
| 358 | * number value – значение поправки dZ для омического датчика. | ||
| 359 | |||
| 360 | === number1, ... , numberN, bool ReadModbusMultipleRegistersUpdated (string name, number count) === | ||
| 361 | |||
| 362 | Получение значений нескольких расположенных подряд Modbus-регистров без использования кеша. | ||
| 363 | |||
| 364 | Параметры: | ||
| 365 | |||
| 366 | * string name – имя регистра, настроенного в меню Настройка Modbus. | ||
| 367 | * number count – количество запрашиваемых регистров. | ||
| 368 | |||
| 369 | Возвращаемые значения: | ||
| 370 | |||
| 371 | * value1, ... , valueN – значения Modbus-регистров. | ||
| 372 | * is_online – логическое значение, определяющее, была ли попытка прочитать значения Modbus-регистров успешной. | ||
| 373 | |||
| 374 | === bool WriteModbusMultipleRegisters (string name, number count, number value1, ... , number valueN) === | ||
| 375 | |||
| 376 | Установка значений нескольких расположенных подряд Modbus-регистров. | ||
| 377 | |||
| 378 | Параметры: | ||
| 379 | |||
| 380 | * string name – имя регистра, настроенного в меню Настройка Modbus. | ||
| 381 | * number count – количество записываемых регистров. | ||
| 382 | * number value1, ... , number valueN – значения регистров, которые необходимо установить (16-битные целые числа). | ||
| 383 | |||
| 384 | Возвращаемое значение: | ||
| 385 | |||
| 386 | * true - если установка значений Modbus-регистров выполнена успешно. | ||
| 387 | |||
| 388 | === void WeldOscillatorEnable () === | ||
| 389 | |||
| 390 | Включение колебателя. | ||
| 391 | |||
| 392 | === void WeldOscillatorDisable () === | ||
| 393 | |||
| 394 | Выключение колебателя. |