TIdy up, regenerate slam proto to include port
This commit is contained in:
@@ -27,20 +27,19 @@ class MotorServicer(motorService_pb2_grpc.CarControlServicer):
|
|||||||
print('Setting throttle to: ' + str(request.throttle))
|
print('Setting throttle to: ' + str(request.throttle))
|
||||||
self.set_timeout(3)
|
self.set_timeout(3)
|
||||||
throttleFailed = self.motor.set_throttle(request.throttle)
|
throttleFailed = self.motor.set_throttle(request.throttle)
|
||||||
return motorService_pb2.ThrottleResponse(throttleSet = throttleFailed)
|
return motorService_pb2.ThrottleResponse(throttleSet=throttleFailed)
|
||||||
|
|
||||||
def SetSteering(self, request, context):
|
def SetSteering(self, request, context):
|
||||||
# TODO: Fix this to use the motor object as well to check for bounds.
|
# TODO: Fix this to use the motor object as well to check for bounds.
|
||||||
print('Setting steering to: ' + str(request.steering))
|
print('Setting steering to: ' + str(request.steering))
|
||||||
self.servo.value = request.steering
|
self.servo.value = request.steering
|
||||||
return motorService_pb2.SteeringResponse(steeringSet = True)
|
return motorService_pb2.SteeringResponse(steeringSet=True)
|
||||||
|
|
||||||
def set_timeout(self, min_timeout):
|
def set_timeout(self, min_timeout):
|
||||||
"""Stops the old timer and restarts it to the specified time.
|
"""Stops the old timer and restarts it to the specified time.
|
||||||
|
|
||||||
min_timeout -- The minimum time that can be used for the timer.
|
min_timeout -- The minimum time that can be used for the timer.
|
||||||
vary_timout -- Default 200, the additional random varying time (0 - vary_timeout) to add to timer.
|
"""
|
||||||
"""
|
|
||||||
if self._timer is not None:
|
if self._timer is not None:
|
||||||
self._timer.cancel()
|
self._timer.cancel()
|
||||||
self._timer = Timer(min_timeout, self.timeout_elapsed)
|
self._timer = Timer(min_timeout, self.timeout_elapsed)
|
||||||
@@ -54,7 +53,8 @@ class MotorServicer(motorService_pb2_grpc.CarControlServicer):
|
|||||||
def start_server(self):
|
def start_server(self):
|
||||||
server = grpc.server(futures.ThreadPoolExecutor(max_workers=8))
|
server = grpc.server(futures.ThreadPoolExecutor(max_workers=8))
|
||||||
motorService_pb2_grpc.add_CarControlServicer_to_server(self, server)
|
motorService_pb2_grpc.add_CarControlServicer_to_server(self, server)
|
||||||
SlamController_pb2_grpc.add_SlamControlServicer_to_server(self.create_slam_servicer(), server)
|
SlamController_pb2_grpc.add_SlamControlServicer_to_server(
|
||||||
|
self.create_slam_servicer(), server)
|
||||||
# Disable tls for local testing.
|
# Disable tls for local testing.
|
||||||
# server.add_secure_port('[::]:50051', self.create_credentials())
|
# server.add_secure_port('[::]:50051', self.create_credentials())
|
||||||
server.add_insecure_port('[::]:50051')
|
server.add_insecure_port('[::]:50051')
|
||||||
@@ -74,6 +74,7 @@ class MotorServicer(motorService_pb2_grpc.CarControlServicer):
|
|||||||
|
|
||||||
return grpc.ssl_server_credentials([[pvtKeyBytes, pvtCertBytes]])
|
return grpc.ssl_server_credentials([[pvtKeyBytes, pvtCertBytes]])
|
||||||
|
|
||||||
|
|
||||||
motor = Motor()
|
motor = Motor()
|
||||||
servo = Servo(18)
|
servo = Servo(18)
|
||||||
servicer = MotorServicer(motor, servo)
|
servicer = MotorServicer(motor, servo)
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ DESCRIPTOR = _descriptor.FileDescriptor(
|
|||||||
package='',
|
package='',
|
||||||
syntax='proto3',
|
syntax='proto3',
|
||||||
serialized_options=None,
|
serialized_options=None,
|
||||||
serialized_pb=_b('\n\x14SlamController.proto\"?\n\x0bSlamDetails\x12\x17\n\x0fmap_size_pixels\x18\x01 \x01(\x05\x12\x17\n\x0fmap_size_meters\x18\x02 \x01(\x05\"\x19\n\x07SlamRow\x12\x0e\n\x06points\x18\x01 \x03(\x05\"3\n\x0cSlamLocation\x12\t\n\x01x\x18\x01 \x01(\x05\x12\t\n\x01y\x18\x02 \x01(\x05\x12\r\n\x05theta\x18\x03 \x01(\x05\"8\n\x08SlamScan\x12\x0b\n\x03map\x18\x01 \x01(\x0c\x12\x1f\n\x08location\x18\x02 \x01(\x0b\x32\r.SlamLocation\"\x07\n\x05\x45mpty2`\n\x0bSlamControl\x12-\n\x13start_map_streaming\x12\x0c.SlamDetails\x1a\x06.Empty\"\x00\x12\"\n\x0estop_streaming\x12\x06.Empty\x1a\x06.Empty\"\x00\x62\x06proto3')
|
serialized_pb=_b('\n\x14SlamController.proto\"M\n\x0bSlamDetails\x12\x17\n\x0fmap_size_pixels\x18\x01 \x01(\x05\x12\x17\n\x0fmap_size_meters\x18\x02 \x01(\x05\x12\x0c\n\x04port\x18\x03 \x01(\x05\"\x19\n\x07SlamRow\x12\x0e\n\x06points\x18\x01 \x03(\x05\"3\n\x0cSlamLocation\x12\t\n\x01x\x18\x01 \x01(\x05\x12\t\n\x01y\x18\x02 \x01(\x05\x12\r\n\x05theta\x18\x03 \x01(\x05\"8\n\x08SlamScan\x12\x0b\n\x03map\x18\x01 \x01(\x0c\x12\x1f\n\x08location\x18\x02 \x01(\x0b\x32\r.SlamLocation\"\x07\n\x05\x45mpty2`\n\x0bSlamControl\x12-\n\x13start_map_streaming\x12\x0c.SlamDetails\x1a\x06.Empty\"\x00\x12\"\n\x0estop_streaming\x12\x06.Empty\x1a\x06.Empty\"\x00\x62\x06proto3')
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@@ -47,6 +47,13 @@ _SLAMDETAILS = _descriptor.Descriptor(
|
|||||||
message_type=None, enum_type=None, containing_type=None,
|
message_type=None, enum_type=None, containing_type=None,
|
||||||
is_extension=False, extension_scope=None,
|
is_extension=False, extension_scope=None,
|
||||||
serialized_options=None, file=DESCRIPTOR),
|
serialized_options=None, file=DESCRIPTOR),
|
||||||
|
_descriptor.FieldDescriptor(
|
||||||
|
name='port', full_name='SlamDetails.port', index=2,
|
||||||
|
number=3, type=5, cpp_type=1, label=1,
|
||||||
|
has_default_value=False, default_value=0,
|
||||||
|
message_type=None, enum_type=None, containing_type=None,
|
||||||
|
is_extension=False, extension_scope=None,
|
||||||
|
serialized_options=None, file=DESCRIPTOR),
|
||||||
],
|
],
|
||||||
extensions=[
|
extensions=[
|
||||||
],
|
],
|
||||||
@@ -60,7 +67,7 @@ _SLAMDETAILS = _descriptor.Descriptor(
|
|||||||
oneofs=[
|
oneofs=[
|
||||||
],
|
],
|
||||||
serialized_start=24,
|
serialized_start=24,
|
||||||
serialized_end=87,
|
serialized_end=101,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@@ -90,8 +97,8 @@ _SLAMROW = _descriptor.Descriptor(
|
|||||||
extension_ranges=[],
|
extension_ranges=[],
|
||||||
oneofs=[
|
oneofs=[
|
||||||
],
|
],
|
||||||
serialized_start=89,
|
serialized_start=103,
|
||||||
serialized_end=114,
|
serialized_end=128,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@@ -135,8 +142,8 @@ _SLAMLOCATION = _descriptor.Descriptor(
|
|||||||
extension_ranges=[],
|
extension_ranges=[],
|
||||||
oneofs=[
|
oneofs=[
|
||||||
],
|
],
|
||||||
serialized_start=116,
|
serialized_start=130,
|
||||||
serialized_end=167,
|
serialized_end=181,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@@ -173,8 +180,8 @@ _SLAMSCAN = _descriptor.Descriptor(
|
|||||||
extension_ranges=[],
|
extension_ranges=[],
|
||||||
oneofs=[
|
oneofs=[
|
||||||
],
|
],
|
||||||
serialized_start=169,
|
serialized_start=183,
|
||||||
serialized_end=225,
|
serialized_end=239,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@@ -197,8 +204,8 @@ _EMPTY = _descriptor.Descriptor(
|
|||||||
extension_ranges=[],
|
extension_ranges=[],
|
||||||
oneofs=[
|
oneofs=[
|
||||||
],
|
],
|
||||||
serialized_start=227,
|
serialized_start=241,
|
||||||
serialized_end=234,
|
serialized_end=248,
|
||||||
)
|
)
|
||||||
|
|
||||||
_SLAMSCAN.fields_by_name['location'].message_type = _SLAMLOCATION
|
_SLAMSCAN.fields_by_name['location'].message_type = _SLAMLOCATION
|
||||||
@@ -252,8 +259,8 @@ _SLAMCONTROL = _descriptor.ServiceDescriptor(
|
|||||||
file=DESCRIPTOR,
|
file=DESCRIPTOR,
|
||||||
index=0,
|
index=0,
|
||||||
serialized_options=None,
|
serialized_options=None,
|
||||||
serialized_start=236,
|
serialized_start=250,
|
||||||
serialized_end=332,
|
serialized_end=346,
|
||||||
methods=[
|
methods=[
|
||||||
_descriptor.MethodDescriptor(
|
_descriptor.MethodDescriptor(
|
||||||
name='start_map_streaming',
|
name='start_map_streaming',
|
||||||
|
|||||||
@@ -12,7 +12,9 @@ class SlamServicer(SlamController_pb2_grpc.SlamControlServicer):
|
|||||||
self.slam = slam.SlamStreamer(lidar_connection=lidar_connection)
|
self.slam = slam.SlamStreamer(lidar_connection=lidar_connection)
|
||||||
|
|
||||||
def start_map_streaming(self, request, context):
|
def start_map_streaming(self, request, context):
|
||||||
|
print('Slam THread: ' + str(slam_thread)')
|
||||||
if self.slam_thread is None:
|
if self.slam_thread is None:
|
||||||
|
print('initialising slam_thread')
|
||||||
# Don't bother creating and starting slam more than once.
|
# Don't bother creating and starting slam more than once.
|
||||||
self.slam.port = request.port
|
self.slam.port = request.port
|
||||||
self.slam.map_pixels = request.map_size_pixels
|
self.slam.map_pixels = request.map_size_pixels
|
||||||
@@ -24,4 +26,5 @@ class SlamServicer(SlamController_pb2_grpc.SlamControlServicer):
|
|||||||
def stop_streaming(self, request, context):
|
def stop_streaming(self, request, context):
|
||||||
if self.slam_thread is not None:
|
if self.slam_thread is not None:
|
||||||
self.slam.stop_scanning()
|
self.slam.stop_scanning()
|
||||||
|
self.slam = None
|
||||||
return SlamController_pb2.Empty()
|
return SlamController_pb2.Empty()
|
||||||
|
|||||||
Reference in New Issue
Block a user