4package RSI.RapidCodeRemote;
5import "rsienums.proto";
6import "rapidgrpc.proto";
16 rpc MotionController(MotionControllerRequest) returns (MotionControllerResponse) {};
21 rpc Network(NetworkRequest) returns (NetworkResponse) {};
25 rpc Axis (AxisRequest) returns (AxisResponse) {};
26 rpc AxisBatch (AxisBatchRequest) returns (AxisBatchResponse) {};
31 rpc MultiAxis (MultiAxisRequest) returns (MultiAxisResponse) {};
32 rpc MultiAxisBatch (MultiAxisBatchRequest) returns (MultiAxisBatchResponse) {};
36 rpc NetworkNode (NetworkNodeRequest) returns (NetworkNodeResponse) {};
37 rpc NetworkNodeBatch (NetworkNodeBatchRequest) returns (NetworkNodeBatchResponse) {};
41 rpc Recorder (RecorderRequest) returns (RecorderResponse) {};
42 rpc RecorderBatch(RecorderBatchRequest) returns (RecorderBatchResponse) {};
46 rpc UserLimit (UserLimitRequest) returns (UserLimitResponse) {};
47 rpc UserLimitBatch(UserLimitBatchRequest) returns (UserLimitBatchResponse) {};
51 rpc RTOS(RTOSRequest) returns (RTOSResponse) {};
52 rpc RTOSBatch(RTOSBatchRequest) returns (RTOSBatchResponse) {};
58 rpc RTTaskManager (RTTaskManagerRequest) returns (RTTaskManagerResponse) {};
59 rpc RTTaskManagerBatch(RTTaskManagerBatchRequest) returns (RTTaskManagerBatchResponse) {};
63 rpc RTTask (RTTaskRequest) returns (RTTaskResponse) {};
64 rpc RTTaskBatch(RTTaskBatchRequest) returns (RTTaskBatchResponse) {};
70message MotionControllerConfig {
72 optional int32 axis_count = 1;
75 optional int32 multi_axis_count = 2;
78 optional int32 user_limit_count = 3;
81 optional int32 recorder_count = 4;
84 repeated int32 recorder_buffer_sizes = 5;
87 optional int32 compensator_count = 6;
90 repeated int32 compensator_point_counts = 7;
93 repeated int32 axis_frame_buffer_sizes = 8;
96 optional int32 user_version = 10;
99 optional
double sample_rate = 11;
116 uint64 host_address = 4;
122 uint32 firmware_address = 6;
126 optional int32 index = 7;
129 optional int32 mask = 8;
132message MotionControllerMemory {
134 uint64 host_address = 1;
138 uint64 host_address = 1;
142 uint64 host_address = 1;
153message MotionControllerCreationParameters {
155 optional
string rmp_path = 1;
156 optional
string node_name = 2;
158 optional
string primary_nic = 3;
159 optional
string secondary_nic = 4;
161 optional int32 cpu_affinity = 5;
162 optional int32 rmp_thread_priority_max = 6;
164 optional int32 controller_index = 7;
167message MotionControllerAction {
169 optional MotionControllerCreationParameters create = 1;
171 repeated MotionControllerMemory memory_sets = 2;
172 repeated MotionControllerMemory memory_gets = 3;
173 repeated AddressInfo address_gets = 4;
174 optional Shutdown shutdown = 5;
175 optional ProcessorUsageClear processor_usage_clear = 6;
181 message ProcessorUsageClear {}
188message MotionControllerInfo {
190 uint32 serial_number = 1;
193 string rapid_code_version = 2;
196 string firmware_version = 3;
199 int32 axis_license_count = 4;
201 repeated AddressInfo addresses = 5;
204 Constants constants = 6;
208 uint32 network_start_timeout_milliseconds_default = 1;
211 uint32 axis_count_maximum = 2;
214 uint32 motion_count_maximum = 3;
217 uint32 network_node_count_maximum = 4;
220 uint32 recorder_count_maximum = 5;
223 uint32 compensator_count_maximum = 6;
226 uint32 user_buffer_data_count_maximum = 7;
229 double sample_rate_default = 8;
231 CreationParameters creation_parameters = 9;
233 message CreationParameters {
235 uint32 path_length_maximum = 1;
238 uint32 cpu_affinity_default = 2;
241 uint32 rmp_thread_priority_maximum_default = 3;
244 uint32 rmp_thread_priority_range = 4;
249 MotionControllerCreationParameters creation_parameters = 7;
256message MotionControllerStatus {
258 int32 sample_counter = 1;
261 uint32 network_node_count = 2;
264 double processor_usage = 3;
267 uint32 firmware_timing_delta = 4;
270 int32 external_memory_size = 9;
277message MotionControllerRequest {
279 RSI.RapidServer.RequestHeader header = 1;
281 optional MotionControllerConfig config = 2;
282 optional MotionControllerAction action = 3;
288message MotionControllerResponse {
290 RSI.RapidServer.ResponseHeader header = 1;
292 optional MotionControllerConfig config = 2;
293 optional MotionControllerAction action = 3;
294 optional MotionControllerInfo info = 4;
295 optional MotionControllerStatus status = 5;
300message FirmwareValue {
303 int32 int8_value = 2;
304 uint32 uint8_value = 3;
305 int32 int16_value = 4;
306 uint32 uint16_value = 5;
307 int32 int32_value = 6;
308 uint32 uint32_value = 7;
309 float float_value = 8;
310 double double_value = 9;
311 int64 int64_value = 10;
312 uint64 uint64_value = 11;
318message NetworkConfig {}
322message NetworkAction {
324 optional Shutdown shutdown = 1;
327 optional Discover discover = 2;
328 optional Start start = 3;
329 optional DiscoverAndStart discover_and_start = 4;
332 optional TimingMetricsEnable timing_metrics_enable = 5;
333 optional TimingMetricsDisable timing_metrics_disable = 6;
334 optional TimingMetricsClear timing_metrics_clear = 7;
337 repeated OutputOverride output_override = 8;
340 optional EniGenerate eni_generate = 9;
347 optional uint32 timeout_milliseconds = 3;
353 optional uint32 timeout_milliseconds = 2;
356 message DiscoverAndStart {
360 optional uint32 timeout_milliseconds = 2;
363 message TimingMetricsEnable {
365 optional uint32 low_threshold = 1;
367 optional uint32 high_threshold = 2;
369 message TimingMetricsDisable {}
370 message TimingMetricsClear {}
372 message OutputOverride {
376 optional
bool override = 2;
378 optional int64 override_value = 3;
381 message EniGenerate {
385 optional
string output = 2;
391message NetworkRequest {
393 RSI.RapidServer.RequestHeader header = 1;
395 optional NetworkConfig config = 2;
397 optional NetworkAction action = 3;
402message NetworkResponse {
404 RSI.RapidServer.ResponseHeader header = 1;
406 optional NetworkConfig config = 2;
407 optional NetworkAction action = 3;
408 optional NetworkInfo info = 4;
409 optional NetworkStatus status = 5;
414message NetworkStatus {
416 int32 node_count = 2;
418 bool synchronized = 4;
422 string log_message = 6;
425 TimingMetricsStatus timing_metrics = 7;
428 repeated PdoInputStatus pdo_inputs = 8;
431 repeated PdoOutputStatus pdo_outputs = 9;
433 message TimingMetricsStatus {
437 uint32 min_recorded = 2;
439 uint32 max_recorded = 3;
441 uint32 low_count = 4;
443 uint32 high_count = 5;
446 message PdoInputStatus {
453 message PdoOutputStatus {
457 int64 sent_value = 2;
459 int64 override_value = 3;
461 int64 firmware_value = 4;
463 bool override_enabled = 5;
471 int32 pdo_input_count = 4;
472 int32 pdo_output_count = 5;
475 repeated PdoInputInfo pdo_inputs = 6;
478 repeated PdoOutputInfo pdo_outputs = 7;
480 message PdoInputInfo {
482 AddressInfo address_info = 2;
484 int32 bit_offset = 4;
487 message PdoOutputInfo {
489 AddressInfo sent_value_address = 2;
490 AddressInfo override_value_address = 3;
491 AddressInfo firmware_value_address = 4;
493 int32 bit_offset = 6;
504 RSI.RapidServer.RequestHeader header = 1;
509 optional AxisConfig config = 3;
510 optional AxisAction action = 4;
515message AxisResponse {
517 RSI.RapidServer.ResponseHeader header = 1;
522 optional AxisConfig config = 3;
523 optional AxisAction action = 4;
524 optional AxisInfo info = 5;
525 optional AxisStatus status = 6;
530message AxisBatchRequest {
532 RSI.RapidServer.RequestHeader header = 1;
534 repeated AxisRequest requests = 2;
537message AxisBatchResponse {
539 RSI.RapidServer.ResponseHeader header = 1;
541 repeated AxisResponse responses = 2;
548 bool amp_enabled = 1;
557 string source_name = 4;
560 PositionStatus position = 5;
563 VelocityStatus velocity = 6;
566 AccelerationStatus acceleration = 7;
569 int32 frames_to_execute = 8;
572 uint32 motion_id = 9;
575 uint32 motion_id_executing = 10;
578 int32 element_id_executing = 11;
581 bool gear_enabled = 12;
584 MotorStatusBits motor_status_bits = 13;
587 MotionStatusBits motion_status_bits = 14;
590 Ds402StatusBits ds402_status_bits = 15;
593 DedicatedOutputBits dedicated_output_bits = 16;
596 DedicatedInputBits dedicated_input_bits = 17;
599 bool home_state = 18;
603 uint32 general_input_bits = 20;
606 uint32 general_output_bits = 21;
608 message PositionStatus {
614 double encoder_0 = 6;
615 double encoder_1 = 7;
616 double compensation = 8;
620 message VelocityStatus {
625 message AccelerationStatus {
629 message MotorStatusBits {
631 bool amp_warning = 2;
632 bool feedback_fault = 3;
633 bool limit_position_error = 4;
634 bool limit_torque = 5;
635 bool limit_hardware_negative = 6;
636 bool limit_hardware_positive = 7;
637 bool limit_software_negative = 8;
638 bool limit_software_positive = 9;
641 message MotionStatusBits {
645 bool at_velocity = 4;
646 bool out_of_frames = 5;
647 bool near_target = 6;
652 message Ds402StatusBits {
653 bool ready_to_switch_on = 1;
654 bool switched_on = 2;
655 bool operation_enabled = 3;
657 bool voltage_enabled = 5;
659 bool switch_on_disabled = 7;
661 bool manufacturer_specific_8 = 9;
663 bool target_reached = 11;
664 bool internal_limit_active = 12;
665 bool operation_mode_specific_12 = 13;
666 bool operation_mode_specific_13 = 14;
667 bool manufacturer_specific_14 = 15;
668 bool manufacturer_specific_15 = 16;
671 message DedicatedOutputBits {
673 bool brake_release = 2;
676 message DedicatedInputBits {
678 bool brake_applied = 2;
680 bool limit_hardware_positive = 4;
681 bool limit_hardware_negative = 5;
683 bool index_secondary = 7;
684 bool feedback_fault = 8;
689 bool amp_active = 13;
691 bool drive_status_9 = 15;
692 bool drive_status_10 = 16;
693 bool feedback_fault_primary = 17;
694 bool feedback_fault_secondary = 18;
701 optional Abort abort = 1;
702 optional EStopAbort e_stop_abort = 2;
703 optional EStopModifyAbort e_stop_modify_abort = 3;
704 optional EStopModify e_stop_modify = 4;
705 optional EStop e_stop = 5;
706 optional TriggeredModify triggered_modify = 6;
707 optional Stop stop = 7;
708 optional Resume resume = 8;
710 optional ClearFaults clear_faults = 9;
711 optional AmpEnable amp_enable = 10;
712 optional AmpDisable amp_disable = 11;
713 optional HoldGateSet hold_gate_set = 12;
714 optional PositionSet position_set = 13;
715 optional Move move = 14;
716 optional GearEnable gear_enable = 15;
717 optional GearDisable gear_disable = 16;
718 optional Home home = 17;
719 optional HomeCancel home_cancel = 18;
720 optional OperationMode operation_mode_set = 19;
721 optional OperationMode operation_mode_get = 20;
724 message EStopAbort {}
725 message EStopModifyAbort{}
726 message EStopModify{}
728 message TriggeredModify {}
732 message ClearFaults {}
735 optional int32 timeout_milliseconds = 1;
736 optional int32 duration = 2;
738 message AmpDisable {}
739 message HoldGateSet {
749 AxisMovePointToPoint point_to_point = 3;
750 AxisMoveVelocity velocity = 4;
751 MoveStreaming streaming = 5;
755 optional uint32 motion_id = 6;
758 optional MotionHold motion_hold = 7;
765 optional int32 master_axis_number = 2;
768 int32 denominator = 5;
770 message GearDisable {}
775 double slow_velocity = 3;
776 double acceleration = 4;
777 double deceleration = 5;
778 optional
double jerk_percent = 6;
779 optional
bool move_to_zero = 7;
780 optional
double offset = 8;
784 message HomeCancel {}
786 message OperationMode {
793 message AxisMovePointToPoint {
798 optional
double velocity = 2;
801 optional
double acceleration = 3;
804 optional
double deceleration = 4;
809 optional
double jerk_percent = 5;
813 optional
double final_velocity = 6;
819message AxisMoveVelocity {
824 double acceleration = 2;
828 double jerk_percent = 3;
831message MoveStreaming {
832 repeated
double positions = 1;
833 repeated
double velocities = 2;
834 repeated
double accelerations = 3;
835 repeated
double jerks = 4;
836 repeated
double times = 5;
837 int32 empty_count = 6;
851message MotionHoldGate{
855message MotionHoldAxis {
863 int32 hold_axis_number = 3;
866 double hold_axis_position = 4;
869message MotionHoldUser {
883 MotionHoldGate gate = 2;
884 MotionHoldAxis axis = 3;
885 MotionHoldUser user = 4;
889 optional
double hold_timeout_seconds = 6;
892 optional
double delay_seconds = 7;
898 optional
double user_units = 1;
901 optional
double origin_position = 2;
904 optional
string user_label = 3;
907 optional TrajectoryDefaults defaults = 4;
908 optional HardwareTrigger amp_fault = 5;
909 optional HardwareTrigger home_switch = 6;
910 optional ErrorLimit error_limit = 7;
911 optional HardwareTrigger hardware_negative_limit = 8;
912 optional HardwareTrigger hardware_positive_limit = 9;
913 optional SoftwareTrigger software_negative_limit = 10;
914 optional SoftwareTrigger software_positive_limit = 11;
915 optional Settling settling = 12;
916 optional MotionConfig motion = 13;
917 optional Homing homing = 14;
918 optional int32 frame_buffer_size = 15;
920 optional
double feed_rate = 17;
923 message TrajectoryDefaults
925 optional
double velocity = 1;
926 optional
double acceleration = 2;
927 optional
double deceleration = 3;
928 optional
double jerk_percent = 4;
929 optional
double position1 = 5;
930 optional
double position2 = 6;
931 optional
double relative_increment = 7;
934 message HardwareTrigger {
936 optional
bool trigger_state = 2;
937 optional
double duration = 3;
940 message SoftwareTrigger {
942 optional
double trigger_value = 2;
947 optional
double trigger_value = 2;
948 optional
double duration = 3;
952 optional
double position_tolerance_fine = 1;
953 optional
double position_tolerance_coarse = 2;
954 optional
double velocity_tolerance = 3;
955 optional
double time_seconds = 4;
956 optional
bool on_stop = 5;
957 optional
bool on_estop = 6;
958 optional
bool on_estop_cmd_equals_actual = 7;
961 message MotionConfig {
963 optional
double stop_time = 1;
966 optional
double estop_time = 2;
969 optional
double triggered_modify_deceleration = 3;
972 optional
double triggered_modify_jerk_percent = 4;
975 optional
double estop_modify_deceleration = 5;
978 optional
double estop_modify_jerk_percent = 6;
992 repeated AddressInfo addresses = 2;
995 NetworkNodeInfo node_info = 3;
998 Constants constants = 4;
1001 int32 motion_supervisor_index = 5;
1005 uint32 network_index_invalid = 1;
1008 double amp_enable_amp_fault_timeout_seconds_default = 2;
1016message MultiAxisRequest {
1018 RSI.RapidServer.RequestHeader header = 1;
1023 optional MultiAxisConfig config = 3;
1024 optional MultiAxisAction action = 4;
1029message MultiAxisResponse {
1031 RSI.RapidServer.ResponseHeader header = 1;
1036 optional MultiAxisConfig config = 3;
1037 optional MultiAxisAction action = 4;
1038 optional MultiAxisInfo info = 5;
1039 optional MultiAxisStatus status = 6;
1044message MultiAxisBatchRequest {
1046 RSI.RapidServer.RequestHeader header = 1;
1048 repeated MultiAxisRequest requests = 2;
1051message MultiAxisBatchResponse {
1053 RSI.RapidServer.ResponseHeader header = 1;
1055 repeated MultiAxisResponse responses = 2;
1061message MultiAxisStatus {
1064 string source_name = 3;
1065 bool amp_enabled = 4;
1066 MotionStatusBits motion_status_bits = 5;
1067 repeated AxisStatus axis_statuses = 6;
1070 message MotionStatusBits {
1074 bool at_velocity = 4;
1075 bool out_of_frames = 5;
1081message MultiAxisAction {
1082 optional Abort abort = 1;
1083 optional EStopAbort e_stop_abort = 2;
1084 optional EStopModifyAbort e_stop_modify_abort = 3;
1085 optional EStopModify e_stop_modify = 4;
1086 optional EStop e_stop = 5;
1087 optional TriggeredModify triggered_modify = 6;
1088 optional Stop stop = 7;
1089 optional Resume resume = 8;
1091 optional ClearFaults clear_faults = 9;
1092 optional AmpEnable amp_enable = 10;
1093 optional AmpDisable amp_disable = 11;
1094 optional Move move = 12;
1095 optional RemoveAxes remove_axes = 13;
1096 optional Unmap unmap = 14;
1097 optional Map map = 15;
1098 optional AxisAdd axis_add = 16;
1101 message EStopAbort {}
1102 message EStopModifyAbort{}
1103 message EStopModify{}
1105 message TriggeredModify {}
1109 message ClearFaults {}
1112 optional int32 timeout_milliseconds = 1;
1113 optional int32 duration = 2;
1115 message AmpDisable {}
1119 MultiAxisMovePointToPoint point_to_point = 3;
1120 MultiAxisMoveVelocity velocity = 4;
1121 MoveStreaming streaming = 5;
1123 optional uint32 motion_id = 6;
1126 optional MotionHold motion_hold = 7;
1130 message MultiAxisMovePointToPoint {
1131 repeated AxisMovePointToPoint axis_move_point_to_points = 1;
1135 message MultiAxisMoveVelocity {
1136 repeated AxisMoveVelocity axis_move_velocities = 1;
1139 message RemoveAxes {}
1143 int32 axis_index = 1;
1149message MultiAxisConfig {
1150 repeated int32 axes_indices = 1;
1151 optional
string user_label = 2;
1152 optional
double feed_rate = 3;
1153 optional
double stop_time = 4;
1154 optional
double e_stop_time = 5;
1159message MultiAxisInfo {
1164 int32 motion_supervisor_index = 2;
1167 repeated AddressInfo addresses = 3;
1172message NetworkNodeInfo {
1180 int32 axis_count = 3;
1186 IOCounts io_counts = 5;
1189 IOAddresses io_addresses = 6;
1195 uint32 vendor_id = 8;
1198 uint32 product_code = 9;
1201 uint32 hardware_revision = 10;
1204 uint32 station_alias = 11;
1207 string serial_number = 12;
1213 string product_name = 14;
1216 string vendor_name = 15;
1218 Constants constants = 16;
1226 int32 digital_inputs = 1;
1229 int32 digital_outputs = 2;
1232 int32 analog_inputs = 3;
1235 int32 analog_outputs = 4;
1238 message IOAddresses {
1240 repeated AddressInfo digital_inputs = 1;
1243 repeated AddressInfo digital_outputs = 2;
1246 repeated AddressInfo analog_inputs = 3;
1249 repeated AddressInfo analog_outputs = 4;
1254 uint32 sdo_timeout_milliseconds_default = 1;
1260message NetworkNodeStatus {
1262 repeated
bool digital_input_states = 2;
1265 repeated
bool digital_output_states = 3;
1268 repeated int32 analog_input_values = 4;
1271 repeated int32 analog_output_values = 5;
1278message DigitalOutput {
1280 int32 bit_number = 1;
1290message AnalogOutput {
1309 int32 sub_index = 2;
1312 int32 byte_count = 3;
1316 option allow_alias =
true;
1324 optional ValueType read_type = 4;
1327 optional uint32 timeout_milliseconds = 5;
1335 int32 integer_value = 6;
1338 string string_value = 7;
1341 bytes bytes_value = 8;
1352 optional
string result = 2;
1358message NetworkNodeAction {
1364 repeated DigitalOutput digital_output_sets = 1;
1370 repeated AnalogOutput analog_output_sets = 2;
1375 repeated SDO sdo_writes = 3;
1380 repeated SDO sdo_reads = 4;
1386 repeated AKDASCII akd_asciis = 5;
1391message NetworkNodeConfig {}
1395message NetworkNodeRequest {
1397 RSI.RapidServer.RequestHeader header = 1;
1402 optional NetworkNodeConfig config = 3;
1403 optional NetworkNodeAction action = 4;
1408message NetworkNodeResponse {
1410 RSI.RapidServer.ResponseHeader header = 1;
1415 optional NetworkNodeConfig config = 3;
1416 optional NetworkNodeAction action = 4;
1417 optional NetworkNodeInfo info = 5;
1418 optional NetworkNodeStatus status = 6;
1423message NetworkNodeBatchRequest {
1425 RSI.RapidServer.RequestHeader header = 1;
1427 repeated NetworkNodeRequest requests = 2;
1430message NetworkNodeBatchResponse {
1432 RSI.RapidServer.ResponseHeader header = 1;
1434 repeated NetworkNodeResponse responses = 2;
1440message RecorderRequest {
1442 RSI.RapidServer.RequestHeader header = 1;
1447 optional RecorderConfig config = 3;
1448 optional RecorderAction action = 4;
1454message RecorderResponse {
1456 RSI.RapidServer.ResponseHeader header = 1;
1461 optional RecorderConfig config = 3;
1462 optional RecorderAction action = 4;
1463 optional RecorderInfo info = 5;
1464 optional RecorderStatus status = 6;
1469message RecorderBatchRequest {
1471 RSI.RapidServer.RequestHeader header = 1;
1473 repeated RecorderRequest requests = 2;
1476message RecorderBatchResponse {
1478 RSI.RapidServer.ResponseHeader header = 1;
1480 repeated RecorderResponse responses = 2;
1486message RecorderInfo { }
1490message RecorderStatus {
1492 bool is_recording = 1;
1495 int32 records_available = 2;
1500message RecorderAction {
1502 optional Reset reset = 1;
1503 optional Start start = 2;
1504 optional Stop stop = 3;
1505 optional RetrieveRecords retrieve_records = 4;
1511 message RetrieveRecords {
1513 repeated Record records = 1;
1518 repeated Data data = 1;
1535message RecorderConfig {
1537 optional int32 period = 1;
1540 optional
bool circular_buffer = 2;
1543 repeated AddressInfo addresses = 3;
1546 optional RecorderTriggerOnMotion trigger_on_motion = 4;
1549 optional int32 buffer_high_count = 5;
1552 optional int32 record_max_count = 6;
1556 message RecorderTriggerOnMotion {
1558 optional int32 motion_supervisor_index = 1;
1560 optional
bool enable = 2;
1567message UserLimitStatus {
1580message UserLimitAction {
1582 optional Reset reset = 1;
1583 optional Enable enable = 2;
1584 optional Disable disable = 3;
1594message UserLimitInfo {}
1599message UserLimitConfig {
1605 optional UserLimitCondition condition_0 = 2;
1608 optional UserLimitCondition condition_1 = 3;
1611 optional UserLimitOutput output = 4;
1617 optional int32 action_axis = 6;
1620 optional
double duration = 7;
1623 optional
bool is_single_shot = 8;
1626 repeated UserLimitInterruptUserData user_data = 9;
1629 message UserLimitCondition {
1640 optional uint32 mask = 4;
1643 optional int32 integer_limit_value = 5;
1646 optional
double double_limit_value = 6;
1649 message UInt32Masks {
1651 uint32 and_mask = 1;
1657 message UInt64Masks {
1659 uint64 and_mask = 1;
1665 message UserLimitOutput {
1678 UInt32Masks uint32_masks = 6;
1681 int32 int32_value = 7;
1684 UInt64Masks uint64_masks = 8;
1687 double double_value = 9;
1691 uint64 input_address = 10;
1695 message UserLimitInterruptUserData {
1700 optional uint64 address = 2;
1706message UserLimitRequest {
1708 RSI.RapidServer.RequestHeader header = 1;
1713 optional UserLimitConfig config = 3;
1715 optional UserLimitAction action = 4;
1720message UserLimitResponse {
1722 RSI.RapidServer.ResponseHeader header = 1;
1727 optional UserLimitConfig config = 3;
1728 optional UserLimitAction action = 4;
1729 optional UserLimitInfo info = 5;
1730 optional UserLimitStatus status = 6;
1735message UserLimitBatchRequest {
1737 RSI.RapidServer.RequestHeader header = 1;
1739 repeated UserLimitRequest requests = 2;
1742message UserLimitBatchResponse {
1744 RSI.RapidServer.ResponseHeader header = 1;
1746 repeated UserLimitResponse responses = 2;
1751message RTOSConfig {}
1757 string rmp_catalog = 1;
1760 string rmp_network_catalog = 2;
1763 uint32 node_count = 3;
1769 optional Restart restart = 1;
1770 optional Stop stop = 2;
1771 optional Start start = 3;
1787message RTOSRequest {
1789 RSI.RapidServer.RequestHeader header = 1;
1794 optional RTOSConfig config = 3;
1795 optional RTOSAction action = 4;
1800message RTOSResponse {
1802 RSI.RapidServer.ResponseHeader header = 1;
1807 optional RTOSConfig config = 3;
1808 optional RTOSAction action = 4;
1809 optional RTOSInfo info = 5;
1810 optional RTOSStatus status = 6;
1815message RTOSBatchRequest {
1817 RSI.RapidServer.RequestHeader header = 1;
1819 repeated RTOSRequest requests = 2;
1822message RTOSBatchResponse {
1824 RSI.RapidServer.ResponseHeader header = 1;
1826 repeated RTOSResponse responses = 2;
1835message RTTaskCreationParameters {
1837 string function_name = 1;
1840 optional
string library_name = 2;
1841 optional
string library_directory = 3;
1844 optional
string user_label = 4;
1847 optional int32 task_priority = 5;
1850 optional int32 repeats = 6;
1853 optional int32 period = 7;
1858 optional int32 phase = 8;
1861 optional
bool enable_timing = 9;
1867 PlatformTypeUNKNOWN = 0;
1868 PlatformTypeNATIVE = 1;
1869 PlatformTypeINTIME = 2;
1870 PlatformTypeLINUX = 3;
1871 PlatformTypeWINDOWS = 4;
1877 RTTaskManagerStateUNKNOWN = 0;
1878 RTTaskManagerStateDEAD = 1;
1879 RTTaskManagerStateRUNNING = 2;
1880 RTTaskManagerStateSTOPPED = 3;
1885message RTTaskManagerConfig {}
1890message RTTaskManagerCreationParameters {
1892 optional
string rt_task_directory = 1;
1899 optional
string node_name = 3;
1902 optional int32 cpu_core = 4;
1905 optional
string user_label = 5;
1910message RTTaskManagerAction {
1912 optional Create create = 1;
1915 optional Discover discover = 2;
1918 optional TaskSubmit task_submit = 3;
1921 repeated GlobalValueSet global_value_sets = 4;
1924 optional Shutdown shutdown = 5;
1928 RTTaskManagerCreationParameters creation_parameters = 1;
1936 repeated int32 manager_ids = 1;
1939 message TaskSubmit {
1941 RTTaskCreationParameters task_creation_parameters = 1;
1944 optional int32 task_id = 2;
1947 message GlobalValueSet {
1949 FirmwareValue value = 1;
1956 optional
string library_name = 3;
1957 optional
string library_directory = 4;
1965message RTTaskManagerInfo {
1970 RTTaskManagerCreationParameters creation_parameters = 2;
1973 Constants constants = 4;
1977 int32 rt_task_manager_count_maximum = 1;
1980 int32 rt_task_count_maximum = 2;
1983 string rt_task_manager_executable_name = 3;
1986 CreationParameterConstants creation_parameters = 4;
1988 message CreationParameterConstants {
1990 int32 directory_length_maximum = 1;
1993 int32 name_length_maximum = 2;
2000message RTTaskManagerStatus {
2005 optional uint64 task_submission_count = 2;
2008 optional int64 cycle_count = 3;
2011 optional uint64 cycle_time_max = 4;
2014 optional uint64 cycle_time_min = 5;
2017 optional
double cycle_time_mean = 6;
2020 optional uint64 cycle_time_last = 7;
2024 repeated int32 task_ids = 8;
2027 map<string, FirmwareValue> global_values = 9;
2032message RTTaskManagerRequest {
2034 RSI.RapidServer.RequestHeader header = 1;
2037 optional int32
id = 2;
2039 optional RTTaskManagerConfig config = 3;
2040 optional RTTaskManagerAction action = 4;
2045message RTTaskManagerResponse {
2047 RSI.RapidServer.ResponseHeader header = 1;
2050 optional int32
id = 2;
2052 optional RTTaskManagerConfig config = 3;
2053 optional RTTaskManagerAction action = 4;
2054 optional RTTaskManagerInfo info = 5;
2055 optional RTTaskManagerStatus status = 6;
2060message RTTaskManagerBatchRequest {
2062 RSI.RapidServer.RequestHeader header = 1;
2064 repeated RTTaskManagerRequest requests = 2;
2067message RTTaskManagerBatchResponse {
2069 RSI.RapidServer.ResponseHeader header = 1;
2071 repeated RTTaskManagerResponse responses = 2;
2077 RTTaskStateUNKNOWN = 0;
2078 RTTaskStateDEAD = 1;
2079 RTTaskStateDISABLED = 2;
2080 RTTaskStateWAITING = 3;
2081 RTTaskStateRUNNING = 4;
2086message RTTaskConfig {}
2091message RTTaskAction {
2093 optional Stop stop = 1;
2096 optional TimingReset timing_reset = 2;
2099 optional ExecutionCountAbsoluteWait execution_count_absolute_wait = 3;
2102 optional ExecutionCountRelativeWait execution_count_relative_wait = 4;
2105 message TimingReset {}
2107 message ExecutionCountAbsoluteWait {
2109 optional int64 count = 1;
2112 optional int32 timeout_ms = 2;
2115 message ExecutionCountRelativeWait {
2117 optional int64 count = 1;
2120 optional int32 timeout_ms = 2;
2131 int32 manager_id = 2;
2134 RTTaskCreationParameters creation_parameters = 3;
2137 Constants constants = 4;
2141 CreationParameterConstants creation_parameters = 1;
2144 StatusConstants status = 2;
2146 message CreationParameterConstants {
2148 int32 directory_length_maximum = 1;
2151 int32 name_length_maximum = 2;
2154 int32 priority_default = 3;
2157 int32 repeat_forever = 4;
2160 int32 repeat_none = 5;
2163 int32 period_default = 6;
2166 int32 phase_default = 7;
2169 int32 enable_timing_default = 8;
2172 message StatusConstants {
2174 int64 invalid_execution_count = 1;
2177 uint64 invalid_execution_time = 2;
2184message RTTaskStatus {
2189 optional int64 execution_count = 2;
2192 optional uint64 execution_time_max = 3;
2195 optional uint64 execution_time_min = 4;
2198 optional
double execution_time_mean = 5;
2201 optional uint64 execution_time_last = 6;
2206message RTTaskRequest {
2208 RSI.RapidServer.RequestHeader header = 1;
2214 int32 manager_id = 3;
2216 optional RTTaskConfig config = 4;
2217 optional RTTaskAction action = 5;
2222message RTTaskResponse {
2224 RSI.RapidServer.ResponseHeader header = 1;
2230 int32 manager_id = 3;
2232 optional RTTaskConfig config = 4;
2233 optional RTTaskAction action = 5;
2234 optional RTTaskInfo info = 6;
2235 optional RTTaskStatus status = 7;
2240message RTTaskBatchRequest {
2242 RSI.RapidServer.RequestHeader header = 1;
2244 repeated RTTaskRequest requests = 2;
2247message RTTaskBatchResponse {
2249 RSI.RapidServer.ResponseHeader header = 1;
2251 repeated RTTaskResponse responses = 2;
RTTaskManagerState
Enum representing the possible states of an RTTaskManager.
RTTaskState
Enum representing the possible states of a real-time task.
PlatformType
Enum representing the platform type for an RTTaskManager.
RSINetworkEniResult
NetworkEniGenerate return values.
RSINetworkStartMode
Network start modes.
RSINetworkState
State of network.
RSIControllerAddressType
Used to get firmware address used in User Limits, Recorders, etc.
RSIMotorDisableAction
Action for when a motor is disabled.
RSIMotionType
PT and PVT streaming motion types.
RSIDataType
Data types for User Limits and other triggers.
RSIUserLimitLogic
Logic options for User Limits.
RSIAction
Action to perform on an Axis.
RSIAxisAddressType
Used to get firmware address used in User Limits, Recorders, etc.
RSINetworkStartError
Network start errors.
RSIMultiAxisAddressType
Used to get firmware address used in User Limits, Recorders, etc.
RSIUserLimitTriggerType
Trigger types for UserLimits.
INtimeStatus
INtime status values.
RSIHomeStage
Predefined Homing Stage sections.
RSINetworkType
Type of Network topology.
RSINodeType
Valid Node types.
RSISource
Possible sources that have caused an Error state.
RSIOperationMode
DS402 modes of operation.
RSIAxisMasterType
Sources available to a slave Axis for electronic gearing & camming.