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) {};
56 rpc RTTask (RTTaskRequest) returns (RTTaskResponse) {};
57 rpc RTTaskBatch(RTTaskBatchRequest) returns (RTTaskBatchResponse) {};
61 rpc RTTaskManager (RTTaskManagerRequest) returns (RTTaskManagerResponse) {};
62 rpc RTTaskManagerBatch(RTTaskManagerBatchRequest) returns (RTTaskManagerBatchResponse) {};
67message MotionControllerConfig {
69 optional int32 axis_count = 1;
72 optional int32 multi_axis_count = 2;
75 optional int32 user_limit_count = 3;
78 optional int32 recorder_count = 4;
81 repeated int32 recorder_buffer_sizes = 5;
84 optional int32 compensator_count = 6;
87 repeated int32 compensator_point_counts = 7;
90 repeated int32 axis_frame_buffer_sizes = 8;
93 optional int32 user_version = 10;
96 optional
double sample_rate = 11;
113 uint64 host_address = 4;
119 uint32 firmware_address = 6;
123 optional int32 index = 7;
126 optional int32 mask = 8;
129message MotionControllerMemory {
131 uint64 host_address = 1;
135 uint64 host_address = 1;
139 uint64 host_address = 1;
150message MotionControllerCreationParameters {
152 optional
string rmp_path = 1;
153 optional
string node_name = 2;
155 optional
string primary_nic = 3;
156 optional
string secondary_nic = 4;
158 optional int32 cpu_affinity = 5;
159 optional int32 rmp_thread_priority_max = 6;
161 optional int32 controller_index = 7;
164message MotionControllerAction {
166 optional MotionControllerCreationParameters create = 1;
168 repeated MotionControllerMemory memory_sets = 2;
169 repeated MotionControllerMemory memory_gets = 3;
170 repeated AddressInfo address_gets = 4;
171 optional Shutdown shutdown = 5;
172 optional ProcessorUsageClear processor_usage_clear = 6;
178 message ProcessorUsageClear {}
185message MotionControllerInfo {
187 uint32 serial_number = 1;
190 string rapid_code_version = 2;
193 string firmware_version = 3;
196 int32 axis_license_count = 4;
198 repeated AddressInfo addresses = 5;
201 Constants constants = 6;
205 uint32 network_start_timeout_milliseconds_default = 1;
208 uint32 axis_count_maximum = 2;
211 uint32 motion_count_maximum = 3;
214 uint32 network_node_count_maximum = 4;
217 uint32 recorder_count_maximum = 5;
220 uint32 compensator_count_maximum = 6;
223 uint32 user_buffer_data_count_maximum = 7;
226 double sample_rate_default = 8;
228 CreationParameters creation_parameters = 9;
230 message CreationParameters {
232 uint32 path_length_maximum = 1;
235 uint32 cpu_affinity_default = 2;
238 uint32 rmp_thread_priority_maximum_default = 3;
241 uint32 rmp_thread_priority_range = 4;
246 MotionControllerCreationParameters creation_parameters = 7;
253message MotionControllerStatus {
255 int32 sample_counter = 1;
258 uint32 network_node_count = 2;
261 double processor_usage = 3;
264 uint32 firmware_timing_delta = 4;
267 int32 external_memory_size = 9;
274message MotionControllerRequest {
276 RSI.RapidServer.RequestHeader header = 1;
278 optional MotionControllerConfig config = 2;
279 optional MotionControllerAction action = 3;
285message MotionControllerResponse {
287 RSI.RapidServer.ResponseHeader header = 1;
289 optional MotionControllerConfig config = 2;
290 optional MotionControllerAction action = 3;
291 optional MotionControllerInfo info = 4;
292 optional MotionControllerStatus status = 5;
297message FirmwareValue {
300 int32 int8_value = 2;
301 uint32 uint8_value = 3;
302 int32 int16_value = 4;
303 uint32 uint16_value = 5;
304 int32 int32_value = 6;
305 uint32 uint32_value = 7;
306 float float_value = 8;
307 double double_value = 9;
308 int64 int64_value = 10;
309 uint64 uint64_value = 11;
315message NetworkConfig {}
319message NetworkAction {
321 optional Shutdown shutdown = 1;
324 optional Discover discover = 2;
325 optional Start start = 3;
326 optional DiscoverAndStart discover_and_start = 4;
329 optional TimingMetricsEnable timing_metrics_enable = 5;
330 optional TimingMetricsDisable timing_metrics_disable = 6;
331 optional TimingMetricsClear timing_metrics_clear = 7;
334 repeated OutputOverride output_override = 8;
337 optional EniGenerate eni_generate = 9;
344 optional uint32 timeout_milliseconds = 3;
350 optional uint32 timeout_milliseconds = 2;
353 message DiscoverAndStart {
357 optional uint32 timeout_milliseconds = 2;
360 message TimingMetricsEnable {
362 optional uint32 low_threshold = 1;
364 optional uint32 high_threshold = 2;
366 message TimingMetricsDisable {}
367 message TimingMetricsClear {}
369 message OutputOverride {
373 optional
bool override = 2;
375 optional int64 override_value = 3;
378 message EniGenerate {
382 optional
string output = 2;
388message NetworkRequest {
390 RSI.RapidServer.RequestHeader header = 1;
392 optional NetworkConfig config = 2;
394 optional NetworkAction action = 3;
399message NetworkResponse {
401 RSI.RapidServer.ResponseHeader header = 1;
403 optional NetworkConfig config = 2;
404 optional NetworkAction action = 3;
405 optional NetworkInfo info = 4;
406 optional NetworkStatus status = 5;
411message NetworkStatus {
413 int32 node_count = 2;
415 bool synchronized = 4;
419 string log_message = 6;
422 TimingMetricsStatus timing_metrics = 7;
425 repeated PdoInputStatus pdo_inputs = 8;
428 repeated PdoOutputStatus pdo_outputs = 9;
430 message TimingMetricsStatus {
434 uint32 min_recorded = 2;
436 uint32 max_recorded = 3;
438 uint32 low_count = 4;
440 uint32 high_count = 5;
443 message PdoInputStatus {
450 message PdoOutputStatus {
454 int64 sent_value = 2;
456 int64 override_value = 3;
458 int64 firmware_value = 4;
460 bool override_enabled = 5;
468 int32 pdo_input_count = 4;
469 int32 pdo_output_count = 5;
472 repeated PdoInputInfo pdo_inputs = 6;
475 repeated PdoOutputInfo pdo_outputs = 7;
477 message PdoInputInfo {
479 AddressInfo address_info = 2;
481 int32 bit_offset = 4;
484 message PdoOutputInfo {
486 AddressInfo sent_value_address = 2;
487 AddressInfo override_value_address = 3;
488 AddressInfo firmware_value_address = 4;
490 int32 bit_offset = 6;
501 RSI.RapidServer.RequestHeader header = 1;
506 optional AxisConfig config = 3;
507 optional AxisAction action = 4;
512message AxisResponse {
514 RSI.RapidServer.ResponseHeader header = 1;
519 optional AxisConfig config = 3;
520 optional AxisAction action = 4;
521 optional AxisInfo info = 5;
522 optional AxisStatus status = 6;
527message AxisBatchRequest {
529 RSI.RapidServer.RequestHeader header = 1;
531 repeated AxisRequest requests = 2;
534message AxisBatchResponse {
536 RSI.RapidServer.ResponseHeader header = 1;
538 repeated AxisResponse responses = 2;
545 bool amp_enabled = 1;
554 string source_name = 4;
557 PositionStatus position = 5;
560 VelocityStatus velocity = 6;
563 AccelerationStatus acceleration = 7;
566 int32 frames_to_execute = 8;
569 uint32 motion_id = 9;
572 uint32 motion_id_executing = 10;
575 int32 element_id_executing = 11;
578 bool gear_enabled = 12;
581 MotorStatusBits motor_status_bits = 13;
584 MotionStatusBits motion_status_bits = 14;
587 Ds402StatusBits ds402_status_bits = 15;
590 DedicatedOutputBits dedicated_output_bits = 16;
593 DedicatedInputBits dedicated_input_bits = 17;
596 bool home_state = 18;
600 uint32 general_input_bits = 20;
603 uint32 general_output_bits = 21;
605 message PositionStatus {
611 double encoder_0 = 6;
612 double encoder_1 = 7;
613 double compensation = 8;
617 message VelocityStatus {
622 message AccelerationStatus {
626 message MotorStatusBits {
628 bool amp_warning = 2;
629 bool feedback_fault = 3;
630 bool limit_position_error = 4;
631 bool limit_torque = 5;
632 bool limit_hardware_negative = 6;
633 bool limit_hardware_positive = 7;
634 bool limit_software_negative = 8;
635 bool limit_software_positive = 9;
638 message MotionStatusBits {
642 bool at_velocity = 4;
643 bool out_of_frames = 5;
644 bool near_target = 6;
649 message Ds402StatusBits {
650 bool ready_to_switch_on = 1;
651 bool switched_on = 2;
652 bool operation_enabled = 3;
654 bool voltage_enabled = 5;
656 bool switch_on_disabled = 7;
658 bool manufacturer_specific_8 = 9;
660 bool target_reached = 11;
661 bool internal_limit_active = 12;
662 bool operation_mode_specific_12 = 13;
663 bool operation_mode_specific_13 = 14;
664 bool manufacturer_specific_14 = 15;
665 bool manufacturer_specific_15 = 16;
668 message DedicatedOutputBits {
670 bool brake_release = 2;
673 message DedicatedInputBits {
675 bool brake_applied = 2;
677 bool limit_hardware_positive = 4;
678 bool limit_hardware_negative = 5;
680 bool index_secondary = 7;
681 bool feedback_fault = 8;
686 bool amp_active = 13;
688 bool drive_status_9 = 15;
689 bool drive_status_10 = 16;
690 bool feedback_fault_primary = 17;
691 bool feedback_fault_secondary = 18;
698 optional Abort abort = 1;
699 optional EStopAbort e_stop_abort = 2;
700 optional EStopModifyAbort e_stop_modify_abort = 3;
701 optional EStopModify e_stop_modify = 4;
702 optional EStop e_stop = 5;
703 optional TriggeredModify triggered_modify = 6;
704 optional Stop stop = 7;
705 optional Resume resume = 8;
707 optional ClearFaults clear_faults = 9;
708 optional AmpEnable amp_enable = 10;
709 optional AmpDisable amp_disable = 11;
710 optional HoldGateSet hold_gate_set = 12;
711 optional PositionSet position_set = 13;
712 optional Move move = 14;
713 optional GearEnable gear_enable = 15;
714 optional GearDisable gear_disable = 16;
715 optional Home home = 17;
716 optional HomeCancel home_cancel = 18;
717 optional OperationMode operation_mode_set = 19;
718 optional OperationMode operation_mode_get = 20;
721 message EStopAbort {}
722 message EStopModifyAbort{}
723 message EStopModify{}
725 message TriggeredModify {}
729 message ClearFaults {}
732 optional int32 timeout_milliseconds = 1;
733 optional int32 duration = 2;
734 optional
bool override_restricted_state = 3;
736 message AmpDisable {}
737 message HoldGateSet {
747 AxisMovePointToPoint point_to_point = 3;
748 AxisMoveVelocity velocity = 4;
749 MoveStreaming streaming = 5;
753 optional uint32 motion_id = 6;
756 optional MotionHold motion_hold = 7;
763 optional int32 master_axis_number = 2;
766 int32 denominator = 5;
768 message GearDisable {}
773 double slow_velocity = 3;
774 double acceleration = 4;
775 double deceleration = 5;
776 optional
double jerk_percent = 6;
777 optional
bool move_to_zero = 7;
778 optional
double offset = 8;
782 message HomeCancel {}
784 message OperationMode {
791 message AxisMovePointToPoint {
796 optional
double velocity = 2;
799 optional
double acceleration = 3;
802 optional
double deceleration = 4;
808 optional
double jerk_percent = 5;
812 optional
double final_velocity = 6;
818message AxisMoveVelocity {
823 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;
852 repeated
double feedforwards = 10;
856message MotionHoldGate{
860message MotionHoldAxis {
868 int32 hold_axis_number = 3;
871 double hold_axis_position = 4;
874message MotionHoldUser {
888 MotionHoldGate gate = 2;
889 MotionHoldAxis axis = 3;
890 MotionHoldUser user = 4;
894 optional
double hold_timeout_seconds = 6;
897 optional
double delay_seconds = 7;
903 optional
double user_units = 1;
906 optional
double origin_position = 2;
909 optional
string user_label = 3;
912 optional TrajectoryDefaults defaults = 4;
913 optional HardwareTrigger amp_fault = 5;
914 optional HardwareTrigger home_switch = 6;
915 optional ErrorLimit error_limit = 7;
916 optional HardwareTrigger hardware_negative_limit = 8;
917 optional HardwareTrigger hardware_positive_limit = 9;
918 optional SoftwareTrigger software_negative_limit = 10;
919 optional SoftwareTrigger software_positive_limit = 11;
920 optional Settling settling = 12;
921 optional MotionConfig motion = 13;
922 optional Homing homing = 14;
923 optional int32 frame_buffer_size = 15;
925 optional
double feed_rate = 17;
928 message TrajectoryDefaults
930 optional
double velocity = 1;
931 optional
double acceleration = 2;
932 optional
double deceleration = 3;
933 optional
double jerk_percent = 4;
934 optional
double position1 = 5;
935 optional
double position2 = 6;
936 optional
double relative_increment = 7;
939 message HardwareTrigger {
941 optional
bool trigger_state = 2;
942 optional
double duration = 3;
945 message SoftwareTrigger {
947 optional
double trigger_value = 2;
952 optional
double trigger_value = 2;
953 optional
double duration = 3;
957 optional
double position_tolerance_fine = 1;
958 optional
double position_tolerance_coarse = 2;
959 optional
double velocity_tolerance = 3;
960 optional
double time_seconds = 4;
961 optional
bool on_stop = 5;
962 optional
bool on_estop = 6;
963 optional
bool on_estop_cmd_equals_actual = 7;
966 message MotionConfig {
968 optional
double stop_time = 1;
971 optional
double estop_time = 2;
974 optional
double triggered_modify_deceleration = 3;
977 optional
double triggered_modify_jerk_percent = 4;
980 optional
double estop_modify_deceleration = 5;
983 optional
double estop_modify_jerk_percent = 6;
997 repeated AddressInfo addresses = 2;
1000 NetworkNodeInfo node_info = 3;
1003 Constants constants = 4;
1006 int32 motion_supervisor_index = 5;
1010 uint32 network_index_invalid = 1;
1013 double amp_enable_amp_fault_timeout_seconds_default = 2;
1021message MultiAxisRequest {
1023 RSI.RapidServer.RequestHeader header = 1;
1028 optional MultiAxisConfig config = 3;
1029 optional MultiAxisAction action = 4;
1034message MultiAxisResponse {
1036 RSI.RapidServer.ResponseHeader header = 1;
1041 optional MultiAxisConfig config = 3;
1042 optional MultiAxisAction action = 4;
1043 optional MultiAxisInfo info = 5;
1044 optional MultiAxisStatus status = 6;
1049message MultiAxisBatchRequest {
1051 RSI.RapidServer.RequestHeader header = 1;
1053 repeated MultiAxisRequest requests = 2;
1056message MultiAxisBatchResponse {
1058 RSI.RapidServer.ResponseHeader header = 1;
1060 repeated MultiAxisResponse responses = 2;
1066message MultiAxisStatus {
1069 string source_name = 3;
1070 bool amp_enabled = 4;
1071 MotionStatusBits motion_status_bits = 5;
1072 repeated AxisStatus axis_statuses = 6;
1075 message MotionStatusBits {
1079 bool at_velocity = 4;
1080 bool out_of_frames = 5;
1086message MultiAxisAction {
1087 optional Abort abort = 1;
1088 optional EStopAbort e_stop_abort = 2;
1089 optional EStopModifyAbort e_stop_modify_abort = 3;
1090 optional EStopModify e_stop_modify = 4;
1091 optional EStop e_stop = 5;
1092 optional TriggeredModify triggered_modify = 6;
1093 optional Stop stop = 7;
1094 optional Resume resume = 8;
1096 optional ClearFaults clear_faults = 9;
1097 optional AmpEnable amp_enable = 10;
1098 optional AmpDisable amp_disable = 11;
1099 optional Move move = 12;
1100 optional RemoveAxes remove_axes = 13;
1101 optional Unmap unmap = 14;
1102 optional Map map = 15;
1103 optional AxisAdd axis_add = 16;
1106 message EStopAbort {}
1107 message EStopModifyAbort{}
1108 message EStopModify{}
1110 message TriggeredModify {}
1114 message ClearFaults {}
1117 optional int32 timeout_milliseconds = 1;
1118 optional int32 duration = 2;
1119 optional
bool override_restricted_state = 3;
1121 message AmpDisable {}
1125 MultiAxisMovePointToPoint point_to_point = 3;
1126 MultiAxisMoveVelocity velocity = 4;
1127 MoveStreaming streaming = 5;
1129 optional uint32 motion_id = 6;
1132 optional MotionHold motion_hold = 7;
1136 message MultiAxisMovePointToPoint {
1137 repeated AxisMovePointToPoint axis_move_point_to_points = 1;
1141 message MultiAxisMoveVelocity {
1142 repeated AxisMoveVelocity axis_move_velocities = 1;
1145 message RemoveAxes {}
1149 int32 axis_index = 1;
1155message MultiAxisConfig {
1156 repeated int32 axes_indices = 1;
1157 optional
string user_label = 2;
1158 optional
double feed_rate = 3;
1159 optional
double stop_time = 4;
1160 optional
double e_stop_time = 5;
1165message MultiAxisInfo {
1170 int32 motion_supervisor_index = 2;
1173 repeated AddressInfo addresses = 3;
1178message NetworkNodeInfo {
1186 int32 axis_count = 3;
1192 IOCounts io_counts = 5;
1195 IOAddresses io_addresses = 6;
1201 uint32 vendor_id = 8;
1204 uint32 product_code = 9;
1207 uint32 hardware_revision = 10;
1210 uint32 station_alias = 11;
1213 string serial_number = 12;
1219 string product_name = 14;
1222 string vendor_name = 15;
1224 Constants constants = 16;
1232 int32 digital_inputs = 1;
1235 int32 digital_outputs = 2;
1238 int32 analog_inputs = 3;
1241 int32 analog_outputs = 4;
1244 message IOAddresses {
1246 repeated AddressInfo digital_inputs = 1;
1249 repeated AddressInfo digital_outputs = 2;
1252 repeated AddressInfo analog_inputs = 3;
1255 repeated AddressInfo analog_outputs = 4;
1260 uint32 sdo_timeout_milliseconds_default = 1;
1266message NetworkNodeStatus {
1268 repeated
bool digital_input_states = 2;
1271 repeated
bool digital_output_states = 3;
1274 repeated int32 analog_input_values = 4;
1277 repeated int32 analog_output_values = 5;
1284message DigitalOutput {
1286 int32 bit_number = 1;
1296message AnalogOutput {
1315 int32 sub_index = 2;
1318 int32 byte_count = 3;
1322 option allow_alias =
true;
1330 optional ValueType read_type = 4;
1333 optional uint32 timeout_milliseconds = 5;
1341 int32 integer_value = 6;
1344 string string_value = 7;
1347 bytes bytes_value = 8;
1358 optional
string result = 2;
1364message NetworkNodeAction {
1370 repeated DigitalOutput digital_output_sets = 1;
1376 repeated AnalogOutput analog_output_sets = 2;
1381 repeated SDO sdo_writes = 3;
1386 repeated SDO sdo_reads = 4;
1392 repeated AKDASCII akd_asciis = 5;
1397message NetworkNodeConfig {}
1401message NetworkNodeRequest {
1403 RSI.RapidServer.RequestHeader header = 1;
1408 optional NetworkNodeConfig config = 3;
1409 optional NetworkNodeAction action = 4;
1414message NetworkNodeResponse {
1416 RSI.RapidServer.ResponseHeader header = 1;
1421 optional NetworkNodeConfig config = 3;
1422 optional NetworkNodeAction action = 4;
1423 optional NetworkNodeInfo info = 5;
1424 optional NetworkNodeStatus status = 6;
1429message NetworkNodeBatchRequest {
1431 RSI.RapidServer.RequestHeader header = 1;
1433 repeated NetworkNodeRequest requests = 2;
1436message NetworkNodeBatchResponse {
1438 RSI.RapidServer.ResponseHeader header = 1;
1440 repeated NetworkNodeResponse responses = 2;
1446message RecorderRequest {
1448 RSI.RapidServer.RequestHeader header = 1;
1453 optional RecorderConfig config = 3;
1454 optional RecorderAction action = 4;
1460message RecorderResponse {
1462 RSI.RapidServer.ResponseHeader header = 1;
1467 optional RecorderConfig config = 3;
1468 optional RecorderAction action = 4;
1469 optional RecorderInfo info = 5;
1470 optional RecorderStatus status = 6;
1475message RecorderBatchRequest {
1477 RSI.RapidServer.RequestHeader header = 1;
1479 repeated RecorderRequest requests = 2;
1482message RecorderBatchResponse {
1484 RSI.RapidServer.ResponseHeader header = 1;
1486 repeated RecorderResponse responses = 2;
1492message RecorderInfo { }
1496message RecorderStatus {
1498 bool is_recording = 1;
1501 int32 records_available = 2;
1506message RecorderAction {
1508 optional Reset reset = 1;
1509 optional Start start = 2;
1510 optional Stop stop = 3;
1511 optional RetrieveRecords retrieve_records = 4;
1517 message RetrieveRecords {
1519 repeated Record records = 1;
1524 repeated Data data = 1;
1541message RecorderConfig {
1543 optional int32 period = 1;
1546 optional
bool circular_buffer = 2;
1549 repeated AddressInfo addresses = 3;
1552 optional RecorderTriggerOnMotion trigger_on_motion = 4;
1555 optional int32 buffer_high_count = 5;
1558 optional int32 record_max_count = 6;
1562 message RecorderTriggerOnMotion {
1564 optional int32 motion_supervisor_index = 1;
1566 optional
bool enable = 2;
1573message UserLimitStatus {
1586message UserLimitAction {
1588 optional Reset reset = 1;
1589 optional Enable enable = 2;
1590 optional Disable disable = 3;
1600message UserLimitInfo {}
1605message UserLimitConfig {
1611 optional UserLimitCondition condition_0 = 2;
1614 optional UserLimitCondition condition_1 = 3;
1617 optional UserLimitOutput output = 4;
1623 optional int32 action_axis = 6;
1626 optional
double duration = 7;
1629 optional
bool is_single_shot = 8;
1632 repeated UserLimitInterruptUserData user_data = 9;
1635 message UserLimitCondition {
1646 optional uint32 mask = 4;
1649 optional int32 integer_limit_value = 5;
1652 optional
double double_limit_value = 6;
1655 message UInt32Masks {
1657 uint32 and_mask = 1;
1663 message UInt64Masks {
1665 uint64 and_mask = 1;
1671 message UserLimitOutput {
1684 UInt32Masks uint32_masks = 6;
1687 int32 int32_value = 7;
1690 UInt64Masks uint64_masks = 8;
1693 double double_value = 9;
1697 uint64 input_address = 10;
1701 message UserLimitInterruptUserData {
1706 optional uint64 address = 2;
1712message UserLimitRequest {
1714 RSI.RapidServer.RequestHeader header = 1;
1719 optional UserLimitConfig config = 3;
1721 optional UserLimitAction action = 4;
1726message UserLimitResponse {
1728 RSI.RapidServer.ResponseHeader header = 1;
1733 optional UserLimitConfig config = 3;
1734 optional UserLimitAction action = 4;
1735 optional UserLimitInfo info = 5;
1736 optional UserLimitStatus status = 6;
1741message UserLimitBatchRequest {
1743 RSI.RapidServer.RequestHeader header = 1;
1745 repeated UserLimitRequest requests = 2;
1748message UserLimitBatchResponse {
1750 RSI.RapidServer.ResponseHeader header = 1;
1752 repeated UserLimitResponse responses = 2;
1757message RTOSConfig {}
1763 string rmp_catalog = 1;
1766 string rmp_network_catalog = 2;
1769 uint32 node_count = 3;
1775 optional Restart restart = 1;
1776 optional Stop stop = 2;
1777 optional Start start = 3;
1793message RTOSRequest {
1795 RSI.RapidServer.RequestHeader header = 1;
1800 optional RTOSConfig config = 3;
1801 optional RTOSAction action = 4;
1806message RTOSResponse {
1808 RSI.RapidServer.ResponseHeader header = 1;
1813 optional RTOSConfig config = 3;
1814 optional RTOSAction action = 4;
1815 optional RTOSInfo info = 5;
1816 optional RTOSStatus status = 6;
1821message RTOSBatchRequest {
1823 RSI.RapidServer.RequestHeader header = 1;
1825 repeated RTOSRequest requests = 2;
1828message RTOSBatchResponse {
1830 RSI.RapidServer.ResponseHeader header = 1;
1832 repeated RTOSResponse responses = 2;
1838 RTTaskStateUNKNOWN = 0;
1839 RTTaskStateDEAD = 1;
1840 RTTaskStateDISABLED = 2;
1841 RTTaskStateWAITING = 3;
1842 RTTaskStateRUNNING = 4;
1848 RTTaskManagerStateUNKNOWN = 0;
1849 RTTaskManagerStateDEAD = 1;
1850 RTTaskManagerStateRUNNING = 2;
1851 RTTaskManagerStateSTOPPED = 3;
1857 PlatformTypeUNKNOWN = 0;
1858 PlatformTypeNATIVE = 1;
1859 PlatformTypeINTIME = 2;
1860 PlatformTypeLINUX = 3;
1861 PlatformTypeWINDOWS = 4;
1869 TaskPriorityNONREALTIME = 0;
1870 TaskPriorityLOWEST = 1;
1871 TaskPriorityLOW = 2;
1872 TaskPriorityMEDIUMLOW = 3;
1873 TaskPriorityMEDIUM = 4;
1874 TaskPriorityMEDIUMHIGH = 5;
1875 TaskPriorityHIGH = 6;
1876 TaskPriorityHIGHEST = 7;
1881message RTTaskCreationParameters {
1883 string function_name = 1;
1886 optional
string library_name = 2;
1887 optional
string library_directory = 3;
1890 optional
string user_label = 4;
1896 optional int32 repeats = 6;
1899 optional int32 period = 7;
1904 optional int32 phase = 8;
1907 optional
bool enable_timing = 9;
1912message RTTaskConfig {}
1917message RTTaskAction {
1919 optional Stop stop = 1;
1922 optional Remove
remove = 2;
1925 optional TimingReset timing_reset = 3;
1928 optional ExecutionCountAbsoluteWait execution_count_absolute_wait = 4;
1931 optional ExecutionCountRelativeWait execution_count_relative_wait = 5;
1935 message TimingReset {}
1937 message ExecutionCountAbsoluteWait {
1939 optional int64 count = 1;
1942 optional int32 timeout_ms = 2;
1945 message ExecutionCountRelativeWait {
1947 optional int64 count = 1;
1950 optional int32 timeout_ms = 2;
1961 int32 manager_id = 2;
1964 Constants constants = 3;
1967 RTTaskCreationParameters creation_parameters = 4;
1971 CreationParameterConstants creation_parameters = 1;
1974 StatusConstants status = 2;
1976 message CreationParameterConstants {
1978 int32 directory_length_maximum = 1;
1981 int32 name_length_maximum = 2;
1984 string library_name_default = 3;
1987 int32 priority_default = 4;
1990 int32 repeat_forever = 5;
1993 int32 repeat_none = 6;
1996 int32 period_default = 7;
1999 int32 phase_default = 8;
2002 int32 enable_timing_default = 9;
2005 message StatusConstants {
2007 int64 invalid_execution_count = 1;
2010 uint64 invalid_execution_time = 2;
2013 uint64 error_message_size_maximum = 3;
2020message RTTaskStatus {
2025 optional int64 execution_count = 2;
2028 optional uint64 execution_time_max = 3;
2031 optional uint64 execution_time_min = 4;
2034 optional
double execution_time_mean = 5;
2037 optional uint64 execution_time_last = 6;
2040 optional uint64 start_time_delta_last = 7;
2043 optional uint64 start_time_delta_max = 8;
2046 optional
double start_time_delta_mean = 9;
2049 optional
string error_message = 10;
2054message RTTaskRequest {
2056 RSI.RapidServer.RequestHeader header = 1;
2062 int32 manager_id = 3;
2064 optional RTTaskConfig config = 4;
2065 optional RTTaskAction action = 5;
2070message RTTaskResponse {
2072 RSI.RapidServer.ResponseHeader header = 1;
2078 int32 manager_id = 3;
2080 optional RTTaskConfig config = 4;
2081 optional RTTaskAction action = 5;
2082 optional RTTaskInfo info = 6;
2083 optional RTTaskStatus status = 7;
2088message RTTaskBatchRequest {
2090 RSI.RapidServer.RequestHeader header = 1;
2092 repeated RTTaskRequest requests = 2;
2095message RTTaskBatchResponse {
2097 RSI.RapidServer.ResponseHeader header = 1;
2099 repeated RTTaskResponse responses = 2;
2104message RTTaskManagerCreationParameters {
2106 optional
string rt_task_directory = 1;
2113 optional
string node_name = 3;
2116 optional int32 cpu_core = 4;
2119 optional
string user_label = 5;
2122 optional
bool no_rmp = 6;
2127message RTTaskManagerConfig {}
2132message RTTaskManagerAction {
2134 optional Create create = 1;
2137 optional Discover discover = 2;
2140 optional Shutdown shutdown = 3;
2143 optional TaskSubmit task_submit = 4;
2146 optional TaskRemove task_remove = 5;
2149 repeated GlobalValueSet global_value_sets = 6;
2153 RTTaskManagerCreationParameters creation_parameters = 1;
2161 repeated int32 manager_ids = 1;
2166 message TaskSubmit {
2168 RTTaskCreationParameters task_creation_parameters = 1;
2171 optional int32 task_id = 2;
2174 message TaskRemove {
2179 message GlobalValueSet {
2181 FirmwareValue value = 1;
2188 optional
string library_name = 3;
2189 optional
string library_directory = 4;
2195message RTTaskManagerInfo {
2200 Constants constants = 2;
2203 RTTaskManagerCreationParameters creation_parameters = 3;
2207 int32 rt_task_manager_count_maximum = 1;
2210 int32 rt_task_count_maximum = 2;
2213 string rt_task_manager_executable_name = 3;
2216 CreationParameterConstants creation_parameters = 4;
2218 message CreationParameterConstants {
2220 int32 directory_length_maximum = 1;
2223 int32 name_length_maximum = 2;
2226 string user_label_default = 3;
2233message RTTaskManagerStatus {
2236 repeated int32 task_ids = 1;
2239 map<string, FirmwareValue> global_values = 2;
2245 optional uint64 task_submission_count = 4;
2248 optional int64 cycle_count = 5;
2251 optional uint64 cycle_time_max = 6;
2254 optional uint64 cycle_time_min = 7;
2257 optional
double cycle_time_mean = 8;
2260 optional uint64 cycle_time_last = 9;
2263 optional uint64 start_time_delta_last = 10;
2266 optional uint64 start_time_delta_max = 11;
2269 optional
double start_time_delta_mean = 12;
2274message RTTaskManagerRequest {
2276 RSI.RapidServer.RequestHeader header = 1;
2279 optional int32
id = 2;
2281 optional RTTaskManagerConfig config = 3;
2282 optional RTTaskManagerAction action = 4;
2287message RTTaskManagerResponse {
2289 RSI.RapidServer.ResponseHeader header = 1;
2292 optional int32
id = 2;
2294 optional RTTaskManagerConfig config = 3;
2295 optional RTTaskManagerAction action = 4;
2296 optional RTTaskManagerInfo info = 5;
2297 optional RTTaskManagerStatus status = 6;
2302message RTTaskManagerBatchRequest {
2304 RSI.RapidServer.RequestHeader header = 1;
2306 repeated RTTaskManagerRequest requests = 2;
2309message RTTaskManagerBatchResponse {
2311 RSI.RapidServer.ResponseHeader header = 1;
2313 repeated RTTaskManagerResponse responses = 2;
TaskPriority
Enum representing the priority levels for a real-time task.
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.