from src import ui, Simulator WANT_UI = True if __name__ == "__main__": if WANT_UI: ui() else: sim = Simulator() sim.run()
if __name__ == "__main__": # Import model model = InvertedPendulum() # Set initial state [m, m/s, rad, rad/s] model.set_state(np.mat([[-0.3], [0.0], [0.1], [0.0]])) # Define controller controller = Control(model) # Set desired cart position (m) controller.set_desired_position(0.3) # Simulator sim = Simulator(model, controller) t, state_list = sim.simulate() # Plot data plt.figure() plt.subplot(2, 2, 1) plt.plot(t, state_list[:, 0]) plt.xlabel("Time (s)") plt.ylabel("x (m)") plt.title("Cart position") plt.grid() plt.subplot(2, 2, 2) plt.plot(t, state_list[:, 1]) plt.xlabel("Time (s)") plt.ylabel("xdot (m/s)") plt.title("Cart velocity")