]> git.leonardobizzoni.com Git - pioneer-stm32/commitdiff
switch to protobuf v2
authorFederica Di Lauro <federicadilauro1998@gmail.com>
Tue, 11 Feb 2020 11:04:41 +0000 (12:04 +0100)
committerFederica Di Lauro <federicadilauro1998@gmail.com>
Tue, 11 Feb 2020 11:04:41 +0000 (12:04 +0100)
16 files changed:
utils/catkin_ws/src/joypad_bridge/scripts/cmd_vel_transmitter.py
utils/protobuf_messages/c_protobuf_includes/status_message.pb.h
utils/protobuf_messages/messages_definitions/otto_communication.proto [new file with mode: 0644]
utils/protobuf_messages/messages_definitions/otto_communication_pb2.py [new file with mode: 0644]
utils/protobuf_messages/messages_definitions/status_message.proto
utils/protobuf_messages/python_protobuf_includes/status_message_pb2.py
utils/py_serial_examples/__pycache__/config_command_pb2.cpython-36.pyc [new file with mode: 0644]
utils/py_serial_examples/__pycache__/otto_communication_pb2.cpython-36.pyc [new file with mode: 0644]
utils/py_serial_examples/__pycache__/status_message_pb2.cpython-36.pyc [new file with mode: 0644]
utils/py_serial_examples/__pycache__/velocity_command_pb2.cpython-36.pyc [new file with mode: 0644]
utils/py_serial_examples/config_command_pb2.py [new file with mode: 0644]
utils/py_serial_examples/otto_communication_pb2.py [new file with mode: 0644]
utils/py_serial_examples/proto_test.py [new file with mode: 0644]
utils/py_serial_examples/status_message_pb2.py [new file with mode: 0644]
utils/py_serial_examples/transmit.py
utils/py_serial_examples/velocity_command_pb2.py [new file with mode: 0644]

index c76b3980f386f00d96d152378dabab07d203883e..fe9a4a20d89ac8922d7705f3327f4a6a8c879597 100755 (executable)
@@ -6,7 +6,7 @@ from serial import SerialException
 
 ser = serial.Serial(
         baudrate=115200,
-        parity=serial.PARITY_ODD,
+        parity=serial.PARITY_NONE,
         stopbits=serial.STOPBITS_ONE,
         bytesize=serial.EIGHTBITS,
         rtscts=False)
@@ -17,7 +17,8 @@ def callback(data):
     rospy.loginfo('I heard %f %f', linear, angular)
     msg_output = struct.pack('<ff', linear, angular)
     ser.write(msg_output)
-    ser.flush()
+    ser.reset_output_buffer()
+    #ser.flush()
     
 
 
index 21d1075a011e1b02969fa592dcb2a04d159b3508..ab049226287a3973933fe4ec6011998e814ff75d 100644 (file)
@@ -18,7 +18,10 @@ typedef enum _VelocityCommand_Status {
     VelocityCommand_Status_UNKNOWN = 0,
     VelocityCommand_Status_WAITING_CONFIG = 1,
     VelocityCommand_Status_READY = 2,
-    VelocityCommand_Status_RUNNING = 3
+    VelocityCommand_Status_RUNNING = 3,
+    VelocityCommand_Status_H_BRIDGE_FAULT_1 = 4,
+    VelocityCommand_Status_H_BRIDGE_FAULT_2 = 5,
+    VelocityCommand_Status_UNKNOWN_ERROR = 6
 } VelocityCommand_Status;
 
 /* Struct definitions */
