def main(): """ This code, which must run on a LAPTOP: 1. Constructs a GUI for my part of the Capstone Project. 2. Communicates via MQTT with the code that runs on the EV3 robot. """ # ------------------------------------------------------------------------- # Construct and connect the MQTT Client: # ------------------------------------------------------------------------- mqtt_sender = com.MqttClient() #Just a sender mqtt_sender.connect_to_ev3() # ------------------------------------------------------------------------- # The root TK object for the GUI: # ------------------------------------------------------------------------- root = tkinter.Tk() root.title('CSSE 120 Capstone Project Window') # ------------------------------------------------------------------------- # The main frame, upon which the other frames are placed. # ------------------------------------------------------------------------- main_frame = ttk.Frame(root, padding=10, borderwidth=5) main_frame.grid() # ------------------------------------------------------------------------- # Sub-frames for the shared GUI that the team developed: # ------------------------------------------------------------------------- teleop_frame, arm_frame, control_frame, sound_frame = get_shared_frames(main_frame, mqtt_sender) grid_frames(teleop_frame, arm_frame, control_frame, sound_frame) color_frame = shared_gui.get_color_frame(main_frame, mqtt_sender) camera_frame = shared_gui.get_camera_frame(main_frame, mqtt_sender) IR_frame = shared_gui.get_proximity_frame(main_frame, mqtt_sender) # ------------------------------------------------------------------------- # Frames that are particular to my individual contributions to the project. # ------------------------------------------------------------------------- # Done: Implement and call get_my_frames(...) my_frame = m3_get_my_frame(main_frame, mqtt_sender) # ------------------------------------------------------------------------- # Grid the frames. # ------------------------------------------------------------------------- color_frame.grid(row=0, column=1) camera_frame.grid(row=1, column=1) my_frame.grid(row=2, column=1) # ------------------------------------------------------------------------- # The event loop: # ------------------------------------------------------------------------- my_root = tkinter.Tk() my_root.title("Sprint 3 Ben personal Project") new_frame = ttk.Frame(my_root, padding=10, borderwidth=5) new_frame.grid() sprint3_frame = m3_get_sprint3_frame(new_frame, mqtt_sender) root.mainloop()
def get_shared_frames(main_frame, mqtt_sender): teleop_frame = shared_gui.get_teleoperation_frame(main_frame, mqtt_sender) arm_frame = shared_gui.get_arm_frame(main_frame, mqtt_sender) control_frame = shared_gui.get_control_frame(main_frame, mqtt_sender) sound_frame = shared_gui.get_sound_frame(main_frame, mqtt_sender) color_frame = shared_gui.get_color_frame(main_frame, mqtt_sender) proximity_frame = shared_gui.get_proximity_frame(main_frame, mqtt_sender) camera_frame = shared_gui.get_camera_frame(main_frame, mqtt_sender) return teleop_frame, arm_frame, control_frame, sound_frame, color_frame, proximity_frame, camera_frame
def get_shared_frames(main_frame, mqtt_sender): teleop = shared_gui.get_teleoperation_frame(main_frame, mqtt_sender) arm = shared_gui.get_arm_frame(main_frame, mqtt_sender) control = shared_gui.get_control_frame(main_frame, mqtt_sender) sound = shared_gui.get_sound_frame(main_frame, mqtt_sender) color = shared_gui.get_color_frame(main_frame, mqtt_sender) camera = shared_gui.get_camera_frame(main_frame, mqtt_sender) proximity = shared_gui.get_proximity_frame(main_frame, mqtt_sender) return teleop, arm, control, sound, color, camera, proximity
def get_shared_frames(main_frame, mqtt_sender): teleop_frame = shared_gui.get_teleoperation_frame(main_frame, mqtt_sender) arm_frame = shared_gui.get_arm_frame(main_frame, mqtt_sender) control_frame = shared_gui.get_control_frame(main_frame, mqtt_sender) drive_systems_frame = shared_gui.get_drive_systems_frame( main_frame, mqtt_sender) sound_system_frame = shared_gui.get_sound_system_frame( main_frame, mqtt_sender) camera_frame = shared_gui.get_camera_frame(main_frame, mqtt_sender) return teleop_frame, arm_frame, control_frame, drive_systems_frame, sound_system_frame, camera_frame
def get_shared_frames(main_frame, mqtt_sender): teleop_frame = shared_gui.get_teleoperation_frame(main_frame, mqtt_sender) arm_frame = shared_gui.get_arm_frame(main_frame, mqtt_sender) control_arm = shared_gui.get_control_frame(main_frame, mqtt_sender) sensor_frame = shared_gui.get_sensor_frame(main_frame, mqtt_sender) soundsystem_frame = shared_gui.get_soundsystem_frame( main_frame, mqtt_sender) infrared_frame = get_m2_personal_infrared_frame(main_frame, mqtt_sender) camera_frame = shared_gui.get_camera_frame(main_frame, mqtt_sender) return (teleop_frame, arm_frame, control_arm, sensor_frame, soundsystem_frame, infrared_frame, camera_frame)
def get_shared_frames(main_frame, mqtt_sender): teleop_frame = shared_gui.get_teleoperation_frame(main_frame, mqtt_sender) arm_frame = shared_gui.get_arm_frame(main_frame, mqtt_sender) control_frame = shared_gui.get_control_frame(main_frame, mqtt_sender) drive_system_frame = shared_gui.get_drive_system_frame( main_frame, mqtt_sender) sound_system_frame = shared_gui.get_sound_system_frame( main_frame, mqtt_sender) ColorSensor_driving_frame = shared_gui.get_ColorSensor_driving_frame( main_frame, mqtt_sender) IR_driving_frame = shared_gui.get_IR_driving_frame(main_frame, mqtt_sender) camera_frame = shared_gui.get_camera_frame(main_frame, mqtt_sender) return teleop_frame, arm_frame, control_frame, drive_system_frame, \ sound_system_frame, ColorSensor_driving_frame, IR_driving_frame, \ camera_frame
def grid_camera_frames(frame, sender): camera_frame = shared_gui.get_camera_frame(frame, sender) camera_frame.grid(row=2, column=2)