Artificial Intelligence And The E Puck Robot Computer Science Essay

Published: Last Edited:

This essay has been submitted by a student. This is not an example of the work written by our professional essay writers.

In this day and age, artificial intelligence become white-hot technology which plays more and more important roles in our daily life. The most popular application would be the robot that are widely and commonly used in all kinds of fields especially in laboratory research, medical, education, manufacturing and etc. the purpose of researching robots is to enhance the efficiency as well as assist people deal with mechanical work so that can decrease time-consuming and the heavy burdens. Moreover, to some dangerous environment, robots can replace real human to complete tasks, which can avoid unnecessary injuries and deaths. Furthermore, nobody can deny the fact that the robot perform much better than human in some high accuracy demand fields and hard physical labor more or less.

Many researchers devoted themselves to research the robot for their whole life. Thanks to these scientist, robotic field have made a lot of contributions to human society, meanwhile, with the spread of robots' technology, individuals not only use them to meet the high demand of human but also use it to develop field of education in order to encourage students to recognize robotic principles better.

The most typical example is e-puck robot that is the latest mini mobile robot initially developed at the Swiss Federal Institute of Technology in Lausanne (EPFL) for teaching purpose. Individuals can feel free to utilize any types of this software for free and EPFL has no responsibility for any damages bear on the use of these software. Up to now, the e-puck robot is already used in many research and educational institutes, while it is also commercially available from GCtronic. A dsPIC processor support e-puck's normal operation. Besides, it also contains a large number of sensors in its standard configuration which can help itself to achieve other important functions. Specifically, this desktop sized robot with a wide range of sensors including sound sensors, an accelerometer, IR proximity sensors and a camera. Moreover, it can communicate with a computer via Bluetooth so long as the Tiny Bootloader program installed in your PC and has sent transfer requirement successfully.

The e-puck robot was exploited to cater to a vast number of needs in our society, meanwhile, it contain lots of advantages that absolutely outweigh other congeneric Products. The primary one would be its design which is outstanding standard because of its modern and neat-the clear mechanical structure and frame of electronics. The secondary one is that the e-puck has its own simulation software called Webots simulation software which can easily perform simulation, programming and remote control of real robot. Furthermore, its flexibility cannot be ignored as e-puck's features provide a lot of possibilities with expansivity, processing ability and sensibility. And then, it is obvious that e-puck is portable, it is small and easy to put on anywhere next to a PC. Besides, communication based on Bluetooth without any cable make a comfortable operation and individuals can start their work almost everywhere. Also, it is suitable to repetitive use in the experiment as well as easy to be repaired to some extent while its price is not much expensive and universities can afford it commonly.

Up to now, the e-puck robot has already been widely used in various applications, including image processing, image extraction, IT mobile robotics, human-machine interaction, simulation programming, inter-robot connection, evolutionary systems, sound feature extraction, etc.

This project be composed of components that include the basic configuration of e-puck robots component, configuration of sensor component (camera and IR sensors), wall-following component, and obstacles avoidances component. The primary thing I have to do is to make sure the e-puck robot can be operated to run, shutdown and turnaround. And then, the sensor in the e-puck robot such as IR sensors and camera will be programmed in the MATLAB in order to guarantee e-puck robots can fulfill the expected motions in actual state in the experiment. Unless the e-puck robot is able to perform some easy actions such as LEDs on/off according to program embedded, more complex tasks can be considered based on simple functions. For instance, the algorithm related to avoiding obstacles will be embedded into the e-puck robot in order to perform obstacles avoidance via utilizing various sensors configured in the e-puck. After a series configuration, the e-puck robot can be regarded as a real human intelligent product which is used to deal with practical problems such as obstacles avoidance as well as wall-following, etc.

and Our system consists of few parts which include robot configuration, sensor

In this project, I firstly utilize a single e-puck robot to complete reactive behavior. The most typical example is to detect the object and response it through 8 IR sensors around the e-puck robot and the camera in the front of e-puck robots. Also, I use two(or even more according to the real needs) to perform more complex task s such as format the e-puck robot. In the multiple robots tasks, the role of leader must be represented by a exclusive e-puck robot that will perform as code embedded while the follower e-puck robot cannot be operate without leader because all motions the follower performed are based on the route or signals of the leader. When e-puck turn on camera sensor, the camera will collect images which are within the limits of object detection. After images are captured, the data related images will be processed to distinguish objects in the captured images as well as its results will be implemented in the next behavior of the e-puck robot(such as rotation, following or aggressive behavior), in a word, this can be regarded as procedure of response.

The figure 1.1 shows the overall system as below:

Figure 1.1 Overall systems

In this project, I create an accessible and effective algorithm to achieve the purpose of this project. This algorithm will be utilized and improvement for further enhancement. The main reactive behavior has shown as follow:

Leader and follower

1.3 Objectives and Aims

The purpose of this project is to exploit functions in the e-puck robots and have an acquaintance with flow of how to build e-puck tasks and communications. The main objectives as follows:

Create a new project after installing MPLAB IDE software and the C30GNU C compiler

Make a communication between PC and e-pucks via Bluetooth

Initialize a e-puck robot so that it can run under PC's control

bringing obstacles avoidance program into effect to the e-puck robot

applying obstacles detection and identification

applying runbreitenberg algorithm

implement simulation robot to testing program

integrating prepared program in the embedded e-puck in the real environment.

The aims of the project are described as follow:

a) organize the e-puck robot configuration to fulfill expected motions

b) Create prescriptive algorithm in the e-puck mission

c) utilize camera and 8 IR sensors as sensor in the e-puck mission

1.2 Issue Statement

e-puck sensors, the most typical standard are IR sensors and camera, play an essential role to perform searching and avoiding obstacles. Also, algorithms which can assist e-puck read and process information from sensor are an important part of e-puck task. Actually, many researches have been shown to utilize data coming from sensors successfully and make e-puck run in the expected routes as well. This technology is used frequently in many applications for a long period, especially in robotic field.

From former research, the e-puck robot has used a lot of basic sensor such as IR sensor and sound sensor. But these e-puck robots would be assorted as normal intelligent robot as this kind of e-puck is not fully capable to exactly distinguish changed or confused situation as well as they may cannot return any information correctly in the unfamiliar situation.

But from recent reaches, it seems that camera capture about e-puck is increasingly frequent used in various field, in another word, e-puck own ability to recognize objects even under confused environment. For instance, the e-puck robot can tell difference between various colours or shapes as real human eyes. Furthermore, they may fulfill more complex motion such as follow the light or aggressive behavior. This visible function with previous technologies and enhanced algorithms have been utilized by scientists so that the e-puck robot can work out more accurate which can make contribution to alleviate burdens on human in different place of work especially in robotic field.

What I need to do in this project is to display a totally intelligent e-puck robot with sense of sight and thought through using some anthropopathic algorithms such as path finding algorithm. Also, the application of these algorithms via establish a powerful man-machine conversation network so that e-puck robots perform successfully in unfamiliar environment which would be more advanced implements compare to pervious experiments in this field.

Well-done algorithms of the e-puck made a perfect robots that would demand cooperation with whole system needs. For example, the e-puck robot cannot represent successful action as expectation without some important algorithms as the aim of these algorithms is to assist the e-puck robot to recognize obstacles and select the optimal route to achieve destination.

1.4 Project Scope

This project actually concentrate on representing objects follower and obstacles avoidance which is exploited through some essential algorithms so that the e-puck robot can obtain exact orientation of objects. Basically, elements related orientation of the e-puck cannot be neglected because almost every function is in connection to these basic principles. That is to say, the main mission of this project is to develop algorithms which is related to determine position both objective and route.

Specifically, the whole flow of objective follower and obstacles avoidance is putted in an absolutely enclosed place together with objects which are detected as obstacles or leaders. In this project, I only exploit some basic and easy methods to achieve purposes as e-puck can fulfill various functions as long as individuals have in-depth study but that is really need a long period due to its complexity.

Basically, the entire system can be divided into the three main stages, which are connection configuration stage(aim to guarantee all configuration can communicate with each other, include PC to e-puck with Bluetooth), collecting sensor information stage, identification of obstacle location stage and treatment of various situations stage.

Each responsibility of different stage is describe as follow:

Stage number

Content of work

Connection configuration stage

-Getting start with e-puck program

-The Tiny Bootloader transfer program via Bluetooth

-Restart Bluetooth and check results

Collecting sensor information stage

-Guarantee all sensors can collect data from environment (check hardware and program a software)

Identification of obstacle location stage


Treatment of various situations stage.

-Process and calculate data

-Deal with facing environment according to results

1.5 Project Limitation

In this section, I will describe some limitations and assumptions in allusion to this project. Firstly, a single e-puck robot own only one camera which cannot turn a little bit angle at all. In other word, the e-puck robot is only able to detect objects in front of itself at anytime. Moreover, camera embedded on the e-puck cannot get high quality image compare to other current camera in our daily life, because of this point, blurred image will provide misleading data more or less, to some extent. Duo to this problem, I consider technology of edge detection to resolve the issue about identification of object . I unitize mainly white and black colour to describe object which in the enclosed space in this project as these can be detected easily via even inferior camera compared to other colours. And then, this camera of the e-puck is extremely suitable to curtained range of aimed objective. So that, to some long-distance task, the camera of e-puck is not fully capable of perform expected results which would be a main limitation of this project. It seems utilize proximity sensors is a good choice because they can help the e-puck to deal with limitation of the e-puck camera to some degree.