@@ -32,8 +35,8 @@ typedef struct _VelocityCommand {
 
 /* Helper constants for enums */
 #define _VelocityCommand_Status_MIN VelocityCommand_Status_UNKNOWN
-#define _VelocityCommand_Status_MAX VelocityCommand_Status_RUNNING
-#define _VelocityCommand_Status_ARRAYSIZE ((VelocityCommand_Status)(VelocityCommand_Status_RUNNING+1))
+#define _VelocityCommand_Status_MAX VelocityCommand_Status_UNKNOWN_ERROR
+#define _VelocityCommand_Status_ARRAYSIZE ((VelocityCommand_Status)(VelocityCommand_Status_UNKNOWN_ERROR+1))
 
 
 /* Initializer values for message structs */
diff --git a/utils/protobuf_messages/messages_definitions/otto_communication.proto b/utils/protobuf_messages/messages_definitions/otto_communication.proto
new file mode 100644 (file)
index 0000000..5ec2278
--- /dev/null
@@ -0,0 +1,42 @@
+syntax = "proto2";
+message StatusMessage {
+  required float linear_velocity = 1;
+  required float angular_velocity = 2;
+  required fixed64 delta_millis = 3;
+  enum Status {
+    UNKNOWN = 0;
+    WAITING_CONFIG = 1;
+    READY = 2;
+    RUNNING = 3;
+    H_BRIDGE_FAULT_1 = 4;
+    H_BRIDGE_FAULT_2 = 5;
+    UNKNOWN_ERROR = 6;
+  }
+  required Status status = 4;
+}
+
+message ConfigCommand {
+  required float left_kp = 1;
+  required float left_ki = 2;
+  required float left_kd = 3;
+
+  required float right_kp = 4;
+  required float right_ki = 5;
+  required float right_kd = 6;
+
+  required float cross_kp = 7;
+  required float cross_ki = 8;
+  required float cross_kd = 9;
+
+  required float baseline = 10;
+  
+  required fixed32 ticks_per_revolution = 11;
+  required float right_wheel_circumference = 12;
+  required float left_wheel_circumference = 13;
+}
+
+message VelocityCommand {
+  required float linear_velocity = 1;
+  required float angular_velocity = 2;
+}
\ No newline at end of file
diff --git a/utils/protobuf_messages/messages_definitions/otto_communication_pb2.py b/utils/protobuf_messages/messages_definitions/otto_communication_pb2.py
new file mode 100644 (file)
index 0000000..fe68e9f
--- /dev/null
@@ -0,0 +1,304 @@
+# Generated by the protocol buffer compiler.  DO NOT EDIT!
+# source: otto_communication.proto
+
+import sys
+_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+from google.protobuf import descriptor as _descriptor
+from google.protobuf import message as _message
+from google.protobuf import reflection as _reflection
+from google.protobuf import symbol_database as _symbol_database
+from google.protobuf import descriptor_pb2
+# @@protoc_insertion_point(imports)
+
+_sym_db = _symbol_database.Default()
+
+
+
+
+DESCRIPTOR = _descriptor.FileDescriptor(
+  name='otto_communication.proto',
+  package='',
+  syntax='proto2',
+  serialized_pb=_b('\n\x18otto_communication.proto\"\x82\x02\n\rStatusMessage\x12\x17\n\x0flinear_velocity\x18\x01 \x02(\x02\x12\x18\n\x10\x61ngular_velocity\x18\x02 \x02(\x02\x12\x14\n\x0c\x64\x65lta_millis\x18\x03 \x02(\x06\x12%\n\x06status\x18\x04 \x02(\x0e\x32\x15.StatusMessage.Status\"\x80\x01\n\x06Status\x12\x0b\n\x07UNKNOWN\x10\x00\x12\x12\n\x0eWAITING_CONFIG\x10\x01\x12\t\n\x05READY\x10\x02\x12\x0b\n\x07RUNNING\x10\x03\x12\x14\n\x10H_BRIDGE_FAULT_1\x10\x04\x12\x14\n\x10H_BRIDGE_FAULT_2\x10\x05\x12\x11\n\rUNKNOWN_ERROR\x10\x06\"\xa3\x02\n\rConfigCommand\x12\x0f\n\x07left_kp\x18\x01 \x02(\x02\x12\x0f\n\x07left_ki\x18\x02 \x02(\x02\x12\x0f\n\x07left_kd\x18\x03 \x02(\x02\x12\x10\n\x08right_kp\x18\x04 \x02(\x02\x12\x10\n\x08right_ki\x18\x05 \x02(\x02\x12\x10\n\x08right_kd\x18\x06 \x02(\x02\x12\x10\n\x08\x63ross_kp\x18\x07 \x02(\x02\x12\x10\n\x08\x63ross_ki\x18\x08 \x02(\x02\x12\x10\n\x08\x63ross_kd\x18\t \x02(\x02\x12\x10\n\x08\x62\x61seline\x18\n \x02(\x02\x12\x1c\n\x14ticks_per_revolution\x18\x0b \x02(\x07\x12!\n\x19right_wheel_circumference\x18\x0c \x02(\x02\x12 \n\x18left_wheel_circumference\x18\r \x02(\x02\"D\n\x0fVelocityCommand\x12\x17\n\x0flinear_velocity\x18\x01 \x02(\x02\x12\x18\n\x10\x61ngular_velocity\x18\x02 \x02(\x02')
+)
+_sym_db.RegisterFileDescriptor(DESCRIPTOR)
+
+
+
+_STATUSMESSAGE_STATUS = _descriptor.EnumDescriptor(
+  name='Status',
+  full_name='StatusMessage.Status',
+  filename=None,
+  file=DESCRIPTOR,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='UNKNOWN', index=0, number=0,
+      options=None,
+      type=None),
+    _descriptor.EnumValueDescriptor(
+      name='WAITING_CONFIG', index=1, number=1,
+      options=None,
+      type=None),
+    _descriptor.EnumValueDescriptor(
+      name='READY', index=2, number=2,
+      options=None,
+      type=None),
+    _descriptor.EnumValueDescriptor(
+      name='RUNNING', index=3, number=3,
+      options=None,
+      type=None),
+    _descriptor.EnumValueDescriptor(
+      name='H_BRIDGE_FAULT_1', index=4, number=4,
+      options=None,
+      type=None),
+    _descriptor.EnumValueDescriptor(
+      name='H_BRIDGE_FAULT_2', index=5, number=5,
+      options=None,
+      type=None),
+    _descriptor.EnumValueDescriptor(
+      name='UNKNOWN_ERROR', index=6, number=6,
+      options=None,
+      type=None),
+  ],
+  containing_type=None,
+  options=None,
+  serialized_start=159,
+  serialized_end=287,
+)
+_sym_db.RegisterEnumDescriptor(_STATUSMESSAGE_STATUS)
+
+
+_STATUSMESSAGE = _descriptor.Descriptor(
+  name='StatusMessage',
+  full_name='StatusMessage',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='linear_velocity', full_name='StatusMessage.linear_velocity', index=0,
+      number=1, type=2, cpp_type=6, label=2,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='angular_velocity', full_name='StatusMessage.angular_velocity', index=1,
+      number=2, type=2, cpp_type=6, label=2,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='delta_millis', full_name='StatusMessage.delta_millis', index=2,
+      number=3, type=6, cpp_type=4, label=2,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='status', full_name='StatusMessage.status', index=3,
+      number=4, type=14, cpp_type=8, label=2,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+    _STATUSMESSAGE_STATUS,
+  ],
+  options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=29,
+  serialized_end=287,
+)
+
+
+_CONFIGCOMMAND = _descriptor.Descriptor(
+  name='ConfigCommand',
+  full_name='ConfigCommand',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='left_kp', full_name='ConfigCommand.left_kp', index=0,
+      number=1, type=2, cpp_type=6, label=2,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='left_ki', full_name='ConfigCommand.left_ki', index=1,
+      number=2, type=2, cpp_type=6, label=2,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='left_kd', full_name='ConfigCommand.left_kd', index=2,
+      number=3, type=2, cpp_type=6, label=2,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='right_kp', full_name='ConfigCommand.right_kp', index=3,
+      number=4, type=2, cpp_type=6, label=2,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='right_ki', full_name='ConfigCommand.right_ki', index=4,
+      number=5, type=2, cpp_type=6, label=2,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='right_kd', full_name='ConfigCommand.right_kd', index=5,
+      number=6, type=2, cpp_type=6, label=2,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='cross_kp', full_name='ConfigCommand.cross_kp', index=6,
+      number=7, type=2, cpp_type=6, label=2,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='cross_ki', full_name='ConfigCommand.cross_ki', index=7,
+      number=8, type=2, cpp_type=6, label=2,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='cross_kd', full_name='ConfigCommand.cross_kd', index=8,
+      number=9, type=2, cpp_type=6, label=2,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='baseline', full_name='ConfigCommand.baseline', index=9,
+      number=10, type=2, cpp_type=6, label=2,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='ticks_per_revolution', full_name='ConfigCommand.ticks_per_revolution', index=10,
+      number=11, type=7, cpp_type=3, label=2,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='right_wheel_circumference', full_name='ConfigCommand.right_wheel_circumference', index=11,
+      number=12, type=2, cpp_type=6, label=2,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='left_wheel_circumference', full_name='ConfigCommand.left_wheel_circumference', index=12,
+      number=13, type=2, cpp_type=6, label=2,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=290,
+  serialized_end=581,
+)
+
+
+_VELOCITYCOMMAND = _descriptor.Descriptor(
+  name='VelocityCommand',
+  full_name='VelocityCommand',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='linear_velocity', full_name='VelocityCommand.linear_velocity', index=0,
+      number=1, type=2, cpp_type=6, label=2,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='angular_velocity', full_name='VelocityCommand.angular_velocity', index=1,
+      number=2, type=2, cpp_type=6, label=2,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=583,
+  serialized_end=651,
+)
+
+_STATUSMESSAGE.fields_by_name['status'].enum_type = _STATUSMESSAGE_STATUS
+_STATUSMESSAGE_STATUS.containing_type = _STATUSMESSAGE
+DESCRIPTOR.message_types_by_name['StatusMessage'] = _STATUSMESSAGE
+DESCRIPTOR.message_types_by_name['ConfigCommand'] = _CONFIGCOMMAND
+DESCRIPTOR.message_types_by_name['VelocityCommand'] = _VELOCITYCOMMAND
+
+StatusMessage = _reflection.GeneratedProtocolMessageType('StatusMessage', (_message.Message,), dict(
+  DESCRIPTOR = _STATUSMESSAGE,
+  __module__ = 'otto_communication_pb2'
+  # @@protoc_insertion_point(class_scope:StatusMessage)
+  ))
+_sym_db.RegisterMessage(StatusMessage)
+
+ConfigCommand = _reflection.GeneratedProtocolMessageType('ConfigCommand', (_message.Message,), dict(
+  DESCRIPTOR = _CONFIGCOMMAND,
+  __module__ = 'otto_communication_pb2'
+  # @@protoc_insertion_point(class_scope:ConfigCommand)
+  ))
+_sym_db.RegisterMessage(ConfigCommand)
+
+VelocityCommand = _reflection.GeneratedProtocolMessageType('VelocityCommand', (_message.Message,), dict(
+  DESCRIPTOR = _VELOCITYCOMMAND,
+  __module__ = 'otto_communication_pb2'
+  # @@protoc_insertion_point(class_scope:VelocityCommand)
+  ))
+_sym_db.RegisterMessage(VelocityCommand)
+
+
+# @@protoc_insertion_point(module_scope)
index 964c2539f6f3a42ddc97b8d1ea2a2703a85971f1..b259ceec0f7a63d4e62f8551912d0194b163eb7b 100644 (file)
@@ -1,14 +1,17 @@
 syntax = "proto3";
