Home    About me    Publications    Blog    Undergrad memories

Fabio Ruini's blog

'cause Italians blog better

Archivio per luglio, 2010

Sigari for dummies

Come avevo fatto cenno qualche post fa, di ritorno da Barcellona mi sono fatto un regalino. Una scatola di sigari cubani, per la precisione Montecristo numero 4. Ora, si da’ il caso che il sottoscritto sia da tempo affascinato dalla cultura del sigaro e che piu’ volte abbia pensato di cimentarsi nella nobile arte del fumo lento, ma che sia un perfetto ignorante in materia. Cosi’ che oggi ho iniziato a documentarmi un po’ sull’argomento.

756740-appena-tirata-a-mano-sigari-dominican-republic-tabacco

Come prima cosa mi sono dedicato al tema della conservazione. A quanto pare, tutti coloro che sono dediti al fumo del sigaro, possiedono un humidor. Trattasi di un dispositivo, dalle dimensioni piu’ o meno generose, che serve per conservare i sigari ad una giusta umidita’. Lasciare i sigari a temperatura ambiente finirebbe infatti per farli seccare, mentre per una buona conservazione pare ci sia un generale accordo sul fatto che questi debbano essere tenuti in un ambiente con umidita’ relativa prossima al 70% e temperatura attorno ai 20 gradi centigradi. Su eBay ho addocchiato (e gia’ impostato un’offerta massima attraverso AuctionSniper) un humidor che potrebbe fare perfettamente al caso mio. Nel frattempo, giusto per non rischiare di rovinare il mio piccolo investimento in cubani, ho provveduto a crearmi una soluzione artigianale, ricorrendo ad un contenitore stile Tupperware ed un piccolo bicchiere contenente acqua e sale (come suggerito qui). I sigari, che si stavano insecchendo un po’, pare che abbiano gia’ riacquistato freschezza. Spero solo di non aver esagerato e ritrovarmeli poi troppo morbidi. Ad ogni modo, qui sotto potete vedere due foto del mio spartanissimo pseudo-humidor.

Humidor for cigars - Tupperware plus water and salt

My personal (spartan and cheap) humidor

Ora, trattandosi di un hobby non propriamente economico. il problema che si sta ponendo il sottoscritto e’ come potersi procurare dei sigari a buon prezzo. I toscani (in diverse persone mi hanno suggerito il Toscano Originale, l’Antico Toscano ed ovviamente il Moro) non so quanto facilmente siano reperibili qui in Svizzera. On line ho trovato diversi siti che vendono sigari di tutti i tipi, ma non mi e’ chiaro se tali webistes operino in legalita’ o meno. Stando a quanto ho letto in giro per forum specializzati, farlo in Italia pare sia assolutamente illegale commerciare tabacchi via Internet. Non ho idea di come sia la situazione qui in Svizzera, ma preferirei non rischiare. Tra l’altro pare ci sia un negozio, proprio a due passi da dove abito, chiamato Cubana & News, che dovrebbe avere sigari a volonta’. Urge una visita il prima possibile.

Share

Locomorph project

Grazie ad una chiacchierata inaspettata avvenuta oggi pomeriggio con Lijin Aryananda sono venuto a conoscenza del progetto Locomorph, coordinato dalla University of Zurich ed a cui partecipano anche EPFL, Friedrich-Schiller University of Jean, University of Southern Denmark, Antwerpen e Ryerson. Trattasi di un progetto decisamente interessante, focalizzato sulla locomozione robotica all’interno di ambienti sconosciuti. Da un punto di vista scientifico, il vero punto di forza consiste nello studio della morfologia necessaria per muoversi in ambienti particolari, e soprattutto sulla “morphosis”, ovvero il cambiamento della morfologia, volontario per rispondere ad esigenze particolari di locomozione oppure obbligato perche’ indotto da cause di forza maggiore.

20081101_locomotion_video

Qui di seguito potete comunque leggere la descrizione del progetto, piu’ approfondita rispetto alle due righe da me redatte, presente sul sito ufficiale linkato in apertura di post.

Project Description

Locomorph’s goal is to push beyond the state of the art in robotic locomotion and movements, by increasing efficiency, robustness, and thus usability in unknown environments. As robotic research and industry are competing to increase robots’ usability towards the highly-in-demand service robotics, advancements in robotic locomotion today would give Europe a significant competitive advantage. Locomorph combines multidisciplinary approaches from biology, biomechanics, neuroscience, robotics, and embodied intelligence to investigate locomotion and movements in animals and robots, focusing on two concepts: morphology and morphosis.

