Behaviour Based Robotics. Ryan Kenneth Clay Kamil Rytel Mert Gurten Jack Savory Chunfan Gao William Garret-Jones Miles Plaskett. Robots we use today. Automated production lines Robotic surgery Automated motor vehicle e.g. Mars Rover Cleaning robot e.g. Roomba Robotic lawnmower.
Ryan Kenneth Clay
Automated production lines
Automated motor vehicle e.g. Mars Rover
Cleaning robot e.g. Roomba
‘A machine capable of carrying out a complex series of actions automatically, especially programmable by a computer.’ (Oxford Dictionary)
An autonomous robot can make actions without direct user control. It has the ability of self-government.
Behaviour-based robots exhibit actions that are modelled by its environment.
The robot can ‘sense’ the world through the various sensors
Design a robot with the ability to respond to an artificially created environment. The robot has to:
work in an environment created by a projector
roam and detect ‘grass’ or ‘dirt’
explore 'grass'/'dirt' in order to ‘clean’ it up
avoid virtual (projected) and physical obstacles
Develop a software that would create the virtual world
User Interface: map creation and preview
Backend: blob detection and environment alteration
Initial idea of using Python
Implemented using OpenCV library for java
The blob detection
Uses Hough Circle Transform, a general technique for identifying the locations and orientations of certain types of features in a digital image.
When the circle is detected, green colour in that area is being removed, which simulates the 'dirt'/'grass' removal.
Completely new experience: work with a 'real world' robot – not just software simulation on the screen
Connection of the real world (robot) with the virtual reality (projected maps)
Dynamic alteration of the virtual world
Successful ending of the project despite the problems faced
Robots usage in programming teaching
Lego NXT can be easily programmed
It is faster and easier to program the robot, therefore to understand the problem and the code
Using robots (especially Lego NXT) can show that programming can be fun, not just boring code on the screen
Robotics is developing
Interaction with software
Different approaches, methodologies – a big field for research