Example #1
0
    def run_controller(self):
        """Start controller in a distinguish process
        """
        self.process = Process(target=self.vel_control)
        self.process.start()
        while not self.process.is_alive():
            continue

    def shutdown_controller(self):
        """Terminate process and clear other stuff
        """
        self.process.terminate()
        self.log.debug("Controller process was terminated")


if __name__ == '__main__':
    controller = VelocityController()
    controller.run_controller()
    planner_data = Manager().Namespace()
    planner_data.Xd = [1.0, 2.0, 3.0]
    planner_data.dXd = [0, 0, 1]
    robot_data = Manager().Namespace()
    robot_data.X_cur = [1, 5, 3, 4, 5, 6]

    controller.set_cur_state(planner_data, robot_data)
    sleep(2)
    print(controller.get_new_velocity())
    controller.shutdown_controller()
    print("Done")