Morphology

The first concept, morphology, is based on the observation that successful biomimetic designs rely on effective embodiment: on clever morphology and use of material properties. Because of the ingenious forms, materials, and mechanisms selected by nature, animals can move efficiently and stably through virtually every conceivable terrain. When the animals’ bodies undergo changes, either due to natural growth process or more extreme injuries such as limb loss, they gradually adapt and even ‘invent’ new ways of walking.

In this project, we will explore various morphological factors (shape, materials, sensors, compliance, limb segmentation, etc) to generate novel and optimal robotic designs for efficient and robust locomotion in unknown environments, based on insights from biological and biomechanical studies. We will iteratively build many diverse robots and co-develop control strategies while observing the robots in different environments in order exploit the complex dynamic which emerge from the interaction with the environment.

In order to support this morphology exploration, we will develop an infrastructure for enabling fast construction of robots with varying morphology, using a wide range of modular heterogeneous robotic components, such as legs and trunk/torso components with different shapes and materials, elastic elements, sensors, actuators with varying compliance, etc. This infrastructure will provide sharing of modular components (hardware and software) which enable fast construction of robots and an extensive collaboration among the consortium.

Morphosis

The second concept, morphosis, extends the concept of exploiting morphology further by investigating morphing, i.e. changing morphology. Voluntary morphosis – the ability to self-adjust own morphology – is a valuable skill for robots, as it can increase their adaptivity to current tasks and environments. Involuntary morphing is also a relevant issue, since it can occur in robots because of injuries or other external causes.

We will explore this topic using two complementary approaches. Firstly, we will conduct animal/human experiments to study biological strategies in dealing with voluntary/involuntary morphosis. In nature, morphosis occurs at various time scales.

Very slow morphosis occurs during the natural selection process, where new morphology is adapted from an ancestral body plan due to new environmental constraints. For example, the Takydromus sexlineatus, a species of the lacertid lizard family, has a very slender elongated body and reduced limbs ideal for ‘grass swimming’, while the Meroles anchietae has long hind limbs, long slender toes, and a short stiff trunk ideal for fast running. However, perhaps this morphology is also used in a different way because the Meroles anchietae is also good in sand swimming in the desert. Morphosis also occurs within each animal’s lifetime due to ontogenetic growth. Abnormal morphosis can also occur due to injuries, such as limb loss. Lastly, some animals sometimes perform an active form of morphosis, for example primates switch from quadrupedal to tri- or bi-pedal locomotion when holding an object.

Secondly, we will extract insights from the results to investigate how to construct robots which can voluntarily morph (self-adjust their own morphology) during runtime to adapt to current task demands and environments, for example by lengthening and contracting their limbs, altering their overall shape by trunk/torso actuation, etc (see figure below for conceptual drawing of robotic voluntary morphosis). We will also develop motor control strategies for dealing with morphosis, both voluntary and involuntary. This, combined with the robot’s modularity, will create highly robust robots, able to deal with body changes e.g. limb loss.

Through an exploration of these two concepts we aim to develop robots with increased maneuverability, self-stabilization, energy efficiency, and adaptivity to unknown environments. These advances will bring us closer to service robotics, as a large part of these robots must able to locomote safely, regardless of surfaces, layouts, or terrains.

Un elenco delle pubblicazioni prodotte fino a questo momento potete trovarlo a questo link (purtroppo non sono scaricabili da questa pagina, quindi nel caso foste interessati dovreste procedere in maniera alternativa). In chiusura, invece, vi lascio con un po’ di immagini dei robot che sono stati costruiti durante il progetto. Ovviamente grezzi (sono piu’ prototipi che non prodotti finiti), ma comunque simpatici anche da vedere.

Locomorph EU Project - Robot #1

Locomorph EU Project - Robot #2

Locomorph EU Project - Robot #3

Locomorph EU Project - Robot #4

Share

Cross Toolchains e NetGear WNDA3100