-
-message VelocityCommand {
-  float linear_velocity = 1;
-  float angular_velocity = 2;
-  fixed64 delta_millis = 3;
+message StatusMessage {
+  required float linear_velocity = 1;
+  required float angular_velocity = 2;
+  required fixed64 delta_millis = 3;
   enum Status {
     UNKNOWN = 0;
     WAITING_CONFIG = 1;
     READY = 2;
     RUNNING = 3;
+    H_BRIDGE_FAULT_1 = 4;
+    H_BRIDGE_FAULT_2 = 5;
+    UNKNOWN_ERROR = 6;
   }
-  Status status = 4;
+  required Status status = 4;
 }
\ No newline at end of file
index 006706615f05b4f4920b2efb5052b5e87fc4040d..c5cc154ec47e30a6d8fcabaae3446cc61241cf72 100644 (file)
@@ -19,7 +19,7 @@ DESCRIPTOR = _descriptor.FileDescriptor(
   name='status_message.proto',
   package='',
   syntax='proto3',
-  serialized_pb=_b('\n\x14status_message.proto\"\xc6\x01\n\x0fVelocityCommand\x12\x17\n\x0flinear_velocity\x18\x01 \x01(\x02\x12\x18\n\x10\x61ngular_velocity\x18\x02 \x01(\x02\x12\x14\n\x0c\x64\x65lta_millis\x18\x03 \x01(\x06\x12\'\n\x06status\x18\x04 \x01(\x0e\x32\x17.VelocityCommand.Status\"A\n\x06Status\x12\x0b\n\x07UNKNOWN\x10\x00\x12\x12\n\x0eWAITING_CONFIG\x10\x01\x12\t\n\x05READY\x10\x02\x12\x0b\n\x07RUNNING\x10\x03\x62\x06proto3')
+  serialized_pb=_b('\n\x14status_message.proto\"\x86\x02\n\x0fVelocityCommand\x12\x17\n\x0flinear_velocity\x18\x01 \x01(\x02\x12\x18\n\x10\x61ngular_velocity\x18\x02 \x01(\x02\x12\x14\n\x0c\x64\x65lta_millis\x18\x03 \x01(\x06\x12\'\n\x06status\x18\x04 \x01(\x0e\x32\x17.VelocityCommand.Status\"\x80\x01\n\x06Status\x12\x0b\n\x07UNKNOWN\x10\x00\x12\x12\n\x0eWAITING_CONFIG\x10\x01\x12\t\n\x05READY\x10\x02\x12\x0b\n\x07RUNNING\x10\x03\x12\x14\n\x10H_BRIDGE_FAULT_1\x10\x04\x12\x14\n\x10H_BRIDGE_FAULT_2\x10\x05\x12\x11\n\rUNKNOWN_ERROR\x10\x06\x62\x06proto3')
 )
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
@@ -47,11 +47,23 @@ _VELOCITYCOMMAND_STATUS = _descriptor.EnumDescriptor(
       name='RUNNING', index=3, number=3,
       options=None,
       type=None),
+    _descriptor.EnumValueDescriptor(
+      name='H_BRIDGE_FAULT_1', index=4, number=4,
+      options=None,
+      type=None),
+    _descriptor.EnumValueDescriptor(
+      name='H_BRIDGE_FAULT_2', index=5, number=5,
+      options=None,
+      type=None),
+    _descriptor.EnumValueDescriptor(
+      name='UNKNOWN_ERROR', index=6, number=6,
+      options=None,
+      type=None),
   ],
   containing_type=None,
   options=None,
