Lecture 3, May 11, 2012 Review and Ideas for future Projects Projects with robots for teens. What we already discussed. 1. 2. 3. 4. Line following robots Y shaped lines for robots that drive to selected locations. Robots following walls on corridors. Algorithms for mazes: 1. 2. 3. 4. 5. 6. Right Wall Following Algorithm (RWFA) Left Wall Following Algorithm (LWFA) Deterministic Switch from from RWFA and LWFA based on mapping the known part of maze to memory. Variants of searching mazes to find an exit. Deterministic and probabilistic combinational behavior based on input – output matrix and multiplication of matrix by vector. Combinational and State Machine based Braitenberg Vehicles Analysis of a Braitenberg robot with memory S1 J S2 Q M1 K Q M2 S1 S2 LOGIC M1 M2 0= happy 1 =angry S1 S2 Q S1 J S2 K Q Q+ Q+ M1 M2 0 0 00 00 00 00 0 1 0 0 10 00 01 11 1 0 0 1 00 01 10 0 0 1 0 1 10 01 11 0 0 1 1 S1 1 0 S2 0 01 Q 11 00 Q+ 00 10 M1 11 0 M2 0 0 1 0 1 01 1 0 11 10 1 1 0 1 1 001 S1 1 S2 1 1Q Q+ 0 0 1 0 0 0 0 0 1 Analysis 1. Analyze how this behaves in room with no light. 2. Analyze how this behaves in room with light on floor, oriented towards robot. 3. Analyze how this behaves in a maze. 4. Draw snaphsots of movie of robot position , orientation and internal state in time 0= happy 1 =angry S1 S2 LOGIC M1 M2 Maze exit Wall is on the left Robots marks his motion for Left Wall algorithm in blue exit Robots maps its position in memory and now is back in the same point Robots marks his motion for Left Wall algorithm in blue exit Robot moves to other wall Robot starts left wall following algorithm (wall at left) X X exit Robots marks his motion for Left Wall algorithm in crosses Robot executes left wall following algorithm (wall at left) X X exit Robot executes left wall following algorithm (wall at left) X X X exit Robot executes left wall following algorithm (wall at left) X X X X exit Robot found the solution to exit by changing the wall in the corridor but still using the left wall following algorithm (wall at left) X X X X X X X X X X X X X X X X X X X X X X X X X exit Projects with robots for teens 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. Robot finding cans and bringing them to safe place. Robot attacking or escaping other robots. Robots boxing. Robots shooting one another. Robots fencing. Repeated Prisoner Dilemma for robots. Repeated Chicken for robots. Subsumption Architecture Maze Searching Genetic Algorithm Tree search Advanced Line Following SENSOR ARRAY 7 sensors Observe the order of variables from outside to the center MINIMUM DISTANCE BETWEEN SENSORS IS 1cm THE PRIORITY ENCODER Number of sensor as output 7 sensors as inputs Problem: Design such priority encoder as a circuit using Kmaps THE NO SURFACE LOGIC A B 0 0 C A B C NS signal = no line detected 0 1 0 1 0 0 NS signal = no line detected INPUTS TO THE MICROCONTROLLER NS signal = no line detected NS GS A2 A1 A0 STATE IN ACTION 1 X X X X No surface is detected Stop the motors 0 1 X X X No line is detected Execute the no line code (specially designed algorithm) 0 0 0 0 0 A detects the line Sharp turn left 0 0 0 0 1 B detects the line Sharp turn right 0 0 0 1 0 C detects the line Turn left 0 0 0 1 1 D detects the line Turn right 0 0 1 0 0 E detects the line Move left 0 0 1 0 1 F detects the line Move right 0 0 1 1 0 G detects the line Go straight 0 0 1 1 1 Forbidden state Software reset processor the How this algorithm based on sensors works? LINE FIND MODE Generalizations • • • • Wall following Vision based Wall following Labyrinth problems Can collecting tasks FLOW CHART RESULT AND CONCLUSION 1. The robot follows a line as demonstrated. 2. It effectively overcomes problems such as “barren land syndrome” and line breaks. 3. The hardware and software works as designed. APPLICATIONS OF LINE FOLLOWING IDEAS 1. Industrial automated equipment carriers 2. Automated cars. 3. Tour guides in museums and other similar applications. 4. Second wave robotic reconnaissance operations. LIMITATIONS 1. Choice of line is made in the hardware abstraction and cannot be changed by software. 2. Calibration is difficult, and it is not easy to set a perfect value. 3. The steering mechanism is not easily implemented in huge vehicles and impossible for non-electric vehicles (petrol powered). 4. Few curves are not made efficiently, and must be avoided. …LIMITATIONS 1. Lack of a four wheel drive, makes it not suitable for a rough terrain. 2. Use of IR even though solves a lot of problems pertaining to interference, makes it hard to debug a faulty sensor. 3. Lack of speed control makes the robot unstable at times. FUTURE SCOPE 1. Software control of the line type (dark or light) to make automatic detection possible. 2. “Obstacle detecting sensors” to avoid physical obstacles and continue on the line. 3. Distance sensing and position logging & transmission. Mechanical Designs of robots Robot that delivers stuff to locations 1. 2. 3. 4. We will compare robots A, B, C, D, E, F Robot can be prototyped with Lego NXT Then we can add components from Tetrix It is often faster, cheaper and better to design the robot from wood, plastic and metal by yourself and only use gears and motors with encoders from Tetrix. 5. We use this approach in our theatre. 6. Needs: 1. Doll grabbing (lifting) How to design 2. Linear motion 3. Base control mechanically robots that can grab some items and deliver to certain locations? Robot A 1. Deliver dolls to locations 1. Grabs an item 2. Releases the item 2. Can be used to deliver little robot actors to locations in robot theatre 3. Uses line following Robot takes some object (a doll) in place X and delivers it to the location in place Y Robot D • The same as before, robot delivers dolls to locations Robot B Robot B • Robot delivers dolls to locations, as before Robot C- to play volleyball 1. Robot plays volleyball Robot to play hockey Robot to play hockey Robot to play hockey Robot to play hockey Robot to play hockey Philosophy How to Design a Robot General Design Considerations • Effectiveness – Does the robot do what you want it to? – Speed & accuracy • Reliability – How often will it work? • Ease of Implementation – Balance complex, effective solutions with simple to build solutions – Faster implementation means that you have more time allowed for debugging, • and probably, it means less debugging Effectiveness Mechanical 1. – Bearing surfaces 2. – Stiffness 3. – Appropriate constraints on degrees of Freedom 4. – Gearing 5. – Speed 6. – Low mass / moment of inertia • Electrical 1. Multiple stages 2. Efficient use of inputs/outputs 3. Low power usage 4. Effective Motor use 5. Sensor placement /use Reliability Mechanical 1. – Stiffness 2. – Appropriate constraints on degrees 3. of freedom 4. – Simplicity • Electrical 1. Circuit modularity 2. Grounding 3. Shielding Ease of Implementation Mechanical 1. Off-theshelf parts 2. Simplicity 3. Design for loose tolerances • Electrical 1. Multiple stages 2. Board layout – related ccts on 1 board 3. Circuit modularity 4. Accessibility Grabbing Items Using some intelligence Tower of Hanoi Problem 1. Write the software for Tower of Hanoi Problem for a robot, with few pegs only. 2. Write the recursive software. Robot Theatre Projects from Lego Robots A piano-playing robot The piano-playing robot positions itself correctly in front of the piano (using a camera following a color target) and then plays with its two-fingered hand. Projects from Lego Robots 1. Smiley face also has a small camera that tracks colors so it can follow the orange target. 2. The mouth and eyebrows move using servo motors. 1. Smiley face robot chases the moving orange target. 2. The eyebrows and mouth move to show happy and sad. Robots for Autism Therapy Teleoperated bear developed at MU University of Hertfordshire UK Yale University University of Sherbrooke Sensors for TigerPlace to Help Older Adults Age Safely Basic Sensors Detection of Falls See also http://eldertech.missouri.edu hands head Personal computer PC Bluetooth connection GPU supercomputer The robot theatre concept • This generic situation, where the robot’s behavior is conditioned upon the input from the feature detectors connected to the camera, maps to a constraint satisfaction problem as described here. • The way this would work is that the human / camera / robot system would generate optimization and satisfiability problems, to determine how the robot’s effectors should fire, and these problems can be remotely solved using Orion. • For example, you could acquire a Hansen Robotics Einstein, sit it him on your desk, train a camera on your face, use an anger feature detector that causes the Einstein robot to laugh harder the angrier you get. BIBLIOGRAPHY • Programming and Customizing the PIC microcontroller by Myke Predko • PICmicro Mid-Range MCU Family Reference Manual by MICROCHIP • PIC Robotics, A beginner’s guide to robotics projects using the PICmicro by John Iovine …BIBLIOGRAPHY Websites referred… • The Seattle Robotics Society Encoder library of robotics articles • Dallas Personal Robotics Group. Most of these tutorials and articles were referred. • Go Robotics.NET, this page has many useful links to robotics articles. …BIBLIOGRAPHY • Carnegie Mellon Robotics Club. This is the links page with lots of useful resources • This page is called the “Micro-mouse Handbook” and an excellent tutorial for small scale robotics. • This is the main website of microchip. Thousands of application notes, tutorials & manuals can be found here.