The e-puck robot control have to meet challenge as based on current faculties it is hard to direct control the e-puck robot, while the only way to operate the e-puck robot is to transfer program so that get an embedded e-puck. That is because there is no programmer device to edit the e-puck robots' microcontroller directly. So I cannot modify program immediately unless it is loaded in the e-puck, which led the speed of exploitation slow more or less as well as it create some difficulties to check whether programs are work as expectation. So it seems that this project would become a time-consuming work as this limitation and the response of the e-puck robot would be inefficient.

A room is needed to do this project as all situations in a indoor environment are easy to arrange while the changeable situations in the open air environment such as uneven floor, surface gathered water and weather may create disadvantaged effect on the results of data. In other word, to both follower and avoidance task, an enclosed environment in the room is required. Also, I establish a pure white background which can assist the e-puck robot discriminate surrounding more effective and clear. In this project, I utilize simple tool such as light, shaped paper and wall etc. to describe obstacles and leaders. And because of the feature of e-puck(running by wheels), smooth ground must be guarantee before starting experiment.

Sometime, the e-puck robot cannot filter routes, that is to say it don't know which route is the best and it will give priority to the action of random walk and then select a most accessible way according its current surroundings at that moment.

In this project, e-puck robots lock of communications with each other as they can extremely perform expected actions based on other e-puck's movement which near itself. More specifically, the e-puck robot in this task merely perform as program given, for example, if I want to format e-puck as a line shape, they will be not able to direct reach their destinations separately and one of them would only perform its mission based on former one. That is to say, the first e-puck has no any communication with the last one in this condition unless the first e-puck is not in the detected range of the last e-puck. Moreover, a single e-puck in the queue could not catch up with the former one unless it meet some obstacles which induce the former e-puck out of its detected range. That is also can be put into the group of no commutations among the e-puck robot.

Basically, the whole system of the e-puck in this project is attracted because it make great profit to robotic field. The technique used in this project is profound, for instance, programming with using some algorithms which can enable the e-puck robot to detect and recognize objects as obstacles or leaders and then avoiding or following them, respectively. The implement of these algorithms is essential for the development of robotic field.

1.6 Project Significant

The e-puck robot collect data from both IR sensor and camera in this project, which can enable e-puck robots to detect and identify objects accurately. Also, I utilize different two methods of following, which based on IR sensor and camera separately. The first one fulfill expected following motion via detecting object with IR sensor which is to search information 360 degree(it use the same principle with obstacles avoidance), while another method is to use camera to capture image, calculate data and execute as given results. Both of them can lead the e-puck robot to perform their role of follower.

Besides, it can be shown that leader detection, obstacles identification and obstacles avoidance by taking advantage of some crucial but basic algorithms. Otherwise, it is absolutely autonomous even multiple e-puck robots in the same task, they can collaborate quite well when they are in the face of the same environment together.

The algorithm used in this project own more merits rather than other type of robots since its less sensor used. it only use LANs, camera and IR sensors in the most situation which outweigh other systems in the simple and convenient aspect.

Furthermore, this project use MATLAB to edit source code to control the e-puck robot promote robots to show expected results. It is universal acknowledged that this software is widely acceptable tool which is easy to access , especially popular in the group who seek the easiest way to achieve purpose via simply programming. Besides of this, the implement of Bluetooth establish the communication between the e-puck robot and PC which form a wireless network in the whole design.

The e-puck robot have a relative new type of research methodology which provide a more wide platform to exploit vacancy in robotic field. This project just showed some basic contributions about the e-puck robot but it still can be used more or less for future enhancements as well.

It would be useful to some people who are interested in the similar aspect. Especially to beginners as all of these knowledge are not quite complex and difficult that can be used as foundation. It would also assist researchers to seek method step by step in order to get high-level concepts of the robotic field. And all algorithm used in this system promote the programmer obtain the entire frame of building dynamic robots as well.

1.7 Project Outcome

Simple following algorithm and obstacles avoidances algorithm have been done during this project which plays a important role in the mobile robot field. Specifically, the e-puck robot take advantage of camera to collect imagery information from surrounding environment via these algorithms. The purpose of this is to recognize objective and obstacles in the real world. Meanwhile, following algorithm support the e-puck robot to follow appointed object. While appointed object is detected by robots, the e-puck robot will run to meet that object but when it come across obstacles on the way to its destination, the e-puck robot would give priority to obstacles avoidance algorithm to avoid obstacles so that it can arrive appointed destination.

the e-puck robot is fully capable to represent all functions well in the reactive behavior task through integrating these simple but essential algorithms.