-  serialized_start=158,
-  serialized_end=223,
+  serialized_start=159,
+  serialized_end=287,
 )
 _sym_db.RegisterEnumDescriptor(_VELOCITYCOMMAND_STATUS)
 
@@ -105,7 +117,7 @@ _VELOCITYCOMMAND = _descriptor.Descriptor(
   oneofs=[
   ],
   serialized_start=25,
-  serialized_end=223,
+  serialized_end=287,
 )
 
 _VELOCITYCOMMAND.fields_by_name['status'].enum_type = _VELOCITYCOMMAND_STATUS
diff --git a/utils/py_serial_examples/__pycache__/config_command_pb2.cpython-36.pyc b/utils/py_serial_examples/__pycache__/config_command_pb2.cpython-36.pyc
new file mode 100644 (file)
index 0000000..f9e9c83
Binary files /dev/null and b/utils/py_serial_examples/__pycache__/config_command_pb2.cpython-36.pyc differ
diff --git a/utils/py_serial_examples/__pycache__/otto_communication_pb2.cpython-36.pyc b/utils/py_serial_examples/__pycache__/otto_communication_pb2.cpython-36.pyc
new file mode 100644 (file)
index 0000000..4abbf3e
Binary files /dev/null and b/utils/py_serial_examples/__pycache__/otto_communication_pb2.cpython-36.pyc differ
diff --git a/utils/py_serial_examples/__pycache__/status_message_pb2.cpython-36.pyc b/utils/py_serial_examples/__pycache__/status_message_pb2.cpython-36.pyc
new file mode 100644 (file)
index 0000000..7f1875b
Binary files /dev/null and b/utils/py_serial_examples/__pycache__/status_message_pb2.cpython-36.pyc differ
diff --git a/utils/py_serial_examples/__pycache__/velocity_command_pb2.cpython-36.pyc b/utils/py_serial_examples/__pycache__/velocity_command_pb2.cpython-36.pyc
new file mode 100644 (file)
index 0000000..c3fd0d8
Binary files /dev/null and b/utils/py_serial_examples/__pycache__/velocity_command_pb2.cpython-36.pyc differ
diff --git a/utils/py_serial_examples/config_command_pb2.py b/utils/py_serial_examples/config_command_pb2.py
new file mode 100644 (file)
index 0000000..58cca1c
--- /dev/null
@@ -0,0 +1,153 @@
+# Generated by the protocol buffer compiler.  DO NOT EDIT!
+# source: config_command.proto
+
+import sys
+_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+from google.protobuf import descriptor as _descriptor
+from google.protobuf import message as _message
+from google.protobuf import reflection as _reflection
+from google.protobuf import symbol_database as _symbol_database
+from google.protobuf import descriptor_pb2
+# @@protoc_insertion_point(imports)
+
+_sym_db = _symbol_database.Default()
+
+
+
+
+DESCRIPTOR = _descriptor.FileDescriptor(
+  name='config_command.proto',
+  package='',
+  syntax='proto3',
+  serialized_pb=_b('\n\x14\x63onfig_command.proto\"\xa3\x02\n\rConfigCommand\x12\x0f\n\x07left_kp\x18\x01 \x01(\x02\x12\x0f\n\x07left_ki\x18\x02 \x01(\x02\x12\x0f\n\x07left_kd\x18\x03 \x01(\x02\x12\x10\n\x08right_kp\x18\x04 \x01(\x02\x12\x10\n\x08right_ki\x18\x05 \x01(\x02\x12\x10\n\x08right_kd\x18\x06 \x01(\x02\x12\x10\n\x08\x63ross_kp\x18\x07 \x01(\x02\x12\x10\n\x08\x63ross_ki\x18\x08 \x01(\x02\x12\x10\n\x08\x63ross_kd\x18\t \x01(\x02\x12\x10\n\x08\x62\x61seline\x18\n \x01(\x02\x12\x1c\n\x14ticks_per_revolution\x18\x0b \x01(\x07\x12!\n\x19right_wheel_circumference\x18\x0c \x01(\x02\x12 \n\x18left_wheel_circumference\x18\r \x01(\x02\x62\x06proto3')
+)
+_sym_db.RegisterFileDescriptor(DESCRIPTOR)
+
+
+
+
+_CONFIGCOMMAND = _descriptor.Descriptor(
+  name='ConfigCommand',
+  full_name='ConfigCommand',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='left_kp', full_name='ConfigCommand.left_kp', index=0,
+      number=1, type=2, cpp_type=6, label=1,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='left_ki', full_name='ConfigCommand.left_ki', index=1,
+      number=2, type=2, cpp_type=6, label=1,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='left_kd', full_name='ConfigCommand.left_kd', index=2,
+      number=3, type=2, cpp_type=6, label=1,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='right_kp', full_name='ConfigCommand.right_kp', index=3,
+      number=4, type=2, cpp_type=6, label=1,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='right_ki', full_name='ConfigCommand.right_ki', index=4,
+      number=5, type=2, cpp_type=6, label=1,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='right_kd', full_name='ConfigCommand.right_kd', index=5,
+      number=6, type=2, cpp_type=6, label=1,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='cross_kp', full_name='ConfigCommand.cross_kp', index=6,
+      number=7, type=2, cpp_type=6, label=1,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='cross_ki', full_name='ConfigCommand.cross_ki', index=7,
+      number=8, type=2, cpp_type=6, label=1,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='cross_kd', full_name='ConfigCommand.cross_kd', index=8,
+      number=9, type=2, cpp_type=6, label=1,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='baseline', full_name='ConfigCommand.baseline', index=9,
+      number=10, type=2, cpp_type=6, label=1,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='ticks_per_revolution', full_name='ConfigCommand.ticks_per_revolution', index=10,
+      number=11, type=7, cpp_type=3, label=1,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='right_wheel_circumference', full_name='ConfigCommand.right_wheel_circumference', index=11,
+      number=12, type=2, cpp_type=6, label=1,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='left_wheel_circumference', full_name='ConfigCommand.left_wheel_circumference', index=12,
+      number=13, type=2, cpp_type=6, label=1,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  options=None,
+  is_extendable=False,
+  syntax='proto3',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=25,
+  serialized_end=316,
+)
+
+DESCRIPTOR.message_types_by_name['ConfigCommand'] = _CONFIGCOMMAND
+
+ConfigCommand = _reflection.GeneratedProtocolMessageType('ConfigCommand', (_message.Message,), dict(
+  DESCRIPTOR = _CONFIGCOMMAND,
+  __module__ = 'config_command_pb2'
+  # @@protoc_insertion_point(class_scope:ConfigCommand)
+  ))
+_sym_db.RegisterMessage(ConfigCommand)
+
+
+# @@protoc_insertion_point(module_scope)
diff --git a/utils/py_serial_examples/otto_communication_pb2.py b/utils/py_serial_examples/otto_communication_pb2.py
new file mode 100644 (file)
index 0000000..fe68e9f
--- /dev/null
@@ -0,0 +1,304 @@
+# Generated by the protocol buffer compiler.  DO NOT EDIT!
+# source: otto_communication.proto
+
+import sys
+_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+from google.protobuf import descriptor as _descriptor
+from google.protobuf import message as _message
+from google.protobuf import reflection as _reflection
+from google.protobuf import symbol_database as _symbol_database
+from google.protobuf import descriptor_pb2
+# @@protoc_insertion_point(imports)
+
+_sym_db = _symbol_database.Default()
+
+
+
+
+DESCRIPTOR = _descriptor.FileDescriptor(
+  name='otto_communication.proto',
+  package='',
+  syntax='proto2',
+  serialized_pb=_b('\n\x18otto_communication.proto\"\x82\x02\n\rStatusMessage\x12\x17\n\x0flinear_velocity\x18\x01 \x02(\x02\x12\x18\n\x10\x61ngular_velocity\x18\x02 \x02(\x02\x12\x14\n\x0c\x64\x65lta_millis\x18\x03 \x02(\x06\x12%\n\x06status\x18\x04 \x02(\x0e\x32\x15.StatusMessage.Status\"\x80\x01\n\x06Status\x12\x0b\n\x07UNKNOWN\x10\x00\x12\x12\n\x0eWAITING_CONFIG\x10\x01\x12\t\n\x05READY\x10\x02\x12\x0b\n\x07RUNNING\x10\x03\x12\x14\n\x10H_BRIDGE_FAULT_1\x10\x04\x12\x14\n\x10H_BRIDGE_FAULT_2\x10\x05\x12\x11\n\rUNKNOWN_ERROR\x10\x06\"\xa3\x02\n\rConfigCommand\x12\x0f\n\x07left_kp\x18\x01 \x02(\x02\x12\x0f\n\x07left_ki\x18\x02 \x02(\x02\x12\x0f\n\x07left_kd\x18\x03 \x02(\x02\x12\x10\n\x08right_kp\x18\x04 \x02(\x02\x12\x10\n\x08right_ki\x18\x05 \x02(\x02\x12\x10\n\x08right_kd\x18\x06 \x02(\x02\x12\x10\n\x08\x63ross_kp\x18\x07 \x02(\x02\x12\x10\n\x08\x63ross_ki\x18\x08 \x02(\x02\x12\x10\n\x08\x63ross_kd\x18\t \x02(\x02\x12\x10\n\x08\x62\x61seline\x18\n \x02(\x02\x12\x1c\n\x14ticks_per_revolution\x18\x0b \x02(\x07\x12!\n\x19right_wheel_circumference\x18\x0c \x02(\x02\x12 \n\x18left_wheel_circumference\x18\r \x02(\x02\"D\n\x0fVelocityCommand\x12\x17\n\x0flinear_velocity\x18\x01 \x02(\x02\x12\x18\n\x10\x61ngular_velocity\x18\x02 \x02(\x02')
+)
+_sym_db.RegisterFileDescriptor(DESCRIPTOR)
+
+
+
+_STATUSMESSAGE_STATUS = _descriptor.EnumDescriptor(
+  name='Status',
+  full_name='StatusMessage.Status',
+  filename=None,
+  file=DESCRIPTOR,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='UNKNOWN', index=0, number=0,
+      options=None,
+      type=None),
+    _descriptor.EnumValueDescriptor(
+      name='WAITING_CONFIG', index=1, number=1,
+      options=None,
+      type=None),
+    _descriptor.EnumValueDescriptor(
+      name='READY', index=2, number=2,
+      options=None,
+      type=None),
+    _descriptor.EnumValueDescriptor(
+      name='RUNNING', index=3, number=3,
+      options=None,
+      type=None),
+    _descriptor.EnumValueDescriptor(
+      name='H_BRIDGE_FAULT_1', index=4, number=4,
+      options=None,
+      type=None),
+    _descriptor.EnumValueDescriptor(
+      name='H_BRIDGE_FAULT_2', index=5, number=5,
+      options=None,
+      type=None),
+    _descriptor.EnumValueDescriptor(
+      name='UNKNOWN_ERROR', index=6, number=6,
+      options=None,
+      type=None),
+  ],
+  containing_type=None,
+  options=None,
+  serialized_start=159,
+  serialized_end=287,
+)
+_sym_db.RegisterEnumDescriptor(_STATUSMESSAGE_STATUS)
+
+
+_STATUSMESSAGE = _descriptor.Descriptor(
+  name='StatusMessage',
+  full_name='StatusMessage',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='linear_velocity', full_name='StatusMessage.linear_velocity', index=0,
+      number=1, type=2, cpp_type=6, label=2,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='angular_velocity', full_name='StatusMessage.angular_velocity', index=1,
+      number=2, type=2, cpp_type=6, label=2,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='delta_millis', full_name='StatusMessage.delta_millis', index=2,
+      number=3, type=6, cpp_type=4, label=2,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='status', full_name='StatusMessage.status', index=3,
+      number=4, type=14, cpp_type=8, label=2,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+    _STATUSMESSAGE_STATUS,
+  ],
+  options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=29,
+  serialized_end=287,
+)
+
+
+_CONFIGCOMMAND = _descriptor.Descriptor(
+  name='ConfigCommand',
+  full_name='ConfigCommand',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='left_kp', full_name='ConfigCommand.left_kp', index=0,
+      number=1, type=2, cpp_type=6, label=2,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='left_ki', full_name='ConfigCommand.left_ki', index=1,
+      number=2, type=2, cpp_type=6, label=2,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='left_kd', full_name='ConfigCommand.left_kd', index=2,
+      number=3, type=2, cpp_type=6, label=2,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='right_kp', full_name='ConfigCommand.right_kp', index=3,
+      number=4, type=2, cpp_type=6, label=2,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='right_ki', full_name='ConfigCommand.right_ki', index=4,
+      number=5, type=2, cpp_type=6, label=2,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='right_kd', full_name='ConfigCommand.right_kd', index=5,
+      number=6, type=2, cpp_type=6, label=2,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='cross_kp', full_name='ConfigCommand.cross_kp', index=6,
+      number=7, type=2, cpp_type=6, label=2,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='cross_ki', full_name='ConfigCommand.cross_ki', index=7,
+      number=8, type=2, cpp_type=6, label=2,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='cross_kd', full_name='ConfigCommand.cross_kd', index=8,
+      number=9, type=2, cpp_type=6, label=2,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='baseline', full_name='ConfigCommand.baseline', index=9,
+      number=10, type=2, cpp_type=6, label=2,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='ticks_per_revolution', full_name='ConfigCommand.ticks_per_revolution', index=10,
+      number=11, type=7, cpp_type=3, label=2,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='right_wheel_circumference', full_name='ConfigCommand.right_wheel_circumference', index=11,
+      number=12, type=2, cpp_type=6, label=2,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='left_wheel_circumference', full_name='ConfigCommand.left_wheel_circumference', index=12,
+      number=13, type=2, cpp_type=6, label=2,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=290,
+  serialized_end=581,
+)
+
+
+_VELOCITYCOMMAND = _descriptor.Descriptor(
+  name='VelocityCommand',
+  full_name='VelocityCommand',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='linear_velocity', full_name='VelocityCommand.linear_velocity', index=0,
+      number=1, type=2, cpp_type=6, label=2,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='angular_velocity', full_name='VelocityCommand.angular_velocity', index=1,
+      number=2, type=2, cpp_type=6, label=2,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=583,
+  serialized_end=651,
+)
+
+_STATUSMESSAGE.fields_by_name['status'].enum_type = _STATUSMESSAGE_STATUS
+_STATUSMESSAGE_STATUS.containing_type = _STATUSMESSAGE
+DESCRIPTOR.message_types_by_name['StatusMessage'] = _STATUSMESSAGE
+DESCRIPTOR.message_types_by_name['ConfigCommand'] = _CONFIGCOMMAND
+DESCRIPTOR.message_types_by_name['VelocityCommand'] = _VELOCITYCOMMAND
+
+StatusMessage = _reflection.GeneratedProtocolMessageType('StatusMessage', (_message.Message,), dict(
+  DESCRIPTOR = _STATUSMESSAGE,
+  __module__ = 'otto_communication_pb2'
+  # @@protoc_insertion_point(class_scope:StatusMessage)
+  ))
+_sym_db.RegisterMessage(StatusMessage)
+
+ConfigCommand = _reflection.GeneratedProtocolMessageType('ConfigCommand', (_message.Message,), dict(
+  DESCRIPTOR = _CONFIGCOMMAND,
+  __module__ = 'otto_communication_pb2'
+  # @@protoc_insertion_point(class_scope:ConfigCommand)
+  ))
+_sym_db.RegisterMessage(ConfigCommand)
+
+VelocityCommand = _reflection.GeneratedProtocolMessageType('VelocityCommand', (_message.Message,), dict(
+  DESCRIPTOR = _VELOCITYCOMMAND,
+  __module__ = 'otto_communication_pb2'
+  # @@protoc_insertion_point(class_scope:VelocityCommand)
+  ))
+_sym_db.RegisterMessage(VelocityCommand)
+
+
+# @@protoc_insertion_point(module_scope)
diff --git a/utils/py_serial_examples/proto_test.py b/utils/py_serial_examples/proto_test.py
new file mode 100644 (file)
index 0000000..0aec647
--- /dev/null
@@ -0,0 +1,28 @@
+import otto_communication_pb2
+
+status_message = otto_communication_pb2.StatusMessage()
+
+status_message.linear_velocity = 0.0
+status_message.angular_velocity = 0.0
+status_message.delta_millis = 0
+status_message.status = otto_communication_pb2.StatusMessage.Status.UNKNOWN
+
+encode_buffer = status_message.SerializeToString()
+status_message_length = len(encode_buffer)
+print(encode_buffer)
+print(status_message_length)
+status_message.ParseFromString(encode_buffer)
+print(status_message)
+
+my_velocity = otto_communication_pb2.VelocityCommand()
+my_velocity.linear_velocity = 0.6
+my_velocity.angular_velocity = -0.1
+
+encode_buffer = my_velocity.SerializeToString()
+print(encode_buffer)
+print(len(encode_buffer))
+
+
+my_config = otto_communication_pb2.ConfigCommand()
+print(my_config)
+
diff --git a/utils/py_serial_examples/status_message_pb2.py b/utils/py_serial_examples/status_message_pb2.py
new file mode 100644 (file)
index 0000000..cf3f0fa
--- /dev/null
@@ -0,0 +1,135 @@
+# Generated by the protocol buffer compiler.  DO NOT EDIT!
+# source: status_message.proto
+
+import sys
+_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+from google.protobuf import descriptor as _descriptor
+from google.protobuf import message as _message
+from google.protobuf import reflection as _reflection
+from google.protobuf import symbol_database as _symbol_database
+from google.protobuf import descriptor_pb2
+# @@protoc_insertion_point(imports)
+
+_sym_db = _symbol_database.Default()
+
+
+
+
+DESCRIPTOR = _descriptor.FileDescriptor(
+  name='status_message.proto',
+  package='',
+  syntax='proto2',
+  serialized_pb=_b('\n\x14status_message.proto\"\x82\x02\n\rStatusMessage\x12\x17\n\x0flinear_velocity\x18\x01 \x02(\x02\x12\x18\n\x10\x61ngular_velocity\x18\x02 \x02(\x02\x12\x14\n\x0c\x64\x65lta_millis\x18\x03 \x02(\x06\x12%\n\x06status\x18\x04 \x02(\x0e\x32\x15.StatusMessage.Status\"\x80\x01\n\x06Status\x12\x0b\n\x07UNKNOWN\x10\x00\x12\x12\n\x0eWAITING_CONFIG\x10\x01\x12\t\n\x05READY\x10\x02\x12\x0b\n\x07RUNNING\x10\x03\x12\x14\n\x10H_BRIDGE_FAULT_1\x10\x04\x12\x14\n\x10H_BRIDGE_FAULT_2\x10\x05\x12\x11\n\rUNKNOWN_ERROR\x10\x06')
+)
+_sym_db.RegisterFileDescriptor(DESCRIPTOR)
+
+
+
+_STATUSMESSAGE_STATUS = _descriptor.EnumDescriptor(
+  name='Status',
+  full_name='StatusMessage.Status',
+  filename=None,
+  file=DESCRIPTOR,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='UNKNOWN', index=0, number=0,
+      options=None,
+      type=None),
+    _descriptor.EnumValueDescriptor(
+      name='WAITING_CONFIG', index=1, number=1,
+      options=None,
+      type=None),
+    _descriptor.EnumValueDescriptor(
+      name='READY', index=2, number=2,
+      options=None,
+      type=None),
+    _descriptor.EnumValueDescriptor(
+      name='RUNNING', index=3, number=3,
+      options=None,
+      type=None),
+    _descriptor.EnumValueDescriptor(
+      name='H_BRIDGE_FAULT_1', index=4, number=4,
+      options=None,
+      type=None),
+    _descriptor.EnumValueDescriptor(
+      name='H_BRIDGE_FAULT_2', index=5, number=5,
+      options=None,
+      type=None),
+    _descriptor.EnumValueDescriptor(
+      name='UNKNOWN_ERROR', index=6, number=6,
+      options=None,
+      type=None),
+  ],
+  containing_type=None,
+  options=None,
+  serialized_start=155,
+  serialized_end=283,
+)
+_sym_db.RegisterEnumDescriptor(_STATUSMESSAGE_STATUS)
+
+
+_STATUSMESSAGE = _descriptor.Descriptor(
+  name='StatusMessage',
+  full_name='StatusMessage',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='linear_velocity', full_name='StatusMessage.linear_velocity', index=0,
+      number=1, type=2, cpp_type=6, label=2,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='angular_velocity', full_name='StatusMessage.angular_velocity', index=1,
+      number=2, type=2, cpp_type=6, label=2,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='delta_millis', full_name='StatusMessage.delta_millis', index=2,
+      number=3, type=6, cpp_type=4, label=2,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='status', full_name='StatusMessage.status', index=3,
+      number=4, type=14, cpp_type=8, label=2,
+      has_default_value=False, default_value=0,
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+    _STATUSMESSAGE_STATUS,
+  ],
+  options=None,
+  is_extendable=False,
+  syntax='proto2',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=25,
+  serialized_end=283,
+)
+
+_STATUSMESSAGE.fields_by_name['status'].enum_type = _STATUSMESSAGE_STATUS
+_STATUSMESSAGE_STATUS.containing_type = _STATUSMESSAGE
+DESCRIPTOR.message_types_by_name['StatusMessage'] = _STATUSMESSAGE
+
+StatusMessage = _reflection.GeneratedProtocolMessageType('StatusMessage', (_message.Message,), dict(
+  DESCRIPTOR = _STATUSMESSAGE,
+  __module__ = 'status_message_pb2'
+  # @@protoc_insertion_point(class_scope:StatusMessage)
+  ))
+_sym_db.RegisterMessage(StatusMessage)
+
+
+# @@protoc_insertion_point(module_scope)
index 568c31ce240f39bfd2c1aff4ea9f465b57a82a9b..1c345d44197f45e60a161345d43b88f107889396 100644 (file)
@@ -20,11 +20,10 @@ print("open port")
 ang_vel_cmd = 0.8
 lin_vel_cmd = 0.5
 while 1:
