AUBO SDK  0.26.0
io_control.h
Go to the documentation of this file.
1/** @file io_control.h
2 * @brief IO控制接口
3 */
4#ifndef AUBO_SDK_IO_CONTROL_INTERFACE_H
5#define AUBO_SDK_IO_CONTROL_INTERFACE_H
6
7#include <vector>
8#include <thread>
9
10#include <aubo/global_config.h>
11#include <aubo/type_def.h>
12
13namespace arcs {
14namespace common_interface {
15
16/**
17 * @defgroup IoControl IoControl (IO输入输出控制)
18 * @ingroup RobotInterface
19 * \chinese
20 * IoControl类提供了一系列的接口对机器人标配的一些数字、模拟IO进行配置,输出状态设置、读取
21 *
22 * 1. 获取各种IO的数量 \n
23 * 2. 配置IO的输入输出功能 \n
24 * 3. 可配置IO的配置 \n
25 * 4. 模拟IO的输入输出范围设置、读取
26 *
27 * 标准数字输入输出:控制柜IO面板上的标准IO \n
28 * 工具端数字输入输出:通过工具末端航插暴露的数字IO \n
29 * 可配置输入输出:可以配置为安全IO或者普通数字IO \n
30 * \endchinese
31 * \english
32 * The IoControl class provides a series of interfaces for configuring and
33 * reading the robot's standard digital and analog IO, as well as setting output
34 * states.
35 *
36 * 1. Get the number of various IOs \n
37 * 2. Configure IO input/output functions \n
38 * 3. Configuration of configurable IOs \n
39 * 4. Set and read the input/output range of analog IOs
40 *
41 * Standard digital input/output: Standard IOs on the control cabinet IO panel
42 * \n Tool digital input/output: Digital IOs exposed via the tool-end connector
43 * \n Configurable input/output: Can be configured as safety IO or general
44 * digital IO \n \endenglish
45 */
46class ARCS_ABI_EXPORT IoControl
47{
48public:
50 virtual ~IoControl();
51
52 /**
53 * @ingroup IoControl
54 * \chinese
55 * 获取标准数字输入数量
56 *
57 * @return 标准数字输入数量
58 *
59 * @throws arcs::common_interface::AuboException
60 *
61 * @par Python函数原型
62 * getStandardDigitalInputNum(self: pyaubo_sdk.IoControl) -> int
63 *
64 * @par Lua函数原型
65 * getStandardDigitalInputNum() -> number
66 *
67 * @par Lua示例
68 * num = getStandardDigitalInputNum()
69 *
70 * @par JSON-RPC请求示例
71 * {"jsonrpc":"2.0","method":"rob1.IoControl.getStandardDigitalInputNum","params":[],"id":1}
72 *
73 * @par JSON-RPC响应示例
74 * {"id":1,"jsonrpc":"2.0","result":16}
75 *
76 * \endchinese
77 * \english
78 * Get the number of standard digital inputs.
79 *
80 * @return Number of standard digital inputs.
81 *
82 * @throws arcs::common_interface::AuboException
83 *
84 * @par Python function prototype
85 * getStandardDigitalInputNum(self: pyaubo_sdk.IoControl) -> int
86 *
87 * @par Lua function prototype
88 * getStandardDigitalInputNum() -> number
89 *
90 * @par Lua example
91 * num = getStandardDigitalInputNum()
92 *
93 * @par JSON-RPC request example
94 * {"jsonrpc":"2.0","method":"rob1.IoControl.getStandardDigitalInputNum","params":[],"id":1}
95 *
96 * @par JSON-RPC response example
97 * {"id":1,"jsonrpc":"2.0","result":16}
98 *
99 * \endenglish
100 */
102
103 /**
104 * @ingroup IoControl
105 * \chinese
106 * 获取工具端数字IO数量(包括数字输入和数字输出)
107 *
108 * @return 工具端数字IO数量(包括数字输入和数字输出)
109 *
110 * @throws arcs::common_interface::AuboException
111 *
112 * @par Python函数原型
113 * getToolDigitalInputNum(self: pyaubo_sdk.IoControl) -> int
114 *
115 * @par Lua函数原型
116 * getToolDigitalInputNum() -> number
117 *
118 * @par Lua示例
119 * num = getStandardDigitalInputNum()
120 *
121 * @par JSON-RPC请求示例
122 * {"jsonrpc":"2.0","method":"rob1.IoControl.getToolDigitalInputNum","params":[],"id":1}
123 *
124 * @par JSON-RPC响应示例
125 * {"id":1,"jsonrpc":"2.0","result":4}
126 *
127 * \endchinese
128 * \english
129 * Get the number of tool digital IOs (including digital inputs and
130 * outputs).
131 *
132 * @return Number of tool digital IOs (including digital inputs and
133 * outputs).
134 *
135 * @throws arcs::common_interface::AuboException
136 *
137 * @par Python function prototype
138 * getToolDigitalInputNum(self: pyaubo_sdk.IoControl) -> int
139 *
140 * @par Lua function prototype
141 * getToolDigitalInputNum() -> number
142 *
143 * @par Lua example
144 * num = getStandardDigitalInputNum()
145 *
146 * @par JSON-RPC request example
147 * {"jsonrpc":"2.0","method":"rob1.IoControl.getToolDigitalInputNum","params":[],"id":1}
148 *
149 * @par JSON-RPC response example
150 * {"id":1,"jsonrpc":"2.0","result":4}
151 *
152 * \endenglish
153 */
155
156 /**
157 * @ingroup IoControl
158 * \chinese
159 * 获取可配置数字输入数量
160 *
161 * @return 可配置数字输入数量
162 *
163 * @throws arcs::common_interface::AuboException
164 *
165 * @par Python函数原型
166 * getConfigurableDigitalInputNum(self: pyaubo_sdk.IoControl) -> int
167 *
168 * @par Lua函数原型
169 * getConfigurableDigitalInputNum() -> number
170 *
171 * @par Lua示例
172 * num = getConfigurableDigitalInputNum()
173 *
174 * @par JSON-RPC请求示例
175 * {"jsonrpc":"2.0","method":"rob1.IoControl.getConfigurableDigitalInputNum","params":[],"id":1}
176 *
177 * @par JSON-RPC响应示例
178 * {"id":1,"jsonrpc":"2.0","result":16}
179 *
180 * \endchinese
181 * \english
182 * Get the number of configurable digital inputs.
183 *
184 * @return Number of configurable digital inputs.
185 *
186 * @throws arcs::common_interface::AuboException
187 *
188 * @par Python function prototype
189 * getConfigurableDigitalInputNum(self: pyaubo_sdk.IoControl) -> int
190 *
191 * @par Lua function prototype
192 * getConfigurableDigitalInputNum() -> number
193 *
194 * @par Lua example
195 * num = getConfigurableDigitalInputNum()
196 *
197 * @par JSON-RPC request example
198 * {"jsonrpc":"2.0","method":"rob1.IoControl.getConfigurableDigitalInputNum","params":[],"id":1}
199 *
200 * @par JSON-RPC response example
201 * {"id":1,"jsonrpc":"2.0","result":16}
202 *
203 * \endenglish
204 */
206
207 /**
208 * @ingroup IoControl
209 * \chinese
210 * 获取标准数字输出数量
211 *
212 * @return 标准数字输出数量
213 *
214 * @throws arcs::common_interface::AuboException
215 *
216 * @par Python函数原型
217 * getStandardDigitalOutputNum(self: pyaubo_sdk.IoControl) -> int
218 *
219 * @par Lua函数原型
220 * getStandardDigitalOutputNum() -> number
221 *
222 * @par Lua示例
223 * num = getStandardDigitalOutputNum()
224 *
225 * @par JSON-RPC请求示例
226 * {"jsonrpc":"2.0","method":"rob1.IoControl.getStandardDigitalOutputNum","params":[],"id":1}
227 *
228 * @par JSON-RPC响应示例
229 * {"id":1,"jsonrpc":"2.0","result":8}
230 *
231 * \endchinese
232 * \english
233 * Get the number of standard digital outputs.
234 *
235 * @return Number of standard digital outputs.
236 *
237 * @throws arcs::common_interface::AuboException
238 *
239 * @par Python function prototype
240 * getStandardDigitalOutputNum(self: pyaubo_sdk.IoControl) -> int
241 *
242 * @par Lua function prototype
243 * getStandardDigitalOutputNum() -> number
244 *
245 * @par Lua example
246 * num = getStandardDigitalOutputNum()
247 *
248 * @par JSON-RPC request example
249 * {"jsonrpc":"2.0","method":"rob1.IoControl.getStandardDigitalOutputNum","params":[],"id":1}
250 *
251 * @par JSON-RPC response example
252 * {"id":1,"jsonrpc":"2.0","result":8}
253 *
254 * \endenglish
255 */
257
258 /**
259 * @ingroup IoControl
260 * \chinese
261 * 获取工具端数字IO数量(包括数字输入和数字输出)
262 *
263 * @return 工具端数字IO数量(包括数字输入和数字输出)
264 *
265 * @throws arcs::common_interface::AuboException
266 *
267 * @par Python函数原型
268 * getToolDigitalOutputNum(self: pyaubo_sdk.IoControl) -> int
269 *
270 * @par Lua函数原型
271 * getToolDigitalOutputNum() -> number
272 *
273 * @par Lua示例
274 * num = getToolDigitalOutputNum()
275 *
276 * @par JSON-RPC请求示例
277 * {"jsonrpc":"2.0","method":"rob1.IoControl.getToolDigitalOutputNum","params":[],"id":1}
278 *
279 * @par JSON-RPC响应示例
280 * {"id":1,"jsonrpc":"2.0","result":4}
281 *
282 * \endchinese
283 * \english
284 * Get the number of tool digital IOs (including digital inputs and
285 * outputs).
286 *
287 * @return Number of tool digital IOs (including digital inputs and
288 * outputs).
289 *
290 * @throws arcs::common_interface::AuboException
291 *
292 * @par Python function prototype
293 * getToolDigitalOutputNum(self: pyaubo_sdk.IoControl) -> int
294 *
295 * @par Lua function prototype
296 * getToolDigitalOutputNum() -> number
297 *
298 * @par Lua example
299 * num = getToolDigitalOutputNum()
300 *
301 * @par JSON-RPC request example
302 * {"jsonrpc":"2.0","method":"rob1.IoControl.getToolDigitalOutputNum","params":[],"id":1}
303 *
304 * @par JSON-RPC response example
305 * {"id":1,"jsonrpc":"2.0","result":4}
306 *
307 * \endenglish
308 */
310
311 /**
312 * @ingroup IoControl
313 * \chinese
314 * 设置指定的工具端数字IO为输入或输出
315 *
316 * 工具端数字IO比较特殊,IO可以配置为输入或者输出
317 *
318 * @param index: 表示IO口的管脚,管脚编号从0开始。
319 * 例如,0表示第一个管脚。
320 * @param input: 表示指定IO是否为输入。
321 * input 为true时,设置指定IO为输入,否则为输出
322 * @return 成功返回0;失败返回错误码
323 * AUBO_BUSY
324 * AUBO_BAD_STATE
325 * -AUBO_INVL_ARGUMENT
326 * -AUBO_BAD_STATE
327 *
328 * @throws arcs::common_interface::AuboException
329 *
330 * @par Python函数原型
331 * setToolIoInput(self: pyaubo_sdk.IoControl, arg0: int, arg1: bool) -> int
332 *
333 * @par Lua函数原型
334 * setToolIoInput(index: number, input: boolean) -> nil
335 *
336 * @par Lua示例
337 * setToolIoInput(0,true)
338 *
339 * @par JSON-RPC请求示例
340 * {"jsonrpc":"2.0","method":"rob1.IoControl.setToolIoInput","params":[0,true],"id":1}
341 *
342 * @par JSON-RPC响应示例
343 * {"id":1,"jsonrpc":"2.0","result":0}
344 *
345 * \endchinese
346 * \english
347 * Set the specified tool digital IO as input or output.
348 *
349 * Tool digital IOs are special and can be configured as input or output.
350 *
351 * @param index: Indicates the IO pin, starting from 0.
352 * For example, 0 means the first pin.
353 * @param input: Indicates whether the specified IO is input.
354 * If input is true, set the IO as input; otherwise, set as output.
355 * @return Returns 0 on success; error code on failure.
356 * AUBO_BUSY
357 * AUBO_BAD_STATE
358 * -AUBO_INVL_ARGUMENT
359 * -AUBO_BAD_STATE
360 *
361 * @throws arcs::common_interface::AuboException
362 *
363 * @par Python function prototype
364 * setToolIoInput(self: pyaubo_sdk.IoControl, arg0: int, arg1: bool) -> int
365 *
366 * @par Lua function prototype
367 * setToolIoInput(index: number, input: boolean) -> nil
368 *
369 * @par Lua example
370 * setToolIoInput(0,true)
371 *
372 * @par JSON-RPC request example
373 * {"jsonrpc":"2.0","method":"rob1.IoControl.setToolIoInput","params":[0,true],"id":1}
374 *
375 * @par JSON-RPC response example
376 * {"id":1,"jsonrpc":"2.0","result":0}
377 *
378 * \endenglish
379 */
380 int setToolIoInput(int index, bool input);
381
382 /**
383 * @ingroup IoControl
384 * \chinese
385 * 判断指定的工具端数字IO类型是否为输入
386 *
387 * @param index: 表示IO口的管脚,管脚编号从0开始。
388 * 例如,0表示第一个管脚。
389 * @return 当指定的IO为输入时返回 true, 否则为 false
390 *
391 * @throws arcs::common_interface::AuboException
392 *
393 * @par Python函数原型
394 * isToolIoInput(self: pyaubo_sdk.IoControl, arg0: int) -> bool
395 *
396 * @par Lua函数原型
397 * isToolIoInput(index: number) -> boolean
398 *
399 * @par Lua示例
400 * status = isToolIoInput(0)
401 *
402 * @par JSON-RPC请求示例
403 * {"jsonrpc":"2.0","method":"rob1.IoControl.isToolIoInput","params":[0],"id":1}
404 *
405 * @par JSON-RPC响应示例
406 * {"id":1,"jsonrpc":"2.0","result":true}
407 *
408 * \endchinese
409 * \english
410 * Determine whether the specified tool digital IO is configured as input.
411 *
412 * @param index: Indicates the IO pin, starting from 0.
413 * For example, 0 means the first pin.
414 * @return Returns true if the specified IO is input, otherwise false.
415 *
416 * @throws arcs::common_interface::AuboException
417 *
418 * @par Python function prototype
419 * isToolIoInput(self: pyaubo_sdk.IoControl, arg0: int) -> bool
420 *
421 * @par Lua function prototype
422 * isToolIoInput(index: number) -> boolean
423 *
424 * @par Lua example
425 * status = isToolIoInput(0)
426 *
427 * @par JSON-RPC request example
428 * {"jsonrpc":"2.0","method":"rob1.IoControl.isToolIoInput","params":[0],"id":1}
429 *
430 * @par JSON-RPC response example
431 * {"id":1,"jsonrpc":"2.0","result":true}
432 *
433 * \endenglish
434 */
435 bool isToolIoInput(int index);
436
437 /**
438 * @ingroup IoControl
439 * \chinese
440 * 获取可配置数字输出数量
441 *
442 * @return 可配置数字输出数量
443 *
444 * @throws arcs::common_interface::AuboException
445 *
446 * @par Python函数原型
447 * getConfigurableDigitalOutputNum(self: pyaubo_sdk.IoControl) -> int
448 *
449 * @par Lua函数原型
450 * getConfigurableDigitalOutputNum() -> number
451 *
452 * @par Lua示例
453 * num = getConfigurableDigitalOutputNum()
454 *
455 * @par JSON-RPC请求示例
456 * {"jsonrpc":"2.0","method":"rob1.IoControl.getConfigurableDigitalOutputNum","params":[],"id":1}
457 *
458 * @par JSON-RPC响应示例
459 * {"id":1,"jsonrpc":"2.0","result":16}
460 *
461 * \endchinese
462 * \english
463 * Get the number of configurable digital outputs.
464 *
465 * @return Number of configurable digital outputs.
466 *
467 * @throws arcs::common_interface::AuboException
468 *
469 * @par Python function prototype
470 * getConfigurableDigitalOutputNum(self: pyaubo_sdk.IoControl) -> int
471 *
472 * @par Lua function prototype
473 * getConfigurableDigitalOutputNum() -> number
474 *
475 * @par Lua example
476 * num = getConfigurableDigitalOutputNum()
477 *
478 * @par JSON-RPC request example
479 * {"jsonrpc":"2.0","method":"rob1.IoControl.getConfigurableDigitalOutputNum","params":[],"id":1}
480 *
481 * @par JSON-RPC response example
482 * {"id":1,"jsonrpc":"2.0","result":16}
483 *
484 * \endenglish
485 */
487
488 /**
489 * @ingroup IoControl
490 * \chinese
491 * 获取标准模拟输入数量
492 *
493 * @return 标准模拟输入数量
494 *
495 * @throws arcs::common_interface::AuboException
496 *
497 * @par Python函数原型
498 * getStandardAnalogInputNum(self: pyaubo_sdk.IoControl) -> int
499 *
500 * @par Lua函数原型
501 * getStandardAnalogInputNum() -> number
502 *
503 * @par Lua示例
504 * num = getStandardAnalogInputNum()
505 *
506 * @par JSON-RPC请求示例
507 * {"jsonrpc":"2.0","method":"rob1.IoControl.getStandardAnalogInputNum","params":[],"id":1}
508 *
509 * @par JSON-RPC响应示例
510 * {"id":1,"jsonrpc":"2.0","result":2}
511 *
512 * \endchinese
513 * \english
514 * Get the number of standard analog inputs.
515 *
516 * @return Number of standard analog inputs.
517 *
518 * @throws arcs::common_interface::AuboException
519 *
520 * @par Python function prototype
521 * getStandardAnalogInputNum(self: pyaubo_sdk.IoControl) -> int
522 *
523 * @par Lua function prototype
524 * getStandardAnalogInputNum() -> number
525 *
526 * @par Lua example
527 * num = getStandardAnalogInputNum()
528 *
529 * @par JSON-RPC request example
530 * {"jsonrpc":"2.0","method":"rob1.IoControl.getStandardAnalogInputNum","params":[],"id":1}
531 *
532 * @par JSON-RPC response example
533 * {"id":1,"jsonrpc":"2.0","result":2}
534 *
535 * \endenglish
536 */
538
539 /**
540 * @ingroup IoControl
541 * \chinese
542 * 获取工具端模拟输入数量
543 *
544 * @return 工具端模拟输入数量
545 *
546 * @throws arcs::common_interface::AuboException
547 *
548 * @par Python函数原型
549 * getToolAnalogInputNum(self: pyaubo_sdk.IoControl) -> int
550 *
551 * @par Lua函数原型
552 * getToolAnalogInputNum() -> number
553 *
554 * @par Lua示例
555 * num = getToolAnalogInputNum()
556 *
557 * @par JSON-RPC请求示例
558 * {"jsonrpc":"2.0","method":"rob1.IoControl.getToolAnalogInputNum","params":[],"id":1}
559 *
560 * @par JSON-RPC响应示例
561 * {"id":1,"jsonrpc":"2.0","result":2}
562 *
563 * \endchinese
564 * \english
565 * Get the number of tool analog inputs.
566 *
567 * @return Number of tool analog inputs.
568 *
569 * @throws arcs::common_interface::AuboException
570 *
571 * @par Python function prototype
572 * getToolAnalogInputNum(self: pyaubo_sdk.IoControl) -> int
573 *
574 * @par Lua function prototype
575 * getToolAnalogInputNum() -> number
576 *
577 * @par Lua example
578 * num = getToolAnalogInputNum()
579 *
580 * @par JSON-RPC request example
581 * {"jsonrpc":"2.0","method":"rob1.IoControl.getToolAnalogInputNum","params":[],"id":1}
582 *
583 * @par JSON-RPC response example
584 * {"id":1,"jsonrpc":"2.0","result":2}
585 *
586 * \endenglish
587 */
589
590 /**
591 * @ingroup IoControl
592 * \chinese
593 * 获取标准模拟输出数量
594 *
595 * @return 标准模拟输出数量
596 *
597 * @throws arcs::common_interface::AuboException
598 *
599 * @par Python函数原型
600 * getStandardAnalogOutputNum(self: pyaubo_sdk.IoControl) -> int
601 *
602 * @par Lua函数原型
603 * getStandardAnalogOutputNum() -> number
604 *
605 * @par Lua示例
606 * num = getStandardAnalogOutputNum()
607 *
608 * @par JSON-RPC请求示例
609 * {"jsonrpc":"2.0","method":"rob1.IoControl.getStandardAnalogOutputNum","params":[],"id":1}
610 *
611 * @par JSON-RPC响应示例
612 * {"id":1,"jsonrpc":"2.0","result":2}
613 *
614 * \endchinese
615 * \english
616 * Get the number of standard analog outputs.
617 *
618 * @return Number of standard analog outputs.
619 *
620 * @throws arcs::common_interface::AuboException
621 *
622 * @par Python function prototype
623 * getStandardAnalogOutputNum(self: pyaubo_sdk.IoControl) -> int
624 *
625 * @par Lua function prototype
626 * getStandardAnalogOutputNum() -> number
627 *
628 * @par Lua example
629 * num = getStandardAnalogOutputNum()
630 *
631 * @par JSON-RPC request example
632 * {"jsonrpc":"2.0","method":"rob1.IoControl.getStandardAnalogOutputNum","params":[],"id":1}
633 *
634 * @par JSON-RPC response example
635 * {"id":1,"jsonrpc":"2.0","result":2}
636 *
637 * \endenglish
638 */
640
641 /**
642 * @ingroup IoControl
643 * \chinese
644 * 获取工具端模拟输出数量
645 *
646 * @return 工具端模拟输出数量
647 *
648 * @throws arcs::common_interface::AuboException
649 *
650 * @par Python函数原型
651 * getToolAnalogOutputNum(self: pyaubo_sdk.IoControl) -> int
652 *
653 * @par Lua函数原型
654 * getToolAnalogOutputNum() -> number
655 *
656 * @par Lua示例
657 * num = getToolAnalogOutputNum()
658 *
659 * @par JSON-RPC请求示例
660 * {"jsonrpc":"2.0","method":"rob1.IoControl.getToolAnalogOutputNum","params":[],"id":1}
661 *
662 * @par JSON-RPC响应示例
663 * {"id":1,"jsonrpc":"2.0","result":0}
664 *
665 * \endchinese
666 * \english
667 * Get the number of tool analog outputs.
668 *
669 * @return Number of tool analog outputs.
670 *
671 * @throws arcs::common_interface::AuboException
672 *
673 * @par Python function prototype
674 * getToolAnalogOutputNum(self: pyaubo_sdk.IoControl) -> int
675 *
676 * @par Lua function prototype
677 * getToolAnalogOutputNum() -> number
678 *
679 * @par Lua example
680 * num = getToolAnalogOutputNum()
681 *
682 * @par JSON-RPC request example
683 * {"jsonrpc":"2.0","method":"rob1.IoControl.getToolAnalogOutputNum","params":[],"id":1}
684 *
685 * @par JSON-RPC response example
686 * {"id":1,"jsonrpc":"2.0","result":0}
687 *
688 * \endenglish
689 */
691
692 /**
693 * @ingroup IoControl
694 * \chinese
695 * 设置所有数字输入动作为无触发
696 *
697 * @note
698 * 当输入动作为无触发时,用户设置数字输入值为高电平,不会触发机器人发生动作
699 *
700 * @return 成功返回0;失败返回错误码
701 * AUBO_BUSY
702 * AUBO_BAD_STATE
703 * -AUBO_BAD_STATE
704 *
705 * @throws arcs::common_interface::AuboException
706 *
707 * @par Python函数原型
708 * setDigitalInputActionDefault(self: pyaubo_sdk.IoControl) -> int
709 *
710 * @par Lua函数原型
711 * setDigitalInputActionDefault() -> nil
712 *
713 * @par Lua示例
714 * setDigitalInputActionDefault()
715 *
716 * @par JSON-RPC请求示例
717 * {"jsonrpc":"2.0","method":"rob1.IoControl.setDigitalInputActionDefault","params":[],"id":1}
718 *
719 * @par JSON-RPC响应示例
720 * {"id":1,"jsonrpc":"2.0","result":0}
721 *
722 * \endchinese
723 * \english
724 * Set all digital input actions to no trigger.
725 *
726 * @note
727 * When the input action is set to no trigger, setting the digital input
728 * value to high will not trigger any robot action.
729 *
730 * @return Returns 0 on success; error code on failure.
731 * AUBO_BUSY
732 * AUBO_BAD_STATE
733 * -AUBO_BAD_STATE
734 *
735 * @throws arcs::common_interface::AuboException
736 *
737 * @par Python function prototype
738 * setDigitalInputActionDefault(self: pyaubo_sdk.IoControl) -> int
739 *
740 * @par Lua function prototype
741 * setDigitalInputActionDefault() -> nil
742 *
743 * @par Lua example
744 * setDigitalInputActionDefault()
745 *
746 * @par JSON-RPC request example
747 * {"jsonrpc":"2.0","method":"rob1.IoControl.setDigitalInputActionDefault","params":[],"id":1}
748 *
749 * @par JSON-RPC response example
750 * {"id":1,"jsonrpc":"2.0","result":0}
751 *
752 * \endenglish
753 */
755
756 /**
757 * @ingroup IoControl
758 * \chinese
759 * 设置标准数字输入触发动作
760 *
761 * @note
762 * 当给输入设置为无触发动作(StandardInputAction::Default)时,
763 * 用户设置数字输入值为高电平,不会触发机器人发生动作。\n
764 * 当给输入设置触发动作时,用户设置数字输入值为高电平,会触发机器人执行相应的动作。\n
765 * 例如,当设置DI0的触发动作为拖动示教(StandardInputAction::Handguide)时,
766 * 用户设置DI0为高电平,机器人会进入拖动示教。
767 * 设置DI0为低电平,机器人会退出拖动示教。
768 *
769 * @param index: 表示IO口的管脚,管脚编号从0开始。
770 * 例如,0表示第一个管脚。
771 * @param action: 触发动作
772 *
773 * @return 成功返回0;失败返回错误码
774 * AUBO_REQUEST_IGNORE
775 * AUBO_BUSY
776 * AUBO_BAD_STATE
777 * -AUBO_INVL_ARGUMENT
778 * -AUBO_BAD_STATE
779 *
780 * @throws arcs::common_interface::AuboException
781 *
782 * @par Python函数原型
783 * setStandardDigitalInputAction(self: pyaubo_sdk.IoControl, arg0: int,
784 * arg1: arcs::common_interface::StandardInputAction) -> int
785 *
786 * @par Lua函数原型
787 * setStandardDigitalInputAction(index: number, action: number) -> nil
788 *
789 * @par Lua示例
790 * setStandardDigitalInputAction(0,1)
791 *
792 * @par JSON-RPC请求示例
793 * {"jsonrpc":"2.0","method":"rob1.IoControl.setStandardDigitalInputAction","params":[0,"Handguide"],"id":1}
794 *
795 * @par JSON-RPC响应示例
796 * {"id":1,"jsonrpc":"2.0","result":0}
797 *
798 * \endchinese
799 * \english
800 * Set the trigger action for standard digital input.
801 *
802 * @note
803 * When the input is set to no trigger action
804 * (StandardInputAction::Default), setting the digital input value to high
805 * will not trigger any robot action.\n When a trigger action is set,
806 * setting the digital input value to high will trigger the corresponding
807 * robot action.\n For example, if DI0 is set to trigger Handguide
808 * (StandardInputAction::Handguide), setting DI0 to high will enable
809 * hand-guiding mode. Setting DI0 to low will exit hand-guiding mode.
810 *
811 * @param index: Indicates the IO pin, starting from 0.
812 * For example, 0 means the first pin.
813 * @param action: Trigger action
814 *
815 * @return Returns 0 on success; error code on failure.
816 * AUBO_REQUEST_IGNORE
817 * AUBO_BUSY
818 * AUBO_BAD_STATE
819 * -AUBO_INVL_ARGUMENT
820 * -AUBO_BAD_STATE
821 *
822 * @throws arcs::common_interface::AuboException
823 *
824 * @par Python function prototype
825 * setStandardDigitalInputAction(self: pyaubo_sdk.IoControl, arg0: int,
826 * arg1: arcs::common_interface::StandardInputAction) -> int
827 *
828 * @par Lua function prototype
829 * setStandardDigitalInputAction(index: number, action: number) -> nil
830 *
831 * @par Lua example
832 * setStandardDigitalInputAction(0,1)
833 *
834 * @par JSON-RPC request example
835 * {"jsonrpc":"2.0","method":"rob1.IoControl.setStandardDigitalInputAction","params":[0,"Handguide"],"id":1}
836 *
837 * @par JSON-RPC response example
838 * {"id":1,"jsonrpc":"2.0","result":0}
839 *
840 * \endenglish
841 */
843
844 /**
845 * @ingroup IoControl
846 * \chinese
847 * 设置工具数字输入触发动作
848 *
849 * @note
850 * 当给输入设置为无触发动作(StandardInputAction::Default)时,
851 * 用户设置工具数字输入值为高电平,不会触发机器人发生动作。\n
852 * 当给输入设置触发动作时,用户设置工具数字输入值为高电平,会触发机器人执行相应的动作。\n
853 * 例如,当设置TOOL_IO[0]的类型为输入而且触发动作为拖动示教(StandardInputAction::Handguide)时,
854 * 用户设置TOOL_IO[0]为高电平,机器人会进入拖动示教。
855 * 设置TOOL_IO[0]为低电平,机器人会退出拖动示教。
856 *
857 * @param index: 表示IO口的管脚,管脚编号从0开始。
858 * 例如,0表示第一个管脚。
859 * @param action: 触发动作
860 *
861 * @return 成功返回0;失败返回错误码
862 * AUBO_REQUEST_IGNORE
863 * AUBO_BUSY
864 * AUBO_BAD_STATE
865 * -AUBO_INVL_ARGUMENT
866 * -AUBO_BAD_STATE
867 *
868 * @throws arcs::common_interface::AuboException
869 *
870 * @par Python函数原型
871 * setToolDigitalInputAction(self: pyaubo_sdk.IoControl, arg0: int, arg1:
872 * arcs::common_interface::StandardInputAction) -> int
873 *
874 * @par Lua函数原型
875 * setToolDigitalInputAction(index: number, action: number) -> nil
876 *
877 * @par Lua示例
878 * setToolDigitalInputAction(0,1)
879 *
880 * @par JSON-RPC请求示例
881 * {"jsonrpc":"2.0","method":"rob1.IoControl.setToolDigitalInputAction","params":[0,"Handguide"],"id":1}
882 *
883 * @par JSON-RPC响应示例
884 * {"id":1,"jsonrpc":"2.0","result":0}
885 *
886 * \endchinese
887 * \english
888 * Set the trigger action for tool digital input.
889 *
890 * @note
891 * When the input is set to no trigger action
892 * (StandardInputAction::Default), setting the tool digital input value to
893 * high will not trigger any robot action.\n When a trigger action is set,
894 * setting the tool digital input value to high will trigger the
895 * corresponding robot action.\n For example, if TOOL_IO[0] is set as input
896 * and its trigger action is Handguide (StandardInputAction::Handguide),
897 * setting TOOL_IO[0] to high will enable hand-guiding mode.
898 * Setting TOOL_IO[0] to low will exit hand-guiding mode.
899 *
900 * @param index: Indicates the IO pin, starting from 0.
901 * For example, 0 means the first pin.
902 * @param action: Trigger action
903 *
904 * @return Returns 0 on success; error code on failure.
905 * AUBO_REQUEST_IGNORE
906 * AUBO_BUSY
907 * AUBO_BAD_STATE
908 * -AUBO_INVL_ARGUMENT
909 * -AUBO_BAD_STATE
910 *
911 * @throws arcs::common_interface::AuboException
912 *
913 * @par Python function prototype
914 * setToolDigitalInputAction(self: pyaubo_sdk.IoControl, arg0: int, arg1:
915 * arcs::common_interface::StandardInputAction) -> int
916 *
917 * @par Lua function prototype
918 * setToolDigitalInputAction(index: number, action: number) -> nil
919 *
920 * @par Lua example
921 * setToolDigitalInputAction(0,1)
922 *
923 * @par JSON-RPC request example
924 * {"jsonrpc":"2.0","method":"rob1.IoControl.setToolDigitalInputAction","params":[0,"Handguide"],"id":1}
925 *
926 * @par JSON-RPC response example
927 * {"id":1,"jsonrpc":"2.0","result":0}
928 *
929 * \endenglish
930 */
932
933 /**
934 * @ingroup IoControl
935 * \chinese
936 * 设置可配置数字输入触发动作
937 *
938 * @param index: 表示IO口的管脚,管脚编号从0开始。
939 * 例如,0表示第一个管脚。
940 * @param action: 触发动作
941 *
942 * @return 成功返回0;失败返回错误码
943 * AUBO_REQUEST_IGNORE
944 * AUBO_BUSY
945 * AUBO_BAD_STATE
946 * -AUBO_INVL_ARGUMENT
947 * -AUBO_BAD_STATE
948 *
949 * @throws arcs::common_interface::AuboException
950 *
951 * @note 需要将可配置输入的安全输入动作设置为
952 * SafetyInputAction::Unassigned时这个函数的配置才会生效
953 *
954 * @par Python函数原型
955 * setConfigurableDigitalInputAction(self: pyaubo_sdk.IoControl, arg0: int,
956 * arg1: arcs::common_interface::StandardInputAction) -> int
957 *
958 * @par Lua函数原型
959 * setConfigurableDigitalInputAction(index: number, action: number) -> nil
960 *
961 * @par Lua示例
962 * setConfigurableDigitalInputAction(0,1)
963 *
964 * @par JSON-RPC请求示例
965 * {"jsonrpc":"2.0","method":"rob1.IoControl.setConfigurableDigitalInputAction","params":[0,"Handguide"],"id":1}
966 *
967 * @par JSON-RPC响应示例
968 * {"id":1,"jsonrpc":"2.0","result":0}
969 *
970 * \endchinese
971 * \english
972 * Set the trigger action for configurable digital input.
973 *
974 * @param index: Indicates the IO pin, starting from 0.
975 * For example, 0 means the first pin.
976 * @param action: Trigger action
977 *
978 * @return Returns 0 on success; error code on failure.
979 * AUBO_REQUEST_IGNORE
980 * AUBO_BUSY
981 * AUBO_BAD_STATE
982 * -AUBO_INVL_ARGUMENT
983 * -AUBO_BAD_STATE
984 *
985 * @throws arcs::common_interface::AuboException
986 *
987 * @note This function takes effect only when the safety input action of the
988 * configurable input is set to SafetyInputAction::Unassigned.
989 *
990 * @par Python function prototype
991 * setConfigurableDigitalInputAction(self: pyaubo_sdk.IoControl, arg0: int,
992 * arg1: arcs::common_interface::StandardInputAction) -> int
993 *
994 * @par Lua function prototype
995 * setConfigurableDigitalInputAction(index: number, action: number) -> nil
996 *
997 * @par Lua example
998 * setConfigurableDigitalInputAction(0,1)
999 *
1000 * @par JSON-RPC request example
1001 * {"jsonrpc":"2.0","method":"rob1.IoControl.setConfigurableDigitalInputAction","params":[0,"Handguide"],"id":1}
1002 *
1003 * @par JSON-RPC response example
1004 * {"id":1,"jsonrpc":"2.0","result":0}
1005 *
1006 * \endenglish
1007 */
1009 StandardInputAction action);
1010
1011 /**
1012 * @ingroup IoControl
1013 * \chinese
1014 * 获取标准数字输入触发动作
1015 *
1016 * @param index: 表示IO口的管脚,管脚编号从0开始。
1017 * 例如,0表示第一个管脚。
1018 * @return 标准数字输入触发动作
1019 *
1020 * @par Python函数原型
1021 * getStandardDigitalInputAction(self: pyaubo_sdk.IoControl, arg0: int) ->
1022 * arcs::common_interface::StandardInputAction
1023 *
1024 * @par Lua函数原型
1025 * getStandardDigitalInputAction(index: number) -> number
1026 *
1027 * @par Lua示例
1028 * num = getStandardDigitalInputAction(0)
1029 *
1030 * @par JSON-RPC请求示例
1031 * {"jsonrpc":"2.0","method":"rob1.IoControl.getStandardDigitalInputAction","params":[0],"id":1}
1032 *
1033 * @par JSON-RPC响应示例
1034 * {"id":1,"jsonrpc":"2.0","result":"Default"}
1035 *
1036 * \endchinese
1037 * \english
1038 * Get the trigger action for standard digital input.
1039 *
1040 * @param index: Indicates the IO pin, starting from 0.
1041 * For example, 0 means the first pin.
1042 * @return Standard digital input trigger action
1043 *
1044 * @par Python function prototype
1045 * getStandardDigitalInputAction(self: pyaubo_sdk.IoControl, arg0: int) ->
1046 * arcs::common_interface::StandardInputAction
1047 *
1048 * @par Lua function prototype
1049 * getStandardDigitalInputAction(index: number) -> number
1050 *
1051 * @par Lua example
1052 * num = getStandardDigitalInputAction(0)
1053 *
1054 * @par JSON-RPC request example
1055 * {"jsonrpc":"2.0","method":"rob1.IoControl.getStandardDigitalInputAction","params":[0],"id":1}
1056 *
1057 * @par JSON-RPC response example
1058 * {"id":1,"jsonrpc":"2.0","result":"Default"}
1059 *
1060 * \endenglish
1061 */
1063
1064 /**
1065 * @ingroup IoControl
1066 * \chinese
1067 * 获取工具端数字输入触发动作
1068 *
1069 * @param index: 表示IO口的管脚,管脚编号从0开始。
1070 * 例如,0表示第一个管脚。
1071 * @return 工具端数字输入触发动作
1072 *
1073 * @par Python函数原型
1074 * getToolDigitalInputAction(self: pyaubo_sdk.IoControl, arg0: int) ->
1075 * arcs::common_interface::StandardInputAction
1076 *
1077 * @par Lua函数原型
1078 * getToolDigitalInputAction(index: number) -> number
1079 *
1080 * @par Lua示例
1081 * getToolDigitalInputAction(0)
1082 *
1083 * @par JSON-RPC请求示例
1084 * {"jsonrpc":"2.0","method":"rob1.IoControl.getToolDigitalInputAction","params":[0],"id":1}
1085 *
1086 * @par JSON-RPC响应示例
1087 * {"id":1,"jsonrpc":"2.0","result":"Default"}
1088 *
1089 * \endchinese
1090 * \english
1091 * Get the trigger action for tool digital input.
1092 *
1093 * @param index: Indicates the IO pin, starting from 0.
1094 * For example, 0 means the first pin.
1095 * @return Tool digital input trigger action
1096 *
1097 * @par Python function prototype
1098 * getToolDigitalInputAction(self: pyaubo_sdk.IoControl, arg0: int) ->
1099 * arcs::common_interface::StandardInputAction
1100 *
1101 * @par Lua function prototype
1102 * getToolDigitalInputAction(index: number) -> number
1103 *
1104 * @par Lua example
1105 * getToolDigitalInputAction(0)
1106 *
1107 * @par JSON-RPC request example
1108 * {"jsonrpc":"2.0","method":"rob1.IoControl.getToolDigitalInputAction","params":[0],"id":1}
1109 *
1110 * @par JSON-RPC response example
1111 * {"id":1,"jsonrpc":"2.0","result":"Default"}
1112 *
1113 * \endenglish
1114 */
1116
1117 /**
1118 * @ingroup IoControl
1119 * \chinese
1120 * 获取可配置数字输入的输入触发动作
1121 *
1122 * @param index: 表示IO口的管脚,管脚编号从0开始。
1123 * 例如,0表示第一个管脚。
1124 * @return 返回输入触发动作
1125 *
1126 * @par Python函数原型
1127 * getConfigurableDigitalInputAction(self: pyaubo_sdk.IoControl, arg0: int)
1128 * -> arcs::common_interface::StandardInputAction
1129 *
1130 * @par Lua函数原型
1131 * getConfigurableDigitalInputAction(index: number) -> number
1132 *
1133 * @par Lua示例
1134 * num = getConfigurableDigitalInputAction(0)
1135 *
1136 * @par JSON-RPC请求示例
1137 * {"jsonrpc":"2.0","method":"rob1.IoControl.getConfigurableDigitalInputAction","params":[0],"id":1}
1138 *
1139 * @par JSON-RPC响应示例
1140 * {"id":1,"jsonrpc":"2.0","result":"Default"}
1141 *
1142 * \endchinese
1143 * \english
1144 * Get the trigger action for configurable digital input.
1145 *
1146 * @param index: Indicates the IO pin, starting from 0.
1147 * For example, 0 means the first pin.
1148 * @return Returns the input trigger action.
1149 *
1150 * @par Python function prototype
1151 * getConfigurableDigitalInputAction(self: pyaubo_sdk.IoControl, arg0: int)
1152 * -> arcs::common_interface::StandardInputAction
1153 *
1154 * @par Lua function prototype
1155 * getConfigurableDigitalInputAction(index: number) -> number
1156 *
1157 * @par Lua example
1158 * num = getConfigurableDigitalInputAction(0)
1159 *
1160 * @par JSON-RPC request example
1161 * {"jsonrpc":"2.0","method":"rob1.IoControl.getConfigurableDigitalInputAction","params":[0],"id":1}
1162 *
1163 * @par JSON-RPC response example
1164 * {"id":1,"jsonrpc":"2.0","result":"Default"}
1165 *
1166 * \endenglish
1167 */
1169
1170 /**
1171 * @ingroup IoControl
1172 * \chinese
1173 * 设置所有数字输出状态选择为无
1174 *
1175 * @note
1176 * 当给输出状态设置为无(StandardOutputRunState::None)时,
1177 * 用户可以设置数字输出值。\n
1178 * 当给输出设置状态时,用户不可设置数字输出值,控制器会自动设置数字输出值。\n
1179 * 例如,当设置DO0的输出状态为高电平指示正在拖动示教(StandardOutputRunState::Handguiding)时,
1180 * 机器人进入拖动示教,DO0会自动变为高电平。
1181 * 机器人退出拖动示教,DO0会自动变为低电平。
1182 *
1183 * @return 成功返回0;失败返回错误码
1184 * AUBO_BUSY
1185 * AUBO_BAD_STATE
1186 * -AUBO_BAD_STATE
1187 *
1188 * @throws arcs::common_interface::AuboException
1189 *
1190 * @par Python函数原型
1191 * setDigitalOutputRunstateDefault(self: pyaubo_sdk.IoControl) -> int
1192 *
1193 * @par Lua函数原型
1194 * setDigitalOutputRunstateDefault() -> nil
1195 *
1196 * @par Lua示例
1197 * setDigitalOutputRunstateDefault()
1198 *
1199 * @par JSON-RPC请求示例
1200 * {"jsonrpc":"2.0","method":"rob1.IoControl.setDigitalOutputRunstateDefault","params":[],"id":1}
1201 *
1202 * @par JSON-RPC响应示例
1203 * {"id":1,"jsonrpc":"2.0","result":0}
1204 *
1205 * \endchinese
1206 * \english
1207 * Set all digital output runstates to None.
1208 *
1209 * @note
1210 * When the output runstate is set to None (StandardOutputRunState::None),
1211 * users can set the digital output value.\n
1212 * When the output runstate is set, users cannot set the digital output
1213 * value, and the controller will set it automatically.\n For example, when
1214 * DO0's output runstate is set to indicate hand-guiding
1215 * (StandardOutputRunState::Handguiding), the robot enters hand-guiding mode
1216 * and DO0 will automatically become high. When the robot exits
1217 * hand-guiding, DO0 will automatically become low.
1218 *
1219 * @return Returns 0 on success; error code on failure.
1220 * AUBO_BUSY
1221 * AUBO_BAD_STATE
1222 * -AUBO_BAD_STATE
1223 *
1224 * @throws arcs::common_interface::AuboException
1225 *
1226 * @par Python function prototype
1227 * setDigitalOutputRunstateDefault(self: pyaubo_sdk.IoControl) -> int
1228 *
1229 * @par Lua function prototype
1230 * setDigitalOutputRunstateDefault() -> nil
1231 *
1232 * @par Lua example
1233 * setDigitalOutputRunstateDefault()
1234 *
1235 * @par JSON-RPC request example
1236 * {"jsonrpc":"2.0","method":"rob1.IoControl.setDigitalOutputRunstateDefault","params":[],"id":1}
1237 *
1238 * @par JSON-RPC response example
1239 * {"id":1,"jsonrpc":"2.0","result":0}
1240 *
1241 * \endenglish
1242 */
1244
1245 /**
1246 * @ingroup IoControl
1247 * \chinese
1248 * 设置标准数字输出状态选择
1249 *
1250 * @note
1251 * 当给输出状态设置为无(StandardOutputRunState::None)时,
1252 * 用户可以设置数字输出值。\n
1253 * 当给输出设置状态时,用户不可设置数字输出值,控制器会自动设置数字输出值。\n
1254 * 例如,当设置DO0的输出状态为高电平指示正在拖动示教(StandardOutputRunState::Handguiding)时,
1255 * 机器人进入拖动示教,DO0会自动变为高电平。
1256 * 机器人退出拖动示教,DO0会自动变为低电平。
1257 *
1258 * @param index: 表示IO口的管脚,管脚编号从0开始。
1259 * 例如,0表示第一个管脚。
1260 * @param runstate: 输出状态选择
1261 *
1262 * @return 成功返回0;失败返回错误码
1263 * AUBO_REQUEST_IGNORE
1264 * AUBO_BUSY
1265 * AUBO_BAD_STATE
1266 * -AUBO_INVL_ARGUMENT
1267 * -AUBO_BAD_STATE
1268 *
1269 * @throws arcs::common_interface::AuboException
1270 *
1271 * @par Python函数原型
1272 * setStandardDigitalOutputRunstate(self: pyaubo_sdk.IoControl, arg0: int,
1273 * arg1: arcs::common_interface::StandardOutputRunState) -> int
1274 *
1275 * @par Lua函数原型
1276 * setStandardDigitalOutputRunstate(index: number, runstate: number) -> nil
1277 *
1278 * @par Lua示例
1279 * setStandardDigitalOutputRunstate(0,1)
1280 *
1281 * @par JSON-RPC请求示例
1282 * {"jsonrpc":"2.0","method":"rob1.IoControl.setStandardDigitalOutputRunstate","params":[0,"PowerOn"],"id":1}
1283 *
1284 * @par JSON-RPC响应示例
1285 * {"id":1,"jsonrpc":"2.0","result":0}
1286 *
1287 * \endchinese
1288 * \english
1289 * Set the runstate for standard digital output.
1290 *
1291 * @note
1292 * When the output runstate is set to None (StandardOutputRunState::None),
1293 * users can set the digital output value.\n
1294 * When the output runstate is set, users cannot set the digital output
1295 * value, and the controller will set it automatically.\n For example, when
1296 * DO0's output runstate is set to indicate hand-guiding
1297 * (StandardOutputRunState::Handguiding), the robot enters hand-guiding mode
1298 * and DO0 will automatically become high. When the robot exits
1299 * hand-guiding, DO0 will automatically become low.
1300 *
1301 * @param index: Indicates the IO pin, starting from 0.
1302 * For example, 0 means the first pin.
1303 * @param runstate: Output runstate selection
1304 *
1305 * @return Returns 0 on success; error code on failure.
1306 * AUBO_REQUEST_IGNORE
1307 * AUBO_BUSY
1308 * AUBO_BAD_STATE
1309 * -AUBO_INVL_ARGUMENT
1310 * -AUBO_BAD_STATE
1311 *
1312 * @throws arcs::common_interface::AuboException
1313 *
1314 * @par Python function prototype
1315 * setStandardDigitalOutputRunstate(self: pyaubo_sdk.IoControl, arg0: int,
1316 * arg1: arcs::common_interface::StandardOutputRunState) -> int
1317 *
1318 * @par Lua function prototype
1319 * setStandardDigitalOutputRunstate(index: number, runstate: number) -> nil
1320 *
1321 * @par Lua example
1322 * setStandardDigitalOutputRunstate(0,1)
1323 *
1324 * @par JSON-RPC request example
1325 * {"jsonrpc":"2.0","method":"rob1.IoControl.setStandardDigitalOutputRunstate","params":[0,"PowerOn"],"id":1}
1326 *
1327 * @par JSON-RPC response example
1328 * {"id":1,"jsonrpc":"2.0","result":0}
1329 *
1330 * \endenglish
1331 */
1333 StandardOutputRunState runstate);
1334
1335 /**
1336 * @ingroup IoControl
1337 * \chinese
1338 * 设置工具端数字输出状态选择
1339 *
1340 * @note
1341 * 当给输出状态设置为无(StandardOutputRunState::None)时,
1342 * 用户可以设置数字输出值。\n
1343 * 当给输出设置状态时,用户不可设置数字输出值,控制器会自动设置数字输出值。\n
1344 * 例如,当设置TOOL_IO[0]类型为输出且输出状态为高电平指示正在拖动示教(StandardOutputRunState::Handguiding)时,
1345 * 机器人进入拖动示教,TOOL_IO[0]会自动变为高电平。
1346 * 机器人退出拖动示教,TOOL_IO[0]会自动变为低电平。
1347 *
1348 * @param index: 表示IO口的管脚,管脚编号从0开始。
1349 * 例如,0表示第一个管脚。
1350 * @param runstate: 输出状态选择
1351 *
1352 * @return 成功返回0;失败返回错误码
1353 * AUBO_REQUEST_IGNORE
1354 * AUBO_BUSY
1355 * AUBO_BAD_STATE
1356 * -AUBO_INVL_ARGUMENT
1357 * -AUBO_BAD_STATE
1358 *
1359 * @throws arcs::common_interface::AuboException
1360 *
1361 * @par Python函数原型
1362 * setToolDigitalOutputRunstate(self: pyaubo_sdk.IoControl, arg0: int, arg1:
1363 * arcs::common_interface::StandardOutputRunState) -> int
1364 *
1365 * @par Lua函数原型
1366 * setToolDigitalOutputRunstate(index: number, runstate: number) -> nil
1367 *
1368 * @par Lua示例
1369 * setToolDigitalOutputRunstate(0,1)
1370 *
1371 * @par JSON-RPC请求示例
1372 * {"jsonrpc":"2.0","method":"rob1.IoControl.setToolDigitalOutputRunstate","params":[0,"None"],"id":1}
1373 *
1374 * @par JSON-RPC响应示例
1375 * {"id":1,"jsonrpc":"2.0","result":0}
1376 *
1377 * \endchinese
1378 * \english
1379 * Set the runstate for tool digital output.
1380 *
1381 * @note
1382 * When the output runstate is set to None (StandardOutputRunState::None),
1383 * users can set the digital output value.\n
1384 * When the output runstate is set, users cannot set the digital output
1385 * value, and the controller will set it automatically.\n For example, when
1386 * TOOL_IO[0] is set as output and its runstate is set to indicate
1387 * hand-guiding (StandardOutputRunState::Handguiding), the robot enters
1388 * hand-guiding mode and TOOL_IO[0] will automatically become high. When the
1389 * robot exits hand-guiding, TOOL_IO[0] will automatically become low.
1390 *
1391 * @param index: Indicates the IO pin, starting from 0.
1392 * For example, 0 means the first pin.
1393 * @param runstate: Output runstate selection
1394 *
1395 * @return Returns 0 on success; error code on failure.
1396 * AUBO_REQUEST_IGNORE
1397 * AUBO_BUSY
1398 * AUBO_BAD_STATE
1399 * -AUBO_INVL_ARGUMENT
1400 * -AUBO_BAD_STATE
1401 *
1402 * @throws arcs::common_interface::AuboException
1403 *
1404 * @par Python function prototype
1405 * setToolDigitalOutputRunstate(self: pyaubo_sdk.IoControl, arg0: int, arg1:
1406 * arcs::common_interface::StandardOutputRunState) -> int
1407 *
1408 * @par Lua function prototype
1409 * setToolDigitalOutputRunstate(index: number, runstate: number) -> nil
1410 *
1411 * @par Lua example
1412 * setToolDigitalOutputRunstate(0,1)
1413 *
1414 * @par JSON-RPC request example
1415 * {"jsonrpc":"2.0","method":"rob1.IoControl.setToolDigitalOutputRunstate","params":[0,"None"],"id":1}
1416 *
1417 * @par JSON-RPC response example
1418 * {"id":1,"jsonrpc":"2.0","result":0}
1419 *
1420 * \endenglish
1421 */
1423 StandardOutputRunState runstate);
1424
1425 /**
1426 * @ingroup IoControl
1427 * \chinese
1428 * 设置可配置数字输出状态选择
1429 *
1430 * @param index: 表示IO口的管脚,管脚编号从0开始。
1431 * 例如,0表示第一个管脚。
1432 * @param runstate: 输出状态选择
1433 *
1434 * @return 成功返回0;失败返回错误码
1435 * AUBO_REQUEST_IGNORE
1436 * AUBO_BUSY
1437 * AUBO_BAD_STATE
1438 * -AUBO_INVL_ARGUMENT
1439 * -AUBO_BAD_STATE
1440 *
1441 * @throws arcs::common_interface::AuboException
1442 *
1443 * @par Python函数原型
1444 * setConfigurableDigitalOutputRunstate(self: pyaubo_sdk.IoControl, arg0:
1445 * int, arg1: arcs::common_interface::StandardOutputRunState) -> int
1446 *
1447 * @par Lua函数原型
1448 * setConfigurableDigitalOutputRunstate(index: number, runstate: number) ->
1449 * nil
1450 *
1451 * @par Lua示例
1452 * setConfigurableDigitalOutputRunstate(0,1)
1453 *
1454 * @par JSON-RPC请求示例
1455 * {"jsonrpc":"2.0","method":"rob1.IoControl.setConfigurableDigitalOutputRunstate","params":[0,"None"],"id":1}
1456 *
1457 * @par JSON-RPC响应示例
1458 * {"id":1,"jsonrpc":"2.0","result":0}
1459 *
1460 * \endchinese
1461 * \english
1462 * Set the runstate for configurable digital output.
1463 *
1464 * @param index: Indicates the IO pin, starting from 0.
1465 * For example, 0 means the first pin.
1466 * @param runstate: Output runstate selection
1467 *
1468 * @return Returns 0 on success; error code on failure.
1469 * AUBO_REQUEST_IGNORE
1470 * AUBO_BUSY
1471 * AUBO_BAD_STATE
1472 * -AUBO_INVL_ARGUMENT
1473 * -AUBO_BAD_STATE
1474 *
1475 * @throws arcs::common_interface::AuboException
1476 *
1477 * @par Python function prototype
1478 * setConfigurableDigitalOutputRunstate(self: pyaubo_sdk.IoControl, arg0:
1479 * int, arg1: arcs::common_interface::StandardOutputRunState) -> int
1480 *
1481 * @par Lua function prototype
1482 * setConfigurableDigitalOutputRunstate(index: number, runstate: number) ->
1483 * nil
1484 *
1485 * @par Lua example
1486 * setConfigurableDigitalOutputRunstate(0,1)
1487 *
1488 * @par JSON-RPC request example
1489 * {"jsonrpc":"2.0","method":"rob1.IoControl.setConfigurableDigitalOutputRunstate","params":[0,"None"],"id":1}
1490 *
1491 * @par JSON-RPC response example
1492 * {"id":1,"jsonrpc":"2.0","result":0}
1493 *
1494 * \endenglish
1495 */
1497 StandardOutputRunState runstate);
1498
1499 /**
1500 * @ingroup IoControl
1501 * \chinese
1502 * 获取标准数字输出状态选择
1503 *
1504 * @param index: 表示IO口的管脚,管脚编号从0开始。
1505 * 例如,0表示第一个管脚。
1506 * @return 输出状态选择
1507 *
1508 * @throws arcs::common_interface::AuboException
1509 *
1510 * @par Python函数原型
1511 * getStandardDigitalOutputRunstate(self: pyaubo_sdk.IoControl, arg0: int)
1512 * -> arcs::common_interface::StandardOutputRunState
1513 *
1514 * @par Lua函数原型
1515 * getStandardDigitalOutputRunstate(index: number) -> number
1516 *
1517 * @par Lua示例
1518 * num = getStandardDigitalOutputRunstate(0)
1519 *
1520 * @par JSON-RPC请求示例
1521 * {"jsonrpc":"2.0","method":"rob1.IoControl.getStandardDigitalOutputRunstate","params":[0],"id":1}
1522 *
1523 * @par JSON-RPC响应示例
1524 * {"id":1,"jsonrpc":"2.0","result":"None"}
1525 *
1526 * \endchinese
1527 * \english
1528 * Get the runstate for standard digital output.
1529 *
1530 * @param index: Indicates the IO pin, starting from 0.
1531 * For example, 0 means the first pin.
1532 * @return Output runstate selection
1533 *
1534 * @throws arcs::common_interface::AuboException
1535 *
1536 * @par Python function prototype
1537 * getStandardDigitalOutputRunstate(self: pyaubo_sdk.IoControl, arg0: int)
1538 * -> arcs::common_interface::StandardOutputRunState
1539 *
1540 * @par Lua function prototype
1541 * getStandardDigitalOutputRunstate(index: number) -> number
1542 *
1543 * @par Lua example
1544 * num = getStandardDigitalOutputRunstate(0)
1545 *
1546 * @par JSON-RPC request example
1547 * {"jsonrpc":"2.0","method":"rob1.IoControl.getStandardDigitalOutputRunstate","params":[0],"id":1}
1548 *
1549 * @par JSON-RPC response example
1550 * {"id":1,"jsonrpc":"2.0","result":"None"}
1551 *
1552 * \endenglish
1553 */
1555
1556 /**
1557 * @ingroup IoControl
1558 * \chinese
1559 * 获取工具端数字输出状态选择
1560 *
1561 * @param index: 表示IO口的管脚,管脚编号从0开始。
1562 * 例如,0表示第一个管脚。
1563 * @return 输出状态选择
1564 *
1565 * @throws arcs::common_interface::AuboException
1566 *
1567 * @par Python函数原型
1568 * getToolDigitalOutputRunstate(self: pyaubo_sdk.IoControl, arg0: int) ->
1569 * arcs::common_interface::StandardOutputRunState
1570 *
1571 * @par Lua函数原型
1572 * getToolDigitalOutputRunstate(index: number) -> number
1573 *
1574 * @par Lua示例
1575 * num = getToolDigitalOutputRunstate(0)
1576 *
1577 * @par JSON-RPC请求示例
1578 * {"jsonrpc":"2.0","method":"rob1.IoControl.getToolDigitalOutputRunstate","params":[0],"id":1}
1579 *
1580 * @par JSON-RPC响应示例
1581 * {"id":1,"jsonrpc":"2.0","result":"None"}
1582 *
1583 * \endchinese
1584 * \english
1585 * Get the runstate for tool digital output.
1586 *
1587 * @param index: Indicates the IO pin, starting from 0.
1588 * For example, 0 means the first pin.
1589 * @return Output runstate selection
1590 *
1591 * @throws arcs::common_interface::AuboException
1592 *
1593 * @par Python function prototype
1594 * getToolDigitalOutputRunstate(self: pyaubo_sdk.IoControl, arg0: int) ->
1595 * arcs::common_interface::StandardOutputRunState
1596 *
1597 * @par Lua function prototype
1598 * getToolDigitalOutputRunstate(index: number) -> number
1599 *
1600 * @par Lua example
1601 * num = getToolDigitalOutputRunstate(0)
1602 *
1603 * @par JSON-RPC request example
1604 * {"jsonrpc":"2.0","method":"rob1.IoControl.getToolDigitalOutputRunstate","params":[0],"id":1}
1605 *
1606 * @par JSON-RPC response example
1607 * {"id":1,"jsonrpc":"2.0","result":"None"}
1608 *
1609 * \endenglish
1610 */
1612
1613 /**
1614 * @ingroup IoControl
1615 * \chinese
1616 * 获取可配置数字输出状态选择
1617 *
1618 * @param index: 表示IO口的管脚,管脚编号从0开始。
1619 * 例如,0表示第一个管脚。
1620 * @return 输出状态选择
1621 *
1622 * @throws arcs::common_interface::AuboException
1623 *
1624 * @par Python函数原型
1625 * getConfigurableDigitalOutputRunstate(self: pyaubo_sdk.IoControl, arg0:
1626 * int)
1627 * -> arcs::common_interface::StandardOutputRunState
1628 *
1629 * @par Lua函数原型
1630 * getConfigurableDigitalOutputRunstate(index: number) -> number
1631 *
1632 * @par Lua示例
1633 * num = getConfigurableDigitalOutputRunstate(0)
1634 *
1635 * @par JSON-RPC请求示例
1636 * {"jsonrpc":"2.0","method":"rob1.IoControl.getConfigurableDigitalOutputRunstate","params":[0],"id":1}
1637 *
1638 * @par JSON-RPC响应示例
1639 * {"id":1,"jsonrpc":"2.0","result":"None"}
1640 *
1641 * \endchinese
1642 * \english
1643 * Get the runstate for configurable digital output.
1644 *
1645 * @param index: Indicates the IO pin, starting from 0.
1646 * For example, 0 means the first pin.
1647 * @return Output runstate selection
1648 *
1649 * @throws arcs::common_interface::AuboException
1650 *
1651 * @par Python function prototype
1652 * getConfigurableDigitalOutputRunstate(self: pyaubo_sdk.IoControl, arg0:
1653 * int)
1654 * -> arcs::common_interface::StandardOutputRunState
1655 *
1656 * @par Lua function prototype
1657 * getConfigurableDigitalOutputRunstate(index: number) -> number
1658 *
1659 * @par Lua example
1660 * num = getConfigurableDigitalOutputRunstate(0)
1661 *
1662 * @par JSON-RPC request example
1663 * {"jsonrpc":"2.0","method":"rob1.IoControl.getConfigurableDigitalOutputRunstate","params":[0],"id":1}
1664 *
1665 * @par JSON-RPC response example
1666 * {"id":1,"jsonrpc":"2.0","result":"None"}
1667 *
1668 * \endenglish
1669 */
1671
1672 /**
1673 * @ingroup IoControl
1674 * \chinese
1675 * 设置标准模拟输出状态选择
1676 *
1677 * @note
1678 * 当给输出状态设置为无(StandardOutputRunState::None)时,
1679 * 用户可以设置模拟输出值。\n
1680 * 当给输出设置状态时,用户不可设置模拟输出值,控制器会自动设置模拟输出值。\n
1681 * 例如,当设置AO0的输出状态为高电平指示正在拖动示教(StandardOutputRunState::Handguiding)时,
1682 * 机器人进入拖动示教,AO0的值会自动变为最大值。
1683 * 机器人退出拖动示教,AO0的值会自动变为0。
1684 *
1685 * @param index: 表示IO口的管脚,管脚编号从0开始。
1686 * 例如,0表示第一个管脚。
1687 * @param runstate: 输出状态选择
1688 * @return 成功返回0;失败返回错误码
1689 * AUBO_REQUEST_IGNORE
1690 * AUBO_BUSY
1691 * AUBO_BAD_STATE
1692 * -AUBO_INVL_ARGUMENT
1693 * -AUBO_BAD_STATE
1694 *
1695 * @throws arcs::common_interface::AuboException
1696 *
1697 * @par Python函数原型
1698 * setStandardAnalogOutputRunstate(self: pyaubo_sdk.IoControl, arg0: int,
1699 * arg1: arcs::common_interface::StandardOutputRunState) -> int
1700 *
1701 * @par Lua函数原型
1702 * setStandardAnalogOutputRunstate(index: number, runstate: number) -> nil
1703 *
1704 * @par Lua示例
1705 * setStandardAnalogOutputRunstate(0,6)
1706 *
1707 * @par JSON-RPC请求示例
1708 * {"jsonrpc":"2.0","method":"rob1.IoControl.setStandardAnalogOutputRunstate","params":[0,"None"],"id":1}
1709 *
1710 * @par JSON-RPC响应示例
1711 * {"id":1,"jsonrpc":"2.0","result":0}
1712 *
1713 * \endchinese
1714 * \english
1715 * Set the runstate for standard analog output.
1716 *
1717 * @note
1718 * When the output runstate is set to None (StandardOutputRunState::None),
1719 * users can set the analog output value.\n
1720 * When the output runstate is set, users cannot set the analog output
1721 * value, and the controller will set it automatically.\n For example, when
1722 * AO0's output runstate is set to indicate hand-guiding
1723 * (StandardOutputRunState::Handguiding), the robot enters hand-guiding mode
1724 * and AO0 will automatically become the maximum value. When the robot exits
1725 * hand-guiding, AO0 will automatically become 0.
1726 *
1727 * @param index: Indicates the IO pin, starting from 0.
1728 * For example, 0 means the first pin.
1729 * @param runstate: Output runstate selection
1730 * @return Returns 0 on success; error code on failure.
1731 * AUBO_REQUEST_IGNORE
1732 * AUBO_BUSY
1733 * AUBO_BAD_STATE
1734 * -AUBO_INVL_ARGUMENT
1735 * -AUBO_BAD_STATE
1736 *
1737 * @throws arcs::common_interface::AuboException
1738 *
1739 * @par Python function prototype
1740 * setStandardAnalogOutputRunstate(self: pyaubo_sdk.IoControl, arg0: int,
1741 * arg1: arcs::common_interface::StandardOutputRunState) -> int
1742 *
1743 * @par Lua function prototype
1744 * setStandardAnalogOutputRunstate(index: number, runstate: number) -> nil
1745 *
1746 * @par Lua example
1747 * setStandardAnalogOutputRunstate(0,6)
1748 *
1749 * @par JSON-RPC request example
1750 * {"jsonrpc":"2.0","method":"rob1.IoControl.setStandardAnalogOutputRunstate","params":[0,"None"],"id":1}
1751 *
1752 * @par JSON-RPC response example
1753 * {"id":1,"jsonrpc":"2.0","result":0}
1754 *
1755 * \endenglish
1756 */
1758 StandardOutputRunState runstate);
1759
1760 /**
1761 * @ingroup IoControl
1762 * \chinese
1763 * 设置工具端模拟输出状态选择
1764 *
1765 * @param index: 表示IO口的管脚,管脚编号从0开始。
1766 * 例如,0表示第一个管脚。
1767 * @param runstate: 输出状态选择
1768 * @return 成功返回0;失败返回错误码
1769 * AUBO_REQUEST_IGNORE
1770 * AUBO_BUSY
1771 * AUBO_BAD_STATE
1772 * -AUBO_INVL_ARGUMENT
1773 * -AUBO_BAD_STATE
1774 *
1775 * @throws arcs::common_interface::AuboException
1776 *
1777 * @par Python函数原型
1778 * setToolAnalogOutputRunstate(self: pyaubo_sdk.IoControl, arg0: int, arg1:
1779 * arcs::common_interface::StandardOutputRunState) -> int
1780 *
1781 * @par Lua函数原型
1782 * setToolAnalogOutputRunstate(index: number, runstate: number) -> nil
1783 *
1784 * @par Lua示例
1785 * setToolAnalogOutputRunstate(0,1)
1786 *
1787 * @par JSON-RPC请求示例
1788 * {"jsonrpc":"2.0","method":"rob1.IoControl.setToolAnalogOutputRunstate","params":[0,"None"],"id":1}
1789 *
1790 * @par JSON-RPC响应示例
1791 * {"id":1,"jsonrpc":"2.0","result":0}
1792 *
1793 * \endchinese
1794 * \english
1795 * Set the runstate for tool analog output.
1796 *
1797 * @param index: Indicates the IO pin, starting from 0.
1798 * For example, 0 means the first pin.
1799 * @param runstate: Output runstate selection
1800 * @return Returns 0 on success; error code on failure.
1801 * AUBO_REQUEST_IGNORE
1802 * AUBO_BUSY
1803 * AUBO_BAD_STATE
1804 * -AUBO_INVL_ARGUMENT
1805 * -AUBO_BAD_STATE
1806 *
1807 * @throws arcs::common_interface::AuboException
1808 *
1809 * @par Python function prototype
1810 * setToolAnalogOutputRunstate(self: pyaubo_sdk.IoControl, arg0: int, arg1:
1811 * arcs::common_interface::StandardOutputRunState) -> int
1812 *
1813 * @par Lua function prototype
1814 * setToolAnalogOutputRunstate(index: number, runstate: number) -> nil
1815 *
1816 * @par Lua example
1817 * setToolAnalogOutputRunstate(0,1)
1818 *
1819 * @par JSON-RPC request example
1820 * {"jsonrpc":"2.0","method":"rob1.IoControl.setToolAnalogOutputRunstate","params":[0,"None"],"id":1}
1821 *
1822 * @par JSON-RPC response example
1823 * {"id":1,"jsonrpc":"2.0","result":0}
1824 *
1825 * \endenglish
1826 */
1828
1829 /**
1830 * @ingroup IoControl
1831 * \chinese
1832 * 获取标准模拟输出状态选择
1833 *
1834 * @param index: 表示IO口的管脚,管脚编号从0开始。
1835 * 例如,0表示第一个管脚。
1836 * @return 标准模拟输出状态选择
1837 *
1838 * @throws arcs::common_interface::AuboException
1839 *
1840 * @par Python函数原型
1841 * getStandardAnalogOutputRunstate(self: pyaubo_sdk.IoControl, arg0: int) ->
1842 * arcs::common_interface::StandardOutputRunState
1843 *
1844 * @par Lua函数原型
1845 * getStandardAnalogOutputRunstate(index: number) -> number
1846 *
1847 * @par Lua示例
1848 * num = getStandardAnalogOutputRunstate(0)
1849 *
1850 * @par JSON-RPC请求示例
1851 * {"jsonrpc":"2.0","method":"rob1.IoControl.getStandardAnalogOutputRunstate","params":[0],"id":1}
1852 *
1853 * @par JSON-RPC响应示例
1854 * {"id":1,"jsonrpc":"2.0","result":"None"}
1855 *
1856 * \endchinese
1857 * \english
1858 * Get the runstate for standard analog output.
1859 *
1860 * @param index: Indicates the IO pin, starting from 0.
1861 * For example, 0 means the first pin.
1862 * @return Standard analog output runstate selection
1863 *
1864 * @throws arcs::common_interface::AuboException
1865 *
1866 * @par Python function prototype
1867 * getStandardAnalogOutputRunstate(self: pyaubo_sdk.IoControl, arg0: int) ->
1868 * arcs::common_interface::StandardOutputRunState
1869 *
1870 * @par Lua function prototype
1871 * getStandardAnalogOutputRunstate(index: number) -> number
1872 *
1873 * @par Lua example
1874 * num = getStandardAnalogOutputRunstate(0)
1875 *
1876 * @par JSON-RPC request example
1877 * {"jsonrpc":"2.0","method":"rob1.IoControl.getStandardAnalogOutputRunstate","params":[0],"id":1}
1878 *
1879 * @par JSON-RPC response example
1880 * {"id":1,"jsonrpc":"2.0","result":"None"}
1881 *
1882 * \endenglish
1883 */
1885
1886 /**
1887 * @ingroup IoControl
1888 * \chinese
1889 * 获取工具端模拟输出状态选择
1890 *
1891 * @param index: 表示IO口的管脚,管脚编号从0开始。
1892 * 例如,0表示第一个管脚。
1893 * @return 工具端模拟输出状态选择
1894 *
1895 * @throws arcs::common_interface::AuboException
1896 *
1897 * @par Python函数原型
1898 * getToolAnalogOutputRunstate(self: pyaubo_sdk.IoControl, arg0: int) ->
1899 * arcs::common_interface::StandardOutputRunState
1900 *
1901 * @par Lua函数原型
1902 * getToolAnalogOutputRunstate(index: number) -> number
1903 *
1904 * @par Lua示例
1905 * num = getToolAnalogOutputRunstate(0)
1906 *
1907 * @par JSON-RPC请求示例
1908 * {"jsonrpc":"2.0","method":"rob1.IoControl.getToolAnalogOutputRunstate","params":[0],"id":1}
1909 *
1910 * @par JSON-RPC响应示例
1911 * {"id":1,"jsonrpc":"2.0","result":"None"}
1912 *
1913 * \endchinese
1914 * \english
1915 * Get the runstate for tool analog output.
1916 *
1917 * @param index: Indicates the IO pin, starting from 0.
1918 * For example, 0 means the first pin.
1919 * @return Tool analog output runstate selection
1920 *
1921 * @throws arcs::common_interface::AuboException
1922 *
1923 * @par Python function prototype
1924 * getToolAnalogOutputRunstate(self: pyaubo_sdk.IoControl, arg0: int) ->
1925 * arcs::common_interface::StandardOutputRunState
1926 *
1927 * @par Lua function prototype
1928 * getToolAnalogOutputRunstate(index: number) -> number
1929 *
1930 * @par Lua example
1931 * num = getToolAnalogOutputRunstate(0)
1932 *
1933 * @par JSON-RPC request example
1934 * {"jsonrpc":"2.0","method":"rob1.IoControl.getToolAnalogOutputRunstate","params":[0],"id":1}
1935 *
1936 * @par JSON-RPC response example
1937 * {"id":1,"jsonrpc":"2.0","result":"None"}
1938 *
1939 * \endenglish
1940 */
1942
1943 /**
1944 * @ingroup IoControl
1945 * \chinese
1946 * 设置所有数字输出急停后状态为默认(不做改变)
1947 *
1948 * @return 成功返回0;失败返回错误码
1949 * AUBO_BUSY
1950 * AUBO_BAD_STATE
1951 * -AUBO_BAD_STATE
1952 *
1953 * @throws arcs::common_interface::AuboException
1954 *
1955 * @par Python函数原型
1956 * setDigitalOutputAfterEStopDefault(self: pyaubo_sdk.IoControl) -> int
1957 *
1958 * @par Lua函数原型
1959 * setDigitalOutputAfterEStopDefault() -> nil
1960 *
1961 * @par Lua示例
1962 * setDigitalOutputAfterEStopDefault()
1963 *
1964 * @par JSON-RPC请求示例
1965 * {"jsonrpc":"2.0","method":"rob1.IoControl.setDigitalOutputAfterEStopDefault","params":[],"id":1}
1966 *
1967 * @par JSON-RPC响应示例
1968 * {"id":1,"jsonrpc":"2.0","result":0}
1969 *
1970 * \endchinese
1971 * \english
1972 * Set all digital output states after emergency stop to default(no change)
1973 *
1974 * @return Returns 0 on success; error code on failure.
1975 * AUBO_BUSY
1976 * AUBO_BAD_STATE
1977 * -AUBO_BAD_STATE
1978 *
1979 * @throws arcs::common_interface::AuboException
1980 *
1981 * @par Python function prototype
1982 * setDigitalOutputAfterEStopDefault(self: pyaubo_sdk.IoControl) -> int
1983 *
1984 * @par Lua function prototype
1985 * setDigitalOutputAfterEStopDefault() -> nil
1986 *
1987 * @par Lua example
1988 * setDigitalOutputAfterEStopDefault()
1989 *
1990 * @par JSON-RPC request example
1991 * {"jsonrpc":"2.0","method":"rob1.IoControl.setDigitalOutputAfterEStopDefault","params":[],"id":1}
1992 *
1993 * @par JSON-RPC response example
1994 * {"id":1,"jsonrpc":"2.0","result":0}
1995 *
1996 * \endenglish
1997 */
1999
2000 /**
2001 * @ingroup IoControl
2002 * \chinese
2003 * 设置所有模拟输出急停后状态为默认(不做改变)
2004 *
2005 * @return 成功返回0;失败返回错误码
2006 * AUBO_BUSY
2007 * AUBO_BAD_STATE
2008 * -AUBO_BAD_STATE
2009 *
2010 * @throws arcs::common_interface::AuboException
2011 *
2012 * @par Python函数原型
2013 * setAnalogOutputAfterEStopDefault(self: pyaubo_sdk.IoControl) -> int
2014 *
2015 * @par Lua函数原型
2016 * setAnalogOutputAfterEStopDefault() -> nil
2017 *
2018 * @par Lua示例
2019 * setAnalogOutputAfterEStopDefault()
2020 *
2021 * @par JSON-RPC请求示例
2022 * {"jsonrpc":"2.0","method":"rob1.IoControl.setAnalogOutputAfterEStopDefault","params":[],"id":1}
2023 *
2024 * @par JSON-RPC响应示例
2025 * {"id":1,"jsonrpc":"2.0","result":0}
2026 *
2027 * \endchinese
2028 * \english
2029 * Set all analog output states after emergency stop to default(no change)
2030 *
2031 * @return Returns 0 on success; error code on failure.
2032 * AUBO_BUSY
2033 * AUBO_BAD_STATE
2034 * -AUBO_BAD_STATE
2035 *
2036 * @throws arcs::common_interface::AuboException
2037 *
2038 * @par Python function prototype
2039 * setAnalogOutputAfterEStopDefault(self: pyaubo_sdk.IoControl) -> int
2040 *
2041 * @par Lua function prototype
2042 * setAnalogOutputAfterEStopDefault() -> nil
2043 *
2044 * @par Lua example
2045 * setAnalogOutputAfterEStopDefault()
2046 *
2047 * @par JSON-RPC request example
2048 * {"jsonrpc":"2.0","method":"rob1.IoControl.setAnalogOutputAfterEStopDefault","params":[],"id":1}
2049 *
2050 * @par JSON-RPC response example
2051 * {"id":1,"jsonrpc":"2.0","result":0}
2052 *
2053 * \endenglish
2054 */
2056
2057 /**
2058 * @ingroup IoControl
2059 * \chinese
2060 * 设置标准数字输出急停后的输出值
2061 *
2062 * @param index: 表示IO口的管脚,
2063 * @param value: 输出值
2064 * @return 成功返回0;失败返回错误码
2065 * AUBO_REQUEST_IGNORE
2066 * AUBO_BUSY
2067 * AUBO_BAD_STATE
2068 * -AUBO_INVL_ARGUMENT
2069 * -AUBO_BAD_STATE
2070 *
2071 * @throws arcs::common_interface::AuboException
2072 *
2073 * @par Python函数原型
2074 * setStandardDigitalOutputAfterEStop(self: pyaubo_sdk.IoControl, arg0: int,
2075 * arg1: bool) -> int
2076 *
2077 * @par Lua函数原型
2078 * setStandardDigitalOutputAfterEStop(index: number, value: boolean) -> nil
2079 *
2080 * @par Lua示例
2081 * setStandardDigitalOutputAfterEStop(0,true)
2082 *
2083 * @par JSON-RPC请求示例
2084 * {"jsonrpc":"2.0","method":"rob1.IoControl.setStandardDigitalOutputAfterEStop","params":[0,true],"id":1}
2085 *
2086 * @par JSON-RPC响应示例
2087 * {"id":1,"jsonrpc":"2.0","result":0}
2088 *
2089 * \endchinese
2090 * \english
2091 * Set the value of a standard digital output after emergency stop
2092 *
2093 * @param index: Indicates the IO pin.
2094 * @param value: Output value.
2095 * @return Returns 0 on success; error code on failure.
2096 * AUBO_REQUEST_IGNORE
2097 * AUBO_BUSY
2098 * AUBO_BAD_STATE
2099 * -AUBO_INVL_ARGUMENT
2100 * -AUBO_BAD_STATE
2101 *
2102 * @throws arcs::common_interface::AuboException
2103 *
2104 * @par Python function prototype
2105 * setStandardDigitalOutputAfterEStop(self: pyaubo_sdk.IoControl, arg0: int,
2106 * arg1: bool) -> int
2107 *
2108 * @par Lua function prototype
2109 * setStandardDigitalOutputAfterEStop(index: number, value: boolean) -> nil
2110 *
2111 * @par Lua example
2112 * setStandardDigitalOutputAfterEStop(0,true)
2113 *
2114 * @par JSON-RPC request example
2115 * {"jsonrpc":"2.0","method":"rob1.IoControl.setStandardDigitalOutputAfterEStop","params":[0,true],"id":1}
2116 *
2117 * @par JSON-RPC response example
2118 * {"id":1,"jsonrpc":"2.0","result":0}
2119 *
2120 * \endenglish
2121 */
2122 int setStandardDigitalOutputAfterEStop(int index, bool value);
2123
2124 /**
2125 * @ingroup IoControl
2126 * \chinese
2127 * 设置可配置数字输出急停后的输出值
2128 *
2129 * @param index: 表示IO口的管脚,
2130 * @param value: 输出值
2131 * @return 成功返回0;失败返回错误码
2132 * AUBO_REQUEST_IGNORE
2133 * AUBO_BUSY
2134 * AUBO_BAD_STATE
2135 * -AUBO_INVL_ARGUMENT
2136 * -AUBO_BAD_STATE
2137 *
2138 * @throws arcs::common_interface::AuboException
2139 *
2140 * @par Python函数原型
2141 * setConfigurableDigitalOutputAfterEStop(self: pyaubo_sdk.IoControl, arg0:
2142 * int, arg1: bool) -> int
2143 *
2144 * @par Lua函数原型
2145 * setConfigurableDigitalOutputAfterEStop(index: number, value: boolean) ->
2146 * nil
2147 *
2148 * @par Lua示例
2149 * setConfigurableDigitalOutputAfterEStop(0,true)
2150 *
2151 * @par JSON-RPC请求示例
2152 * {"jsonrpc":"2.0","method":"rob1.IoControl.setConfigurableDigitalOutputAfterEStop","params":[0,true],"id":1}
2153 *
2154 * @par JSON-RPC响应示例
2155 * {"id":1,"jsonrpc":"2.0","result":0}
2156 *
2157 * \endchinese
2158 * \english
2159 * Set the value of a configurable digital output after emergency stop
2160 *
2161 * @param index: Indicates the IO pin.
2162 * @param value: Output value.
2163 * @return Returns 0 on success; error code on failure.
2164 * AUBO_REQUEST_IGNORE
2165 * AUBO_BUSY
2166 * AUBO_BAD_STATE
2167 * -AUBO_INVL_ARGUMENT
2168 * -AUBO_BAD_STATE
2169 *
2170 * @throws arcs::common_interface::AuboException
2171 *
2172 * @par Python function prototype
2173 * setConfigurableDigitalOutputAfterEStop(self: pyaubo_sdk.IoControl, arg0:
2174 * int, arg1: bool) -> int
2175 *
2176 * @par Lua function prototype
2177 * setConfigurableDigitalOutputAfterEStop(index: number, value: boolean) ->
2178 * nil
2179 *
2180 * @par Lua example
2181 * setConfigurableDigitalOutputAfterEStop(0,true)
2182 *
2183 * @par JSON-RPC request example
2184 * {"jsonrpc":"2.0","method":"rob1.IoControl.setConfigurableDigitalOutputAfterEStop","params":[0,true],"id":1}
2185 *
2186 * @par JSON-RPC response example
2187 * {"id":1,"jsonrpc":"2.0","result":0}
2188 *
2189 * \endenglish
2190 */
2191 int setConfigurableDigitalOutputAfterEStop(int index, bool value);
2192
2193 /**
2194 * @ingroup IoControl
2195 * \chinese
2196 * 设置标准模拟输出急停后的输出值
2197 *
2198 * @param index: 表示IO口的管脚,管脚编号从0开始。
2199 * 例如,0表示第一个管脚。
2200 * @param value: 模拟输出值
2201 *
2202 * @return 成功返回0;失败返回错误码
2203 * AUBO_REQUEST_IGNORE
2204 * AUBO_BUSY
2205 * AUBO_BAD_STATE
2206 * -AUBO_INVL_ARGUMENT
2207 * -AUBO_BAD_STATE
2208 *
2209 * @throws arcs::common_interface::AuboException
2210 *
2211 * @par Python函数原型
2212 * setStandardAnalogOutputAfterEStop(self: pyaubo_sdk.IoControl, arg0: int,
2213 * arg1: float) -> int
2214 *
2215 * @par Lua函数原型
2216 * setStandardAnalogOutputAfterEStop(index: number, value: number) -> nil
2217 *
2218 * @par Lua示例
2219 * setStandardAnalogOutputAfterEStop(0,5.4)
2220 *
2221 * \endchinese
2222 * \english
2223 * Set the value of standard analog output after emergency stop
2224 *
2225 * @param index: Indicates the IO pin, starting from 0.
2226 * For example, 0 means the first pin.
2227 * @param value: Output value.
2228 *
2229 * @return Returns 0 on success; error code on failure.
2230 * AUBO_REQUEST_IGNORE
2231 * AUBO_BUSY
2232 * AUBO_BAD_STATE
2233 * -AUBO_INVL_ARGUMENT
2234 * -AUBO_BAD_STATE
2235 *
2236 * @throws arcs::common_interface::AuboException
2237 *
2238 * @par Python function prototype
2239 * setStandardAnalogOutputAfterEStop(self: pyaubo_sdk.IoControl, arg0: int,
2240 * arg1: float) -> int
2241 *
2242 * @par Lua function prototype
2243 * setStandardAnalogOutputAfterEStop(index: number, value: number) -> nil
2244 *
2245 * @par Lua example
2246 * setStandardAnalogOutputAfterEStop(0,5.4)
2247 *
2248 * \endenglish
2249 */
2250 int setStandardAnalogOutputAfterEStop(int index, double value);
2251
2252 /**
2253 * @ingroup IoControl
2254 * \chinese
2255 * 设置标准模拟输入的范围
2256 *
2257 * @param index: 表示IO口的管脚,管脚编号从0开始。
2258 * 例如,0表示第一个管脚。
2259 * @param domain: 输入的范围
2260 *
2261 * @return 成功返回0;失败返回错误码
2262 * AUBO_REQUEST_IGNORE
2263 * AUBO_BUSY
2264 * AUBO_BAD_STATE
2265 * -AUBO_INVL_ARGUMENT
2266 * -AUBO_BAD_STATE
2267 *
2268 * @throws arcs::common_interface::AuboException
2269 *
2270 * @par Python函数原型
2271 * setStandardAnalogInputDomain(self: pyaubo_sdk.IoControl, arg0: int, arg1:
2272 * int) -> int
2273 *
2274 * @par Lua函数原型
2275 * setStandardAnalogInputDomain(index: number, domain: number) -> nil
2276 *
2277 * @par Lua示例
2278 * setStandardAnalogInputDomain(0,1)
2279 *
2280 * @par JSON-RPC请求示例
2281 * {"jsonrpc":"2.0","method":"rob1.IoControl.setStandardAnalogInputDomain","params":[0,8],"id":1}
2282 *
2283 * @par JSON-RPC响应示例
2284 * {"id":1,"jsonrpc":"2.0","result":0}
2285 *
2286 * \endchinese
2287 * \english
2288 * Set the range of standard analog input.
2289 *
2290 * @param index: Indicates the IO pin, starting from 0.
2291 * For example, 0 means the first pin.
2292 * @param domain: Input range
2293 *
2294 * @return Returns 0 on success; error code on failure.
2295 * AUBO_REQUEST_IGNORE
2296 * AUBO_BUSY
2297 * AUBO_BAD_STATE
2298 * -AUBO_INVL_ARGUMENT
2299 * -AUBO_BAD_STATE
2300 *
2301 * @throws arcs::common_interface::AuboException
2302 *
2303 * @par Python function prototype
2304 * setStandardAnalogInputDomain(self: pyaubo_sdk.IoControl, arg0: int, arg1:
2305 * int) -> int
2306 *
2307 * @par Lua function prototype
2308 * setStandardAnalogInputDomain(index: number, domain: number) -> nil
2309 *
2310 * @par Lua example
2311 * setStandardAnalogInputDomain(0,1)
2312 *
2313 * @par JSON-RPC request example
2314 * {"jsonrpc":"2.0","method":"rob1.IoControl.setStandardAnalogInputDomain","params":[0,8],"id":1}
2315 *
2316 * @par JSON-RPC response example
2317 * {"id":1,"jsonrpc":"2.0","result":0}
2318 *
2319 * \endenglish
2320 */
2321 int setStandardAnalogInputDomain(int index, int domain);
2322
2323 /**
2324 * @ingroup IoControl
2325 * \chinese
2326 * 设置工具端模拟输入的范围
2327 *
2328 * @param index: 表示IO口的管脚,管脚编号从0开始。
2329 * 例如,0表示第一个管脚。
2330 * @param domain: 输入的范围
2331 * @return 成功返回0;失败返回错误码
2332 * AUBO_REQUEST_IGNORE
2333 * AUBO_BUSY
2334 * AUBO_BAD_STATE
2335 * -AUBO_INVL_ARGUMENT
2336 * -AUBO_BAD_STATE
2337 *
2338 * @throws arcs::common_interface::AuboException
2339 *
2340 * @par Python函数原型
2341 * setToolAnalogInputDomain(self: pyaubo_sdk.IoControl, arg0: int, arg1:
2342 * int) -> int
2343 *
2344 * @par Lua函数原型
2345 * setToolAnalogInputDomain(index: number, domain: number) -> nil
2346 *
2347 * @par Lua示例
2348 * setToolAnalogInputDomain(0,1)
2349 *
2350 * @par JSON-RPC请求示例
2351 * {"jsonrpc":"2.0","method":"rob1.IoControl.setToolAnalogInputDomain","params":[0,8],"id":1}
2352 *
2353 * @par JSON-RPC响应示例
2354 * {"id":1,"jsonrpc":"2.0","result":0}
2355 *
2356 * \endchinese
2357 * \english
2358 * Set the range of tool analog input.
2359 *
2360 * @param index: Indicates the IO pin, starting from 0.
2361 * For example, 0 means the first pin.
2362 * @param domain: Input range
2363 * @return Returns 0 on success; error code on failure.
2364 * AUBO_REQUEST_IGNORE
2365 * AUBO_BUSY
2366 * AUBO_BAD_STATE
2367 * -AUBO_INVL_ARGUMENT
2368 * -AUBO_BAD_STATE
2369 *
2370 * @throws arcs::common_interface::AuboException
2371 *
2372 * @par Python function prototype
2373 * setToolAnalogInputDomain(self: pyaubo_sdk.IoControl, arg0: int, arg1:
2374 * int) -> int
2375 *
2376 * @par Lua function prototype
2377 * setToolAnalogInputDomain(index: number, domain: number) -> nil
2378 *
2379 * @par Lua example
2380 * setToolAnalogInputDomain(0,1)
2381 *
2382 * @par JSON-RPC request example
2383 * {"jsonrpc":"2.0","method":"rob1.IoControl.setToolAnalogInputDomain","params":[0,8],"id":1}
2384 *
2385 * @par JSON-RPC response example
2386 * {"id":1,"jsonrpc":"2.0","result":0}
2387 *
2388 * \endenglish
2389 */
2390 int setToolAnalogInputDomain(int index, int domain);
2391
2392 /**
2393 * @ingroup IoControl
2394 * \chinese
2395 * 获取标准模式输入范围
2396 *
2397 * @param index: 表示IO口的管脚,管脚编号从0开始。
2398 * 例如,0表示第一个管脚。
2399 * @return 标准模式输入范围
2400 *
2401 * @throws arcs::common_interface::AuboException
2402 *
2403 * @par Python函数原型
2404 * getStandardAnalogInputDomain(self: pyaubo_sdk.IoControl, arg0: int) ->
2405 * int
2406 *
2407 * @par Lua函数原型
2408 * getStandardAnalogInputDomain(index: number) -> number
2409 *
2410 * @par Lua示例
2411 * num = getStandardAnalogInputDomain(0)
2412 *
2413 * @par JSON-RPC请求示例
2414 * {"jsonrpc":"2.0","method":"rob1.IoControl.getStandardAnalogInputDomain","params":[0],"id":1}
2415 *
2416 * @par JSON-RPC响应示例
2417 * {"id":1,"jsonrpc":"2.0","result":0}
2418 *
2419 * \endchinese
2420 * \english
2421 * Get the domain of standard analog input.
2422 *
2423 * @param index: Indicates the IO pin, starting from 0.
2424 * For example, 0 means the first pin.
2425 * @return Standard analog input domain
2426 *
2427 * @throws arcs::common_interface::AuboException
2428 *
2429 * @par Python function prototype
2430 * getStandardAnalogInputDomain(self: pyaubo_sdk.IoControl, arg0: int) ->
2431 * int
2432 *
2433 * @par Lua function prototype
2434 * getStandardAnalogInputDomain(index: number) -> number
2435 *
2436 * @par Lua example
2437 * num = getStandardAnalogInputDomain(0)
2438 *
2439 * @par JSON-RPC request example
2440 * {"jsonrpc":"2.0","method":"rob1.IoControl.getStandardAnalogInputDomain","params":[0],"id":1}
2441 *
2442 * @par JSON-RPC response example
2443 * {"id":1,"jsonrpc":"2.0","result":0}
2444 *
2445 * \endenglish
2446 */
2448
2449 /**
2450 * @ingroup IoControl
2451 * \chinese
2452 * 获取工具端模式输入范围
2453 *
2454 * @param index: 表示IO口的管脚,管脚编号从0开始。
2455 * 例如,0表示第一个管脚。
2456 * @return 工具端模式输入范围
2457 *
2458 * @throws arcs::common_interface::AuboException
2459 *
2460 * @par Python函数原型
2461 * getToolAnalogInputDomain(self: pyaubo_sdk.IoControl, arg0: int) -> int
2462 *
2463 * @par Lua函数原型
2464 * getToolAnalogInputDomain(index: number) -> number
2465 *
2466 * @par Lua示例
2467 * num = getToolAnalogInputDomain(0)
2468 *
2469 * @par JSON-RPC请求示例
2470 * {"jsonrpc":"2.0","method":"rob1.IoControl.getToolAnalogInputDomain","params":[0],"id":1}
2471 *
2472 * @par JSON-RPC响应示例
2473 * {"id":1,"jsonrpc":"2.0","result":10}
2474 *
2475 * \endchinese
2476 * \english
2477 * Get the domain of tool analog input.
2478 *
2479 * @param index: Indicates the IO pin, starting from 0.
2480 * For example, 0 means the first pin.
2481 * @return Tool analog input domain
2482 *
2483 * @throws arcs::common_interface::AuboException
2484 *
2485 * @par Python function prototype
2486 * getToolAnalogInputDomain(self: pyaubo_sdk.IoControl, arg0: int) -> int
2487 *
2488 * @par Lua function prototype
2489 * getToolAnalogInputDomain(index: number) -> number
2490 *
2491 * @par Lua example
2492 * num = getToolAnalogInputDomain(0)
2493 *
2494 * @par JSON-RPC request example
2495 * {"jsonrpc":"2.0","method":"rob1.IoControl.getToolAnalogInputDomain","params":[0],"id":1}
2496 *
2497 * @par JSON-RPC response example
2498 * {"id":1,"jsonrpc":"2.0","result":10}
2499 *
2500 * \endenglish
2501 */
2503
2504 /**
2505 * @ingroup IoControl
2506 * \chinese
2507 * 设置标准模拟输出的范围
2508 *
2509 * @param index: 表示IO口的管脚,管脚编号从0开始。
2510 * 例如,0表示第一个管脚。
2511 * @param domain: 输出的范围
2512 *
2513 * @return 成功返回0;失败返回错误码
2514 * AUBO_REQUEST_IGNORE
2515 * AUBO_BUSY
2516 * AUBO_BAD_STATE
2517 * -AUBO_INVL_ARGUMENT
2518 * -AUBO_BAD_STATE
2519 *
2520 * @throws arcs::common_interface::AuboException
2521 *
2522 * @par Python函数原型
2523 * setStandardAnalogOutputDomain(self: pyaubo_sdk.IoControl, arg0: int,
2524 * arg1: int) -> int
2525 *
2526 * @par Lua函数原型
2527 * setStandardAnalogOutputDomain(index: number, domain: number) -> nil
2528 *
2529 * @par Lua示例
2530 * setStandardAnalogOutputDomain(0,1)
2531 *
2532 * @par JSON-RPC请求示例
2533 * {"jsonrpc":"2.0","method":"rob1.IoControl.setStandardAnalogOutputDomain","params":[0,8],"id":1}
2534 *
2535 * @par JSON-RPC响应示例
2536 * {"id":1,"jsonrpc":"2.0","result":0}
2537 *
2538 * \endchinese
2539 * \english
2540 * Set the range of standard analog output.
2541 *
2542 * @param index: Indicates the IO pin, starting from 0.
2543 * For example, 0 means the first pin.
2544 * @param domain: Output range
2545 *
2546 * @return Returns 0 on success; error code on failure.
2547 * AUBO_REQUEST_IGNORE
2548 * AUBO_BUSY
2549 * AUBO_BAD_STATE
2550 * -AUBO_INVL_ARGUMENT
2551 * -AUBO_BAD_STATE
2552 *
2553 * @throws arcs::common_interface::AuboException
2554 *
2555 * @par Python function prototype
2556 * setStandardAnalogOutputDomain(self: pyaubo_sdk.IoControl, arg0: int,
2557 * arg1: int) -> int
2558 *
2559 * @par Lua function prototype
2560 * setStandardAnalogOutputDomain(index: number, domain: number) -> nil
2561 *
2562 * @par Lua example
2563 * setStandardAnalogOutputDomain(0,1)
2564 *
2565 * @par JSON-RPC request example
2566 * {"jsonrpc":"2.0","method":"rob1.IoControl.setStandardAnalogOutputDomain","params":[0,8],"id":1}
2567 *
2568 * @par JSON-RPC response example
2569 * {"id":1,"jsonrpc":"2.0","result":0}
2570 *
2571 * \endenglish
2572 */
2573 int setStandardAnalogOutputDomain(int index, int domain);
2574
2575 /**
2576 * @ingroup IoControl
2577 * \chinese
2578 * 设置工具端模拟输出范围
2579 *
2580 * @param index: 表示IO口的管脚,管脚编号从0开始。
2581 * 例如,0表示第一个管脚。
2582 * @param domain: 输出的范围
2583 *
2584 * @return 成功返回0;失败返回错误码
2585 * AUBO_REQUEST_IGNORE
2586 * AUBO_BUSY
2587 * AUBO_BAD_STATE
2588 * -AUBO_INVL_ARGUMENT
2589 * -AUBO_BAD_STATE
2590 *
2591 * @throws arcs::common_interface::AuboException
2592 *
2593 * @par Python函数原型
2594 * setToolAnalogOutputDomain(self: pyaubo_sdk.IoControl, arg0: int, arg1:
2595 * int) -> int
2596 *
2597 * @par Lua函数原型
2598 * setToolAnalogOutputDomain(index: number, domain: number) -> nil
2599 *
2600 * @par Lua示例
2601 * setToolAnalogOutputDomain(0,1)
2602 *
2603 * \endchinese
2604 * \english
2605 * Set the range of tool analog output.
2606 *
2607 * @param index: Indicates the IO pin, starting from 0.
2608 * For example, 0 means the first pin.
2609 * @param domain: Output range
2610 *
2611 * @return Returns 0 on success; error code on failure.
2612 * AUBO_REQUEST_IGNORE
2613 * AUBO_BUSY
2614 * AUBO_BAD_STATE
2615 * -AUBO_INVL_ARGUMENT
2616 * -AUBO_BAD_STATE
2617 *
2618 * @throws arcs::common_interface::AuboException
2619 *
2620 * @par Python function prototype
2621 * setToolAnalogOutputDomain(self: pyaubo_sdk.IoControl, arg0: int, arg1:
2622 * int) -> int
2623 *
2624 * @par Lua function prototype
2625 * setToolAnalogOutputDomain(index: number, domain: number) -> nil
2626 *
2627 * @par Lua example
2628 * setToolAnalogOutputDomain(0,1)
2629 *
2630 * \endenglish
2631 */
2632 int setToolAnalogOutputDomain(int index, int domain);
2633
2634 /**
2635 * @ingroup IoControl
2636 * \chinese
2637 * 获取标准模拟输出范围
2638 *
2639 * @param index: 表示IO口的管脚,管脚编号从0开始。
2640 * 例如,0表示第一个管脚。
2641 * @return 标准模拟输出范围
2642 *
2643 * @throws arcs::common_interface::AuboException
2644 *
2645 * @par Python函数原型
2646 * getStandardAnalogOutputDomain(self: pyaubo_sdk.IoControl, arg0: int) ->
2647 * int
2648 *
2649 * @par Lua函数原型
2650 * getStandardAnalogOutputDomain(index: number) -> number
2651 *
2652 * @par Lua示例
2653 * num = getStandardAnalogOutputDomain(0)
2654 *
2655 * @par JSON-RPC请求示例
2656 * {"jsonrpc":"2.0","method":"rob1.IoControl.getStandardAnalogOutputDomain","params":[0],"id":1}
2657 *
2658 * @par JSON-RPC响应示例
2659 * {"id":1,"jsonrpc":"2.0","result":0}
2660 *
2661 * \endchinese
2662 * \english
2663 * Get the domain of standard analog output.
2664 *
2665 * @param index: Indicates the IO pin, starting from 0.
2666 * For example, 0 means the first pin.
2667 * @return Standard analog output domain
2668 *
2669 * @throws arcs::common_interface::AuboException
2670 *
2671 * @par Python function prototype
2672 * getStandardAnalogOutputDomain(self: pyaubo_sdk.IoControl, arg0: int) ->
2673 * int
2674 *
2675 * @par Lua function prototype
2676 * getStandardAnalogOutputDomain(index: number) -> number
2677 *
2678 * @par Lua example
2679 * num = getStandardAnalogOutputDomain(0)
2680 *
2681 * @par JSON-RPC request example
2682 * {"jsonrpc":"2.0","method":"rob1.IoControl.getStandardAnalogOutputDomain","params":[0],"id":1}
2683 *
2684 * @par JSON-RPC response example
2685 * {"id":1,"jsonrpc":"2.0","result":0}
2686 *
2687 * \endenglish
2688 */
2690
2691 /**
2692 * @ingroup IoControl
2693 * \chinese
2694 * 获取工具端模拟输出范围
2695 *
2696 * @param index: 表示IO口的管脚,管脚编号从0开始。
2697 * 例如,0表示第一个管脚。
2698 * @return 工具端模拟输出范围
2699 *
2700 * @throws arcs::common_interface::AuboException
2701 *
2702 * @par Python函数原型
2703 * getToolAnalogOutputDomain(self: pyaubo_sdk.IoControl, arg0: int) -> int
2704 *
2705 * @par Lua函数原型
2706 * getToolAnalogOutputDomain(index: number) -> number
2707 *
2708 * @par Lua示例
2709 * num = getToolAnalogOutputDomain(0)
2710 *
2711 * @par JSON-RPC请求示例
2712 * {"jsonrpc":"2.0","method":"rob1.IoControl.getToolAnalogOutputDomain","params":[0],"id":1}
2713 *
2714 * @par JSON-RPC响应示例
2715 * {"id":1,"jsonrpc":"2.0","result":0}
2716 *
2717 * \endchinese
2718 * \english
2719 * Get the domain of tool analog output.
2720 *
2721 * @param index: Indicates the IO pin, starting from 0.
2722 * For example, 0 means the first pin.
2723 * @return Tool analog output domain
2724 *
2725 * @throws arcs::common_interface::AuboException
2726 *
2727 * @par Python function prototype
2728 * getToolAnalogOutputDomain(self: pyaubo_sdk.IoControl, arg0: int) -> int
2729 *
2730 * @par Lua function prototype
2731 * getToolAnalogOutputDomain(index: number) -> number
2732 *
2733 * @par Lua example
2734 * num = getToolAnalogOutputDomain(0)
2735 *
2736 * @par JSON-RPC request example
2737 * {"jsonrpc":"2.0","method":"rob1.IoControl.getToolAnalogOutputDomain","params":[0],"id":1}
2738 *
2739 * @par JSON-RPC response example
2740 * {"id":1,"jsonrpc":"2.0","result":0}
2741 *
2742 * \endenglish
2743 */
2745
2746 /**
2747 * @ingroup IoControl
2748 * \chinese
2749 * 设置工具端电源电压值(单位V)
2750 *
2751 * @param domain: 工具端电源电压值,可选三个档位,分别为0、12和24。\n
2752 * 0表示0V, 12表示12V, 24表示24V。
2753 *
2754 * @return 成功返回0; 失败返回错误码
2755 * AUBO_REQUEST_IGNORE
2756 * AUBO_BUSY
2757 * AUBO_BAD_STATE
2758 * -AUBO_INVL_ARGUMENT
2759 * -AUBO_BAD_STATE
2760 *
2761 * @throws arcs::common_interface::AuboException
2762 *
2763 * @par Python函数原型
2764 * setToolVoltageOutputDomain(self: pyaubo_sdk.IoControl, arg0: int) -> int
2765 *
2766 * @par Lua函数原型
2767 * setToolVoltageOutputDomain(domain: number) -> nil
2768 *
2769 * @par Lua示例
2770 * setToolVoltageOutputDomain(24)
2771 *
2772 * @par JSON-RPC请求示例
2773 * {"jsonrpc":"2.0","method":"rob1.IoControl.setToolVoltageOutputDomain","params":[24],"id":1}
2774 *
2775 * @par JSON-RPC响应示例
2776 * {"id":1,"jsonrpc":"2.0","result":0}
2777 *
2778 * \endchinese
2779 * \english
2780 * Set the tool voltage output value (unit: V)
2781 *
2782 * @param domain: Tool voltage output value, can be 0, 12, or 24.\n
2783 * 0 means 0V, 12 means 12V, 24 means 24V.
2784 *
2785 * @return Returns 0 on success; error code on failure.
2786 * AUBO_REQUEST_IGNORE
2787 * AUBO_BUSY
2788 * AUBO_BAD_STATE
2789 * -AUBO_INVL_ARGUMENT
2790 * -AUBO_BAD_STATE
2791 *
2792 * @throws arcs::common_interface::AuboException
2793 *
2794 * @par Python function prototype
2795 * setToolVoltageOutputDomain(self: pyaubo_sdk.IoControl, arg0: int) -> int
2796 *
2797 * @par Lua function prototype
2798 * setToolVoltageOutputDomain(domain: number) -> nil
2799 *
2800 * @par Lua example
2801 * setToolVoltageOutputDomain(24)
2802 *
2803 * @par JSON-RPC request example
2804 * {"jsonrpc":"2.0","method":"rob1.IoControl.setToolVoltageOutputDomain","params":[24],"id":1}
2805 *
2806 * @par JSON-RPC response example
2807 * {"id":1,"jsonrpc":"2.0","result":0}
2808 *
2809 * \endenglish
2810 */
2812
2813 /**
2814 * @ingroup IoControl
2815 * \chinese
2816 * 获取工具端电源电压值(单位V)
2817 *
2818 * @return 工具端电源电压值(单位V)
2819 *
2820 * @throws arcs::common_interface::AuboException
2821 *
2822 * @par Python函数原型
2823 * getToolVoltageOutputDomain(self: pyaubo_sdk.IoControl) -> int
2824 *
2825 * @par Lua函数原型
2826 * getToolVoltageOutputDomain() -> number
2827 *
2828 * @par Lua示例
2829 * num = getToolVoltageOutputDomain()
2830 *
2831 * @par JSON-RPC请求示例
2832 * {"jsonrpc":"2.0","method":"rob1.IoControl.getToolVoltageOutputDomain","params":[],"id":1}
2833 *
2834 * @par JSON-RPC响应示例
2835 * {"id":1,"jsonrpc":"2.0","result":0}
2836 *
2837 * \endchinese
2838 * \english
2839 * Get the tool voltage output value (unit: V)
2840 *
2841 * @return Tool voltage output value (unit: V)
2842 *
2843 * @throws arcs::common_interface::AuboException
2844 *
2845 * @par Python function prototype
2846 * getToolVoltageOutputDomain(self: pyaubo_sdk.IoControl) -> int
2847 *
2848 * @par Lua function prototype
2849 * getToolVoltageOutputDomain() -> number
2850 *
2851 * @par Lua example
2852 * num = getToolVoltageOutputDomain()
2853 *
2854 * @par JSON-RPC request example
2855 * {"jsonrpc":"2.0","method":"rob1.IoControl.getToolVoltageOutputDomain","params":[],"id":1}
2856 *
2857 * @par JSON-RPC response example
2858 * {"id":1,"jsonrpc":"2.0","result":0}
2859 *
2860 * \endenglish
2861 */
2863
2864 /**
2865 * @ingroup IoControl
2866 * \chinese
2867 * 设置标准数字输出值
2868 *
2869 * @param index: 表示IO口的管脚,
2870 * @param value: 输出值
2871 * @return 成功返回0;失败返回错误码
2872 * AUBO_REQUEST_IGNORE
2873 * AUBO_BUSY
2874 * AUBO_BAD_STATE
2875 * -AUBO_INVL_ARGUMENT
2876 * -AUBO_BAD_STATE
2877 *
2878 * @throws arcs::common_interface::AuboException
2879 *
2880 * @par Python函数原型
2881 * setStandardDigitalOutput(self: pyaubo_sdk.IoControl, arg0: int, arg1:
2882 * bool) -> int
2883 *
2884 * @par Lua函数原型
2885 * setStandardDigitalOutput(index: number, value: boolean) -> nil
2886 *
2887 * @par Lua示例
2888 * setStandardDigitalOutput(0,true)
2889 *
2890 * @par JSON-RPC请求示例
2891 * {"jsonrpc":"2.0","method":"rob1.IoControl.setStandardDigitalOutput","params":[0,true],"id":1}
2892 *
2893 * @par JSON-RPC响应示例
2894 * {"id":1,"jsonrpc":"2.0","result":0}
2895 *
2896 * \endchinese
2897 * \english
2898 * Set the value of a standard digital output.
2899 *
2900 * @param index: Indicates the IO pin.
2901 * @param value: Output value.
2902 * @return Returns 0 on success; error code on failure.
2903 * AUBO_REQUEST_IGNORE
2904 * AUBO_BUSY
2905 * AUBO_BAD_STATE
2906 * -AUBO_INVL_ARGUMENT
2907 * -AUBO_BAD_STATE
2908 *
2909 * @throws arcs::common_interface::AuboException
2910 *
2911 * @par Python function prototype
2912 * setStandardDigitalOutput(self: pyaubo_sdk.IoControl, arg0: int, arg1:
2913 * bool) -> int
2914 *
2915 * @par Lua function prototype
2916 * setStandardDigitalOutput(index: number, value: boolean) -> nil
2917 *
2918 * @par Lua example
2919 * setStandardDigitalOutput(0,true)
2920 *
2921 * @par JSON-RPC request example
2922 * {"jsonrpc":"2.0","method":"rob1.IoControl.setStandardDigitalOutput","params":[0,true],"id":1}
2923 *
2924 * @par JSON-RPC response example
2925 * {"id":1,"jsonrpc":"2.0","result":0}
2926 *
2927 * \endenglish
2928 */
2929 int setStandardDigitalOutput(int index, bool value);
2930
2931 /**
2932 * @ingroup IoControl
2933 * \chinese
2934 * 设置数字输出脉冲
2935 *
2936 * @param index
2937 * @param value
2938 * @param duration
2939 *
2940 * @return 成功返回0;失败返回错误码
2941 * AUBO_REQUEST_IGNORE
2942 * AUBO_BUSY
2943 * AUBO_BAD_STATE
2944 * -AUBO_INVL_ARGUMENT
2945 * -AUBO_BAD_STATE
2946 *
2947 * @throws arcs::common_interface::AuboException
2948 *
2949 * @par Python函数原型
2950 * setStandardDigitalOutputPulse(self: pyaubo_sdk.IoControl, arg0: int,
2951 * arg1: bool, arg2: float) -> int
2952 *
2953 * @par Lua函数原型
2954 * setStandardDigitalOutputPulse(index: number, value: boolean, duration:
2955 * number) -> nil
2956 *
2957 * @par Lua示例
2958 * setStandardDigitalOutputPulse(0,true,2.5)
2959 *
2960 * @par JSON-RPC请求示例
2961 * {"jsonrpc":"2.0","method":"rob1.IoControl.setStandardDigitalOutputPulse","params":[0,true,0.5],"id":1}
2962 *
2963 * @par JSON-RPC响应示例
2964 * {"id":1,"jsonrpc":"2.0","result":0}
2965 *
2966 * \endchinese
2967 * \english
2968 * Set digital output pulse.
2969 *
2970 * @param index
2971 * @param value
2972 * @param duration
2973 *
2974 * @return Returns 0 on success; error code on failure.
2975 * AUBO_REQUEST_IGNORE
2976 * AUBO_BUSY
2977 * AUBO_BAD_STATE
2978 * -AUBO_INVL_ARGUMENT
2979 * -AUBO_BAD_STATE
2980 *
2981 * @throws arcs::common_interface::AuboException
2982 *
2983 * @par Python function prototype
2984 * setStandardDigitalOutputPulse(self: pyaubo_sdk.IoControl, arg0: int,
2985 * arg1: bool, arg2: float) -> int
2986 *
2987 * @par Lua function prototype
2988 * setStandardDigitalOutputPulse(index: number, value: boolean, duration:
2989 * number) -> nil
2990 *
2991 * @par Lua example
2992 * setStandardDigitalOutputPulse(0,true,2.5)
2993 *
2994 * @par JSON-RPC request example
2995 * {"jsonrpc":"2.0","method":"rob1.IoControl.setStandardDigitalOutputPulse","params":[0,true,0.5],"id":1}
2996 *
2997 * @par JSON-RPC response example
2998 * {"id":1,"jsonrpc":"2.0","result":0}
2999 *
3000 * \endenglish
3001 */
3002 int setStandardDigitalOutputPulse(int index, bool value, double duration);
3003
3004 /**
3005 * @ingroup IoControl
3006 * \chinese
3007 * 设置工具端数字输出值
3008 *
3009 * @param index: 表示IO口的管脚,管脚编号从0开始。
3010 * 例如,0表示第一个管脚。
3011 * @param value: 数字输出值
3012 *
3013 * @return 成功返回0;失败返回错误码
3014 * AUBO_REQUEST_IGNORE
3015 * AUBO_BUSY
3016 * AUBO_BAD_STATE
3017 * -AUBO_INVL_ARGUMENT
3018 * -AUBO_BAD_STATE
3019 *
3020 * @throws arcs::common_interface::AuboException
3021 *
3022 * @par Python函数原型
3023 * setToolDigitalOutput(self: pyaubo_sdk.IoControl, arg0: int, arg1: bool)
3024 * -> int
3025 *
3026 * @par Lua函数原型
3027 * setToolDigitalOutput(index: number, value: boolean) -> nil
3028 *
3029 * @par Lua示例
3030 * setToolDigitalOutput(0,true)
3031 *
3032 * @par JSON-RPC请求示例
3033 * {"jsonrpc":"2.0","method":"rob1.IoControl.setToolDigitalOutput","params":[0,true],"id":1}
3034 *
3035 * @par JSON-RPC响应示例
3036 * {"id":1,"jsonrpc":"2.0","result":0}
3037 *
3038 * \endchinese
3039 * \english
3040 * Set the value of tool digital output.
3041 *
3042 * @param index: Indicates the IO pin, starting from 0.
3043 * For example, 0 means the first pin.
3044 * @param value: Output value.
3045 *
3046 * @return Returns 0 on success; error code on failure.
3047 * AUBO_REQUEST_IGNORE
3048 * AUBO_BUSY
3049 * AUBO_BAD_STATE
3050 * -AUBO_INVL_ARGUMENT
3051 * -AUBO_BAD_STATE
3052 *
3053 * @throws arcs::common_interface::AuboException
3054 *
3055 * @par Python function prototype
3056 * setToolDigitalOutput(self: pyaubo_sdk.IoControl, arg0: int, arg1: bool)
3057 * -> int
3058 *
3059 * @par Lua function prototype
3060 * setToolDigitalOutput(index: number, value: boolean) -> nil
3061 *
3062 * @par Lua example
3063 * setToolDigitalOutput(0,true)
3064 *
3065 * @par JSON-RPC request example
3066 * {"jsonrpc":"2.0","method":"rob1.IoControl.setToolDigitalOutput","params":[0,true],"id":1}
3067 *
3068 * @par JSON-RPC response example
3069 * {"id":1,"jsonrpc":"2.0","result":0}
3070 *
3071 * \endenglish
3072 */
3073 int setToolDigitalOutput(int index, bool value);
3074
3075 /**
3076 * @ingroup IoControl
3077 * \chinese
3078 * 设置工具端数字输出脉冲
3079 *
3080 * @param index
3081 * @param value
3082 * @param duration
3083 *
3084 * @return 成功返回0;失败返回错误码
3085 * AUBO_REQUEST_IGNORE
3086 * AUBO_BUSY
3087 * AUBO_BAD_STATE
3088 * -AUBO_INVL_ARGUMENT
3089 * -AUBO_BAD_STATE
3090 *
3091 * @throws arcs::common_interface::AuboException
3092 *
3093 * @par Python函数原型
3094 * setToolDigitalOutputPulse(self: pyaubo_sdk.IoControl, arg0: int, arg1:
3095 * bool, arg2: float) -> int
3096 *
3097 * @par Lua函数原型
3098 * setToolDigitalOutputPulse(index: number, value: boolean, duration:
3099 * number) -> nil
3100 *
3101 * @par Lua示例
3102 * setToolDigitalOutputPulse(0,true,2)
3103 *
3104 * @par JSON-RPC请求示例
3105 * {"jsonrpc":"2.0","method":"rob1.IoControl.setToolDigitalOutputPulse","params":[0,true,0.5],"id":1}
3106 *
3107 * @par JSON-RPC响应示例
3108 * {"id":1,"jsonrpc":"2.0","result":0}
3109 *
3110 * \endchinese
3111 * \english
3112 * Set tool digital output pulse.
3113 *
3114 * @param index
3115 * @param value
3116 * @param duration
3117 *
3118 * @return Returns 0 on success; error code on failure.
3119 * AUBO_REQUEST_IGNORE
3120 * AUBO_BUSY
3121 * AUBO_BAD_STATE
3122 * -AUBO_INVL_ARGUMENT
3123 * -AUBO_BAD_STATE
3124 *
3125 * @throws arcs::common_interface::AuboException
3126 *
3127 * @par Python function prototype
3128 * setToolDigitalOutputPulse(self: pyaubo_sdk.IoControl, arg0: int, arg1:
3129 * bool, arg2: float) -> int
3130 *
3131 * @par Lua function prototype
3132 * setToolDigitalOutputPulse(index: number, value: boolean, duration:
3133 * number) -> nil
3134 *
3135 * @par Lua example
3136 * setToolDigitalOutputPulse(0,true,2)
3137 *
3138 * @par JSON-RPC request example
3139 * {"jsonrpc":"2.0","method":"rob1.IoControl.setToolDigitalOutputPulse","params":[0,true,0.5],"id":1}
3140 *
3141 * @par JSON-RPC response example
3142 * {"id":1,"jsonrpc":"2.0","result":0}
3143 *
3144 * \endenglish
3145 */
3146 int setToolDigitalOutputPulse(int index, bool value, double duration);
3147
3148 /**
3149 * @ingroup IoControl
3150 * \chinese
3151 * 设置可配置数字输出值
3152 *
3153 * @param index: 表示IO口的管脚,管脚编号从0开始。
3154 * 例如,0表示第一个管脚。
3155 * @param value: 数字输出值
3156 *
3157 * @return 成功返回0;失败返回错误码
3158 * AUBO_REQUEST_IGNORE
3159 * AUBO_BUSY
3160 * AUBO_BAD_STATE
3161 * -AUBO_INVL_ARGUMENT
3162 * -AUBO_BAD_STATE
3163 *
3164 * @throws arcs::common_interface::AuboException
3165 *
3166 * @par Python函数原型
3167 * setConfigurableDigitalOutput(self: pyaubo_sdk.IoControl, arg0: int, arg1:
3168 * bool) -> int
3169 *
3170 * @par Lua函数原型
3171 * setConfigurableDigitalOutput(index: number, value: boolean) -> nil
3172 *
3173 * @par Lua示例
3174 * setConfigurableDigitalOutput(0,true)
3175 *
3176 * @par JSON-RPC请求示例
3177 * {"jsonrpc":"2.0","method":"rob1.IoControl.setConfigurableDigitalOutput","params":[0,true],"id":1}
3178 *
3179 * @par JSON-RPC响应示例
3180 * {"id":1,"jsonrpc":"2.0","result":0}
3181 *
3182 * \endchinese
3183 * \english
3184 * Set the value of configurable digital output.
3185 *
3186 * @param index: Indicates the IO pin, starting from 0.
3187 * For example, 0 means the first pin.
3188 * @param value: Output value.
3189 *
3190 * @return Returns 0 on success; error code on failure.
3191 * AUBO_REQUEST_IGNORE
3192 * AUBO_BUSY
3193 * AUBO_BAD_STATE
3194 * -AUBO_INVL_ARGUMENT
3195 * -AUBO_BAD_STATE
3196 *
3197 * @throws arcs::common_interface::AuboException
3198 *
3199 * @par Python function prototype
3200 * setConfigurableDigitalOutput(self: pyaubo_sdk.IoControl, arg0: int, arg1:
3201 * bool) -> int
3202 *
3203 * @par Lua function prototype
3204 * setConfigurableDigitalOutput(index: number, value: boolean) -> nil
3205 *
3206 * @par Lua example
3207 * setConfigurableDigitalOutput(0,true)
3208 *
3209 * @par JSON-RPC request example
3210 * {"jsonrpc":"2.0","method":"rob1.IoControl.setConfigurableDigitalOutput","params":[0,true],"id":1}
3211 *
3212 * @par JSON-RPC response example
3213 * {"id":1,"jsonrpc":"2.0","result":0}
3214 *
3215 * \endenglish
3216 */
3217 int setConfigurableDigitalOutput(int index, bool value);
3218
3219 /**
3220 * @ingroup IoControl
3221 * \chinese
3222 * 设置可配置数字输出脉冲
3223 *
3224 * @param index
3225 * @param value
3226 * @param duration
3227 *
3228 * @return 成功返回0;失败返回错误码
3229 * AUBO_REQUEST_IGNORE
3230 * AUBO_BUSY
3231 * AUBO_BAD_STATE
3232 * -AUBO_INVL_ARGUMENT
3233 * -AUBO_BAD_STATE
3234 *
3235 * @throws arcs::common_interface::AuboException
3236 *
3237 * @par Python函数原型
3238 * setConfigurableDigitalOutputPulse(self: pyaubo_sdk.IoControl, arg0: int,
3239 * arg1: bool, arg2: float) -> int
3240 *
3241 * @par Lua函数原型
3242 * setConfigurableDigitalOutputPulse(index: number, value: boolean,
3243 * duration: number) -> nil
3244 *
3245 * @par Lua示例
3246 * setConfigurableDigitalOutputPulse(0,true,2.3)
3247 *
3248 * @par JSON-RPC请求示例
3249 * {"jsonrpc":"2.0","method":"rob1.IoControl.setConfigurableDigitalOutputPulse","params":[0,true,0.5],"id":1}
3250 *
3251 * @par JSON-RPC响应示例
3252 * {"id":1,"jsonrpc":"2.0","result":0}
3253 *
3254 * \endchinese
3255 * \english
3256 * Set configurable digital output pulse.
3257 *
3258 * @param index
3259 * @param value
3260 * @param duration
3261 *
3262 * @return Returns 0 on success; error code on failure.
3263 * AUBO_REQUEST_IGNORE
3264 * AUBO_BUSY
3265 * AUBO_BAD_STATE
3266 * -AUBO_INVL_ARGUMENT
3267 * -AUBO_BAD_STATE
3268 *
3269 * @throws arcs::common_interface::AuboException
3270 *
3271 * @par Python function prototype
3272 * setConfigurableDigitalOutputPulse(self: pyaubo_sdk.IoControl, arg0: int,
3273 * arg1: bool, arg2: float) -> int
3274 *
3275 * @par Lua function prototype
3276 * setConfigurableDigitalOutputPulse(index: number, value: boolean,
3277 * duration: number) -> nil
3278 *
3279 * @par Lua example
3280 * setConfigurableDigitalOutputPulse(0,true,2.3)
3281 *
3282 * @par JSON-RPC request example
3283 * {"jsonrpc":"2.0","method":"rob1.IoControl.setConfigurableDigitalOutputPulse","params":[0,true,0.5],"id":1}
3284 *
3285 * @par JSON-RPC response example
3286 * {"id":1,"jsonrpc":"2.0","result":0}
3287 *
3288 * \endenglish
3289 */
3290 int setConfigurableDigitalOutputPulse(int index, bool value,
3291 double duration);
3292
3293 /**
3294 * @ingroup IoControl
3295 * \chinese
3296 * 设置标准模拟输出值
3297 *
3298 * @param index: 表示IO口的管脚,管脚编号从0开始。
3299 * 例如,0表示第一个管脚。
3300 * @param value: 模拟输出值
3301 *
3302 * @return 成功返回0;失败返回错误码
3303 * AUBO_REQUEST_IGNORE
3304 * AUBO_BUSY
3305 * AUBO_BAD_STATE
3306 * -AUBO_INVL_ARGUMENT
3307 * -AUBO_BAD_STATE
3308 *
3309 * @throws arcs::common_interface::AuboException
3310 *
3311 * @par Python函数原型
3312 * setStandardAnalogOutput(self: pyaubo_sdk.IoControl, arg0: int, arg1:
3313 * float) -> int
3314 *
3315 * @par Lua函数原型
3316 * setStandardAnalogOutput(index: number, value: number) -> nil
3317 *
3318 * @par Lua示例
3319 * setStandardAnalogOutput(0,5.4)
3320 *
3321 * \endchinese
3322 * \english
3323 * Set the value of standard analog output.
3324 *
3325 * @param index: Indicates the IO pin, starting from 0.
3326 * For example, 0 means the first pin.
3327 * @param value: Output value.
3328 *
3329 * @return Returns 0 on success; error code on failure.
3330 * AUBO_REQUEST_IGNORE
3331 * AUBO_BUSY
3332 * AUBO_BAD_STATE
3333 * -AUBO_INVL_ARGUMENT
3334 * -AUBO_BAD_STATE
3335 *
3336 * @throws arcs::common_interface::AuboException
3337 *
3338 * @par Python function prototype
3339 * setStandardAnalogOutput(self: pyaubo_sdk.IoControl, arg0: int, arg1:
3340 * float) -> int
3341 *
3342 * @par Lua function prototype
3343 * setStandardAnalogOutput(index: number, value: number) -> nil
3344 *
3345 * @par Lua example
3346 * setStandardAnalogOutput(0,5.4)
3347 *
3348 * \endenglish
3349 */
3350 int setStandardAnalogOutput(int index, double value);
3351
3352 /**
3353 * @ingroup IoControl
3354 * \chinese
3355 * 设置工具端模拟输出值
3356 *
3357 * @param index: 表示IO口的管脚,管脚编号从0开始。
3358 * 例如,0表示第一个管脚。
3359 * @param value: 模拟输出
3360 *
3361 * @return 成功返回0;失败返回错误码
3362 * AUBO_REQUEST_IGNORE
3363 * AUBO_BUSY
3364 * AUBO_BAD_STATE
3365 * -AUBO_INVL_ARGUMENT
3366 * -AUBO_BAD_STATE
3367 *
3368 * @throws arcs::common_interface::AuboException
3369 *
3370 * @par Python函数原型
3371 * setToolAnalogOutput(self: pyaubo_sdk.IoControl, arg0: int, arg1: float)
3372 * -> int
3373 *
3374 * @par Lua函数原型
3375 * setToolAnalogOutput(index: number, value: number) -> nil
3376 *
3377 * @par Lua示例
3378 * setToolAnalogOutput(0,1.2)
3379 *
3380 * @par JSON-RPC请求示例
3381 * {"jsonrpc":"2.0","method":"rob1.IoControl.setToolAnalogOutput","params":[0,0.5],"id":1}
3382 *
3383 * @par JSON-RPC响应示例
3384 * {"id":1,"jsonrpc":"2.0","result":13}
3385 *
3386 * \endchinese
3387 * \english
3388 * Set the value of tool analog output.
3389 *
3390 * @param index: Indicates the IO pin, starting from 0.
3391 * For example, 0 means the first pin.
3392 * @param value: Output value.
3393 *
3394 * @return Returns 0 on success; error code on failure.
3395 * AUBO_REQUEST_IGNORE
3396 * AUBO_BUSY
3397 * AUBO_BAD_STATE
3398 * -AUBO_INVL_ARGUMENT
3399 * -AUBO_BAD_STATE
3400 *
3401 * @throws arcs::common_interface::AuboException
3402 *
3403 * @par Python function prototype
3404 * setToolAnalogOutput(self: pyaubo_sdk.IoControl, arg0: int, arg1: float)
3405 * -> int
3406 *
3407 * @par Lua function prototype
3408 * setToolAnalogOutput(index: number, value: number) -> nil
3409 *
3410 * @par Lua example
3411 * setToolAnalogOutput(0,1.2)
3412 *
3413 * @par JSON-RPC request example
3414 * {"jsonrpc":"2.0","method":"rob1.IoControl.setToolAnalogOutput","params":[0,0.5],"id":1}
3415 *
3416 * @par JSON-RPC response example
3417 * {"id":1,"jsonrpc":"2.0","result":13}
3418 *
3419 * \endenglish
3420 */
3421 int setToolAnalogOutput(int index, double value);
3422
3423 /**
3424 * @ingroup IoControl
3425 * \chinese
3426 * 获取标准数字输入值
3427 *
3428 * @param index: 表示IO口的管脚,管脚编号从0开始。
3429 * 例如,0表示第一个管脚。
3430 *
3431 * @return 高电平返回true; 低电平返回false
3432 *
3433 * @throws arcs::common_interface::AuboException
3434 *
3435 * @par Python函数原型
3436 * getStandardDigitalInput(self: pyaubo_sdk.IoControl, arg0: int) -> bool
3437 *
3438 * @par Lua函数原型
3439 * getStandardDigitalInput(index: number) -> boolean
3440 *
3441 * @par Lua示例
3442 * status = getStandardDigitalInput(0)
3443 *
3444 * @par JSON-RPC请求示例
3445 * {"jsonrpc":"2.0","method":"rob1.IoControl.getStandardDigitalInput","params":[0],"id":1}
3446 *
3447 * @par JSON-RPC响应示例
3448 * {"id":1,"jsonrpc":"2.0","result":false}
3449 *
3450 * \endchinese
3451 * \english
3452 * Get the value of a standard digital input.
3453 *
3454 * @param index: Indicates the IO pin, starting from 0.
3455 * For example, 0 means the first pin.
3456 *
3457 * @return Returns true for high level; false for low level.
3458 *
3459 * @throws arcs::common_interface::AuboException
3460 *
3461 * @par Python function prototype
3462 * getStandardDigitalInput(self: pyaubo_sdk.IoControl, arg0: int) -> bool
3463 *
3464 * @par Lua function prototype
3465 * getStandardDigitalInput(index: number) -> boolean
3466 *
3467 * @par Lua example
3468 * status = getStandardDigitalInput(0)
3469 *
3470 * @par JSON-RPC request example
3471 * {"jsonrpc":"2.0","method":"rob1.IoControl.getStandardDigitalInput","params":[0],"id":1}
3472 *
3473 * @par JSON-RPC response example
3474 * {"id":1,"jsonrpc":"2.0","result":false}
3475 *
3476 * \endenglish
3477 */
3479
3480 /**
3481 * @ingroup IoControl
3482 * \chinese
3483 * 获取所有的标准数字输入值
3484 *
3485 * @return 所有的标准数字输入值 \n
3486 * 例如,当返回值是2863267846时,换成2进制后是10101010101010100000000000000110。
3487 * 后16位就是所有的标准数字输入状态值,
3488 * 最后一位表示DI00的输入状态值,倒数第二位表示DI01的输入状态值,以此类推。\n
3489 * 1表示高电平状态,0表示低电平状态
3490 *
3491 * @throws arcs::common_interface::AuboException
3492 *
3493 * @par Python函数原型
3494 * getStandardDigitalInputs(self: pyaubo_sdk.IoControl) -> int
3495 *
3496 * @par Lua函数原型
3497 * getStandardDigitalInputs() -> number
3498 *
3499 * @par Lua示例
3500 * num = getStandardDigitalInputs()
3501 *
3502 * @par JSON-RPC请求示例
3503 * {"jsonrpc":"2.0","method":"rob1.IoControl.getStandardDigitalInputs","params":[],"id":1}
3504 *
3505 * @par JSON-RPC响应示例
3506 * {"id":1,"jsonrpc":"2.0","result":0}
3507 *
3508 * \endchinese
3509 * \english
3510 * Get all standard digital input values.
3511 *
3512 * @return All standard digital input values.\n
3513 * For example, if the return value is 2863267846, its binary representation
3514 * is 10101010101010100000000000000110. The lower 16 bits represent the
3515 * status of all standard digital inputs, the least significant bit
3516 * indicates the input status of DI00, the second least significant bit
3517 * indicates DI01, and so on.\n 1 means high level, 0 means low level.
3518 *
3519 * @throws arcs::common_interface::AuboException
3520 *
3521 * @par Python function prototype
3522 * getStandardDigitalInputs(self: pyaubo_sdk.IoControl) -> int
3523 *
3524 * @par Lua function prototype
3525 * getStandardDigitalInputs() -> number
3526 *
3527 * @par Lua example
3528 * num = getStandardDigitalInputs()
3529 *
3530 * @par JSON-RPC request example
3531 * {"jsonrpc":"2.0","method":"rob1.IoControl.getStandardDigitalInputs","params":[],"id":1}
3532 *
3533 * @par JSON-RPC response example
3534 * {"id":1,"jsonrpc":"2.0","result":0}
3535 *
3536 * \endenglish
3537 */
3539
3540 /**
3541 * @ingroup IoControl
3542 * \chinese
3543 * 获取工具端数字输入值
3544 *
3545 * @param index: 表示IO口的管脚,管脚编号从0开始。
3546 * 例如,0表示第一个管脚。
3547 *
3548 * @return 高电平返回true; 低电平返回false
3549 *
3550 * @throws arcs::common_interface::AuboException
3551 *
3552 * @par Python函数原型
3553 * getToolDigitalInput(self: pyaubo_sdk.IoControl, arg0: int) -> bool
3554 *
3555 * @par Lua函数原型
3556 * getToolDigitalInput(index: number) -> boolean
3557 *
3558 * @par Lua示例
3559 * status = getToolDigitalInput(0)
3560 *
3561 * @par JSON-RPC请求示例
3562 * {"jsonrpc":"2.0","method":"rob1.IoControl.getToolDigitalInput","params":[0],"id":1}
3563 *
3564 * @par JSON-RPC响应示例
3565 * {"id":1,"jsonrpc":"2.0","result":false}
3566 *
3567 * \endchinese
3568 * \english
3569 * Get the value of tool digital input.
3570 *
3571 * @param index: Indicates the IO pin, starting from 0.
3572 * For example, 0 means the first pin.
3573 *
3574 * @return Returns true for high level; false for low level.
3575 *
3576 * @throws arcs::common_interface::AuboException
3577 *
3578 * @par Python function prototype
3579 * getToolDigitalInput(self: pyaubo_sdk.IoControl, arg0: int) -> bool
3580 *
3581 * @par Lua function prototype
3582 * getToolDigitalInput(index: number) -> boolean
3583 *
3584 * @par Lua example
3585 * status = getToolDigitalInput(0)
3586 *
3587 * @par JSON-RPC request example
3588 * {"jsonrpc":"2.0","method":"rob1.IoControl.getToolDigitalInput","params":[0],"id":1}
3589 *
3590 * @par JSON-RPC response example
3591 * {"id":1,"jsonrpc":"2.0","result":false}
3592 *
3593 * \endenglish
3594 */
3595 bool getToolDigitalInput(int index);
3596
3597 /**
3598 * @ingroup IoControl
3599 * \chinese
3600 * 获取所有的工具端数字输入值
3601 *
3602 * @return 返回所有的工具端数字输入值
3603 *
3604 * @throws arcs::common_interface::AuboException
3605 *
3606 * @par Python函数原型
3607 * getToolDigitalInputs(self: pyaubo_sdk.IoControl) -> int
3608 *
3609 * @par Lua函数原型
3610 * getToolDigitalInputs() -> number
3611 *
3612 * @par Lua示例
3613 * num = getToolDigitalInputs()
3614 *
3615 * @par JSON-RPC请求示例
3616 * {"jsonrpc":"2.0","method":"rob1.IoControl.getToolDigitalInputs","params":[],"id":1}
3617 *
3618 * @par JSON-RPC响应示例
3619 * {"id":1,"jsonrpc":"2.0","result":0}
3620 *
3621 * \endchinese
3622 * \english
3623 * Get all tool digital input values.
3624 *
3625 * @return Returns all tool digital input values.
3626 *
3627 * @throws arcs::common_interface::AuboException
3628 *
3629 * @par Python function prototype
3630 * getToolDigitalInputs(self: pyaubo_sdk.IoControl) -> int
3631 *
3632 * @par Lua function prototype
3633 * getToolDigitalInputs() -> number
3634 *
3635 * @par Lua example
3636 * num = getToolDigitalInputs()
3637 *
3638 * @par JSON-RPC request example
3639 * {"jsonrpc":"2.0","method":"rob1.IoControl.getToolDigitalInputs","params":[],"id":1}
3640 *
3641 * @par JSON-RPC response example
3642 * {"id":1,"jsonrpc":"2.0","result":0}
3643 *
3644 * \endenglish
3645 */
3647
3648 /**
3649 * @ingroup IoControl
3650 * \chinese
3651 * 获取可配置数字输入值
3652 *
3653 * @note 可用于获取安全IO的输入值
3654 *
3655 * @param index: 表示IO口的管脚,管脚编号从0开始。
3656 * 例如,0表示第一个管脚。
3657 *
3658 * @return 高电平返回true; 低电平返回false
3659 *
3660 * @throws arcs::common_interface::AuboException
3661 *
3662 * @par Python函数原型
3663 * getConfigurableDigitalInput(self: pyaubo_sdk.IoControl, arg0: int) ->
3664 * bool
3665 *
3666 * @par Lua函数原型
3667 * getConfigurableDigitalInput(index: number) -> boolean
3668 *
3669 * @par Lua示例
3670 * status = getConfigurableDigitalInput(0)
3671 *
3672 * @par JSON-RPC请求示例
3673 * {"jsonrpc":"2.0","method":"rob1.IoControl.getConfigurableDigitalInput","params":[0],"id":1}
3674 *
3675 * @par JSON-RPC响应示例
3676 * {"id":1,"jsonrpc":"2.0","result":false}
3677 *
3678 * \endchinese
3679 * \english
3680 * Get the value of configurable digital input.
3681 *
3682 * @note Can be used to get the value of safety IO.
3683 *
3684 * @param index: Indicates the IO pin, starting from 0.
3685 * For example, 0 means the first pin.
3686 *
3687 * @return Returns true for high level; false for low level.
3688 *
3689 * @throws arcs::common_interface::AuboException
3690 *
3691 * @par Python function prototype
3692 * getConfigurableDigitalInput(self: pyaubo_sdk.IoControl, arg0: int) ->
3693 * bool
3694 *
3695 * @par Lua function prototype
3696 * getConfigurableDigitalInput(index: number) -> boolean
3697 *
3698 * @par Lua example
3699 * status = getConfigurableDigitalInput(0)
3700 *
3701 * @par JSON-RPC request example
3702 * {"jsonrpc":"2.0","method":"rob1.IoControl.getConfigurableDigitalInput","params":[0],"id":1}
3703 *
3704 * @par JSON-RPC response example
3705 * {"id":1,"jsonrpc":"2.0","result":false}
3706 *
3707 * \endenglish
3708 */
3710
3711 /**
3712 * @ingroup IoControl
3713 * \chinese
3714 * 获取所有的可配置数字输入值
3715 *
3716 * @note 可用于获取安全IO的输入值
3717 *
3718 * @return 所有的可配置数字输入值\n
3719 * 例如,当返回值是2863267846时,换成2进制后是10101010101010100000000000000110。
3720 * 后16位就是所有的输入状态值,
3721 * 最后一位表示管脚0的输入状态值,倒数第二位表示管脚1的输入状态值,以此类推。\n
3722 * 1表示高电平状态,0表示低电平状态
3723 *
3724 * @throws arcs::common_interface::AuboException
3725 *
3726 * @par Python函数原型
3727 * getConfigurableDigitalInputs(self: pyaubo_sdk.IoControl) -> int
3728 *
3729 * @par Lua函数原型
3730 * getConfigurableDigitalInputs() -> number
3731 *
3732 * @par Lua示例
3733 * num = getConfigurableDigitalInputs()
3734 *
3735 * @par JSON-RPC请求示例
3736 * {"jsonrpc":"2.0","method":"rob1.IoControl.getConfigurableDigitalInputs","params":[],"id":1}
3737 *
3738 * @par JSON-RPC响应示例
3739 * {"id":1,"jsonrpc":"2.0","result":0}
3740 *
3741 * \endchinese
3742 * \english
3743 * Get all configurable digital input values.
3744 *
3745 * @note Can be used to get the value of safety IO.
3746 *
3747 * @return All configurable digital input values.\n
3748 * For example, if the return value is 2863267846, its binary representation
3749 * is 10101010101010100000000000000110. The lower 16 bits represent the
3750 * status of all input pins, the least significant bit indicates the input
3751 * status of pin 0, the second least significant bit indicates pin 1, and so
3752 * on.\n 1 means high level, 0 means low level.
3753 *
3754 * @throws arcs::common_interface::AuboException
3755 *
3756 * @par Python function prototype
3757 * getConfigurableDigitalInputs(self: pyaubo_sdk.IoControl) -> int
3758 *
3759 * @par Lua function prototype
3760 * getConfigurableDigitalInputs() -> number
3761 *
3762 * @par Lua example
3763 * num = getConfigurableDigitalInputs()
3764 *
3765 * @par JSON-RPC request example
3766 * {"jsonrpc":"2.0","method":"rob1.IoControl.getConfigurableDigitalInputs","params":[],"id":1}
3767 *
3768 * @par JSON-RPC response example
3769 * {"id":1,"jsonrpc":"2.0","result":0}
3770 *
3771 * \endenglish
3772 */
3774
3775 /**
3776 * @ingroup IoControl
3777 * \chinese
3778 * 获取标准数字输出值
3779 *
3780 * @param index: 表示IO口的管脚,管脚编号从0开始。
3781 * 例如,0表示第一个管脚。
3782 *
3783 * @return 高电平返回true; 低电平返回false
3784 *
3785 * @throws arcs::common_interface::AuboException
3786 *
3787 * @par Python函数原型
3788 * getStandardDigitalOutput(self: pyaubo_sdk.IoControl, arg0: int) -> bool
3789 *
3790 * @par Lua函数原型
3791 * getStandardDigitalOutput(index: number) -> boolean
3792 *
3793 * @par Lua示例
3794 * status = getStandardDigitalOutput(0)
3795 *
3796 * @par JSON-RPC请求示例
3797 * {"jsonrpc":"2.0","method":"rob1.IoControl.getStandardDigitalOutput","params":[0],"id":1}
3798 *
3799 * @par JSON-RPC响应示例
3800 * {"id":1,"jsonrpc":"2.0","result":true}
3801 *
3802 * \endchinese
3803 * \english
3804 * Get the value of a standard digital output.
3805 *
3806 * @param index: Indicates the IO pin, starting from 0.
3807 * For example, 0 means the first pin.
3808 *
3809 * @return Returns true for high level; false for low level.
3810 *
3811 * @throws arcs::common_interface::AuboException
3812 *
3813 * @par Python function prototype
3814 * getStandardDigitalOutput(self: pyaubo_sdk.IoControl, arg0: int) -> bool
3815 *
3816 * @par Lua function prototype
3817 * getStandardDigitalOutput(index: number) -> boolean
3818 *
3819 * @par Lua example
3820 * status = getStandardDigitalOutput(0)
3821 *
3822 * @par JSON-RPC request example
3823 * {"jsonrpc":"2.0","method":"rob1.IoControl.getStandardDigitalOutput","params":[0],"id":1}
3824 *
3825 * @par JSON-RPC response example
3826 * {"id":1,"jsonrpc":"2.0","result":true}
3827 *
3828 * \endenglish
3829 */
3831
3832 /**
3833 * @ingroup IoControl
3834 * \chinese
3835 * 获取所有的标准数字输出值
3836 *
3837 * @return 所有的标准数字输出值 \n
3838 * 例如,当返回值是2863267846时,换成2进制后是10101010101010100000000000000110。
3839 * 后16位就是所有的标准数字输出状态值,
3840 * 最后一位表示DI00的输出状态值,倒数第二位表示DI01的输出状态值,以此类推。\n
3841 * 1表示高电平状态,0表示低电平状态.
3842 *
3843 * @throws arcs::common_interface::AuboException
3844 *
3845 * @par Python函数原型
3846 * getStandardDigitalOutputs(self: pyaubo_sdk.IoControl) -> int
3847 *
3848 * @par Lua函数原型
3849 * getStandardDigitalOutputs() -> number
3850 *
3851 * @par Lua示例
3852 * num = getStandardDigitalOutputs()
3853 *
3854 * @par JSON-RPC请求示例
3855 * {"jsonrpc":"2.0","method":"rob1.IoControl.getStandardDigitalOutputs","params":[],"id":1}
3856 *
3857 * @par JSON-RPC响应示例
3858 * {"id":1,"jsonrpc":"2.0","result":69}
3859 *
3860 * \endchinese
3861 * \english
3862 * Get all standard digital output values.
3863 *
3864 * @return All standard digital output values.\n
3865 * For example, if the return value is 2863267846, its binary representation
3866 * is 10101010101010100000000000000110. The lower 16 bits represent the
3867 * status of all standard digital outputs, the least significant bit
3868 * indicates the output status of DO00, the second least significant bit
3869 * indicates DO01, and so on.\n 1 means high level, 0 means low level.
3870 *
3871 * @throws arcs::common_interface::AuboException
3872 *
3873 * @par Python function prototype
3874 * getStandardDigitalOutputs(self: pyaubo_sdk.IoControl) -> int
3875 *
3876 * @par Lua function prototype
3877 * getStandardDigitalOutputs() -> number
3878 *
3879 * @par Lua example
3880 * num = getStandardDigitalOutputs()
3881 *
3882 * @par JSON-RPC request example
3883 * {"jsonrpc":"2.0","method":"rob1.IoControl.getStandardDigitalOutputs","params":[],"id":1}
3884 *
3885 * @par JSON-RPC response example
3886 * {"id":1,"jsonrpc":"2.0","result":69}
3887 *
3888 * \endenglish
3889 */
3891
3892 /**
3893 * @ingroup IoControl
3894 * \chinese
3895 * 获取工具端数字输出值
3896 *
3897 * @param index: 表示IO口的管脚,管脚编号从0开始。
3898 * 例如,0表示第一个管脚。
3899 *
3900 * @return 高电平返回true; 低电平返回false
3901 *
3902 * @throws arcs::common_interface::AuboException
3903 *
3904 * @par Python函数原型
3905 * getToolDigitalOutput(self: pyaubo_sdk.IoControl, arg0: int) -> bool
3906 *
3907 * @par Lua函数原型
3908 * getToolDigitalOutput(index: number) -> boolean
3909 *
3910 * @par Lua示例
3911 * status = getToolDigitalOutput(0)
3912 *
3913 * @par JSON-RPC请求示例
3914 * {"jsonrpc":"2.0","method":"rob1.IoControl.getToolDigitalOutput","params":[0],"id":1}
3915 *
3916 * @par JSON-RPC响应示例
3917 * {"id":1,"jsonrpc":"2.0","result":false}
3918 *
3919 * \endchinese
3920 * \english
3921 * Get the value of tool digital output.
3922 *
3923 * @param index: Indicates the IO pin, starting from 0.
3924 * For example, 0 means the first pin.
3925 *
3926 * @return Returns true for high level; false for low level.
3927 *
3928 * @throws arcs::common_interface::AuboException
3929 *
3930 * @par Python function prototype
3931 * getToolDigitalOutput(self: pyaubo_sdk.IoControl, arg0: int) -> bool
3932 *
3933 * @par Lua function prototype
3934 * getToolDigitalOutput(index: number) -> boolean
3935 *
3936 * @par Lua example
3937 * status = getToolDigitalOutput(0)
3938 *
3939 * @par JSON-RPC request example
3940 * {"jsonrpc":"2.0","method":"rob1.IoControl.getToolDigitalOutput","params":[0],"id":1}
3941 *
3942 * @par JSON-RPC response example
3943 * {"id":1,"jsonrpc":"2.0","result":false}
3944 *
3945 * \endenglish
3946 */
3947 bool getToolDigitalOutput(int index);
3948
3949 /**
3950 * @ingroup IoControl
3951 * \chinese
3952 * 获取所有的工具端数字输出值
3953 *
3954 * @return 所有的工具端数字输出值
3955 *
3956 * @throws arcs::common_interface::AuboException
3957 *
3958 * @par Python函数原型
3959 * getToolDigitalOutputs(self: pyaubo_sdk.IoControl) -> int
3960 *
3961 * @par Lua函数原型
3962 * getToolDigitalOutputs() -> number
3963 *
3964 * @par Lua示例
3965 * num = getToolDigitalOutputs()
3966 *
3967 * @par JSON-RPC请求示例
3968 * {"jsonrpc":"2.0","method":"rob1.IoControl.getToolDigitalOutputs","params":[],"id":1}
3969 *
3970 * @par JSON-RPC响应示例
3971 * {"id":1,"jsonrpc":"2.0","result":9}
3972 *
3973 * \endchinese
3974 * \english
3975 * Get all tool digital output values.
3976 *
3977 * @return All tool digital output values.
3978 *
3979 * @throws arcs::common_interface::AuboException
3980 *
3981 * @par Python function prototype
3982 * getToolDigitalOutputs(self: pyaubo_sdk.IoControl) -> int
3983 *
3984 * @par Lua function prototype
3985 * getToolDigitalOutputs() -> number
3986 *
3987 * @par Lua example
3988 * num = getToolDigitalOutputs()
3989 *
3990 * @par JSON-RPC request example
3991 * {"jsonrpc":"2.0","method":"rob1.IoControl.getToolDigitalOutputs","params":[],"id":1}
3992 *
3993 * @par JSON-RPC response example
3994 * {"id":1,"jsonrpc":"2.0","result":9}
3995 *
3996 * \endenglish
3997 */
3999
4000 /**
4001 * @ingroup IoControl
4002 * \chinese
4003 * 获取可配值数字输出值
4004 *
4005 * @note 可用于获取安全IO的输出值
4006 *
4007 * @param index: 表示IO口的管脚,管脚编号从0开始。
4008 * 例如,0表示第一个管脚。
4009 *
4010 * @return 高电平返回true; 低电平返回false
4011 *
4012 * @throws arcs::common_interface::AuboException
4013 *
4014 * @par Python函数原型
4015 * getConfigurableDigitalOutput(self: pyaubo_sdk.IoControl, arg0: int) ->
4016 * bool
4017 *
4018 * @par Lua函数原型
4019 * getConfigurableDigitalOutput(index: number) -> boolean
4020 *
4021 * @par Lua示例
4022 * status = getConfigurableDigitalOutput(0)
4023 *
4024 * @par JSON-RPC请求示例
4025 * {"jsonrpc":"2.0","method":"rob1.IoControl.getConfigurableDigitalOutput","params":[0],"id":1}
4026 *
4027 * @par JSON-RPC响应示例
4028 * {"id":1,"jsonrpc":"2.0","result":true}
4029 *
4030 * \endchinese
4031 * \english
4032 * Get the value of configurable digital output.
4033 *
4034 * @note Can be used to get the value of safety IO.
4035 *
4036 * @param index: Indicates the IO pin, starting from 0.
4037 * For example, 0 means the first pin.
4038 *
4039 * @return Returns true for high level; false for low level.
4040 *
4041 * @throws arcs::common_interface::AuboException
4042 *
4043 * @par Python function prototype
4044 * getConfigurableDigitalOutput(self: pyaubo_sdk.IoControl, arg0: int) ->
4045 * bool
4046 *
4047 * @par Lua function prototype
4048 * getConfigurableDigitalOutput(index: number) -> boolean
4049 *
4050 * @par Lua example
4051 * status = getConfigurableDigitalOutput(0)
4052 *
4053 * @par JSON-RPC request example
4054 * {"jsonrpc":"2.0","method":"rob1.IoControl.getConfigurableDigitalOutput","params":[0],"id":1}
4055 *
4056 * @par JSON-RPC response example
4057 * {"id":1,"jsonrpc":"2.0","result":true}
4058 *
4059 * \endenglish
4060 */
4062
4063 /**
4064 * @ingroup IoControl
4065 * \chinese
4066 * 获取所有的可配值数字输出值
4067 *
4068 * @note 可用于获取安全IO的输出值
4069 *
4070 * @return 所有的可配值数字输出\n
4071 * 例如,当返回值是2863267846时,换成2进制后是10101010101010100000000000000110。
4072 * 后16位就是所有的输出值,
4073 * 最后一位表示管脚0的输出状态值,倒数第二位表示管脚1的输出状态值,以此类推。\n
4074 * 1表示高电平状态,0表示低电平状态.
4075 *
4076 * @throws arcs::common_interface::AuboException
4077 *
4078 * @par Python函数原型
4079 * getConfigurableDigitalOutputs(self: pyaubo_sdk.IoControl) -> int
4080 *
4081 * @par Lua函数原型
4082 * getConfigurableDigitalOutputs() -> number
4083 *
4084 * @par Lua示例
4085 * num = getConfigurableDigitalOutputs()
4086 *
4087 * @par JSON-RPC请求示例
4088 * {"jsonrpc":"2.0","method":"rob1.IoControl.getConfigurableDigitalOutputs","params":[],"id":1}
4089 *
4090 * @par JSON-RPC响应示例
4091 * {"id":1,"jsonrpc":"2.0","result":1}
4092 *
4093 * \endchinese
4094 * \english
4095 * Get all configurable digital output values.
4096 *
4097 * @note Can be used to get the value of safety IO.
4098 *
4099 * @return All configurable digital output values.\n
4100 * For example, if the return value is 2863267846, its binary representation
4101 * is 10101010101010100000000000000110. The lower 16 bits represent the
4102 * status of all output pins, the least significant bit indicates the output
4103 * status of pin 0, the second least significant bit indicates pin 1, and so
4104 * on.\n 1 means high level, 0 means low level.
4105 *
4106 * @throws arcs::common_interface::AuboException
4107 *
4108 * @par Python function prototype
4109 * getConfigurableDigitalOutputs(self: pyaubo_sdk.IoControl) -> int
4110 *
4111 * @par Lua function prototype
4112 * getConfigurableDigitalOutputs() -> number
4113 *
4114 * @par Lua example
4115 * num = getConfigurableDigitalOutputs()
4116 *
4117 * @par JSON-RPC request example
4118 * {"jsonrpc":"2.0","method":"rob1.IoControl.getConfigurableDigitalOutputs","params":[],"id":1}
4119 *
4120 * @par JSON-RPC response example
4121 * {"id":1,"jsonrpc":"2.0","result":1}
4122 *
4123 * \endenglish
4124 */
4126
4127 /**
4128 * @ingroup IoControl
4129 * \chinese
4130 * 获取标准模拟输入值
4131 *
4132 * @param index: 表示IO口的管脚,管脚编号从0开始。
4133 * 例如,0表示第一个管脚。
4134 *
4135 * @return 标准模拟输入值
4136 *
4137 * @throws arcs::common_interface::AuboException
4138 *
4139 * @par Python函数原型
4140 * getStandardAnalogInput(self: pyaubo_sdk.IoControl, arg0: int) -> float
4141 *
4142 * @par Lua函数原型
4143 * getStandardAnalogInput(index: number) -> number
4144 *
4145 * @par Lua示例
4146 * getStandardAnalogInput(0)
4147 *
4148 * @par JSON-RPC请求示例
4149 * {"jsonrpc":"2.0","method":"rob1.IoControl.getStandardAnalogInput","params":[0],"id":1}
4150 *
4151 * @par JSON-RPC响应示例
4152 * {"id":1,"jsonrpc":"2.0","result":0.0}
4153 *
4154 * \endchinese
4155 * \english
4156 * Get the value of standard analog input.
4157 *
4158 * @param index: Indicates the IO pin, starting from 0.
4159 * For example, 0 means the first pin.
4160 *
4161 * @return Standard analog input value.
4162 *
4163 * @throws arcs::common_interface::AuboException
4164 *
4165 * @par Python function prototype
4166 * getStandardAnalogInput(self: pyaubo_sdk.IoControl, arg0: int) -> float
4167 *
4168 * @par Lua function prototype
4169 * getStandardAnalogInput(index: number) -> number
4170 *
4171 * @par Lua example
4172 * getStandardAnalogInput(0)
4173 *
4174 * @par JSON-RPC request example
4175 * {"jsonrpc":"2.0","method":"rob1.IoControl.getStandardAnalogInput","params":[0],"id":1}
4176 *
4177 * @par JSON-RPC response example
4178 * {"id":1,"jsonrpc":"2.0","result":0.0}
4179 *
4180 * \endenglish
4181 */
4182 double getStandardAnalogInput(int index);
4183
4184 /**
4185 * @ingroup IoControl
4186 * \chinese
4187 * 获取工具端模拟输入值
4188 *
4189 * @param index: 表示IO口的管脚,管脚编号从0开始。
4190 * 例如,0表示第一个管脚。
4191 *
4192 * @return 工具端模拟输入值
4193 *
4194 * @throws arcs::common_interface::AuboException
4195 *
4196 * @par Python函数原型
4197 * getToolAnalogInput(self: pyaubo_sdk.IoControl, arg0: int) -> float
4198 *
4199 * @par Lua函数原型
4200 * getToolAnalogInput(index: number) -> number
4201 *
4202 * @par Lua示例
4203 * num = getToolAnalogInput(0)
4204 *
4205 * @par JSON-RPC请求示例
4206 * {"jsonrpc":"2.0","method":"rob1.IoControl.getToolAnalogInput","params":[0],"id":1}
4207 *
4208 * @par JSON-RPC响应示例
4209 * {"id":1,"jsonrpc":"2.0","result":0.0}
4210 *
4211 * \endchinese
4212 * \english
4213 * Get the value of tool analog input.
4214 *
4215 * @param index: Indicates the IO pin, starting from 0.
4216 * For example, 0 means the first pin.
4217 *
4218 * @return Tool analog input value.
4219 *
4220 * @throws arcs::common_interface::AuboException
4221 *
4222 * @par Python function prototype
4223 * getToolAnalogInput(self: pyaubo_sdk.IoControl, arg0: int) -> float
4224 *
4225 * @par Lua function prototype
4226 * getToolAnalogInput(index: number) -> number
4227 *
4228 * @par Lua example
4229 * num = getToolAnalogInput(0)
4230 *
4231 * @par JSON-RPC request example
4232 * {"jsonrpc":"2.0","method":"rob1.IoControl.getToolAnalogInput","params":[0],"id":1}
4233 *
4234 * @par JSON-RPC response example
4235 * {"id":1,"jsonrpc":"2.0","result":0.0}
4236 *
4237 * \endenglish
4238 */
4239 double getToolAnalogInput(int index);
4240
4241 /**
4242 * @ingroup IoControl
4243 * \chinese
4244 * 获取标准模拟输出值
4245 *
4246 * @param index: 表示IO口的管脚,管脚编号从0开始。
4247 * 例如,0表示第一个管脚。
4248 *
4249 * @return 标准模拟输出值
4250 *
4251 * @throws arcs::common_interface::AuboException
4252 *
4253 * @par Python函数原型
4254 * getStandardAnalogOutput(self: pyaubo_sdk.IoControl, arg0: int) -> float
4255 *
4256 * @par Lua函数原型
4257 * getStandardAnalogOutput(index: number) -> number
4258 *
4259 * @par Lua示例
4260 * num = getStandardAnalogOutput(0)
4261 *
4262 * @par JSON-RPC请求示例
4263 * {"jsonrpc":"2.0","method":"rob1.IoControl.getStandardAnalogOutput","params":[0],"id":1}
4264 *
4265 * @par JSON-RPC响应示例
4266 * {"id":1,"jsonrpc":"2.0","result":0.0}
4267 *
4268 * \endchinese
4269 * \english
4270 * Get the value of standard analog output.
4271 *
4272 * @param index: Indicates the IO pin, starting from 0.
4273 * For example, 0 means the first pin.
4274 *
4275 * @return Standard analog output value.
4276 *
4277 * @throws arcs::common_interface::AuboException
4278 *
4279 * @par Python function prototype
4280 * getStandardAnalogOutput(self: pyaubo_sdk.IoControl, arg0: int) -> float
4281 *
4282 * @par Lua function prototype
4283 * getStandardAnalogOutput(index: number) -> number
4284 *
4285 * @par Lua example
4286 * num = getStandardAnalogOutput(0)
4287 *
4288 * @par JSON-RPC request example
4289 * {"jsonrpc":"2.0","method":"rob1.IoControl.getStandardAnalogOutput","params":[0],"id":1}
4290 *
4291 * @par JSON-RPC response example
4292 * {"id":1,"jsonrpc":"2.0","result":0.0}
4293 *
4294 * \endenglish
4295 */
4296 double getStandardAnalogOutput(int index);
4297
4298 /**
4299 * @ingroup IoControl
4300 * \chinese
4301 * 获取工具端模拟输出值
4302 *
4303 * @param index: 表示IO口的管脚,管脚编号从0开始。
4304 * 例如,0表示第一个管脚。
4305 *
4306 * @return 工具端模拟输出值
4307 *
4308 * @throws arcs::common_interface::AuboException
4309 *
4310 * @par Python函数原型
4311 * getToolAnalogOutput(self: pyaubo_sdk.IoControl, arg0: int) -> float
4312 *
4313 * @par Lua函数原型
4314 * getToolAnalogOutput(index: number) -> number
4315 *
4316 * @par Lua示例
4317 * num = getToolAnalogOutput(0)
4318 *
4319 * @par JSON-RPC请求示例
4320 * {"jsonrpc":"2.0","method":"rob1.IoControl.getToolAnalogOutput","params":[0],"id":1}
4321 *
4322 * @par JSON-RPC响应示例
4323 * {"id":1,"jsonrpc":"2.0","result":0.0}
4324 *
4325 * \endchinese
4326 * \english
4327 * Get the value of tool analog output.
4328 *
4329 * @param index: Indicates the IO pin, starting from 0.
4330 * For example, 0 means the first pin.
4331 *
4332 * @return Tool analog output value.
4333 *
4334 * @throws arcs::common_interface::AuboException
4335 *
4336 * @par Python function prototype
4337 * getToolAnalogOutput(self: pyaubo_sdk.IoControl, arg0: int) -> float
4338 *
4339 * @par Lua function prototype
4340 * getToolAnalogOutput(index: number) -> number
4341 *
4342 * @par Lua example
4343 * num = getToolAnalogOutput(0)
4344 *
4345 * @par JSON-RPC request example
4346 * {"jsonrpc":"2.0","method":"rob1.IoControl.getToolAnalogOutput","params":[0],"id":1}
4347 *
4348 * @par JSON-RPC response example
4349 * {"id":1,"jsonrpc":"2.0","result":0.0}
4350 *
4351 * \endenglish
4352 */
4353 double getToolAnalogOutput(int index);
4354
4355 /**
4356 * @ingroup IoControl
4357 * \chinese
4358 * 获取联动输入数量
4359 *
4360 * @return 联动输入数量
4361 *
4362 * @throws arcs::common_interface::AuboException
4363 *
4364 * @par Python函数原型
4365 * getStaticLinkInputNum(self: pyaubo_sdk.IoControl) -> int
4366 *
4367 * @par Lua函数原型
4368 * getStaticLinkInputNum() -> number
4369 *
4370 * @par Lua示例
4371 * num = getStaticLinkInputNum()
4372 *
4373 * @par JSON-RPC请求示例
4374 * {"jsonrpc":"2.0","method":"rob1.IoControl.getStaticLinkInputNum","params":[],"id":1}
4375 *
4376 * @par JSON-RPC响应示例
4377 * {"id":1,"jsonrpc":"2.0","result":8}
4378 *
4379 * \endchinese
4380 * \english
4381 * Get the number of static link inputs.
4382 *
4383 * @return Number of static link inputs.
4384 *
4385 * @throws arcs::common_interface::AuboException
4386 *
4387 * @par Python function prototype
4388 * getStaticLinkInputNum(self: pyaubo_sdk.IoControl) -> int
4389 *
4390 * @par Lua function prototype
4391 * getStaticLinkInputNum() -> number
4392 *
4393 * @par Lua example
4394 * num = getStaticLinkInputNum()
4395 *
4396 * @par JSON-RPC request example
4397 * {"jsonrpc":"2.0","method":"rob1.IoControl.getStaticLinkInputNum","params":[],"id":1}
4398 *
4399 * @par JSON-RPC response example
4400 * {"id":1,"jsonrpc":"2.0","result":8}
4401 *
4402 * \endenglish
4403 */
4405
4406 /**
4407 * @ingroup IoControl
4408 * \chinese
4409 * 获取联动输出数量
4410 *
4411 * @return 联动输出数量
4412 *
4413 * @throws arcs::common_interface::AuboException
4414 *
4415 * @par Python函数原型
4416 * getStaticLinkOutputNum(self: pyaubo_sdk.IoControl) -> int
4417 *
4418 * @par Lua函数原型
4419 * getStaticLinkOutputNum() -> number
4420 *
4421 * @par Lua示例
4422 * num = getStaticLinkOutputNum()
4423 *
4424 * @par JSON-RPC请求示例
4425 * {"jsonrpc":"2.0","method":"rob1.IoControl.getStaticLinkOutputNum","params":[],"id":1}
4426 *
4427 * @par JSON-RPC响应示例
4428 * {"id":1,"jsonrpc":"2.0","result":0}
4429 *
4430 * \endchinese
4431 * \english
4432 * Get the number of static link outputs.
4433 *
4434 * @return Number of static link outputs.
4435 *
4436 * @throws arcs::common_interface::AuboException
4437 *
4438 * @par Python function prototype
4439 * getStaticLinkOutputNum(self: pyaubo_sdk.IoControl) -> int
4440 *
4441 * @par Lua function prototype
4442 * getStaticLinkOutputNum() -> number
4443 *
4444 * @par Lua example
4445 * num = getStaticLinkOutputNum()
4446 *
4447 * @par JSON-RPC request example
4448 * {"jsonrpc":"2.0","method":"rob1.IoControl.getStaticLinkOutputNum","params":[],"id":1}
4449 *
4450 * @par JSON-RPC response example
4451 * {"id":1,"jsonrpc":"2.0","result":0}
4452 *
4453 * \endenglish
4454 */
4456
4457 /**
4458 * @ingroup IoControl
4459 * \chinese
4460 * 获取所有的联动输入值
4461 *
4462 * @return 所有的联动输入值\n
4463 * 例如,当返回值是2863267846时,换成2进制后是10101010101010100000000000000110。
4464 * 后16位就是所有的联动输入状态值,
4465 * 最后一位表示管脚0的输入状态值,倒数第二位表示管脚1的输入状态值,以此类推。\n
4466 * 1表示高电平状态,0表示低电平状态.
4467 *
4468 * @throws arcs::common_interface::AuboException
4469 *
4470 * @par Python函数原型
4471 * getStaticLinkInputs(self: pyaubo_sdk.IoControl) -> int
4472 *
4473 * @par Lua函数原型
4474 * getStaticLinkInputs() -> number
4475 *
4476 * @par Lua示例
4477 * num = getStaticLinkInputs()
4478 *
4479 * @par JSON-RPC请求示例
4480 * {"jsonrpc":"2.0","method":"rob1.IoControl.getStaticLinkInputs","params":[],"id":1}
4481 *
4482 * @par JSON-RPC响应示例
4483 * {"id":1,"jsonrpc":"2.0","result":0}
4484 *
4485 * \endchinese
4486 * \english
4487 * Get all static link input values.
4488 *
4489 * @return All static link input values.\n
4490 * For example, if the return value is 2863267846, its binary representation
4491 * is 10101010101010100000000000000110. The lower 16 bits represent the
4492 * status of all static link inputs, the least significant bit indicates the
4493 * input status of pin 0, the second least significant bit indicates pin 1,
4494 * and so on.\n 1 means high level, 0 means low level.
4495 *
4496 * @throws arcs::common_interface::AuboException
4497 *
4498 * @par Python function prototype
4499 * getStaticLinkInputs(self: pyaubo_sdk.IoControl) -> int
4500 *
4501 * @par Lua function prototype
4502 * getStaticLinkInputs() -> number
4503 *
4504 * @par Lua example
4505 * num = getStaticLinkInputs()
4506 *
4507 * @par JSON-RPC request example
4508 * {"jsonrpc":"2.0","method":"rob1.IoControl.getStaticLinkInputs","params":[],"id":1}
4509 *
4510 * @par JSON-RPC response example
4511 * {"id":1,"jsonrpc":"2.0","result":0}
4512 *
4513 * \endenglish
4514 */
4516
4517 /**
4518 * @ingroup IoControl
4519 * \chinese
4520 * 获取所有的联动输出值
4521 *
4522 * @return 返回所有的联动输出值 \n
4523 * 例如,当返回值是2863267846时,换成2进制后是10101010101010100000000000000110。
4524 * 后16位就是所有的联动输出状态值,
4525 * 最后一位表示管脚0的输出状态值,倒数第二位表示管脚1的输出状态值,以此类推。\n
4526 * 1表示高电平状态,0表示低电平状态.
4527 *
4528 * @throws arcs::common_interface::AuboException
4529 *
4530 * @par Python函数原型
4531 * getStaticLinkOutputs(self: pyaubo_sdk.IoControl) -> int
4532 *
4533 * @par Lua函数原型
4534 * getStaticLinkOutputs() -> number
4535 *
4536 * @par Lua示例
4537 * num = getStaticLinkOutputs()
4538 *
4539 * @par JSON-RPC请求示例
4540 * {"jsonrpc":"2.0","method":"rob1.IoControl.getStaticLinkOutputs","params":[],"id":1}
4541 *
4542 * @par JSON-RPC响应示例
4543 * {"id":1,"jsonrpc":"2.0","result":0}
4544 *
4545 * \endchinese
4546 * \english
4547 * Get all static link output values.
4548 *
4549 * @return Returns all static link output values.\n
4550 * For example, if the return value is 2863267846, its binary representation
4551 * is 10101010101010100000000000000110. The lower 16 bits represent the
4552 * status of all static link outputs, the least significant bit indicates
4553 * the output status of pin 0, the second least significant bit indicates
4554 * pin 1, and so on.\n 1 means high level, 0 means low level.
4555 *
4556 * @throws arcs::common_interface::AuboException
4557 *
4558 * @par Python function prototype
4559 * getStaticLinkOutputs(self: pyaubo_sdk.IoControl) -> int
4560 *
4561 * @par Lua function prototype
4562 * getStaticLinkOutputs() -> number
4563 *
4564 * @par Lua example
4565 * num = getStaticLinkOutputs()
4566 *
4567 * @par JSON-RPC request example
4568 * {"jsonrpc":"2.0","method":"rob1.IoControl.getStaticLinkOutputs","params":[],"id":1}
4569 *
4570 * @par JSON-RPC response example
4571 * {"id":1,"jsonrpc":"2.0","result":0}
4572 *
4573 * \endenglish
4574 */
4576
4577 /**
4578 * @ingroup IoControl
4579 * \chinese
4580 * 机器人是否配置了编码器
4581 * 集成编码器的编号为 0
4582 *
4583 * @return 机器人配置编码器返回 true, 反之返回 false
4584 *
4585 * @throws arcs::common_interface::AuboException
4586 *
4587 * @par JSON-RPC请求示例
4588 * {"jsonrpc":"2.0","method":"rob1.IoControl.hasEncoderSensor","params":[],"id":1}
4589 *
4590 * @par JSON-RPC响应示例
4591 * {"id":1,"jsonrpc":"2.0","result":true}
4592 *
4593 * \endchinese
4594 * \english
4595 * Whether the robot is equipped with an encoder.
4596 * The integrated encoder number is 0.
4597 *
4598 * @return Returns true if the robot is equipped with an encoder, otherwise
4599 * false.
4600 *
4601 * @throws arcs::common_interface::AuboException
4602 *
4603 * @par JSON-RPC request example
4604 * {"jsonrpc":"2.0","method":"rob1.IoControl.hasEncoderSensor","params":[],"id":1}
4605 *
4606 * @par JSON-RPC response example
4607 * {"id":1,"jsonrpc":"2.0","result":true}
4608 *
4609 * \endenglish
4610 */
4612 /**
4613 * @ingroup IoControl
4614 * \chinese
4615 * 设置集成编码器的解码方式
4616 *
4617 * @param type
4618 * 0-禁用编码器
4619 * 1-AB正交
4620 * 2-AB正交+Z
4621 * 3-AB差分正交
4622 * 4-AB差分正交+Z差分
4623 *
4624 * @param range_id
4625 * 0 表示32位有符号编码器,范围为 [-2147483648, 2147483647]
4626 * 1 表示8位无符号编码器,范围为 [0, 255]
4627 * 2 表示16位无符号编码器,范围为 [0, 65535]
4628 * 3 表示24位无符号编码器,范围为 [0, 16777215]
4629 * 4 表示32位无符号编码器,范围为 [0, 4294967295]
4630 *
4631 * @return 成功返回0;失败返回错误码
4632 * AUBO_NO_ACCESS
4633 * AUBO_BUSY
4634 * AUBO_BAD_STATE
4635 * -AUBO_INVL_ARGUMENT
4636 * -AUBO_BAD_STATE
4637 *
4638 * @throws arcs::common_interface::AuboException
4639 * \endchinese
4640 * \english
4641 * Set the decoding method of the integrated encoder.
4642 *
4643 * @param type
4644 * 0 - Disable encoder
4645 * 1 - AB quadrature
4646 * 2 - AB quadrature + Z
4647 * 3 - AB differential quadrature
4648 * 4 - AB differential quadrature + Z differential
4649 *
4650 * @param range_id
4651 * 0 is a 32-bit signed encoder, range [-2147483648, 2147483647]
4652 * 1 is an 8-bit unsigned encoder, range [0, 255]
4653 * 2 is a 16-bit unsigned encoder, range [0, 65535]
4654 * 3 is a 24-bit unsigned encoder, range [0, 16777215]
4655 * 4 is a 32-bit unsigned encoder, range [0, 4294967295]
4656 *
4657 * @return Returns 0 on success; error code on failure.
4658 * AUBO_NO_ACCESS
4659 * AUBO_BUSY
4660 * AUBO_BAD_STATE
4661 * -AUBO_INVL_ARGUMENT
4662 * -AUBO_BAD_STATE
4663 *
4664 * @throws arcs::common_interface::AuboException
4665 * \endenglish
4666 */
4667 int setEncDecoderType(int type, int range_id);
4668
4669 /**
4670 * @ingroup IoControl
4671 * \chinese
4672 * 设置集成编码器脉冲数
4673 *
4674 * @param tick 脉冲数
4675 *
4676 * @return 成功返回0;失败返回错误码
4677 * AUBO_NO_ACCESS
4678 * AUBO_BUSY
4679 * AUBO_BAD_STATE
4680 * -AUBO_INVL_ARGUMENT
4681 * -AUBO_BAD_STATE
4682 *
4683 * @throws arcs::common_interface::AuboException
4684 * \endchinese
4685 * \english
4686 * Set the tick count of the integrated encoder.
4687 *
4688 * @param tick Tick count
4689 *
4690 * @return Returns 0 on success; error code on failure.
4691 * AUBO_NO_ACCESS
4692 * AUBO_BUSY
4693 * AUBO_BAD_STATE
4694 * -AUBO_INVL_ARGUMENT
4695 * -AUBO_BAD_STATE
4696 *
4697 * @throws arcs::common_interface::AuboException
4698 * \endenglish
4699 */
4700 int setEncTickCount(int tick);
4701
4702 /**
4703 * @ingroup IoControl
4704 * \chinese
4705 * 获取编码器的解码方式
4706 *
4707 * @return 成功返回0;失败返回错误码
4708 * AUBO_NO_ACCESS
4709 * AUBO_BUSY
4710 * AUBO_BAD_STATE
4711 * -AUBO_BAD_STATE
4712 *
4713 * @throws arcs::common_interface::AuboException
4714 *
4715 * @par JSON-RPC请求示例
4716 * {"jsonrpc":"2.0","method":"rob1.IoControl.getEncDecoderType","params":[],"id":1}
4717 *
4718 * @par JSON-RPC响应示例
4719 * {"id":1,"jsonrpc":"2.0","result":0}
4720 *
4721 * \endchinese
4722 * \english
4723 * Get the decoder type of the encoder.
4724 *
4725 * @return Returns 0 on success; error code on failure.
4726 * AUBO_NO_ACCESS
4727 * AUBO_BUSY
4728 * AUBO_BAD_STATE
4729 * -AUBO_BAD_STATE
4730 *
4731 * @throws arcs::common_interface::AuboException
4732 *
4733 * @par JSON-RPC request example
4734 * {"jsonrpc":"2.0","method":"rob1.IoControl.getEncDecoderType","params":[],"id":1}
4735 *
4736 * @par JSON-RPC response example
4737 * {"id":1,"jsonrpc":"2.0","result":0}
4738 *
4739 * \endenglish
4740 */
4742
4743 /**
4744 * @ingroup IoControl
4745 * \chinese
4746 * 获取脉冲数
4747 *
4748 * @return 成功返回0;失败返回错误码
4749 * AUBO_NO_ACCESS
4750 * AUBO_BUSY
4751 * AUBO_BAD_STATE
4752 * -AUBO_BAD_STATE
4753 *
4754 * @throws arcs::common_interface::AuboException
4755 *
4756 * @par JSON-RPC请求示例
4757 * {"jsonrpc":"2.0","method":"rob1.IoControl.getEncTickCount","params":[],"id":1}
4758 *
4759 * @par JSON-RPC响应示例
4760 * {"id":1,"jsonrpc":"2.0","result":0}
4761 *
4762 * \endchinese
4763 * \english
4764 * Get the tick count
4765 *
4766 * @return Returns 0 on success; error code on failure.
4767 * AUBO_NO_ACCESS
4768 * AUBO_BUSY
4769 * AUBO_BAD_STATE
4770 * -AUBO_BAD_STATE
4771 *
4772 * @throws arcs::common_interface::AuboException
4773 *
4774 * @par JSON-RPC request example
4775 * {"jsonrpc":"2.0","method":"rob1.IoControl.getEncTickCount","params":[],"id":1}
4776 *
4777 * @par JSON-RPC response example
4778 * {"id":1,"jsonrpc":"2.0","result":0}
4779 *
4780 * \endenglish
4781 */
4783
4784 /**
4785 * @ingroup IoControl
4786 * \chinese
4787 * 防止在计数超出范围时计数错误
4788 *
4789 * @param delta_count
4790 *
4791 * @return 成功返回0;失败返回错误码
4792 * AUBO_NO_ACCESS
4793 * AUBO_BUSY
4794 * AUBO_BAD_STATE
4795 * -AUBO_BAD_STATE
4796 *
4797 * @throws arcs::common_interface::AuboException
4798 * \endchinese
4799 * \english
4800 * Prevent counting errors when the count exceeds the range
4801 *
4802 * @param delta_count
4803 *
4804 * @return Returns 0 on success; error code on failure.
4805 * AUBO_NO_ACCESS
4806 * AUBO_BUSY
4807 * AUBO_BAD_STATE
4808 * -AUBO_BAD_STATE
4809 *
4810 * @throws arcs::common_interface::AuboException
4811 * \endenglish
4812 */
4813 int unwindEncDeltaTickCount(int delta_count);
4814
4815 /**
4816 * @ingroup IoControl
4817 * \chinese
4818 * 获取末端按钮状态
4819 *
4820 * @return 按下返回true; 否则返回false
4821 *
4822 * @throws arcs::common_interface::AuboException
4823 *
4824 * @par Python函数原型
4825 * getToolButtonStatus() -> bool
4826 *
4827 * @par Lua函数原型
4828 * getToolButtonStatus() -> boolean
4829 *
4830 * @par Lua示例
4831 * status = getToolButtonStatus()
4832 *
4833 * @par JSON-RPC请求示例
4834 * {"jsonrpc":"2.0","method":"rob1.IoControl.getToolButtonStatus","params":[],"id":1}
4835 *
4836 * @par JSON-RPC响应示例
4837 * {"id":1,"jsonrpc":"2.0","result":false}
4838 *
4839 * \endchinese
4840 * \english
4841 * Get the status of the tool button.
4842 *
4843 * @return Returns true if pressed; otherwise false.
4844 *
4845 * @throws arcs::common_interface::AuboException
4846 *
4847 * @par Python function prototype
4848 * getToolButtonStatus() -> bool
4849 *
4850 * @par Lua function prototype
4851 * getToolButtonStatus() -> boolean
4852 *
4853 * @par Lua example
4854 * status = getToolButtonStatus()
4855 *
4856 * @par JSON-RPC request example
4857 * {"jsonrpc":"2.0","method":"rob1.IoControl.getToolButtonStatus","params":[],"id":1}
4858 *
4859 * @par JSON-RPC response example
4860 * {"id":1,"jsonrpc":"2.0","result":false}
4861 *
4862 * \endenglish
4863 */
4865
4866 /**
4867 * @ingroup IoControl
4868 * \chinese
4869 * 获取手柄按键状态
4870 *
4871 * @note 获取手柄按键状态
4872 *
4873 * @return 所有的手柄按键输入值\n
4874 * 例如,当返回值是2863267846时,换成2进制后是10101010101010100000000000000110。
4875 * 后16位就是所有的输入状态值,
4876 * 最后一位表示管脚0的输入状态值,倒数第二位表示管脚1的输入状态值,以此类推。\n
4877 * 1表示高电平状态,0表示低电平状态
4878 *
4879 * @throws arcs::common_interface::AuboException
4880 *
4881 * @par Python函数原型
4882 * getHandleIoStatus(self: pyaubo_sdk.IoControl) -> int
4883 *
4884 * @par Lua函数原型
4885 * getHandleIoStatus() -> number
4886 *
4887 * @par Lua示例
4888 * num = getHandleIoStatus()
4889 *
4890 * @par JSON-RPC请求示例
4891 * {"jsonrpc":"2.0","method":"rob1.IoControl.getHandleIoStatus","params":[],"id":1}
4892 *
4893 * @par JSON-RPC响应示例
4894 * {"id":1,"jsonrpc":"2.0","result":0}
4895 *
4896 * \endchinese
4897 * \english
4898 * Get the status of handle buttons.
4899 *
4900 * @note Get the status of handle buttons.
4901 *
4902 * @return All handle button input values.\n
4903 * For example, if the return value is 2863267846, its binary representation
4904 * is 10101010101010100000000000000110. The lower 16 bits represent the
4905 * status of all input pins, the least significant bit indicates the input
4906 * status of pin 0, the second least significant bit indicates pin 1, and so
4907 * on.\n 1 means high level, 0 means low level.
4908 *
4909 * @throws arcs::common_interface::AuboException
4910 *
4911 * @par Python function prototype
4912 * getHandleIoStatus(self: pyaubo_sdk.IoControl) -> int
4913 *
4914 * @par Lua function prototype
4915 * getHandleIoStatus() -> number
4916 *
4917 * @par Lua example
4918 * num = getHandleIoStatus()
4919 *
4920 * @par JSON-RPC request example
4921 * {"jsonrpc":"2.0","method":"rob1.IoControl.getHandleIoStatus","params":[],"id":1}
4922 *
4923 * @par JSON-RPC response example
4924 * {"id":1,"jsonrpc":"2.0","result":0}
4925 *
4926 * \endenglish
4927 */
4929
4930 /**
4931 * @ingroup IoControl
4932 * \chinese
4933 * 获取手柄类型
4934 *
4935 * @return type
4936 *
4937 * @throws arcs::common_interface::AuboException
4938 *
4939 * @par Python函数原型
4940 * getHandleType() -> int
4941 *
4942 * @par Lua函数原型
4943 * getHandleType() -> int
4944 *
4945 * @par Lua示例
4946 * int_num = getHandleType()
4947 *
4948 * @par JSON-RPC请求示例
4949 * {"jsonrpc":"2.0","method":"rob1.IoControl.getHandleType","params":[],"id":1}
4950 *
4951 * @par JSON-RPC响应示例
4952 * {"id":1,"jsonrpc":"2.0","result":0}
4953 *
4954 * \endchinese
4955 * \english
4956 * Get the handle type.
4957 *
4958 * @return type
4959 *
4960 * @throws arcs::common_interface::AuboException
4961 *
4962 * @par Python function prototype
4963 * getHandleType() -> int
4964 *
4965 * @par Lua function prototype
4966 * getHandleType() -> int
4967 *
4968 * @par Lua example
4969 * int_num = getHandleType()
4970 *
4971 * @par JSON-RPC request example
4972 * {"jsonrpc":"2.0","method":"rob1.IoControl.getHandleType","params":[],"id":1}
4973 *
4974 * @par JSON-RPC response example
4975 * {"id":1,"jsonrpc":"2.0","result":0}
4976 *
4977 * \endenglish
4978 */
4980
4981protected:
4982 void *d_;
4983};
4984using IoControlPtr = std::shared_ptr<IoControl>;
4985} // namespace common_interface
4986} // namespace arcs
4987
4988#endif // AUBO_SDK_IO_CONTROL_INTERFACE_H
int setAnalogOutputAfterEStopDefault()
Set all analog output states after emergency stop to default(no change)
int setToolAnalogOutputDomain(int index, int domain)
Set the range of tool analog output.
StandardInputAction getStandardDigitalInputAction(int index)
Get the trigger action for standard digital input.
int setToolAnalogInputDomain(int index, int domain)
Set the range of tool analog input.
int setStandardDigitalOutputAfterEStop(int index, bool value)
Set the value of a standard digital output after emergency stop
bool getToolDigitalOutput(int index)
Get the value of tool digital output.
int getConfigurableDigitalOutputNum()
Get the number of configurable digital outputs.
int setConfigurableDigitalOutput(int index, bool value)
Set the value of configurable digital output.
StandardOutputRunState getToolAnalogOutputRunstate(int index)
Get the runstate for tool analog output.
uint32_t getStaticLinkOutputs()
Get all static link output values.
uint32_t getStandardDigitalOutputs()
Get all standard digital output values.
StandardInputAction getConfigurableDigitalInputAction(int index)
Get the trigger action for configurable digital input.
int setStandardDigitalInputAction(int index, StandardInputAction action)
Set the trigger action for standard digital input.
int setConfigurableDigitalInputAction(int index, StandardInputAction action)
Set the trigger action for configurable digital input.
int getConfigurableDigitalInputNum()
Get the number of configurable digital inputs.
int getStandardAnalogOutputNum()
Get the number of standard analog outputs.
int getToolDigitalOutputNum()
Get the number of tool digital IOs (including digital inputs and outputs).
double getStandardAnalogOutput(int index)
Get the value of standard analog output.
uint32_t getHandleIoStatus()
Get the status of handle buttons.
int setDigitalOutputRunstateDefault()
Set all digital output runstates to None.
StandardOutputRunState getStandardDigitalOutputRunstate(int index)
Get the runstate for standard digital output.
int getStaticLinkOutputNum()
Get the number of static link outputs.
int getEncTickCount()
Get the tick count
int getStandardDigitalOutputNum()
Get the number of standard digital outputs.
int setConfigurableDigitalOutputAfterEStop(int index, bool value)
Set the value of a configurable digital output after emergency stop
int getHandleType()
Get the handle type.
int setToolAnalogOutputRunstate(int index, StandardOutputRunState runstate)
Set the runstate for tool analog output.
int getToolAnalogInputNum()
Get the number of tool analog inputs.
int setStandardDigitalOutput(int index, bool value)
Set the value of a standard digital output.
bool getStandardDigitalOutput(int index)
Get the value of a standard digital output.
bool getToolDigitalInput(int index)
Get the value of tool digital input.
StandardInputAction getToolDigitalInputAction(int index)
Get the trigger action for tool digital input.
double getToolAnalogOutput(int index)
Get the value of tool analog output.
int getToolVoltageOutputDomain()
Get the tool voltage output value (unit: V)
int getStandardDigitalInputNum()
Get the number of standard digital inputs.
int getToolDigitalInputNum()
Get the number of tool digital IOs (including digital inputs and outputs).
bool getStandardDigitalInput(int index)
Get the value of a standard digital input.
int setToolVoltageOutputDomain(int domain)
Set the tool voltage output value (unit: V)
int setToolDigitalOutputPulse(int index, bool value, double duration)
Set tool digital output pulse.
uint32_t getToolDigitalOutputs()
Get all tool digital output values.
int setToolDigitalInputAction(int index, StandardInputAction action)
Set the trigger action for tool digital input.
int setConfigurableDigitalOutputPulse(int index, bool value, double duration)
Set configurable digital output pulse.
int setStandardAnalogOutputDomain(int index, int domain)
Set the range of standard analog output.
double getToolAnalogInput(int index)
Get the value of tool analog input.
int setEncDecoderType(int type, int range_id)
Set the decoding method of the integrated encoder.
StandardOutputRunState getConfigurableDigitalOutputRunstate(int index)
Get the runstate for configurable digital output.
int getStandardAnalogInputDomain(int index)
Get the domain of standard analog input.
int setToolIoInput(int index, bool input)
Set the specified tool digital IO as input or output.
int getToolAnalogOutputNum()
Get the number of tool analog outputs.
StandardOutputRunState getStandardAnalogOutputRunstate(int index)
Get the runstate for standard analog output.
uint32_t getConfigurableDigitalInputs()
Get all configurable digital input values.
bool getToolButtonStatus()
Get the status of the tool button.
int getStandardAnalogOutputDomain(int index)
Get the domain of standard analog output.
int setStandardAnalogInputDomain(int index, int domain)
Set the range of standard analog input.
int setDigitalInputActionDefault()
Set all digital input actions to no trigger.
uint32_t getToolDigitalInputs()
Get all tool digital input values.
int getStandardAnalogInputNum()
Get the number of standard analog inputs.
int setToolAnalogOutput(int index, double value)
Set the value of tool analog output.
int setConfigurableDigitalOutputRunstate(int index, StandardOutputRunState runstate)
Set the runstate for configurable digital output.
int setEncTickCount(int tick)
Set the tick count of the integrated encoder.
bool hasEncoderSensor()
Whether the robot is equipped with an encoder.
int getToolAnalogOutputDomain(int index)
Get the domain of tool analog output.
int getToolAnalogInputDomain(int index)
Get the domain of tool analog input.
bool isToolIoInput(int index)
Determine whether the specified tool digital IO is configured as input.
int setStandardDigitalOutputRunstate(int index, StandardOutputRunState runstate)
Set the runstate for standard digital output.
int setToolDigitalOutputRunstate(int index, StandardOutputRunState runstate)
Set the runstate for tool digital output.
int setToolDigitalOutput(int index, bool value)
Set the value of tool digital output.
int setStandardAnalogOutputRunstate(int index, StandardOutputRunState runstate)
Set the runstate for standard analog output.
StandardOutputRunState getToolDigitalOutputRunstate(int index)
Get the runstate for tool digital output.
uint32_t getConfigurableDigitalOutputs()
Get all configurable digital output values.
int unwindEncDeltaTickCount(int delta_count)
Prevent counting errors when the count exceeds the range
int setDigitalOutputAfterEStopDefault()
Set all digital output states after emergency stop to default(no change)
uint32_t getStandardDigitalInputs()
Get all standard digital input values.
double getStandardAnalogInput(int index)
Get the value of standard analog input.
int getEncDecoderType()
Get the decoder type of the encoder.
int setStandardAnalogOutput(int index, double value)
Set the value of standard analog output.
uint32_t getStaticLinkInputs()
Get all static link input values.
bool getConfigurableDigitalInput(int index)
Get the value of configurable digital input.
int getStaticLinkInputNum()
Get the number of static link inputs.
int setStandardAnalogOutputAfterEStop(int index, double value)
Set the value of standard analog output after emergency stop
bool getConfigurableDigitalOutput(int index)
Get the value of configurable digital output.
int setStandardDigitalOutputPulse(int index, bool value, double duration)
Set digital output pulse.
StandardInputAction
The StandardInputAction enum.
Definition type_def.h:620
StandardOutputRunState
Standard Output Run State.
Definition type_def.h:612
std::shared_ptr< IoControl > IoControlPtr
enum type definitions