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;
810 optional
double jerk_percent = 5;
814 optional
double final_velocity = 6;
820message AxisMoveVelocity {
825 double acceleration = 2;
830 double jerk_percent = 3;
833message MoveStreaming {
834 repeated
double positions = 1;
835 repeated
double velocities = 2;
836 repeated
double accelerations = 3;
837 repeated
double jerks = 4;
838 repeated
double times = 5;
839 int32 empty_count = 6;
853message MotionHoldGate{
857message MotionHoldAxis {
865 int32 hold_axis_number = 3;
868 double hold_axis_position = 4;
871message MotionHoldUser {
885 MotionHoldGate gate = 2;
886 MotionHoldAxis axis = 3;
887 MotionHoldUser user = 4;
891 optional
double hold_timeout_seconds = 6;
894 optional
double delay_seconds = 7;
900 optional
double user_units = 1;
903 optional
double origin_position = 2;
906 optional
string user_label = 3;
909 optional TrajectoryDefaults defaults = 4;
910 optional HardwareTrigger amp_fault = 5;
911 optional HardwareTrigger home_switch = 6;
912 optional ErrorLimit error_limit = 7;
913 optional HardwareTrigger hardware_negative_limit = 8;
914 optional HardwareTrigger hardware_positive_limit = 9;
915 optional SoftwareTrigger software_negative_limit = 10;
916 optional SoftwareTrigger software_positive_limit = 11;
917 optional Settling settling = 12;
918 optional MotionConfig motion = 13;
919 optional Homing homing = 14;
920 optional int32 frame_buffer_size = 15;
922 optional
double feed_rate = 17;
925 message TrajectoryDefaults
927 optional
double velocity = 1;
928 optional
double acceleration = 2;
929 optional
double deceleration = 3;
930 optional
double jerk_percent = 4;
931 optional
double position1 = 5;
932 optional
double position2 = 6;
933 optional
double relative_increment = 7;
936 message HardwareTrigger {
938 optional
bool trigger_state = 2;
939 optional
double duration = 3;
942 message SoftwareTrigger {
944 optional
double trigger_value = 2;
949 optional
double trigger_value = 2;
950 optional
double duration = 3;
954 optional
double position_tolerance_fine = 1;
955 optional
double position_tolerance_coarse = 2;
956 optional
double velocity_tolerance = 3;
957 optional
double time_seconds = 4;
958 optional
bool on_stop = 5;
959 optional
bool on_estop = 6;
960 optional
bool on_estop_cmd_equals_actual = 7;
963 message MotionConfig {
965 optional
double stop_time = 1;
968 optional
double estop_time = 2;
971 optional
double triggered_modify_deceleration = 3;
974 optional
double triggered_modify_jerk_percent = 4;
977 optional
double estop_modify_deceleration = 5;
980 optional
double estop_modify_jerk_percent = 6;
994 repeated AddressInfo addresses = 2;
997 NetworkNodeInfo node_info = 3;
1000 Constants constants = 4;
1003 int32 motion_supervisor_index = 5;
1007 uint32 network_index_invalid = 1;
1010 double amp_enable_amp_fault_timeout_seconds_default = 2;
1018message MultiAxisRequest {
1020 RSI.RapidServer.RequestHeader header = 1;
1025 optional MultiAxisConfig config = 3;
1026 optional MultiAxisAction action = 4;
1031message MultiAxisResponse {
1033 RSI.RapidServer.ResponseHeader header = 1;
1038 optional MultiAxisConfig config = 3;
1039 optional MultiAxisAction action = 4;
1040 optional MultiAxisInfo info = 5;
1041 optional MultiAxisStatus status = 6;
1046message MultiAxisBatchRequest {
1048 RSI.RapidServer.RequestHeader header = 1;
1050 repeated MultiAxisRequest requests = 2;
1053message MultiAxisBatchResponse {
1055 RSI.RapidServer.ResponseHeader header = 1;
1057 repeated MultiAxisResponse responses = 2;
1063message MultiAxisStatus {
1066 string source_name = 3;
1067 bool amp_enabled = 4;
1068 MotionStatusBits motion_status_bits = 5;
1069 repeated AxisStatus axis_statuses = 6;
1072 message MotionStatusBits {
1076 bool at_velocity = 4;
1077 bool out_of_frames = 5;
1083message MultiAxisAction {
1084 optional Abort abort = 1;
1085 optional EStopAbort e_stop_abort = 2;
1086 optional EStopModifyAbort e_stop_modify_abort = 3;
1087 optional EStopModify e_stop_modify = 4;
1088 optional EStop e_stop = 5;
1089 optional TriggeredModify triggered_modify = 6;
1090 optional Stop stop = 7;
1091 optional Resume resume = 8;
1093 optional ClearFaults clear_faults = 9;
1094 optional AmpEnable amp_enable = 10;
1095 optional AmpDisable amp_disable = 11;
1096 optional Move move = 12;
1097 optional RemoveAxes remove_axes = 13;
1098 optional Unmap unmap = 14;
1099 optional Map map = 15;
1100 optional AxisAdd axis_add = 16;
1103 message EStopAbort {}
1104 message EStopModifyAbort{}
1105 message EStopModify{}
1107 message TriggeredModify {}
1111 message ClearFaults {}
1114 optional int32 timeout_milliseconds = 1;
1115 optional int32 duration = 2;
1117 message AmpDisable {}
1121 MultiAxisMovePointToPoint point_to_point = 3;
1122 MultiAxisMoveVelocity velocity = 4;
1123 MoveStreaming streaming = 5;
1125 optional uint32 motion_id = 6;
1128 optional MotionHold motion_hold = 7;
1132 message MultiAxisMovePointToPoint {
1133 repeated AxisMovePointToPoint axis_move_point_to_points = 1;
1137 message MultiAxisMoveVelocity {
1138 repeated AxisMoveVelocity axis_move_velocities = 1;
1141 message RemoveAxes {}
1145 int32 axis_index = 1;
1151message MultiAxisConfig {
1152 repeated int32 axes_indices = 1;
1153 optional
string user_label = 2;
1154 optional
double feed_rate = 3;
1155 optional
double stop_time = 4;
1156 optional
double e_stop_time = 5;
1161message MultiAxisInfo {
1166 int32 motion_supervisor_index = 2;
1169 repeated AddressInfo addresses = 3;
1174message NetworkNodeInfo {
1182 int32 axis_count = 3;
1188 IOCounts io_counts = 5;
1191 IOAddresses io_addresses = 6;
1197 uint32 vendor_id = 8;
1200 uint32 product_code = 9;
1203 uint32 hardware_revision = 10;
1206 uint32 station_alias = 11;
1209 string serial_number = 12;
1215 string product_name = 14;
1218 string vendor_name = 15;
1220 Constants constants = 16;
1228 int32 digital_inputs = 1;
1231 int32 digital_outputs = 2;
1234 int32 analog_inputs = 3;
1237 int32 analog_outputs = 4;
1240 message IOAddresses {
1242 repeated AddressInfo digital_inputs = 1;
1245 repeated AddressInfo digital_outputs = 2;
1248 repeated AddressInfo analog_inputs = 3;
1251 repeated AddressInfo analog_outputs = 4;
1256 uint32 sdo_timeout_milliseconds_default = 1;
1262message NetworkNodeStatus {
1264 repeated
bool digital_input_states = 2;
1267 repeated
bool digital_output_states = 3;
1270 repeated int32 analog_input_values = 4;
1273 repeated int32 analog_output_values = 5;
1280message DigitalOutput {
1282 int32 bit_number = 1;
1292message AnalogOutput {
1311 int32 sub_index = 2;
1314 int32 byte_count = 3;
1318 option allow_alias =
true;
1326 optional ValueType read_type = 4;
1329 optional uint32 timeout_milliseconds = 5;
1337 int32 integer_value = 6;
1340 string string_value = 7;
1343 bytes bytes_value = 8;
1354 optional
string result = 2;
1360message NetworkNodeAction {
1366 repeated DigitalOutput digital_output_sets = 1;
1372 repeated AnalogOutput analog_output_sets = 2;
1377 repeated SDO sdo_writes = 3;
1382 repeated SDO sdo_reads = 4;
1388 repeated AKDASCII akd_asciis = 5;
1393message NetworkNodeConfig {}
1397message NetworkNodeRequest {
1399 RSI.RapidServer.RequestHeader header = 1;
1404 optional NetworkNodeConfig config = 3;
1405 optional NetworkNodeAction action = 4;
1410message NetworkNodeResponse {
1412 RSI.RapidServer.ResponseHeader header = 1;
1417 optional NetworkNodeConfig config = 3;
1418 optional NetworkNodeAction action = 4;
1419 optional NetworkNodeInfo info = 5;
1420 optional NetworkNodeStatus status = 6;
1425message NetworkNodeBatchRequest {
1427 RSI.RapidServer.RequestHeader header = 1;
1429 repeated NetworkNodeRequest requests = 2;
1432message NetworkNodeBatchResponse {
1434 RSI.RapidServer.ResponseHeader header = 1;
1436 repeated NetworkNodeResponse responses = 2;
1442message RecorderRequest {
1444 RSI.RapidServer.RequestHeader header = 1;
1449 optional RecorderConfig config = 3;
1450 optional RecorderAction action = 4;
1456message RecorderResponse {
1458 RSI.RapidServer.ResponseHeader header = 1;
1463 optional RecorderConfig config = 3;
1464 optional RecorderAction action = 4;
1465 optional RecorderInfo info = 5;
1466 optional RecorderStatus status = 6;
1471message RecorderBatchRequest {
1473 RSI.RapidServer.RequestHeader header = 1;
1475 repeated RecorderRequest requests = 2;
1478message RecorderBatchResponse {
1480 RSI.RapidServer.ResponseHeader header = 1;
1482 repeated RecorderResponse responses = 2;
1488message RecorderInfo { }
1492message RecorderStatus {
1494 bool is_recording = 1;
1497 int32 records_available = 2;
1502message RecorderAction {
1504 optional Reset reset = 1;
1505 optional Start start = 2;
1506 optional Stop stop = 3;
1507 optional RetrieveRecords retrieve_records = 4;
1513 message RetrieveRecords {
1515 repeated Record records = 1;
1520 repeated Data data = 1;
1537message RecorderConfig {
1539 optional int32 period = 1;
1542 optional
bool circular_buffer = 2;
1545 repeated AddressInfo addresses = 3;
1548 optional RecorderTriggerOnMotion trigger_on_motion = 4;
1551 optional int32 buffer_high_count = 5;
1554 optional int32 record_max_count = 6;
1558 message RecorderTriggerOnMotion {
1560 optional int32 motion_supervisor_index = 1;
1562 optional
bool enable = 2;
1569message UserLimitStatus {
1582message UserLimitAction {
1584 optional Reset reset = 1;
1585 optional Enable enable = 2;
1586 optional Disable disable = 3;
1596message UserLimitInfo {}
1601message UserLimitConfig {
1607 optional UserLimitCondition condition_0 = 2;
1610 optional UserLimitCondition condition_1 = 3;
1613 optional UserLimitOutput output = 4;
1619 optional int32 action_axis = 6;
1622 optional
double duration = 7;
1625 optional
bool is_single_shot = 8;
1628 repeated UserLimitInterruptUserData user_data = 9;
1631 message UserLimitCondition {
1642 optional uint32 mask = 4;
1645 optional int32 integer_limit_value = 5;
1648 optional
double double_limit_value = 6;
1651 message UInt32Masks {
1653 uint32 and_mask = 1;
1659 message UInt64Masks {
1661 uint64 and_mask = 1;
1667 message UserLimitOutput {
1680 UInt32Masks uint32_masks = 6;
1683 int32 int32_value = 7;
1686 UInt64Masks uint64_masks = 8;
1689 double double_value = 9;
1693 uint64 input_address = 10;
1697 message UserLimitInterruptUserData {
1702 optional uint64 address = 2;
1708message UserLimitRequest {
1710 RSI.RapidServer.RequestHeader header = 1;
1715 optional UserLimitConfig config = 3;
1717 optional UserLimitAction action = 4;
1722message UserLimitResponse {
1724 RSI.RapidServer.ResponseHeader header = 1;
1729 optional UserLimitConfig config = 3;
1730 optional UserLimitAction action = 4;
1731 optional UserLimitInfo info = 5;
1732 optional UserLimitStatus status = 6;
1737message UserLimitBatchRequest {
1739 RSI.RapidServer.RequestHeader header = 1;
1741 repeated UserLimitRequest requests = 2;
1744message UserLimitBatchResponse {
1746 RSI.RapidServer.ResponseHeader header = 1;
1748 repeated UserLimitResponse responses = 2;
1753message RTOSConfig {}
1759 string rmp_catalog = 1;
1762 string rmp_network_catalog = 2;
1765 uint32 node_count = 3;
1771 optional Restart restart = 1;
1772 optional Stop stop = 2;
1773 optional Start start = 3;
1789message RTOSRequest {
1791 RSI.RapidServer.RequestHeader header = 1;
1796 optional RTOSConfig config = 3;
1797 optional RTOSAction action = 4;
1802message RTOSResponse {
1804 RSI.RapidServer.ResponseHeader header = 1;
1809 optional RTOSConfig config = 3;
1810 optional RTOSAction action = 4;
1811 optional RTOSInfo info = 5;
1812 optional RTOSStatus status = 6;
1817message RTOSBatchRequest {
1819 RSI.RapidServer.RequestHeader header = 1;
1821 repeated RTOSRequest requests = 2;
1824message RTOSBatchResponse {
1826 RSI.RapidServer.ResponseHeader header = 1;
1828 repeated RTOSResponse responses = 2;
1839 TaskPriorityNONREALTIME = 0;
1840 TaskPriorityLOWEST = 1;
1841 TaskPriorityLOW = 2;
1842 TaskPriorityMEDIUMLOW = 3;
1843 TaskPriorityMEDIUM = 4;
1844 TaskPriorityMEDIUMHIGH = 5;
1845 TaskPriorityHIGH = 6;
1846 TaskPriorityHIGHEST = 7;
1850message RTTaskCreationParameters {
1852 string function_name = 1;
1855 optional
string library_name = 2;
1856 optional
string library_directory = 3;
1859 optional
string user_label = 4;
1865 optional int32 repeats = 6;
1868 optional int32 period = 7;
1873 optional int32 phase = 8;
1876 optional
bool enable_timing = 9;
1882 PlatformTypeUNKNOWN = 0;
1883 PlatformTypeNATIVE = 1;
1884 PlatformTypeINTIME = 2;
1885 PlatformTypeLINUX = 3;
1886 PlatformTypeWINDOWS = 4;
1892 RTTaskManagerStateUNKNOWN = 0;
1893 RTTaskManagerStateDEAD = 1;
1894 RTTaskManagerStateRUNNING = 2;
1895 RTTaskManagerStateSTOPPED = 3;
1900message RTTaskManagerConfig {}
1905message RTTaskManagerCreationParameters {
1907 optional
string rt_task_directory = 1;
1914 optional
string node_name = 3;
1917 optional int32 cpu_core = 4;
1920 optional
string user_label = 5;
1923 optional
bool no_rmp = 6;
1928message RTTaskManagerAction {
1930 optional Create create = 1;
1933 optional Discover discover = 2;
1936 optional TaskSubmit task_submit = 3;
1939 optional TaskRemove task_remove = 4;
1942 repeated GlobalValueSet global_value_sets = 5;
1945 optional Shutdown shutdown = 6;
1949 RTTaskManagerCreationParameters creation_parameters = 1;
1957 repeated int32 manager_ids = 1;
1960 message TaskSubmit {
1962 RTTaskCreationParameters task_creation_parameters = 1;
1965 optional int32 task_id = 2;
1968 message TaskRemove {
1973 message GlobalValueSet {
1975 FirmwareValue value = 1;
1982 optional
string library_name = 3;
1983 optional
string library_directory = 4;
1991message RTTaskManagerInfo {
1996 RTTaskManagerCreationParameters creation_parameters = 2;
1999 Constants constants = 4;
2003 int32 rt_task_manager_count_maximum = 1;
2006 int32 rt_task_count_maximum = 2;
2009 string rt_task_manager_executable_name = 3;
2012 CreationParameterConstants creation_parameters = 4;
2014 message CreationParameterConstants {
2016 int32 directory_length_maximum = 1;
2019 int32 name_length_maximum = 2;
2026message RTTaskManagerStatus {
2031 optional uint64 task_submission_count = 2;
2034 optional int64 cycle_count = 3;
2037 optional uint64 cycle_time_max = 4;
2040 optional uint64 cycle_time_min = 5;
2043 optional
double cycle_time_mean = 6;
2046 optional uint64 cycle_time_last = 7;
2049 optional uint64 start_time_delta_last = 8;
2052 optional uint64 start_time_delta_max = 9;
2055 optional
double start_time_delta_mean = 10;
2059 repeated int32 task_ids = 11;
2062 map<string, FirmwareValue> global_values = 12;
2067message RTTaskManagerRequest {
2069 RSI.RapidServer.RequestHeader header = 1;
2072 optional int32
id = 2;
2074 optional RTTaskManagerConfig config = 3;
2075 optional RTTaskManagerAction action = 4;
2080message RTTaskManagerResponse {
2082 RSI.RapidServer.ResponseHeader header = 1;
2085 optional int32
id = 2;
2087 optional RTTaskManagerConfig config = 3;
2088 optional RTTaskManagerAction action = 4;
2089 optional RTTaskManagerInfo info = 5;
2090 optional RTTaskManagerStatus status = 6;
2095message RTTaskManagerBatchRequest {
2097 RSI.RapidServer.RequestHeader header = 1;
2099 repeated RTTaskManagerRequest requests = 2;
2102message RTTaskManagerBatchResponse {
2104 RSI.RapidServer.ResponseHeader header = 1;
2106 repeated RTTaskManagerResponse responses = 2;
2112 RTTaskStateUNKNOWN = 0;
2113 RTTaskStateDEAD = 1;
2114 RTTaskStateDISABLED = 2;
2115 RTTaskStateWAITING = 3;
2116 RTTaskStateRUNNING = 4;
2121message RTTaskConfig {}
2126message RTTaskAction {
2128 optional Stop stop = 1;
2131 optional TimingReset timing_reset = 2;
2134 optional ExecutionCountAbsoluteWait execution_count_absolute_wait = 3;
2137 optional ExecutionCountRelativeWait execution_count_relative_wait = 4;
2140 message TimingReset {}
2142 message ExecutionCountAbsoluteWait {
2144 optional int64 count = 1;
2147 optional int32 timeout_ms = 2;
2150 message ExecutionCountRelativeWait {
2152 optional int64 count = 1;
2155 optional int32 timeout_ms = 2;
2166 int32 manager_id = 2;
2169 RTTaskCreationParameters creation_parameters = 3;
2172 Constants constants = 4;
2176 CreationParameterConstants creation_parameters = 1;
2179 StatusConstants status = 2;
2181 message CreationParameterConstants {
2183 int32 directory_length_maximum = 1;
2186 int32 name_length_maximum = 2;
2189 int32 priority_default = 3;
2192 int32 repeat_forever = 4;
2195 int32 repeat_none = 5;
2198 int32 period_default = 6;
2201 int32 phase_default = 7;
2204 int32 enable_timing_default = 8;
2207 message StatusConstants {
2209 int64 invalid_execution_count = 1;
2212 uint64 invalid_execution_time = 2;
2215 uint64 error_message_size_maximum = 3;
2222message RTTaskStatus {
2227 optional int64 execution_count = 2;
2230 optional uint64 execution_time_max = 3;
2233 optional uint64 execution_time_min = 4;
2236 optional
double execution_time_mean = 5;
2239 optional uint64 execution_time_last = 6;
2242 optional uint64 start_time_delta_last = 7;
2245 optional uint64 start_time_delta_max = 8;
2248 optional
double start_time_delta_mean = 9;
2251 optional
string error_message = 10;
2256message RTTaskRequest {
2258 RSI.RapidServer.RequestHeader header = 1;
2264 int32 manager_id = 3;
2266 optional RTTaskConfig config = 4;
2267 optional RTTaskAction action = 5;
2272message RTTaskResponse {
2274 RSI.RapidServer.ResponseHeader header = 1;
2280 int32 manager_id = 3;
2282 optional RTTaskConfig config = 4;
2283 optional RTTaskAction action = 5;
2284 optional RTTaskInfo info = 6;
2285 optional RTTaskStatus status = 7;
2290message RTTaskBatchRequest {
2292 RSI.RapidServer.RequestHeader header = 1;
2294 repeated RTTaskRequest requests = 2;
2297message RTTaskBatchResponse {
2299 RSI.RapidServer.ResponseHeader header = 1;
2301 repeated RTTaskResponse 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.