-
Notifications
You must be signed in to change notification settings - Fork 0
Home
- Teams should develop a URDF model for the LMS200/291. You may assume the mass of the LIDAR to be uniform.
- Add the URDF model to the Jackal Description.
- Define an appropriate TF in which to publish 'laser scan' data from the SICK.
- Use the SICK Toolbox wrapper to publish LIDAR data in this reference frame.
- Demonstrate operation of the Jackal and LIDAR using rviz.
- You should assume you will have no Wi-Fi connectivity. Start the Jackal moving randomly or following some pattern for a predefined time.
- Document your approach, use of the package, and describe your strategy on the github wiki page.
- Present a map of a floor on the EERC. Include this map on your github wiki page.
- Demonstrate operation of your mapping program.
During the course of this project, we developed two methods of interpreting movements for the Jackal which were both based on the SICK LIDAR lm2xx input. These algorithms are centered around the idea of following a wall around the building.
By Akhil Kurup Source: jackal_move.py
Uses scan data from the SICK-LMS200 to detect proximity from/to a wall and decide the next step to be taken. 3 major points are scanned: forward (90), left (170) and right (10). If the robot gets close to walls, the left and right points go below 0.9mtr and it turns the other way. If a wall is encountered dead ahead, it scans left and right and makes a decision to turn based on distance from obstacles.
- Blind spots which sometimes allow for confusion and/or collision(s)
- Use controller to rescue the robot from the wall
- Jerky behavior
Resulting Map:
By Ian Wakely Source: wall_avoid.py
Uses quadratic functions to evaluate the importance of a particular range value read from the LIDAR and evaluates every points along the scan to come to a desired action of avoidence. It multiplies each of the range values by speed and turning coefficiencts and sums the results into a resulting turning and speed action.
- Unable to get out of perfect dead ends where the corredor is perfectly square with no door or other items
- Adding smaller item into one of the corners, like a trashcan, to make it not as perfectly square
- Use controller to turn the robot around
When the area in front of the robot is more open, then it will increase its speed and slow down when it is less open for tight maneuvering.
When the area to the left is more occupied, turn right. When the right side is more occupied, turn left.
Resulting Map: