Friday, October 30, 2009

Occam Razor

After two days of work we implemented the Passive mode on the mini-laptop. And here a crazy thing happened.. the estimation procedure worked fine with the range measurements alone, it worked fine with the odometry alone, but, when we tried to put the sensor on the robot it didn't work at all. .. after some unspeakably rude actions, using the Occam razor, we figured out that the source of such a mess was the EM interference of the iRobot on the Cricket clock. We investigated that and we defined as 10 cm the height where the sensor should be placed . We did a basic drawing of the mounting mechanism. We should re-look into the callback stuff now. And we should develop a outliers rejection procedure for the ones still remaining.

Last, a new Cricket batch is arrived!

fijn weekend

iRobot doing an 8-pattern

Wednesday, October 28, 2009

Callback functions, aka our evil fellows

Today I continued to implement in a nice way the passive mode. I wanted to have a connection over tcp/ip with the Desktop PC, but I figured out that if the sending frequency is too high, the network is not reliable.. I am looking forward for the wifi router.
I figured also out, after two days that.. Matlab is very bad using the callback functions! .. my idea was simple, every sampling time Matlab should implement a controller, I used the timer function; while, whenever a measurement is available Matlab should estimate the state, I used the callback function. Separately they work pretty OK, but.. when I tried to mix them together.. caboom.. Matlab cuts the measurements and it mess up everything. So, either I make the rs working on the Cricket or I change with an easier simple timer.

mmm..

Lab dismissed for the day.

Tuesday, October 27, 2009

Towards autonomy

Small steps towards autonomy: frustrated by the active mode, I implemented a passive mode on the mini-laptop. So our robots will have complete autonomy.. yeah! So far, I decided for a callback/timer solution for estimation/control, and it is working ok if the robot is going straight. We do have problems if the robot is turning (the filter doesn't catch the motion of the robot, basically because it slips --> to check). Technically, I put the rs as interface between the mini-laptop and the irobot, it works smoothly; I implemented a UKF (which is still to refine and we should put this together with a Multi-lateration for "bad" situations) .. The rs is not working for the Cricket motes, but with the mini-laptop, the serial connection works much better anyway.

Last but not least: cables and connectors have arrived for the external power systems for the Cricket motes. Ron is going to work at this within this week.

have a nice night folks, :P

Friday, October 23, 2009

Problems, problems, problems

Too many problems today. Just to summarize most of the problems that we have been encountering in the past weeks I can say that most of them boil down to the serial port connections. I still have to figure which is the component that fails, either the serial to usb conversion, or the usb hub, or most likely the Matlab interface, but anyway, the ports fail quite often.
Without reliable ports, no reliable timing and localization is possible; too many useful messages are discarded and the whole system will not work.
Today two of the ports fail after less than twenty minutes, so they started to report the upcoming messages without the proper temporal order. Usually you can deal with this closing and reopening the port; unfortunately Matlab crashed during the reopening attempt.

If this was not enough, I don't think the clocks on the sensor nodes are reliable.

We need to have a better strategy for the serial port connections, using something else rather than Matlab and understand which component is the real problem. We should control the beacons, so we could chirp on specified time instants.. therefore we would not need the clock of the sensors.

That's all for the week, have a nice weekend.

Wednesday, October 21, 2009

New Bachelor Project

A new project has just started. Four bachelor students from Mechanical Engineering are helping me and Tamas to set up the experimental testbed in the new DCSC Robotics Laboratory.
Here three of them and I with one of the robots.

So far we have placed the sensor networks for localization, implemented a routine in Matlab for a simple multilateration and we have started to command one robot. Under, a close look to one of our sensor and to our playground.