Robotics Intensive Gui Cavalcanti 1/10/2012 Overview • What is this place? • Who is this guy? • What have I gotten myself into? • What can I expect? • How do you design a robot, anyway? • What’s the plan? What is this place? What is this place? • Artisan’s Asylum, Inc. • Nonprofit community workshop • 31,000 square feet • Multiple craft areas – Welding, machining, metalworking, woodworking, electronics assembly, sewing, bicycle repair, and more • 20-25 classes a month Who is this guy? Who is this guy? • Gui Cavalcanti – Robotics Engineer and System Integrator, Boston Dynamics, 2007-2011 – Robotics Engineering, Franklin W. Olin College of Engineering, 2009 – Lab Manager and Research Assistant, Dr. Gill Pratt’s Biomimetic Robotics Lab, 2005-2009 – Research Assistant, Dr. David Barrett’s Intelligent Vehicles Laboratory, 2004-2005 – FIRST Robotics Team 422, 2000-2004 How I Got Started How I (Actually) Got Started Past Projects • • • • • • LS3 (BDI) BigDog (BDI) RiSE (BDI) PETMAN (BDI) Robot Tuna (Olin) Shorty George (Olin) • Ornithopter (RLG) • Sidewinder (Olin) • Serpentine (Olin) • Autonomous ATV (Olin) • Cyclone (Personal) • 5 FIRST Robotics (MLWGS) Past Projects Most Recent Project Who are you? Who Are You? • What’s your name? • What’s your background? • Why do you like robots? • What are you hoping to get out of the class? • What’s your favorite robot and why? What have I gotten myself into? A Grand Experiment + Public, project-based education A Grand Experiment, Cont. • LS3: $1,500,000 in components • PETMAN: $2,000,000 in components • BigDog: $500,000 in components • Robot Tuna: $30,000 in components • FIRST: $6,500 buy-in with donations A Grand Experiment, Cont. • Most of you will know more than I do in your areas of expertise A Grand Experiment, Cont. • Teamwork is necessary in robotics, but teamwork and education can sometimes be at odds – Amateurs defer to experts – It’s easier and less stressful to apply what you know than force yourself to do something new – Competition and deadline stress can get in the way of digesting and learning meaningful things What can I expect? From Yourself • You will get out what you are willing to put in. From Fellow Students • Respect • Help • Knowledge • Inspiration From Me • Responsiveness • Learning opportunities • Project organization • Responsibility • Trust What I expect of you My Expectations Of You • Respect for everyone involved, and their respective skill level • Openness to feedback • Lack of design defensiveness • Patience How do you design a robot, anyway? What is a robot? • My definition: – Autonomous physical agent capable of manipulating the world around it – Responds to sensory input – Makes decisions based on that sensory input Who is a roboticist? • Myth: Someone who does everything equally well and operates on their own • Reality: Someone who has mastery of their field within robotics, who has had significant exposure to the other fields, and can work as part of a team Robot Design • Many design styles feed into ‘robot design’ – – – – – – – Static mechanical design Dynamic mechanical design Electrical design Control system design Software design Sensing design System design • Each of the design styles in and of themselves are the subject of hundreds of Ph.D. theses each year. • All robots require elements of all of these design styles Static Mechanical Design • Design of load-bearing robotic structures • Straight out of a mechanical engineering textbook, though advances in materials and manufacturing processes are slowly changing the field Dynamic Mechanical Design • Design of moving parts – Actuation and power transmission sizing – Limb design – Hose and wire routing – Design for controllability • Most often dismissed form of robot design, because it’s really hard and people assume it’s largely a solved problem (like Static Mechanical Design) Electrical Design • Design of electrical control systems and power systems for electrical actuation – Robot controllers – Communications – Sensors – Actuator amplifiers • Largely regarded as black magic compared to programming and mechanical design • Is its own field, but can be ‘black boxed’ to some extent. Control System Design • Design of the behaviors of robots to make them usefully autonomous – Layered; for example: 1. Actuator control 2. Limb control 3. Localization 4. Behavior planning 5. Goal development – Can be completely independent from actually writing code • Most difficult and least understood area of robot design, for a number of different reasons • “Are we even smart enough to do this?” • Is its own field of study, but sprawls across multiple disciplines Software Design • Implementation of Control System Design on specific hardware • Many different levels, from firmware to main loop • Is its own well-defined field, like Mechanical Design Sensing Design • Selection of physical sensors and utilization of their data in a meaningful way – External sensors – Homeostasis sensors – Proprioception sensors • Can be thought of as an extension of electrical, control or mechanical design, but I think it’s significant enough to warrant its own design style System Design • How on earth do you have a working robot at the end of all of your disparate design cycles? – Sizing power systems to match actuation and other power load – Resolving volume, weight and component placement conflicts – Routing wires, hoses, structural members – Taking a high-level, informed view of many incredibly specialized fields – Managing all of the engineering subteams • Optimized parts DO NOT make for optimized systems What’s the plan? Robot 1: Robot Vending Machine • Purpose: Roam around the space selling snacks, developing habits • Requirements: – Vend snacks on a recurring, regular (read: Pavlovian) basis – Safely stop for all humans and obstacles – Be capable of rerouting (by retracing) around fixed obstacles – Follow a course that covers the entire Asylum – Look awesome – Play music and act in a way that does not inspire rampant vandalism Robot 2: Robotic Shop Vac • Purpose: Roam around the space cleaning the aisles and inspiring others to clean • Requirements: – Vacuum aisles as it patrols them – Be rideable? – Serve as a cleaning center for Asylum members – Safely stop for all humans and obstacles – Be capable of rerouting (by retracing) around fixed obstacles – Follow a course that covers the entire Asylum – Look awesome The Mission Approximate Schedule 1. Introductions, Brainstorming, Team Assignation 2. Programming and Control Intro and Kickoff 3. Demonstration of Control Systems 4. Top-Level Conceptual Design 5. Mechanical and Electrical Conceptual Design 6. Design Session, Preliminary Design Review 7. Design Session 8. Critical Design Review, Fabrication Plans 9-12. Fabrication Goals for Everyone • Participate in a programming and control system design exercise on a 4-person team • Participate in conceptual design and component selection for major subsystems • Participate in top-level design reviews • Participate in design integration meetings • Participate in one design team and one fabrication team Design & Fabrication Teams • Design Teams: – Use components selected during conceptual design exercises – Conduct detail design specific to one individual robot – Conduct design reviews of other robot team’s work – Create plans for fabrication teams • Fabrication Teams: – Fabricate robot based on design team plans – Debug design issues on the fly Team Dynamics – Either… Controls (Team 1) Programming (Team 2) Mech. Design (Team 1) Mech. Fabrication (Team 1) Elec. Design (Team 1) Elec. Fabrication (Team 1) Team Dynamics – Or… Controls (Team 1) Programming (Team 2) Mech. Design (Team 1) Mech. Fabrication (Team 2) Elec. Design (Team 1) Elec. Fabrication (Team 2) Design Team Roles • Systems Engineer (1 person): Manages the interaction between design teams, resolves inter-team conflicts • Controls Team (3 people): Designs top-level control system and line to successfully navigate Tyler Street, and creates controls flowchart for programming team • Mechanical Team (3 people): Designs frame and drivetrain components, and mounts for all supported equipment • Electrical Team (3 people): Develops the electrical diagram for the robot, designing the electronics box and selecting all major components, wire, and interconnects Fabrication Team Roles • Production Manager (1 person): Sets deadlines, keeps all fabrication teams on the same schedule, resolves design conflicts that cross fabrication team borders • Programming Team (3 people): Implements the system developed by the controls team on specific hardware, lays out lines to follow, debugs robots • Mechanical Team (3 people): Welds frame together, machines drivetrain components, assembles mechanical systems, widens holes/replaces parts/etc on the fly • Electrical Team (3 people): Builds out and wires electronics box, debugs electrical gremlins on the fly Comments? Questions? Requests? It’s go time.