RSS News

Complete!

The final seminar went off reasonably well, with a lot of my fellow students presenting some very interesting work. Unfortunately I could not make it to all of them, which I regret.

Also, my thesis has been submitted and is available in the downloads section, as well as the final seminar slides. I would like to thank everyone that helped or contributed in any way for all the support in making this year fantastic.

Triangulation Based Fusion

It seems that my implementation of TBF is working acceptably well on our hardware. Firstly, the actual triangulation between separate scans works fairly well, although unstable intersections are fairly common. This is mitigated through the use of a Sliding window, meaning that, at best case, 40 separate scans are used to triangulate a single landmark.

Also, data association is working well. To further refine the landmark's position, any landmarks within a small range of each other are considered the same and their positions are corrected as a function of the amount of triangulations used to define each one. This correction makes it possible to correct the position of the robot through the use of a localization algorithm.

Odometry working

After much time fighting with various algorithms for, what should be, a simple algorithm, I have finally got it working. As it turns out, it was working all along. The problem was the same problem that plagues almost all SLAM algorithms: odometric slip.

I have been testing my robot on my wooden floor at home. Now it may seem obvious that problems would arise from that, I had thought that having such low power and a very wide rubber-track that slip would not be outside of the expected range. I was wrong. I noticed that the tracks seemed to be moving almost imperceptibly faster than the robot was moving. A quick change in testing area and the problem fixed itself.

The implementation I have to chosen to go with includes a calibration method that deals with axis-to-wheel ration, as it seems almost impossible to get these details from the manufacturer.

Xbox controller

As it turns out, the Xbox controller is not appropriate for this kind of precise movement. The major problem is the bouncing of the joysticks. While they work really well for this kind of differential drive setup, when the joysticks are released they register a slight amount of movement on the negative side of the axis.

This is not a problem for the robots movement, but when considering that the control program has to do odometry updates in "chunks" there is a considerable problem as this slight movement in the opposite direction causes odometry to calculate the last movement in the wrong direction. This causes a rapid build-up of error.


As a result, I have abandoned the controller approach and am back to programming pre-determined routes.

Sensors P.S.

I have also built a program to allow me to control the robots with the Xbox Wireless Controller so as to be able to do test runs along a predetermined path. This will make debugging easier and faster as I will not have to guess the measurements. This will help tremendously with testing the algorithm for generating odometry readings.

Sensors

The sensors that came with the kit I currently have do not work with the TX controller which was ordered a bit after the original kit. For the TX we needed new "3 wire" ultrasonic sensors, which arrived last week. So far I have rebuilt reconfigured the robot and put the new sensors on. I am about to start testing them to determine their beam angle, range and range/accuracy degradation characteristics.

Also, we are expecting the new TX explorer kit to arrive next week, as well as new encoder motors which will allow me to make odometry calculations. Both of these types of data are integral parts of the SLAM process, and I am very excited to start coding some implementations for getting the most out of the new sensors and motors.

New site launched

And this is it. I decided to change my site to a framework I built last year as it makes making changes and progress updates a lot quicker and easier. Rather than editing hundreds of HTMLs to show a common link every time I add something, I now just use the management system built in.

So now all I need to do is create text files for the news feed and the site will dynamically build pages and links. A little more appropriate for a postgrad student.

NAVIGATION

NEWS

Complete!
The final seminar went off reasonably well, with a lot of my fellow students presenting some very interesting work. Unfortunately I could not make it to all of them, which I regret.

Also, my thesis...
 
Triangulation Based Fusion
It seems that my implementation of TBF is working acceptably well on our hardware. Firstly, the actual triangulation between separate scans works fairly well, although unstable intersections are fairl...
 
Odometry working
After much time fighting with various algorithms for, what should be, a simple algorithm, I have finally got it working. As it turns out, it was working all along. The problem was the same problem tha...
 
Xbox controller
As it turns out, the Xbox controller is not appropriate for this kind of precise movement. The major problem is the bouncing of the joysticks. While they work really well for this kind of differential...
 
Sensors P.S.
I have also built a program to allow me to control the robots with the Xbox Wireless Controller so as to be able to do test runs along a predetermined path. This will make debugging easier and faster ...
 
Sensors
The sensors that came with the kit I currently have do not work with the TX controller which was ordered a bit after the original kit. For the TX we needed new "3 wire" ultrasonic sensors, which arriv...
 
New site launched
And this is it. I decided to change my site to a framework I built last year as it makes making changes and progress updates a lot quicker and easier. Rather than editing hundreds of HTMLs to show a c...