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