""" Capstone Team Project. Code to run on a ROBOT (NOT a laptop). This code defines the RoseBot class (the top-level class for a robot). In the code that you write for making a robot do things, you should construct a RoseBot object and then use it as in this example: ------------------------------------------------ import libs.rosebot as rb def main(): robot = rb.RoseBot() robot.drive_system.go(100, -40) robot.touch_sensor.wait_until_pressed() etc ------------------------------------------------ Authors: Your professors (for the framework) and PUT_YOUR_NAME_HERE. Winter term, 2019-2020. """ # TODO: 1. In the above, put the names of ALL the members of your team, # and make sure that ALL the members of your team READ this module! # ----------------------------------------------------------------------------- # TODO: 2. Note below how to write an IMPORT statement # that imports a module that is in the LIBS sub-folder. # Change this _TODO_ to DONE after you have seen how to do it. # ----------------------------------------------------------------------------- import libs.rosebot_drive_system as drive import libs.rosebot_touch_sensor as touch import libs.rosebot_arm_and_claw as arm ############################################################################### # RoseBot. ############################################################################### class RoseBot(object): """ The top-level class for making a robot do things. """ def __init__(self): """ Constructs instances of each of the sub-systems of a Snatch3r robot and sets instance variables to them. """ # --------------------------------------------------------------------- # TODO: 3. Once you understand the following code # (ASK QUESTIONS AS NEEDED), change this _TODO_ to DONE. # --------------------------------------------------------------------- self.drive_system = drive.DriveSystem("B", "C") self.touch_sensor = touch.TouchSensor(1) self.arm_and_claw = arm.ArmAndClaw(self.touch_sensor)