20 May

Over the last week I've implemented relative observation and communication support as well as a random data generator for the simulation.Relative observations mean that robots can measure not only distances & bearings of landmarks, but also of other robots. Enabling communication in the simulatio...

16 May

After wrapping up testing the accuracy of NTP, this week I worked on creating new Optitrack Markers for the two new robots and landmarks we plan to add. Creating our own custom markers provides a cheaper, faster, and more flexible alternative to ordering genuine Optitrack markers.3D Printed Mark...

16 May

Cut-off strategy means to use only first N observations to do polyak averaging, and stop updating landmark after N observation.The cut-off strategy has two advantages:More robust than traditional polyak averaging in both global observation model and intermittent observation model Able to...

09 May

Last week I tested the ping between computers on the same local network and found that the round trip time of a packet inconsistently ranged between 3.4 ms to 588 ms. Typically, packets sent within the same local network should be less than 10 ms, but for some unknown reason the latency in our netw...

09 May

This week I've been revisiting the online EM for Hidden Markov Model [1]. The formulation between HMM and latent model is similar but there's a little different. I've also developed an performance evaluator to quantify and optimize the performance of our framework, especially the choice of learnin...

09 May

This week, we came up with some implementation idea that will fundamentally change Roco.1 An inspiration that hit me while I was implementing face-edge connectionAs I implement face-edge connection, I came to realize that to build a connection(let's say addConnection(B,A)), we really only...

08 May

Last Friday, I presented the printable controller, the mechanical logic, in ARR 2019. I got lots of feedbacks regarding fully printable robots. People are really interested in how will we make the robots fully printable. Thanks for all of the help from my group.

08 May

Colo-AT and the simulated data generator have undergone a lot of debugging/testing over the last week. I developed testing scripts and also restructured parts of the simlulated data generator to be more re-usable. In addition, I implmented a simpleEKF (Extended Kalman Filter) localization algorithm...

30 Apr

In my last blog post, I described an approach for synchronizing the broadcast intervals of the RF modules in the network based on the system clock. In this blog post, I’d like to compare and contrast this open-loop approach with an alternative approach to synchronize the modules in lock-step. Bo...

30 Apr

Consider that user is trying to build the bookshelf with the middle board as in the picture. According to current Roco implementation, the connection of the middle board H is stored in the dictionary self.connections(): {B1: F2, G3, H4, H5}According to the original implementation of Roco, the...