STC Robot 2 Majd Srour, Anis Abboud Under the supervision of: Yotam Elor and Prof. Alfred Bruckstein...
-
Upload
drusilla-greer -
Category
Documents
-
view
219 -
download
1
Transcript of STC Robot 2 Majd Srour, Anis Abboud Under the supervision of: Yotam Elor and Prof. Alfred Bruckstein...
![Page 1: STC Robot 2 Majd Srour, Anis Abboud Under the supervision of: Yotam Elor and Prof. Alfred Bruckstein Optimally Covering an Unknown Environment with Ant-like.](https://reader035.fdocuments.net/reader035/viewer/2022081401/56649e675503460f94b621ed/html5/thumbnails/1.jpg)
STCRobot 2
Majd Srour, Anis AbboudUnder the supervision of: Yotam Elor and Prof. Alfred Bruckstein
Optimally Covering an Unknown Environment with Ant-like STC algorithm
![Page 2: STC Robot 2 Majd Srour, Anis Abboud Under the supervision of: Yotam Elor and Prof. Alfred Bruckstein Optimally Covering an Unknown Environment with Ant-like.](https://reader035.fdocuments.net/reader035/viewer/2022081401/56649e675503460f94b621ed/html5/thumbnails/2.jpg)
STC Robot
Motivation
Recently, it was shown that a single ant robot (modeled as FSM) can simulate the execution of any arbitrary of Turing machine.
Single ant robot, using pheromones can execute complex single-robot algorithms.
In this project, we used an algorithm that leaves Ant-like pheromones on a surface in order to solve the covering problem.
![Page 3: STC Robot 2 Majd Srour, Anis Abboud Under the supervision of: Yotam Elor and Prof. Alfred Bruckstein Optimally Covering an Unknown Environment with Ant-like.](https://reader035.fdocuments.net/reader035/viewer/2022081401/56649e675503460f94b621ed/html5/thumbnails/3.jpg)
STC Robot
The Environment
In order to leave pheromones-like traces, we used a phosphorescent glowing floor, that can be charged by light.
The robot charges the board using an UV LEDs which are installed on the back of the robot.
![Page 4: STC Robot 2 Majd Srour, Anis Abboud Under the supervision of: Yotam Elor and Prof. Alfred Bruckstein Optimally Covering an Unknown Environment with Ant-like.](https://reader035.fdocuments.net/reader035/viewer/2022081401/56649e675503460f94b621ed/html5/thumbnails/4.jpg)
STC Robot
Task Description
Given a phosphorescent glowing floor like this:
The robot divides the floor virtually into sub-cells of its size, and each 4 adjacent sub-cells are considered one cell.The Robot’s task is to cover the floor, passing exactly once over each sub-cell and to return to the same cell where it started.
![Page 5: STC Robot 2 Majd Srour, Anis Abboud Under the supervision of: Yotam Elor and Prof. Alfred Bruckstein Optimally Covering an Unknown Environment with Ant-like.](https://reader035.fdocuments.net/reader035/viewer/2022081401/56649e675503460f94b621ed/html5/thumbnails/5.jpg)
STC Robot
Last Project vs This project
On-line STC Board is saved in the
computer The computer “remembers” which
cells are visited.
Normal light conditions Floor is physically divided
into cells
Ant-like STC Board is not saved in the
computer The robot figures out which cells
are visited based on traces it left.
Darkness Floor is virtually divided
into cells
![Page 6: STC Robot 2 Majd Srour, Anis Abboud Under the supervision of: Yotam Elor and Prof. Alfred Bruckstein Optimally Covering an Unknown Environment with Ant-like.](https://reader035.fdocuments.net/reader035/viewer/2022081401/56649e675503460f94b621ed/html5/thumbnails/6.jpg)
STC Robot
The Robot
PIC-18 board with a Wireless module. Two main wheels, and two auxiliary wheels.
These enable it to perform an on-place 90 degree rotation. Wireless web camera directed up. A curved spherical mirror,
directed down. 4 UV (Ultraviolet) LEDs
Enable the robot to leave green tracks (dots) on the phosphorescent floor.
The Robot is built from Lego.
![Page 7: STC Robot 2 Majd Srour, Anis Abboud Under the supervision of: Yotam Elor and Prof. Alfred Bruckstein Optimally Covering an Unknown Environment with Ant-like.](https://reader035.fdocuments.net/reader035/viewer/2022081401/56649e675503460f94b621ed/html5/thumbnails/7.jpg)
STC Robot
Image Transformation (1)
Because the camera looks up to a spherical mirror, the image captured from the Robot’s camera is distorted, so we apply the same transformation as the previous project:
But in the darkness.
![Page 8: STC Robot 2 Majd Srour, Anis Abboud Under the supervision of: Yotam Elor and Prof. Alfred Bruckstein Optimally Covering an Unknown Environment with Ant-like.](https://reader035.fdocuments.net/reader035/viewer/2022081401/56649e675503460f94b621ed/html5/thumbnails/8.jpg)
STC Robot
Image Transformation (2)
Problem: Visited cells are green, obstacles are red. The transformation produces a grayscale image.
• We can’t distinguish between obstacles and visited cells
Solution: Filtering red light, and transforming the image
Identifying visited sub-cells. Filtering green light, and transforming the image
Identifying obstacles.
![Page 9: STC Robot 2 Majd Srour, Anis Abboud Under the supervision of: Yotam Elor and Prof. Alfred Bruckstein Optimally Covering an Unknown Environment with Ant-like.](https://reader035.fdocuments.net/reader035/viewer/2022081401/56649e675503460f94b621ed/html5/thumbnails/9.jpg)
STC Robot
Transformation - Example
![Page 10: STC Robot 2 Majd Srour, Anis Abboud Under the supervision of: Yotam Elor and Prof. Alfred Bruckstein Optimally Covering an Unknown Environment with Ant-like.](https://reader035.fdocuments.net/reader035/viewer/2022081401/56649e675503460f94b621ed/html5/thumbnails/10.jpg)
STC Robot
The Ant-like STC Algorithm
The ant-like version of STC is also an on-line algorithm, and is similar to the algorithm we used for the first project (like Incremental DFS).
Idea: Each time, visit the first new (not visited) obstacle-free
neighbor in counterclockwise order, starting with parent cell.
If all neighbors are visited, go back to parent cell.
The parent cell of , is the last cell the robot visited before his first visit to .
![Page 11: STC Robot 2 Majd Srour, Anis Abboud Under the supervision of: Yotam Elor and Prof. Alfred Bruckstein Optimally Covering an Unknown Environment with Ant-like.](https://reader035.fdocuments.net/reader035/viewer/2022081401/56649e675503460f94b621ed/html5/thumbnails/11.jpg)
STC Robot
Marking Sub-cells
Each time the robot decides to drive forward, it turns on the lights for a few seconds before proceeding, leaving a trace in one edge of the visited sub-cell.
Lights are on the back of the robot. Traces are left only on the edge of the sub-cell.
Why not keep lights on?
![Page 12: STC Robot 2 Majd Srour, Anis Abboud Under the supervision of: Yotam Elor and Prof. Alfred Bruckstein Optimally Covering an Unknown Environment with Ant-like.](https://reader035.fdocuments.net/reader035/viewer/2022081401/56649e675503460f94b621ed/html5/thumbnails/12.jpg)
STC Robot
Finding the Parent cell
The robot needs only to Scan the sub-cells in counterclockwise order, and Identify the transition between unmarked and marked
sub-cells. The parent cell is in that direction.
(From the STC paper.)
Upon entering a cell, the robot takes a photo of it, and finds its parent cell.
However, The robot marks only one edge of each visited sub-cell. This edge is shared with the neighboring sub-cell.
![Page 13: STC Robot 2 Majd Srour, Anis Abboud Under the supervision of: Yotam Elor and Prof. Alfred Bruckstein Optimally Covering an Unknown Environment with Ant-like.](https://reader035.fdocuments.net/reader035/viewer/2022081401/56649e675503460f94b621ed/html5/thumbnails/13.jpg)
STC Robot
Identifying visited sub-cells (1)
Because the robot turns on the light only upon driving forward, its path in a new cell can be one of the following four:
![Page 14: STC Robot 2 Majd Srour, Anis Abboud Under the supervision of: Yotam Elor and Prof. Alfred Bruckstein Optimally Covering an Unknown Environment with Ant-like.](https://reader035.fdocuments.net/reader035/viewer/2022081401/56649e675503460f94b621ed/html5/thumbnails/14.jpg)
STC Robot
Identifying visited sub-cells (2)
By examining all the possibilities where the robot is visiting a cell, we reached to the conclusion that only the 5 boxes below can be lit upon entering a cell:
![Page 15: STC Robot 2 Majd Srour, Anis Abboud Under the supervision of: Yotam Elor and Prof. Alfred Bruckstein Optimally Covering an Unknown Environment with Ant-like.](https://reader035.fdocuments.net/reader035/viewer/2022081401/56649e675503460f94b621ed/html5/thumbnails/15.jpg)
STC Robot
Identifying visited sub-cells (3)
From the above, we can conclude that: sub-cell 1 is visited iff one of the boxes 1 and 5 is lit. sub-cell 2 is visited iff one of the boxes 2 and 3 is lit. sub-cell 3 is visited iff box 4 is lit.
![Page 16: STC Robot 2 Majd Srour, Anis Abboud Under the supervision of: Yotam Elor and Prof. Alfred Bruckstein Optimally Covering an Unknown Environment with Ant-like.](https://reader035.fdocuments.net/reader035/viewer/2022081401/56649e675503460f94b621ed/html5/thumbnails/16.jpg)
STC Robot
Finding the green dots
Crop the relevant section of the image. Look for the square of pixels (of a dot’s size) that
has the highest average value. Looking for a square, instead of a single pixel allows
ignoring noise. If the maximum found value is under a threshold, then
the sub-cell was not visited. Black out the square, and look for a new dot.
![Page 17: STC Robot 2 Majd Srour, Anis Abboud Under the supervision of: Yotam Elor and Prof. Alfred Bruckstein Optimally Covering an Unknown Environment with Ant-like.](https://reader035.fdocuments.net/reader035/viewer/2022081401/56649e675503460f94b621ed/html5/thumbnails/17.jpg)
STC Robot
Rotation time calibration
Initial 90-degree rotation time = T. After sending the robot a command to rotate for
time T: We detect the actual angle the robot rotated in. Let’s say we got instead of 90. So next time, we
should give the robot a timestamp of .
![Page 18: STC Robot 2 Majd Srour, Anis Abboud Under the supervision of: Yotam Elor and Prof. Alfred Bruckstein Optimally Covering an Unknown Environment with Ant-like.](https://reader035.fdocuments.net/reader035/viewer/2022081401/56649e675503460f94b621ed/html5/thumbnails/18.jpg)
STC Robot
Angle Detection
We find 3 green dots in a row. We calculate the slope of the connecting line. We translate this slope into an angle.
![Page 19: STC Robot 2 Majd Srour, Anis Abboud Under the supervision of: Yotam Elor and Prof. Alfred Bruckstein Optimally Covering an Unknown Environment with Ant-like.](https://reader035.fdocuments.net/reader035/viewer/2022081401/56649e675503460f94b621ed/html5/thumbnails/19.jpg)
STC Robot
Precision
In the previous project, we only needed to identify whether or not a cell is an obstacle.
In this project, if a cell is not an obstacle cell, we need to identify visited and free sub-cells.
A sub-cell’s area is only fourth of a cell’s area. Moreover, we have markers only on the edges of
the sub-cells.
![Page 20: STC Robot 2 Majd Srour, Anis Abboud Under the supervision of: Yotam Elor and Prof. Alfred Bruckstein Optimally Covering an Unknown Environment with Ant-like.](https://reader035.fdocuments.net/reader035/viewer/2022081401/56649e675503460f94b621ed/html5/thumbnails/20.jpg)
STC Robot
Limitations
The camera we used, was not intended to work with low-light conditions, and it couldn’t identify the green light dots after less than a minute.
The system can be improved if we use different technique for identifying the green lights. Using better camera. Using better sensors.
![Page 21: STC Robot 2 Majd Srour, Anis Abboud Under the supervision of: Yotam Elor and Prof. Alfred Bruckstein Optimally Covering an Unknown Environment with Ant-like.](https://reader035.fdocuments.net/reader035/viewer/2022081401/56649e675503460f94b621ed/html5/thumbnails/21.jpg)
STC Robot
Results
Using a simple and cheap robot with limited sensing and computational capabilities, we succeeded in solving the covering problem using the Ant-like approach, where the robot leaves pheromones-like markers on the surface.
![Page 22: STC Robot 2 Majd Srour, Anis Abboud Under the supervision of: Yotam Elor and Prof. Alfred Bruckstein Optimally Covering an Unknown Environment with Ant-like.](https://reader035.fdocuments.net/reader035/viewer/2022081401/56649e675503460f94b621ed/html5/thumbnails/22.jpg)
STC Robot
Future Work
Using a better camera (preferably camera with a fully controlled integration time) to try covering a bigger environment.
Try to implement the whole algorithm on the robot itself, without the help of an external Computer.
Try solving more complex problems with ant-like approach solutions.
![Page 23: STC Robot 2 Majd Srour, Anis Abboud Under the supervision of: Yotam Elor and Prof. Alfred Bruckstein Optimally Covering an Unknown Environment with Ant-like.](https://reader035.fdocuments.net/reader035/viewer/2022081401/56649e675503460f94b621ed/html5/thumbnails/23.jpg)
STC Robot
Video:http://www.youtube.com/watch?v=ZkVvyl5Qmww
Project paper: https://docs.google.com/document/d/1WJP4UTn463Ihyu9oQoWivwV8-8DJsqS6gEC_7ST3_Ws/edit
MOVIE
![Page 24: STC Robot 2 Majd Srour, Anis Abboud Under the supervision of: Yotam Elor and Prof. Alfred Bruckstein Optimally Covering an Unknown Environment with Ant-like.](https://reader035.fdocuments.net/reader035/viewer/2022081401/56649e675503460f94b621ed/html5/thumbnails/24.jpg)
STCRobot 2
Majd Srour, Anis AbboudUnder the supervision of: Yotam Elor and Prof. Alfred Bruckstein
![Page 25: STC Robot 2 Majd Srour, Anis Abboud Under the supervision of: Yotam Elor and Prof. Alfred Bruckstein Optimally Covering an Unknown Environment with Ant-like.](https://reader035.fdocuments.net/reader035/viewer/2022081401/56649e675503460f94b621ed/html5/thumbnails/25.jpg)
STC Robot
BACKUP
![Page 26: STC Robot 2 Majd Srour, Anis Abboud Under the supervision of: Yotam Elor and Prof. Alfred Bruckstein Optimally Covering an Unknown Environment with Ant-like.](https://reader035.fdocuments.net/reader035/viewer/2022081401/56649e675503460f94b621ed/html5/thumbnails/26.jpg)
STC Robot
Finding the Parent Cell
“As long as the four sub-cells of the current cell are not all marked, the robot need only to scan the sub-cells in counterclockwise order and identify the transition between unmarked and marked sub-cells. The two sub-cells bordering this transition have an exterior edge in common. This edge is necessarily the boundary edge between the current cell and its parent cell in the spanning tree.”
p.84
![Page 27: STC Robot 2 Majd Srour, Anis Abboud Under the supervision of: Yotam Elor and Prof. Alfred Bruckstein Optimally Covering an Unknown Environment with Ant-like.](https://reader035.fdocuments.net/reader035/viewer/2022081401/56649e675503460f94b621ed/html5/thumbnails/27.jpg)
STC Robot
Debugging
Small inaccuracies stemming from the camera, the environment, a low light from the outside, or a deviation of the robot, can cause the robot to make wrong decisions.
We saved a copy of each taken snapshot, with a timestamp on it. Thus, being able to later track the robot’s path and spot the issues.
In addition, we added a two-step initial calibration.
![Page 28: STC Robot 2 Majd Srour, Anis Abboud Under the supervision of: Yotam Elor and Prof. Alfred Bruckstein Optimally Covering an Unknown Environment with Ant-like.](https://reader035.fdocuments.net/reader035/viewer/2022081401/56649e675503460f94b621ed/html5/thumbnails/28.jpg)
STC Robot
Initial Calibration (1)
Transformation Calibration: The robot is placed on the lab floor with light on. A snapshot is shown to the user. The user clicks on the camera lens’ center. The image is transformed, with the camera
center’s coordinates as parameters. The user is shown a transformed image and is
asked if it’s good.
The parameters are serialized and can be reused.
![Page 29: STC Robot 2 Majd Srour, Anis Abboud Under the supervision of: Yotam Elor and Prof. Alfred Bruckstein Optimally Covering an Unknown Environment with Ant-like.](https://reader035.fdocuments.net/reader035/viewer/2022081401/56649e675503460f94b621ed/html5/thumbnails/29.jpg)
STC Robot
Initial Calibration (2)
Neighbors Calibration: The user is shown a transformed image. The user clicks on the
12 vertices of the neighbor cells:
These are used to divide the snapshots to cells as accurately as possible.
The parameters are serialized and can be reused.