Dopo un po’ di tempo a questa parte si torna a smanettare su Linux. Il motivo non e’ un improvviso ritorno di fiamma, quanto piuttosto il fatto che per compilare e trasferire il software del controller sugli swinglet e’ necessario (cross)compilare via Linux e poi collegarsi via SSH wireless al robot. E cosi’ ho rispolverato la mia macchina virtuale Ubuntu 10.4 installata sul mio Mac. Questo perche’ l’altra che ho installato, una Kubuntu pre-configurata dai ragazzi del laboratorio e pronta per l’uso, sul mio laptop funziona un po’ da schifo. Fa il suo dovere, ma la risoluzione dello schermo e la dimensione dei font svarionano a caso, e’ impossibile connettersi ad Internet (cosi’ che non posso neanche downloadare un editor di codice serio da utilizzare per le modifiche) ed il drag-and-drop dei files da/verso MacOS semplicemente non funziona (per trasferire files occorre cosi’ chiudere la VM e montare su Mac l’immagine del disco virtuale).

Per quanto riguarda il cross-compiling verso piattaforma ARM, dopo qualche rogna (dovuta principalmente al fatto che mi ero scordato di scaricare via Synaptic gli headers del kernel per ARM) mi sembra di essere riuscito nell’impresa. Il tool che utilizzo e’ Cross Toolchains, sono riuscito ad installarlo correttamente e pare compilare senza problemi il codice del controller (che poi questo funzioni anche sul robot e’ cosa da verificare). Per la cronaca, l’installazione e’ consistita semplicemente nell’aggiungere il repository deb http://www.emdebian.org/debian/ lenny main e scaricare i pacchetti g++-4.3.arm.linux.gnueabi (con relative dipendenze) e linux-kernel-headers-arm-cross.

CrossGCC logo

I problemi seri stanno emergendo invece per quanto riguarda la parte wireless, per via del dongle Netgear WNDA3100 che mi e’ stato “imposto” di utilizzare (per quanto, ragionando or ora sulla questione, non vedo la necessita’ di dover per forza adottare questa interfaccia… appena tornero’ in laboratorio domattina cerchero’ di vedere se e’ possibile evitarlo). Il problema deriva dal fatto che mentre questo dongle funziona benissimo sulla VM Kubuntu, non vuole invece saperne di mettersi in modo sulla (ben piu’ aggiornata) VM Ubuntu. Ho lavorato alla questione per diverse ore, senza riuscire a venirne a capo. I drivers che ho utilizzato (e provato a configurare/compilare/installare nelle maniere piu’ disparate) sono i compat wireless per chipset ar9170 disponibili su http://linuxwireless.org/en/users/Download/stable/. Rimangono valide alternative stile ndiswrapper, che vorrei pero’ cercare di non utilizzare.

Netgear WNDA3100

Da segnalare il fatto che, alla ricerca di un aiuto, sono finito per installare un client IRC (al secolo Ircle) ed intavolare una discussione sul canale dedicato. Chattare su IRC, a circa dieci anni di distanza (se non di piu’) dall’ultima volta che l’avevo fatto, non ha prezzo. Memorabile, poi, quando uno degli utenti con cui stavo interagendo e che mi chiedeva di postare l’output di dmesg ha specificato di non copia/incollare direttamente sul canale, ma attraverso Pastebin.com. Le vecchie abitudini non muoiono mai…

Share

Switching gear

Forse e’ una sorta di crisi di rigetto post-trauma esistenziale di ieri. Forse no. Non lo so. Fatto sta che da ieri sera ho una gran voglia di lavorare. Proprio tanta. E tanta voglia di tirar fuori qualcosa con coglioni e controcoglioni. Motivo per cui, a partire da oggi, in laboratorio si accelerano i ritmi. Dopo un po’ di burocrazia e studio di un po’ di paper in mattinata, c’e’ stato un meeting pomeridiano con i supervisor locali al termine del quale sono entrato in possesso di un “mio” swinglet. Sul quale (tramite un percorso un po’ contorto: dongle wi-fi esterno collegato via USB al mio computer e fatto riconoscere alla macchina virtuale Linux sulla quale girano drivers modificati appositamente per questo dongle) ho caricato un po’ di codice scritto prima di partire per Barcellona e che da domani si iniziera’ a debuggare nei minimi dettagli. Venerdi’ pomeriggio, tempo permettendo, si andranno a fare invece i primi test dei miei controller sul campo.

senseFly swinglet

