Question? Leave a message!

Introduction to Robotics

Introduction to Robotics 27
ImogenCameron Profile Pic
Published Date:14-07-2017
Website URL
Robotics Lecture 1: Introduction to Robotics See course website ajd/Robotics/ for up to date information. Andrew Davison Department of Computing Imperial College LondonLecture Plan Most weeks will consist of a 1 hour lecture (Monday 2pm, 308) and a compulsory 3 hour practical session (Monday 3–4pm, and Wednesday 9–11am, 219). There may some variations from week to week which will be fully detailed on the course website and announced in lectures. This week there will be a two hour lecture today, and a two hour practical on Wednesday. Next week, there will be a two hour lecture/tutorial on Monday and no practical on Wednesday (due to Commemoration Day). 1. Introduction to Robotics and Robot Motion 2. Mobile Robotics 3. Sensors 4. Probabilistic Robotics 5. Monte Carlo Localisation 6. Place Recognition and Occupancy Mapping 7. Simultaneous Localisation and Mapping 8. Review and CompetitionRobotics: An Inter-Disciplinary Field Robotics integrates science and engineering, and overlaps with many disciplines: • Artificial Intelligence • Computer Vision / Perception • Machine Learning / Estimation / Inference • Neuroscience • Electronic / Mechanical Engineering In fact the differentiation between these fields is sometimes artificial. I recently heard someone (Greg Dudek) wonder whether robotics is the new physics? An umbrella science of the synthetic and interactive... • In this course the emphasis will be largely pragmatic.What is a Robot? A physically-embodied, artificially intelligent device with sensing and actuation. • It can sense. It can act. • It must think, or process information, to connect sensing and action. • Pixels to torques...What is a Robot? • Is a washing machine a robot? Most people wouldn’t say so, but it does have sensing, actuation and processing. • A possible distinction between appliance and robot (David Bisset): whether the workspace is physically inside or outside the device. • The cognitive ability required of a robot is much higher: the outside world is complex, and harder to understand and control. • What about a modern car? Or smartphone? Are they becoming robots?The Classical Robot Industry: Robot Arms • The most widely-used robots today are industrial robot ‘arms’, mounted on fixed bases and used for instance in manufacturing. • The task of a robot arm is to position an end-effector through which it interacts with its environment. • Most operate in highly controlled environments.Robots for the Wider World • They need perception which gives them a suitable level of understanding of their complex and changing surroundings.A Fully Autonomous Robot for the Home? There is a new wave of advanced mobile robots now aiming at much more flexible robots which can interact with the world in human-like ways. Over recent years this has again become the current goal of significant research teams; e.g. Willow Garage in the USA. See the video at from Stanford’s Personal Robotics Program.Advanced ‘Real-World’ Manipulation • Laundry-folding robot from UC Berkeley / Willow Garage • Learning from Large-Scale Interaction / Google deep-learning-for-robots-learning-from.htmlOur Focus: Mobile Robots • A mobile robot needs actuation for locomotion and sensors for guidance. • Ideally untethered and self-contained: power source, sensing, processing on-board (return to charging station? off-board computing? outside-in sensing?) • Required competences include: • Obstacle avoidance • Localisation • Mapping • Path planning • As well as whatever specialised task the robot is actually trying to achieveMobile Robotics Applications Field Robotics • Exploration (planetary, undersea, polar). • Search and rescue (earthquake rescue; demining). • Mining and heavy transport; container handling. • Military (unmanned aircraft, land-based pack-bots, insect robots). Service Robotics • Domestic (Vacuum cleaning, lawnmowing, laundry, more general clearing and cleaning...?). • Medical (surgical robots, remote doctor, hospital delivery, helping the elderly). • Transport (Autonomous cars, parcel delivery). • Entertainment (Sony AIBO, Lego Mindstorms, Robocup competition, Parrot AR Drone, many others).Autonomy and Processing for Mobile Robotics Level of autonomy: 1. Teleoperation (Remotely-Operated Vehicle ROV, e.g. Robot Wars, mine clearing). 2. Semi-autonomous (e.g. Mars rovers, humanoids). 3. Fully autonomous (Roomba, Grand Challenge vehicles). Computing requirements: • Embedded processing: specialised or general PC architecture? GPU, FPGA, etc. • Computer vision in particular can be very computationally expensive.Robotics: Requirements 1. Essential geometry (vectors, rotations, trigonometry). 2. Essential probability theory. 3. Programming: you will write a lot of code in Python. 4. Willingness to work with robot kit hardware, which is not always. reliable.Robotics: Learning Outcomes By the end of the course you should understand: 1. The defining properties of a robot: sensing and action, linked by processing. 2. An overview of the practical issues of modern-day mobile robotics. 3. Robot locomotion methods, particularly wheel configurations and uncertainty in motion. 4. Tuning a basic motor controller; 2D path planning. 5. The use of simple sensors in reactive, behavioural programming. 6. The key concepts of advanced outward looking sensors such as sonar and vision. 7. The essentials of probabilistic techniques in robotics; probabilistic localisation and SLAM. 8. Techniques for robot programming in Python.Robotics: A Practical Course In the first practical, in groups you will be given a robotics kit which you will keep throughout term to work on practical exercises every week. We will use these kits to build mobile robots and implement techniques such as: • Wheeled configurations and uncertainty in movement. • Using simple sensors to implement reactive behaviours. • Investigating the characteristics of advanced sensors like sonar. • Implementing a probabilistic localisation filter and precise waypoint navigation. • Place recognition and free space mapping.Raspberry Pi Robotics As we started in 2014, this year we will base the practical work around the Raspberry Pi single board computer, using ‘BrickPi’ boards to interface with Lego motors and sensors (rather than using the Lego NXT Brick). This has many advantages; including: • Flexible programming in Python/Linux and all sorts of open source tools are available. • Decent processing power and much more flexibility in programming. • Wi-Fi connection to a PC. • And new for 2015: better motor and sensor control via our new custom controller, and rechargeable battery packs.Robotics: Coursework and Assessment The coursework component is based on cumulative assessment of achievement in the practical sessions and there will be no submission of written reports. You will be set a practical task each week, most of which (and each practical sheet will very clearly say which) will be ASSESSED. • We will ask you all to organise yourself into practical groups of 4–5 members depending on final numbers; we need people to commit to the course at this point. • Each assessed practical exercise will have a number of well-defined objectives with a specified number of marks for each. Most of these objectives involve practical demonstration of your robots or oral explanation of results. • We will mark these exercises by visiting all groups at the start of the next week’s practical session, where each group must demonstrate their robot and discuss with me or a lab assistant. • We will check attendance in each group at the assessments and will ask questions to make sure each group member has been involved.Robotics: Coursework and Assessment • The total marks from the assessed practicals will form your overall coursework mark for Robotics. • No extra written coursework will be set. • All members of a group will receive the same mark by default (unless we have a strong reason to believe that certain members are not doing their share of work). • Coursework marks in Robotics are worth the same as in most courses — i.e. only around 15% of the total marks available for the whole course. is a lot of work. But this is for a good reason. The exam will be designed to tie in closely with the coursework, and those members of groups that have made a good effort during the term have historically done very well on the exam. • Previous years’ exam papers are a good starting point for seeing what the style of questions will be, but every year the exam will change to reflect the current lecture and practical content of the course.Robotics: Competition On the final day of the course (30th November), we will have a competition between the groups, testing the performance of the robots developed for the final practical exercise. See the course website for pictures and videos from previous years’ competitions ...but this year’s challenge will be different again See videos at ajd/Robotics/index.html. Extra Information • Robotics course web page (will carry course timetable, notes, practical sheets, extra handouts and other information): ajd/Robotics/index.html • You should not need to buy any books, but if you want some more background we can recommend the following: • ‘Probabilistic Robotics’, Sebastian Thrun, Wolfram Burgard and Dieter Fox • Also see relevant free online courses, e.g. from Udacity.