Archive for February, 2014

Almost there …

Saturday, February 22nd, 2014

Per­haps a lit­tle bit of an exag­ger­a­tion. What you see is the first “assem­bled” new mod­ule (with­out cas­ing and bat­tery). Unfor­tu­nately, it doesn’t work! For­tu­nately, it’s not really due to the sys­tem design but rather due to prob­lems we have encoun­tered in pop­u­lat­ing the boards. We have been able to ver­ify the func­tion­al­ity of most sub­sys­tems on the board, but have not been able to pop­u­late a sin­gle board in which every­thing works. Con­se­quently, we will have to go for a sec­ond gen­er­a­tion with a some­what dif­fer­ent approach for the assem­bly. Maybe a month … Stay tuned!

Note: I don’t have big hands!

Massive-MIMU

Monday, February 17th, 2014

As I have pre­vi­ously noted in a post, we have recently been devel­op­ing a massive-MIMU (multi-IMU) plat­form from single-chip IMUs. (The abbre­vi­a­tion is par­tially a play with the com­mon MIMO (multiple-input-multiple-output) abbre­vi­a­tion within the field of com­mu­ni­ca­tion and also the term massive-MIMO to describe MIMO sys­tems with alot of anten­nas.) At the move­ment the plat­form looks like this:

The plat­form will be pre­sented on the upcom­ing ISISS con­fer­ence 25–26 Feb 2014 in Laguna Beach CA, USA. Massive-MIMU is to some extent a sep­a­rate research track but also con­sti­tute an exper­i­men­tal plat­form for the devel­op­ment of new Open­Shoe modules.

The plan is to release the whole plat­form open-source under the Massive-MIMU sec­tion (and of cause on source­forge). The soft­ware part is already in place at source­forge, specif­i­cally in this file. This we have been run­ning and devel­op­ing since the autumn. We are cur­rently work­ing on a sec­ond gen­er­a­tion of the MIMU plat­form which will hold 32-IMUs (which will truly make it a massive-MIMU plat­form). How­ever, through­out the devel­op­ment we have come to real­ize that we want to make some changes which will affect the soft­ware. Con­se­quently, we have been a lit­tle reluc­tant to put up the old gen­er­a­tion of boards since we do not place to sup­port them in the future. If you really want the schematic and lay­out of the old boards, please send us an e-mail and I will be happy to pro­vide it. Oth­er­wise, I hope you can be patient until we fin­ish the new generation.

Inertial frontend

Monday, February 17th, 2014

Last week, I finally fin­ished and pushed some updates/new devel­op­ment of the soft­ware onto Source­Forge. What has been con­structed is what I call an iner­tial fron­tend. The basic idea is:

In words it’s a pro­cess­ing block (group of rou­tines together with some state vari­ables) which pack­age and per­forms all the pro­cess­ing prior to the iner­tial nav­i­ga­tion, i.e. cal­i­bra­tion com­pen­sa­tion (and fusion of array data), test sta­tis­tics cal­cu­la­tion and thresh­old­ing for the ZUPTs, and some online bias esti­ma­tion. This is pro­cess­ing which is tightly con­nected with the IMU and rather inde­pen­dent of the iner­tial nav­i­ga­tion. The most sig­nif­i­cant attrib­utes of the fron­tend is that it’s com­pletely imple­mented with inte­gers arith­metic (so that it could poten­tially be placed in a pro­cess­ing unit embed­ded with the IMU) and the test sta­tis­tics is imple­mented in a recur­sive form (which makes the com­pu­ta­tion sig­nif­i­cantly less expen­sive to start with and also inde­pen­dent of the win­dow size). This far it seems to be work­ing great. We’ve used a crude ver­sion of it since april last year so I don’t expect any larger prob­lems with it but be aware that it’s not been thor­oughly tested yet. This far the code and the under­ly­ing the­ory is pretty much only doc­u­mented in var­i­ous tech­ni­cal notes on my com­puter but hope­fully I will have time to gather it in a paper soon. Any­way, now you know roughly what the 400-line block of obscure code is doing.