1 / 66

Lego Robots

Lego Robots. We built many robots from Lego kits. We experimented with drives We experimented with sensors We experimented with “architectures’. You can buy old Lego for 10-40 dollars in USA. DRIVE SYSTEMS. ‘differential steering’ contrast to steering wheel balance

drockwood
Download Presentation

Lego Robots

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Lego Robots • We built many robots from Lego kits. • We experimented with drives • We experimented with sensors • We experimented with “architectures’

  2. You can buy old Lego for 10-40 dollars in USA

  3. DRIVE SYSTEMS • ‘differential steering’ • contrast to steering wheel • balance • other options: tanks, bicycles, etc

  4. Drive System • ratios and reduction—why? • gears: pro: efficient, accurate, strong con: need precise alignment, backlash • pulleys: pro: simplicity, flexibility con: slippage, poor durability • motor control: speed, direction, braking • note: Connector direction matters .

  5. Example Vehicle Design • Differentially-steered vehicle with pulley drive • See handout for construction details

  6. More advanced controls in microprocessors and FPGAs

  7. A Brief History of Robotics

  8. A Brief History of Robotics • Robotics grew out of the fields of control theory, cybernetics and AI • Robotics, in the modern sense, can be considered to have started around the time of cybernetics (1940s) • Early AI had a strong impact on how it evolved (1950s-1970s), emphasizing reasoning and abstraction, removal from direct situatedness and embodiment • In the 1980s a new set of methods was introduced and robots were put back into the physical world

  9. Why we apply Control Theory in robotics? • The mathematical study of the properties of automated control systems • Helps understand the fundamental concepts governing all mechanical systems (steam engines, aeroplanes, etc.) • Feedback: measure state and take an action based on it • Idea: continuously feeding back the current state and comparing it to the desired state, then adjusting the current state to minimize the difference (negative feedback). • The system is said to be self-regulating • E.g.: thermostats • if too hot, turn down, if too cold, turn up

  10. Control Theory through History • Thought to have originated with the ancient Greeks • Time measuring devices (water clocks), water systems • Forgotten and rediscovered in Renaissance Europe • Heat-regulated furnaces (Drebbel, Reaumur, Bonnemain) • Windmills • James Watt’s steam engine (the governor)

  11. Cybernetics • Pioneered by Norbert Wiener in the 1940s • Comes from the Greek word “kibernts” – governor, steersman • Combines principles of control theory, information science and biology • Sought principles common to animals and machines, especially with regards to control and communication • Studied the coupling between an organism and its environment

  12. 15 WHO WAS REALLY FIRST? Hammond and Miessner automaton: Seleno (1914) A phototropic dog Cybernetic Robotics Roberto Cordeschi, The Discovery of the Artificial, Kluwer Academic Pub. 2002

  13. W. Grey Walter’s Tortoise • “Machina Speculatrix” (1953) • 1 photocell, 1 bump sensor, 2 motor, 3 wheels, 1 battery • Behaviors: • seek light • head toward moderate light • back from bright light • turn and push • recharge battery • Uses reactive control, with behavior prioritization

  14. W. Grey Walter’s Tortoise

  15. Grey W. Walter makes use of psychological terms when he describes his machine as: • "spontaneous," • "purposeful," • "independent" • Robot is able to "recognize" itself and other individuals of the same species. • Robot is able to exhibit a food-searching instinct • (it automatically went towards its 'nest' to recharge its batteries when they were about to run out). • Walter admitted that all this could be seen as nothing but a series of tricks. • Nonetheless, an outside observer, let us say a biologist, would have used just this mentalistic terminology had he witnessed this behavior in real animals.

  16. Cybernetic Robotics Grey W. Walter: Machina speculatrix (1950) A photosensible tortoise It is nice to be a pioneer? Do you want to be a technology pioneer?

  17. Principles of Walter’s Tortoise • Parsimony • Simple is better • Exploration or speculation • Never stay still, except when feeding (i.e., recharging) • Attraction (positive tropism) • Motivation to move toward some object (light source) • Aversion (negative tropism) • Avoidance of negative stimuli (heavy obstacles, slopes) • Discernment • Distinguish between productive/unproductive behavior (adaptation)

  18. Artificial Intelligence Robots

  19. Artificial Intelligence • Officially born in 1955 at Dartmouth University • Marvin Minsky, John McCarthy, Herbert Simon • Intelligence in machines • Internal models of the world • Search through possible solutions • Plan to solve problems • Symbolic representation of information • Hierarchical system organization • Sequential program execution

  20. AI and Robotics • AI influence to robotics: • Knowledge and knowledge representation are central to intelligence • Perception and action are more central to robotics • New solutions developed: behavior-based systems • “Planning is just a way of avoiding figuring out what to do next” (Rodney Brooks, 1987) • Distributed AI (DAI) • Society of Mind (Marvin Minsky, 1986): simple, multiple agents can generate highly complex intelligence • First robots were mostly influenced by AI (deliberative)

  21. Shakey and others • At Stanford Research Institute (late 1960s) • A deliberative system • Visual navigation in a very special world • STRIPS planner • Vision and contact sensors

  22. Early AI Robots: HILARE • Late 1970s • At LAAS in Toulouse • Video, ultrasound, laser rangefinder • Was in use for almost 2 decades • One of the earliest hybrid architectures • Multi-level spatial representations

  23. Early Robots: CART/Rover • Hans Moravec’s early robots • Stanford Cart (1977) followed by CMU rover (1983) • Sonar and vision

  24. Basic idea of Braitenberg Vehicles reminder and new concepts

  25. Background • In Vehicles, Valentino Braitenberg describes a set of thought experiments in which increasingly complex vehicles are built from simple mechanical and electronic components. • Braitenberg uses these thought experiments to explore psychological ideas and the nature of intelligence. • Throughout the book, we see more intricate behaviors emerge from the interaction of simple component parts and simple behaviors

  26. V. Braitenberg Vehicles: Experiments in synthetic psychology (1984) “…We will tempted, then, to use psychological language in describing their behavior. And yet we know very well there is nothing in these vehicles that we have not put in ourselves. This will be an interesting educational game” V. Braitenberg - Vehicles: Experiments in synthetic psychology, Cambridge, MA; MIT Press, 1984

  27. Braitenberg Vehicles • Valentino Braitenberg (1980) • Thought experiments • Use direct coupling between sensors and motors • Simple robots (“vehicles”) produce complex behaviors that appear very animal, life-like • Excitatory connection • The stronger the sensory input, the stronger the motor output • Light sensor  wheel: photophilic robot (loves the light) • Inhibitory connection • The stronger the sensory input, the weaker the motor output • Light sensor  wheel: photophobic robot (afraid of the light)

  28. Example Vehicles • Wide range of vehicles can be designed, by changing the connections and their strength • Vehicle 1: • One motor, one sensor • Vehicle 2: • Two motors, two sensors • Excitatory connections • Vehicle 3: • Two motors, two sensors • Inhibitory connections Vehicle 1 Being “ALIVE” “FEAR” and “AGGRESSION” Vehicle 2 “LOVE”

  29. V. Braitenberg - Vehicles: Experiments in synthetic psycology, Cambridge, MA; MIT Press, 1984 • The vehicle's sensors exert an inhibitory influence on the motors. • Vehicle A, turns toward the light source and stops, when it is dose enough to the light source. i.e. as soon as the light stimulation is large enough to exert sufficient inhibitory activation. • Vehicle B is similarly inhibited, but it moves away from the source. inhibitory

  30. off on + + + + • vehicle 2B: coward • straight excitatory connections • vehicle 3A: love • straight inhibitory connections vehicle 2A: aggresive crossed excitatory connections excitatory

  31. MotorTest.java Modes of operation import josx.platform.rcx.*; class MotorTest { static final int STOP = 0; static final int RUN = 1; static final int FLOAT = 2; static int mode = STOP; static int power = 0; public static void main(String [] args) { setupButtonListeners(); while (true) { if (mode == RUN) { Motor.A.setPower( power ); // power in range [0, 7]. incremented with each press of View button. Motor.A.forward(); } else if (mode == STOP) { Motor.A.stop(); } else if (mode == FLOAT) { Motor.A.flt(); } } } ... (button listener code not shown) Single motor vehicle

  32. Mindstorms Light Sensor • why the LED? • sensor mode: raw vs. percent • I/0 graph, compared to mammal eyes • spectral response • sunlight vs incandescent vs fluorescent

  33. LightTest.java import josx.platform.rcx.*; class LightTest implements SensorConstants { public static void main(String [] args) throws InterruptedException { Sensor.S1.setTypeAndMode (SENSOR_TYPE_LIGHT, SENSOR_MODE_PCT); Sensor.S1.activate(); while (true) { int lightReading; if (Button.VIEW.isPressed()) { lightReading = Sensor.S1.readRawValue(); } else { lightReading = Sensor.S1.readValue(); } LCD.showNumber( lightReading ); } } } button LCD

  34. Complete Example: “Aggressive.java” import josx.platform.rcx.*; class aggressive implements SensorConstants { public static void main(String [] args) { int minBrightness = 100; final int gain = 12; Sensor.S1.setTypeAndMode (SENSOR_TYPE_LIGHT, SENSOR_MODE_PCT); Sensor.S1.activate(); Sensor.S3.setTypeAndMode (SENSOR_TYPE_LIGHT, SENSOR_MODE_PCT); Sensor.S3.activate(); for (int i = 0; i < 100; i++) { if (Sensor.S1.readValue() < minBrightness) { minBrightness = Sensor.S1.readValue(); } else if (Sensor.S3.readValue() < minBrightness) { minBrightness = Sensor.S3.readValue(); } Thread.sleep(20); } Motor.A.forward(); Motor.C.forward(); while (true) { int motorASpeed = (Sensor.S3.readValue() - minBrightness) / gain; int motorCSpeed = (Sensor.S1.readValue() - minBrightness) / gain; setMotorSpeed(Motor.A, motorASpeed); setMotorSpeed(Motor.C, motorCSpeed); } } aggressive Sensors S1 and S3

  35. Aggressive.java (continued) protected static void setMotorSpeed(Motor m, int motorSpeed) { if (motorSpeed < 1) { m.flt(); // important LCD.showNumber(-1); } else { if (motorSpeed > 7) { motorSpeed = 7; } m.forward(); m.setPower(motorSpeed); LCD.showNumber(motorSpeed); } } } motor floats Limit motor speed motor forward

  36. Observations • Closed loop control; lessens importance of mechanical imperfections (e.g. pulley slip). • The map is not the territory. • Make your own—robots and observations!

  37. Intelligent, Emotional behavior and the origins of Robot’s Control • Each of these imaginary vehicles in some way mimics intelligent behavior. • Each of them is given a name that corresponds to the behavior that it imitates; • – ”Fear”, ”Love”, ”Logic”, etc. • Our robots will have names such as « Quantum John » or « Fearful Qubit » or « Fuzzy Mary » to emphasize their brains and not only emotions.

  38. Simple Creatures

  39. Simple Creatures • Timid • the shadow seeker • one motor • one threshold light sensor, pointing up, on when in light and off in shadow. • Timid will run when it can ”see” the room lights, and stop when it cannot. • When the lights are turned on, Timid drives until it gets into shadow, at which point it stops

  40. Simple Creatures • Indecisive • the shadow edge finder • one motor • one threshold light sensor, pointing up, on when in light and off in shadow. • Indecisive drives forward until it gets to a shadow. • At this point, the threshold light sensor no longer sees the overhead lights and its output switches of. • The motor reverses and the creature runs back into the light. • Indecisive oscillates back and forth at shadow edges.

  41. Simple Creatures • Paranoid • the shadow-fearing robot • two motors • one threshold light sensor, pointing up, mounted on an arm sticking out forward, on when in light and off in shadow. • Paranoid drives straight forward until its threshold light sensor enters a shadow. • Then, triggered by the sensor, its left wheel reverses. • It swings around to the left until the protruding sensor has swung back out of the shadow. • At this point the left wheel returns to forward motion.

  42. Simple Creatures • Dogged • – the obstacle avoider • one motor • two touch sensors, one facing front and one back, each connected to a bumper. • or • flip-flop • When Dogged is started it runs either forward or backward. • When either the front or back bumper is pressed, the creature reverses direction. • Dogged changes direction every time either bumper gets pressed. • It will fall into a pattern of running quickly back and forth between two objects.

  43. Simple Creatures • Insecure • – the wall follower • two motors • whisker sensor, on when sufficiently bent and off otherwise (implement using a touch sensor and a strip). • inverter • Insecure slowly edges its way along walls and around the base of pillars.

  44. Simple Creatures • Driven • – the light seeker • two motors • differential light sensor, facing forward (implent it with two light sensors) • Driven moves towards a bright light by successive right and left turns. • It slowly wiggles its way towards light sources.

  45. More Complex Creatures

  46. MULTISENSORY T:Temperature O:Oxygen F:Food L T L L:Light O L F L L L:Light L L R F:Food F R O R O:Oxygen T R R T:Temperature

  47. More Complex Creatures • Multi-sensory • Persistent • – the light seeker with a collision algorithm • Attractive and Repulsive • – the leading and following pair • Consistent • – the four state turtle • Inhumane • – the mouse trap

More Related