-       msg_output_buffer = struct.pack('<ff', lin_vel_cmd, ang_vel_cmd)
-       ser.write(msg_output_buffer)
-       print(ang_vel_cmd)
-       print(lin_vel_cmd)
-       ang_vel_cmd = ang_vel_cmd + 0.1
-       lin_vel_cmd = lin_vel_cmd + 0.1
-       ser.reset_output_buffer()
-       time.sleep(3)
+  print(ang_vel_cmd)
+  print(lin_vel_cmd)
+  ang_vel_cmd = ang_vel_cmd + 0.1
+  lin_vel_cmd = lin_vel_cmd + 0.1
+  msg_output_buffer = struct.pack('<ff', lin_vel_cmd, ang_vel_cmd)
+  ser.write(msg_output_buffer)
+  ser.reset_output_buffer()
diff --git a/utils/py_serial_examples/velocity_command_pb2.py b/utils/py_serial_examples/velocity_command_pb2.py
new file mode 100644 (file)
index 0000000..53fce6f
--- /dev/null
@@ -0,0 +1,76 @@
+# Generated by the protocol buffer compiler.  DO NOT EDIT!
+# source: velocity_command.proto
+
+import sys
+_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+from google.protobuf import descriptor as _descriptor
+from google.protobuf import message as _message
+from google.protobuf import reflection as _reflection
+from google.protobuf import symbol_database as _symbol_database
+from google.protobuf import descriptor_pb2
+# @@protoc_insertion_point(imports)
+
+_sym_db = _symbol_database.Default()
+
+
+
+
+DESCRIPTOR = _descriptor.FileDescriptor(
+  name='velocity_command.proto',
+  package='',
+  syntax='proto3',
+  serialized_pb=_b('\n\x16velocity_command.proto\"D\n\x0fVelocityCommand\x12\x17\n\x0flinear_velocity\x18\x01 \x01(\x02\x12\x18\n\x10\x61ngular_velocity\x18\x02 \x01(\x02\x62\x06proto3')
+)
+_sym_db.RegisterFileDescriptor(DESCRIPTOR)
+
+
+
+
+_VELOCITYCOMMAND = _descriptor.Descriptor(
+  name='VelocityCommand',
+  full_name='VelocityCommand',
+  filename=None,
+  file=DESCRIPTOR,
+  containing_type=None,
+  fields=[
+    _descriptor.FieldDescriptor(
+      name='linear_velocity', full_name='VelocityCommand.linear_velocity', index=0,
+      number=1, type=2, cpp_type=6, label=1,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+    _descriptor.FieldDescriptor(
+      name='angular_velocity', full_name='VelocityCommand.angular_velocity', index=1,
+      number=2, type=2, cpp_type=6, label=1,
+      has_default_value=False, default_value=float(0),
+      message_type=None, enum_type=None, containing_type=None,
+      is_extension=False, extension_scope=None,
+      options=None),
+  ],
+  extensions=[
+  ],
+  nested_types=[],
+  enum_types=[
+  ],
+  options=None,
+  is_extendable=False,
+  syntax='proto3',
+  extension_ranges=[],
+  oneofs=[
+  ],
+  serialized_start=26,
+  serialized_end=94,
+)
+
+DESCRIPTOR.message_types_by_name['VelocityCommand'] = _VELOCITYCOMMAND
+
+VelocityCommand = _reflection.GeneratedProtocolMessageType('VelocityCommand', (_message.Message,), dict(
+  DESCRIPTOR = _VELOCITYCOMMAND,
+  __module__ = 'velocity_command_pb2'
+  # @@protoc_insertion_point(class_scope:VelocityCommand)
+  ))
+_sym_db.RegisterMessage(VelocityCommand)
+
+
+# @@protoc_insertion_point(module_scope)