Per quanto riguarda l’ormai classico angolo di letteratura (scientifica), segnalo un ottimo paper che ho trovato oggi pomeriggio e che, chissa’ perche’, fino a questo momento ci era completamente sfuggito. Lo trovate qui sotto. Titolo ed abstract dovrebbero gia’ di per se darvi un’idea di quanto sia attinente con il lavoro che stiamo portando avanti qui a Losanna.

Infine, sempre per stare in tema di boids, segnalo questo link, dal quale e’ possibile scaricare codice C++ molto ben fatto e che implementa, in maniera semplice, lineare, efficiente, ma soprattutto fedele, il modello di Reynolds. Un ottimo modo per integrare il paper originale di Reynolds, latitante di dettagli tecnici. Nel caso aveste tempo/voglia di smanettarci un po’ sopra… buon divertimento!

Share

Delusione spaziale

Sono da pochi minuti rientrato in quel di Losanna concludendo la due giorni passata in Olanda per il mio colloquio all’ESA. Colloquio che, lo dico subito, non e’ andato per niente bene. Difficile spiegare il mio stato d’animo in questo momento. Nel giro di veramente pochissime ore sono passato attraverso stati emotivi dei piu’ svariati. Tensione e preoccupazione, unite ad una preparazione quantomeno frenetica della trasferta e dell’intervista, domenica e lunedi’. Rilassamento e relativa soddisfazione questa mattina, al termine della prima parte del colloquio, quella in cui ho dovuto tenere una presentazione del mio lavoro passato e delle future linee di ricerca davanti alle persone dell’ACT. Incazzatura, con me stesso soprattutto, mista a profondo imbarazzo al termine della seconda sessione della giornata, vale a dire il colloquio con il personale del posto. Ho completamente sbagliato l’approccio a questa interview, non riuscendo a capire cosa esattamente le persone che avevo di fronte si aspettassero da me. Ho perso le redini sin dai primi minuti ed ho lasciato che la discussione si incanalasse su binari per me impossibili da percorrere in maniera dignitosa, rimediando anche una figuraccia di proporzioni epiche. In sostanza, per quanto ancora non ci sia ufficialita’, credo di aver gettato al vento (eufemismo) quella che era una bellissima opportunita’ e che continuo comunque a ritenere fosse alla mia portata. Ringrazio tutti coloro che mi hanno contattato in privato e cercato di consolarmi dicendo che il comportamento degli intervistatori sia stato “particolare”, che magari stessero provando a testarmi sotto pressione, ecc… Ringrazio, ma purtroppo credo che non sia questa la giustificazione per la mia triste performance. Puo’ magari aver in parte contribuito, ma gli errori sono stati miei. Peccato, veramente, perche’ queste non sono occasioni che capitano spesso.

Al momento sto accusando il colpo. Pesantemente, come non mi capitava da veramente tanto tempo. Forse negli ultimi anni ho ottenuto con troppa facilita’ tutte le cose che desideravo e mi stavo abituando troppo bene. Discorso che va anche oltre l’ambito prettamente scientifico. Cerchiamo di prendere quindi questa esperienza come un bagno d’umilta’, come l’ennesima dimostrazione del fatto che c’e’ sempre da lavorare e non c’e’ tempo per dormire sugli “allori” (per quanto grandi o piccoli questi siano). Ci vorra’ qualche tempo per superare completamente la cosa (che, comunque, credo mi restera’ sul groppone a lungo), ma in qualche modo sono sicuro ci riusciro’. Non e’ ovviamente la cosa peggiore che mi sia capitata in vita mia, tutt’altro. Ma e’ comunque un desiderio/sogno che si infrange in malo modo.

La vogliamo buttare sul tragicomico? Allora diciamo che per superare la botta mi buttero’ sul cibo. Su quello che si addice ad un’astronauta duro come il sottoscritto (vedi prima delle due foto sotto). Cibo altrettanto da duro (seconda foto). Al punto che e’ duro pure lui. Ed in un formato piuttosto strano se consideriamo che si tratta rispettivamente di pesche e banane. Il tutto comprato rigorosamente (insieme a qualche altro gadget stupido) (“stupido” e’ probabilmente un aggettivo superfluo quando gia’ si utilizza il sostantivo “gadget”) all’interno dello shop dello Space Expo che ho visitato in pausa pranzo.

Myself looking like an astronaut (ESA Space Expo)

Food for astronauts (peaches and bananas)

Share

Pagina successiva »