Исходный код вики Функции для разработки фоновых макросов
Версия 7.1 от abolgov на 2019/10/08 15:48
Последние авторы
author | version | line-number | content |
---|---|---|---|
1 | === bool PinGetState (number periphId) === | ||
2 | |||
3 | Получение текущего состояния входа или выхода. | ||
4 | |||
5 | Параметры: | ||
6 | |||
7 | * number periphId – идентификатор входа или выхода (в качестве этого параметра должна передаваться одна из констант, определённых в списке **[[Inputs>>url:http://doc.pumotix.ru/pages/viewpage.action?pageId=5180768#id-%D0%92%D1%85%D0%BE%D0%B4%D1%8B%D0%B8%D0%B2%D1%8B%D1%85%D0%BE%D0%B4%D1%8B-Inputs(%D0%B8%D0%B4%D0%B5%D0%BD%D1%82%D0%B8%D1%84%D0%B8%D0%BA%D0%B0%D1%82%D0%BE%D1%80%D1%8B%D0%B2%D1%85%D0%BE%D0%B4%D0%BE%D0%B2)||style="text-decoration: none;" rel="nofollow" shape="rect"]]** или **[[Outputs>>url:http://doc.pumotix.ru/pages/viewpage.action?pageId=5180768#id-%D0%92%D1%85%D0%BE%D0%B4%D1%8B%D0%B8%D0%B2%D1%8B%D1%85%D0%BE%D0%B4%D1%8B-Outputs(%D0%B8%D0%B4%D0%B5%D0%BD%D1%82%D0%B8%D1%84%D0%B8%D0%BA%D0%B0%D1%82%D0%BE%D1%80%D1%8B%D0%B2%D1%8B%D1%85%D0%BE%D0%B4%D0%BE%D0%B2)||rel="nofollow" style="text-decoration: none;" shape="rect"]]**). | ||
8 | |||
9 | Возвращаемое значение: | ||
10 | |||
11 | * текущее состояние входа (выхода): true – активен, false – неактивен (если в настройках выходов установлен флажок «Инвертировать», активному выходу соответствует физический уровень сигнала 0, и наоборот). | ||
12 | |||
13 | === bool MotorPinGetState (number motorId, number motorPeriphId) === | ||
14 | |||
15 | Получение текущего состояния входа или выхода, назначенного для двигателя. | ||
16 | |||
17 | Параметры: | ||
18 | |||
19 | * number motorId – номер двигателя, начиная с 0, в порядке назначения двигателей в списке //[[«Параметры двигателей»>>url:http://doc.pumotix.ru/pages/viewpage.action?pageId=5180816||style="text-decoration: none;" shape="rect"]]//; | ||
20 | * number motorPeriphId – идентификатор входа или выхода для указанного двигателя (в качестве этого параметра должна передаваться одна из констант, определённых в списке **[[MotorInputs>>url:http://doc.pumotix.ru/pages/viewpage.action?pageId=5180768#id-%D0%92%D1%85%D0%BE%D0%B4%D1%8B%D0%B8%D0%B2%D1%8B%D1%85%D0%BE%D0%B4%D1%8B-MotorInputs(%D0%B8%D0%B4%D0%B5%D0%BD%D1%82%D0%B8%D1%84%D0%B8%D0%BA%D0%B0%D1%82%D0%BE%D1%80%D1%8B%D0%B2%D1%85%D0%BE%D0%B4%D0%BE%D0%B2%D0%B4%D0%B2%D0%B8%D0%B3%D0%B0%D1%82%D0%B5%D0%BB%D0%B5%D0%B9)||style="text-decoration: none;" rel="nofollow" shape="rect"]]** или **[[MotorOutputs>>url:http://doc.pumotix.ru/pages/viewpage.action?pageId=5180768#id-%D0%92%D1%85%D0%BE%D0%B4%D1%8B%D0%B8%D0%B2%D1%8B%D1%85%D0%BE%D0%B4%D1%8B-MotorOutputs(%D0%B8%D0%B4%D0%B5%D0%BD%D1%82%D0%B8%D1%84%D0%B8%D0%BA%D0%B0%D1%82%D0%BE%D1%80%D1%8B%D0%B2%D1%8B%D1%85%D0%BE%D0%B4%D0%BE%D0%B2%D0%B4%D0%B2%D0%B8%D0%B3%D0%B0%D1%82%D0%B5%D0%BB%D0%B5%D0%B9)||style="text-decoration: none;" rel="nofollow" shape="rect"]]**). | ||
21 | |||
22 | Возвращаемое значение: | ||
23 | |||
24 | * текущее состояние входа (выхода) двигателя: true – активен, false – неактивен (если в настройках выходов установлен флажок «Инвертировать», активному выходу соответствует физический уровень сигнала 0, и наоборот). | ||
25 | |||
26 | === void PinSetState (number periphId, bool state) === | ||
27 | |||
28 | Установка состояния выхода. | ||
29 | |||
30 | Параметры: | ||
31 | |||
32 | * number periphId – идентификатор выхода (в качестве этого параметра должна передаваться одна из констант, определённых в списке **[[Outputs>>url:http://doc.pumotix.ru/pages/viewpage.action?pageId=5180768#id-%D0%92%D1%85%D0%BE%D0%B4%D1%8B%D0%B8%D0%B2%D1%8B%D1%85%D0%BE%D0%B4%D1%8B-Outputs(%D0%B8%D0%B4%D0%B5%D0%BD%D1%82%D0%B8%D1%84%D0%B8%D0%BA%D0%B0%D1%82%D0%BE%D1%80%D1%8B%D0%B2%D1%8B%D1%85%D0%BE%D0%B4%D0%BE%D0%B2)||style="text-decoration: none;" rel="nofollow" shape="rect"]]**); | ||
33 | * bool state – состояние выхода, которое необходимо установить: true – активен, false – неактивен (если в настройках выходов установлен флажок «Инвертировать», активному выходу соответствует физический уровень сигнала 0, и наоборот). | ||
34 | |||
35 | === bool IsGCodeRunning () === | ||
36 | |||
37 | Позволяет проверить, находится ли PUMOTIX в режиме выполнения G-кода. | ||
38 | |||
39 | Возвращаемое значение: | ||
40 | |||
41 | * true – если PUMOTIX находится в режиме выполнения G-кода; | ||
42 | |||
43 | === bool IsMDIRunning () === | ||
44 | |||
45 | Позволяет проверить, находится ли PUMOTIX в режиме выполнения команды ручного ввода. | ||
46 | |||
47 | Возвращаемое значение: | ||
48 | |||
49 | * true – если PUMOTIX находится в режиме выполнения команды ручного ввода; | ||
50 | |||
51 | === bool IsRunning () === | ||
52 | |||
53 | Позволяет проверить, находится ли PUMOTIX в режиме выполнения G-кода или команды ручного ввода. | ||
54 | |||
55 | Возвращаемое значение: | ||
56 | |||
57 | * true – если активен любой из двух режимов IsGCodeRunning() или IsMDIRunning(); | ||
58 | |||
59 | === bool IsIdle () === | ||
60 | |||
61 | Позволяет проверить, находится ли PUMOTIX в режиме ожидания (состояние Вкл кнопки включения). | ||
62 | |||
63 | Возвращаемое значение: | ||
64 | |||
65 | * true – если PUMOTIX находится в режиме ожидания; | ||
66 | |||
67 | === bool IsEStop () === | ||
68 | |||
69 | Позволяет проверить, находится ли PUMOTIX в режиме EStop (состояние Выкл кнопки включения). | ||
70 | |||
71 | Возвращаемое значение: | ||
72 | |||
73 | * true – если PUMOTIX находится в режиме EStop; | ||
74 | |||
75 | === number AxisGetPos (number axisId) === | ||
76 | |||
77 | Получение текущей рабочей координаты указанной оси. | ||
78 | |||
79 | Параметры: | ||
80 | |||
81 | * number axisId – номер оси, целое число от 0 до 8 (в качестве этого параметра может передаваться одна из констант, определённых в списке **[[Axis>>url:http://doc.pumotix.ru/pages/viewpage.action?pageId=5180766#id-%D0%A3%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5%D0%BE%D1%81%D1%8F%D0%BC%D0%B8-Axis(%D0%B8%D0%B4%D0%B5%D0%BD%D1%82%D0%B8%D1%84%D0%B8%D0%BA%D0%B0%D1%82%D0%BE%D1%80%D1%8B%D0%BE%D1%81%D0%B5%D0%B9)||rel="nofollow" style="text-decoration: none;" shape="rect"]]**). | ||
82 | |||
83 | Возвращаемое значение: | ||
84 | |||
85 | * значение текущей рабочей координаты указанной оси. | ||
86 | |||
87 | === number AxisGetMachinePos (number axisId) === | ||
88 | |||
89 | Получение текущей машинной координаты указанной оси. | ||
90 | |||
91 | Параметры: | ||
92 | |||
93 | * number axisId – номер оси, целое число от 0 до 8 (в качестве этого параметра может передаваться одна из констант, определённых в списке **[[Axis>>url:http://doc.pumotix.ru/pages/viewpage.action?pageId=5180766#id-%D0%A3%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5%D0%BE%D1%81%D1%8F%D0%BC%D0%B8-Axis(%D0%B8%D0%B4%D0%B5%D0%BD%D1%82%D0%B8%D1%84%D0%B8%D0%BA%D0%B0%D1%82%D0%BE%D1%80%D1%8B%D0%BE%D1%81%D0%B5%D0%B9)||rel="nofollow" style="text-decoration: none;" shape="rect"]]**). | ||
94 | |||
95 | Возвращаемое значение: | ||
96 | |||
97 | * значение текущей машинной координаты указанной оси. | ||
98 | |||
99 | === number GetCurFeedrate () === | ||
100 | |||
101 | Получение текущей скорости перемещения. | ||
102 | |||
103 | Возвращаемое значение: | ||
104 | |||
105 | * модуль вектора скорости перемещения в пространстве XYZ. | ||
106 | |||
107 | (% style="" %) | ||
108 | === number GetGCodeFeedrate () === | ||
109 | |||
110 | (% style="" %) | ||
111 | Получение скорости перемещения, заданной в G-коде. | ||
112 | |||
113 | (% style="" %) | ||
114 | Возвращаемое значение: | ||
115 | |||
116 | (% style="" %) | ||
117 | * скорость перемещения, заданная в G-коде. | ||
118 | |||
119 | === number GetFeedrateOverridePercent () === | ||
120 | |||
121 | Получение процента переопределения текущей скорости перемещения. | ||
122 | |||
123 | Возвращаемое значение: | ||
124 | |||
125 | * процент фактической скорости перемещения от заданной. | ||
126 | |||
127 | === void SetFeedrateOverridePercent (number value) === | ||
128 | |||
129 | Задание процента переопределения текущей скорости перемещения. | ||
130 | |||
131 | Параметры: | ||
132 | |||
133 | * number value – желаемый процент переопределения текущей скорости перемещения. | ||
134 | |||
135 | === number GetRapidrateOverridePercent () === | ||
136 | |||
137 | Получение процента переопределения текущей скорости холостых переездов. | ||
138 | |||
139 | Возвращаемое значение: | ||
140 | |||
141 | * процент фактической скорости холостых переездов от заданной. | ||
142 | |||
143 | === void SetRapidrateOverridePercent (number value) === | ||
144 | |||
145 | Задание процента переопределения текущей скорости холостых переездов. | ||
146 | |||
147 | Параметры: | ||
148 | |||
149 | * number value – желаемый процент переопределения текущей скорости холостых переездов. | ||
150 | |||
151 | === bool IsAxisReferenced (number axisId) === | ||
152 | |||
153 | Позволяет проверить, выполнен ли поиск базы по указанной оси. | ||
154 | |||
155 | Параметры: | ||
156 | |||
157 | * number axisId – номер оси, целое число от 0 до 8 (в качестве этого параметра может передаваться одна из констант, определённых в списке **[[Axis>>url:http://doc.pumotix.ru/pages/viewpage.action?pageId=5180766||style="text-decoration: none;" shape="rect"]]**). | ||
158 | |||
159 | Возвращаемое значение: | ||
160 | |||
161 | * true – если поиск базы выполнен: | ||
162 | * false – если поиск базы не выполнен. | ||
163 | |||
164 | === bool IsAxesMaskReferenced (number axesMask) === | ||
165 | |||
166 | Позволяет проверить, выполнен ли поиск базы для всех осей, заданных маской axesMask. | ||
167 | |||
168 | Параметры: | ||
169 | |||
170 | * number axesMask – маска осей, целое число, в котором биты от 0 до 8 обозначают, выбраны ли соответствующие оси. | ||
171 | |||
172 | Возвращаемое значение: | ||
173 | |||
174 | * true – если поиск базы выполнен; | ||
175 | * false – если поиск базы не выполнен. | ||
176 | |||
177 | === number GetCurSpindleRPM () === | ||
178 | |||
179 | Получение текущей скорости вращения шпинделя. | ||
180 | |||
181 | Возвращаемое значение: | ||
182 | |||
183 | * текущая скорость вращения шпинделя, об/мин. | ||
184 | |||
185 | (% style="" %) | ||
186 | === number GetGCodeSpindleRPM () === | ||
187 | |||
188 | (% style="" %) | ||
189 | Получение скорости вращения шпинделя, заданной в G-коде. | ||
190 | |||
191 | (% style="" %) | ||
192 | Возвращаемое значение: | ||
193 | |||
194 | (% style="" %) | ||
195 | * Скорость вращения шпинделя, заданная в G-коде, об/мин. | ||
196 | |||
197 | === number GetSpindleSpeedOverridePercent () === | ||
198 | |||
199 | Получение процента переопределения текущей скорости вращения шпинделя. | ||
200 | |||
201 | Возвращаемое значение: | ||
202 | |||
203 | * процент, который фактическая скорость вращения шпинделя составляет от заданной. | ||
204 | |||
205 | === void SetSpindleSpeedOverridePercent (number value) === | ||
206 | |||
207 | Задание процента переопределения текущей скорости вращения шпинделя. | ||
208 | |||
209 | Параметры: | ||
210 | |||
211 | * number value – желаемый процент переопределения текущей скорости вращения шпинделя. | ||
212 | |||
213 | === void FloodEnable () === | ||
214 | |||
215 | Включение подачи охлаждающей жидкости поливом. | ||
216 | |||
217 | === void FloodDisable () === | ||
218 | |||
219 | Выключение подачи охлаждающей жидкости поливом. | ||
220 | |||
221 | === void MistEnable () === | ||
222 | |||
223 | Включение подачи охлаждающей жидкости распылением. | ||
224 | |||
225 | === void MistDisable () === | ||
226 | |||
227 | Выключение подачи охлаждающей жидкости распылением. | ||
228 | |||
229 | === void Sleep (number milliseconds) === | ||
230 | |||
231 | Ожидание в течение указанного количества миллисекунд. | ||
232 | |||
233 | Параметры: | ||
234 | |||
235 | * number milliseconds – количество миллисекунд, в течение которых выполнение фонового макроса будет приостановлено. | ||
236 | |||
237 | === void DisplayMessage (string message) === | ||
238 | |||
239 | Отображение в пользовательском интерфейсе сообщения от фонового макроса. Для корректного отображения символов национальных алфавитов файл макроса должен быть сохранён в кодировке UTF-8. | ||
240 | |||
241 | Параметры: | ||
242 | |||
243 | * string message – текст сообщения, которое должно быть показано пользователю. | ||
244 | |||
245 | === void Stop () === | ||
246 | |||
247 | Остановка выполнения G-кода. | ||
248 | |||
249 | === void EStop () === | ||
250 | |||
251 | Экстренная остановка выполнения G-кода и перевод системы в режим Выкл. | ||
252 | |||
253 | === void SetUserVariable (number index, number value) === | ||
254 | |||
255 | Установка значения пользовательской переменной. Данное значение может быть прочитано при выполнении другого макроса, в том числе после перезапуска PUMOTIX. | ||
256 | |||
257 | Параметры: | ||
258 | |||
259 | * number index – номер переменной, целое число от 0 до 99; | ||
260 | * number value – значение пользовательской переменной (вещественное число), которое необходимо установить. | ||
261 | |||
262 | === number GetUserVariable (number index) === | ||
263 | |||
264 | Получение значения пользовательской переменной. | ||
265 | |||
266 | Параметры: | ||
267 | |||
268 | * number index – номер переменной, целое число от 0 до 99. | ||
269 | |||
270 | Возвращаемое значение: | ||
271 | |||
272 | * текущее значение пользовательской переменной (вещественное число). | ||
273 | |||
274 | === string str (number value) === | ||
275 | |||
276 | Преобразование вещественного числа в строку. | ||
277 | |||
278 | Язык Lua поддерживает неявное преобразование числа в строку, но по умолчанию для очень маленького вещественного числа результат преобразования может иметь экспоненциальный формат, что не позволяет использовать строку как часть строки G-кода. Для удобства можно использовать функцию str, которая гарантирует, что число будет иметь десятичное представление. | ||
279 | |||
280 | Параметры: | ||
281 | |||
282 | * number value – вещественное число, которое необходимо преобразовать. | ||
283 | |||
284 | Возвращаемое значение: | ||
285 | |||
286 | * строковое представление заданного числа. | ||
287 | |||
288 | === number GetSystemTickCount () === | ||
289 | |||
290 | Получение количества миллисекунд, прошедшего с момента запуска операционной системы. Может использоваться для замера интервалов времени. Для получения текущих календарных даты и времени в UnixTime необходимо использовать стандартную функцию Lua (% style="color: rgb(36,39,41);" %)**os.time()**. | ||
291 | |||
292 | Возвращаемое значение: | ||
293 | |||
294 | * количество миллисекунд, прошедшее с момента запуска операционной системы. | ||
295 | |||
296 | === bool Is_THC_Mode () === | ||
297 | |||
298 | Позволяет проверить, находится ли PUMOTIX в режиме плазменной резки. | ||
299 | |||
300 | Возвращаемое значение: | ||
301 | |||
302 | * true – если PUMOTIX находится в режиме плазменной резки; | ||
303 | * false – если активен другой режим. | ||
304 | |||
305 | === number GetCurrentVoltage () === | ||
306 | |||
307 | Получение текущего значения напряжения в режиме плазменной резки. | ||
308 | |||
309 | Возвращаемое значение: | ||
310 | |||
311 | * текущее напряжение, В. | ||
312 | |||
313 | === number GetDesiredVoltage () === | ||
314 | |||
315 | Получение установленного значения желаемого напряжения в режиме плазменной резки. | ||
316 | |||
317 | Возвращаемое значение: | ||
318 | |||
319 | * желаемое напряжение, В. | ||
320 | |||
321 | === void SetDesiredVoltage (number value) === | ||
322 | |||
323 | Установка значения желаемого напряжения в режиме плазменной резки. | ||
324 | |||
325 | Параметры: | ||
326 | |||
327 | * number value – желаемое напряжение, В. | ||
328 | |||
329 | === bool GetThcTorchOn () === | ||
330 | |||
331 | Позволяет проверить, включен ли факел в режиме плазменной резки. | ||
332 | |||
333 | Возвращаемое значение: | ||
334 | |||
335 | * true – если факел в режиме плазменной резки включен; | ||
336 | |||
337 | === bool Is_Oxy_Mode () === | ||
338 | |||
339 | Позволяет проверить, находится ли PUMOTIX в режиме газовой резки. | ||
340 | |||
341 | Возвращаемое значение: | ||
342 | |||
343 | * true – если PUMOTIX находится в режиме газовой резки; | ||
344 | * false – если активен другой режим. | ||
345 | |||
346 | === bool GetOxyCuttingOn () === | ||
347 | |||
348 | Позволяет проверить, включен ли режущий факел в режиме газовой резки. | ||
349 | |||
350 | Возвращаемое значение: | ||
351 | |||
352 | * true – если режущий факел в режиме газовой резки включен. | ||
353 | |||
354 | === bool GetOxyPreheatOn () === | ||
355 | |||
356 | Позволяет проверить, включен ли прогрев в режиме газовой резки. | ||
357 | |||
358 | Возвращаемое значение: | ||
359 | |||
360 | * true – если прогрев в режиме газовой резки включен. | ||
361 | |||
362 | (% style="" %) | ||
363 | === number, bool ReadModbusRegister (string name) === | ||
364 | |||
365 | (% style="" %) | ||
366 | Получение значения Modbus-регистра. | ||
367 | |||
368 | (% style="" %) | ||
369 | Параметры: | ||
370 | |||
371 | (% style="" %) | ||
372 | * string name – имя регистра, настроенного в меню Настройка Modbus. | ||
373 | |||
374 | (% style="" %) | ||
375 | Возвращаемые значения: | ||
376 | |||
377 | (% style="" %) | ||
378 | * value - значение Modbus-регистра. Возвращает последнее успешно прочитанное значение из кеша, обновляющегося с интервалом 100 мс (периодичность обновления может изменяться в зависимости от определённых условий). Если значение ни разу не было успешно прочитано, возвращается 0. | ||
379 | * is_online - логическое значение, определяющее, была ли последняя попытка прочитать значение Modbus-регистра успешной. | ||
380 | |||
381 | (% style="" %) | ||
382 | === number, bool ReadModbusRegisterUpdated (string name) === | ||
383 | |||
384 | (% style="" %) | ||
385 | Получение значения Modbus-регистра без использования кеша. Значение регистра запрашивается каждый раз при вызове команды. | ||
386 | |||
387 | (% style="" %) | ||
388 | Параметры: | ||
389 | |||
390 | (% style="" %) | ||
391 | * string name – имя регистра, настроенного в меню Настройка Modbus. | ||
392 | |||
393 | (% style="" %) | ||
394 | Возвращаемые значения: | ||
395 | |||
396 | (% style="" %) | ||
397 | * value - значение Modbus-регистра. | ||
398 | * is_online - логическое значение, определяющее, была ли последняя попытка прочитать значение Modbus-регистра успешной. | ||
399 | |||
400 | (% style="" %) | ||
401 | === bool WriteModbusRegister (string name, number value) === | ||
402 | |||
403 | (% style="" %) | ||
404 | Установка значения Modbus-регистра. | ||
405 | |||
406 | (% style="" %) | ||
407 | Параметры: | ||
408 | |||
409 | (% style="" %) | ||
410 | * string name – имя регистра, настроенного в меню Настройка Modbus. | ||
411 | * number value - значение регистра, которое необходимо установить (16-битное целое число). | ||
412 | |||
413 | (% style="" %) | ||
414 | Возвращаемое значение: | ||
415 | |||
416 | (% style="" %) | ||
417 | * true - если установка значения Modbus-регистра выполнена успешно. | ||
418 | |||
419 | === bool IsRealDeviceConnected () === | ||
420 | |||
421 | Позволяет проверить, установлено ли подключение к контроллеру. | ||
422 | |||
423 | Возвращаемое значение: | ||
424 | |||
425 | * true – если выбрано реальное устройство (не симулятор) и подключение к нему установлено. |