Fix server, add dummy python controller.

This commit is contained in:
Piv
2019-11-14 18:50:26 +10:30
parent bd74ca3c66
commit 5024796785
3 changed files with 13 additions and 29 deletions

View File

@@ -14,7 +14,7 @@ servo_pin = 18
timeout_length = 3
motor = Motor()
servo = Servo()
servo = Servo(servo_pin)
class MotorServicer(motorService_pb2_grpc.CarControlServicer):
def __init__(self):
@@ -58,7 +58,7 @@ class MotorServicer(motorService_pb2_grpc.CarControlServicer):
self.motor.stop()
def start_server(self):
server = grpc.server(futures.ThreadPoolExecutor(max_workers=10))
server = grpc.server(futures.ThreadPoolExecutor(max_workers=8))
motorService_pb2_grpc.add_CarControlServicer_to_server(MotorServicer(), server)
server.add_insecure_port('[::]:50051')
server.start()

View File

@@ -2,10 +2,9 @@ print("Connecting to pi")
import grpc
from concurrent import futures
from .MotorServer import MotorServicer
from . import motorService_pb2_grpc
import random
from threading import Timer
import motorService_pb2_grpc
from motorService_pb2 import ThrottleRequest
import time
throttle = 0
timer = None
@@ -21,30 +20,15 @@ class ThrottleIterator:
def __next__(self):
if throttle > 1 or throttle < -1:
raise StopIteration
return throttle
time.sleep(1)
return ThrottleRequest(throttle=throttle)
def serve():
server = grpc.server(futures.ThreadPoolExecutor(max_workers=10))
motorService_pb2_grpc.add_CarControlServicer_to_server(
MotorServicer(), server)
server.add_insecure_port('[::]:50051')
server.start()
def resetThrottle():
global throttle
throttle = random.random() * 2 - 1
global timer
if timer is not None:
timer.cancel()
timer = Timer(10, resetThrottle)
serve()
timer = Timer(10, resetThrottle)
channel = grpc.insecure_channel('localhost:50051')
channel = grpc.insecure_channel('10.0.0.53:50051')
stub = motorService_pb2_grpc.CarControlStub(channel)
stub.SetThrottle(ThrottleIterator())
while True:
inp = int(input('Please enter a value for the throttle between -100 and 100'))
throttle = inp / 100

View File

@@ -1,7 +1,7 @@
# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
import grpc
import car.MotorControl.motorService_pb2 as motorService__pb2
import MotorControl.motorService_pb2 as motorService__pb2
class CarControlStub(object):