Software meetings: firmware

From Wiki for iCub and Friends
Jump to: navigation, search

Update 18/09/2013

  • Fix errore lettura encoder nel ControlBoardWrapper2. Committato nel wip e testato ad Randaz (durante le mie ferie ;) COMPLETE
  • Fix errore skin callback. Se si lanciava la robotInterface con le schede già attive che spedivano i dati, questi messaggi disturbavano l'inizializzazione e di conseguenza la robotInterface non era in grado di gestire i messaggi della pelle correttamente. COMPLETE

Update 26/08/2013

  • Firmware loader can over EMS (Marco A)
    • Work in progress, su evaluation board da portare su EMS
  • Sistemare i file che specificano i messaggi CAN in modo da condividere la stessa versione (Marco A)
    • Visto che le famiglie di schede hanno messaggi diversi si possono creare header files diversi
    • La condivisione si potrebbe gestire con gli extern di svn (magari mettendo tutti i file .h in una dir e linkandola in extern).
  • hal 3, protocollo (Marco A)
  • free ip (Marco A)
  • diagnostica (Marco A)

Previous:

  • Controllo posizione/velocita'/impendenza: (Marco R) Sono a posto?
  • Controllo coppia polso e avambraccio da verificare (Marco R)
  1. Verificare i fattori di scala e plot impedenza
  • Messaggi di chiusura:
  1. R.I. stampa "ERROR error while loading ROP frame" durante la chiusura (still pending, Valentina 15/08)
  • Parcheggio: le dita non si parcheggiano: non si e' piu' verificato (vedi sotto -- potrebbe essere still pending)
  • Verificare CheckMotionDone()
  • Rumore encoder (Valentina e Maggiali) Discussione da riprendere Lunedi' 2/9, punti da ricordare:
    • Priorita' interrupt, lettura dei 3 byte
    • durata della lettura da spi
    • log encoder e pwm
    • filtro
  • Modifiche sul calibratore parametrico: importante alla riaccensione del robot iCubGenova04 verificare i WARNING sotto, chiedere a MarcoR.

Meeting 30/07/2013

Lorenzo, Marco R, Marco A, Valentina, Alessandro, Alberto.

Comportamento generale

Cose da verificare a breve:

  • Controllo posizione/velocita', da verificare (Marco R)
  • Controllo impedenza, da verificare (Marco R)
  • Controllo coppia polso e avambraccio da verificare (Marco R)
  1. controllo ok, verificare i fattori di scala e plot impedenza

Vari problemi per debug

Problemi da sistemare nel periodo prima del 15/8:

  • Sequence number: done (update by Valentina 15/08)
  • Braccio destro: mc4 get firmware version non compatibile, firmware version risposta dalla mais, ipotesi bachi sui filtri. Scheda mais sostituita con una piu' recente, il problema sembra risolto (update by Valentina 15/08)
  • Messaggi di chiusura:
  1. R.I. stampa "ERROR error while loading ROP frame" durante la chiusura (still pending, Valentina 15/08)
  2. le ems 2 e 4 mandano over voltage fault (flag=0x2) durante la chiusura (problema noto anche sul elettronica can, Valentina 15/08)
  • Parcheggio: le dita non si parcheggiano
  • Verificare CheckMotionDone(),
  • Rumore encoder, ancora da sistemare.

Update by Valentina 15/08: Numero degli errori diminuito notevolmente, ma non zero. Alcune volte il robot continua a tramare sulle braccia: a volte lanciando r.i. non trema altre volte si. Quando trema il numero degli errori e’ superiore (>0,004%) a quando non trema (0,002%). Potrebbe essere dovuto all’incremento degli errori il tremolio???Come mai gli errori a volte sono maggiori?? C’e’ un altro problema sulla lettura degli encoder sulle gambe: gli errori aumentano disabilitando riabilitando i giunti delle gambe. Problema gia’ notificato a Maggiali.


  • La scheda ems5 manda errore di coda can piena: fixed (Valentina 15/08)


  • Crash di R.I. eliminando dal file di configurazione tutto cio' che riguarda una parte del corpo (left arm, right leg, etc) tranne VTF-server. Sistemato da Alberto, ma ancora da committare -> Committato (20/08)


  • Verifica calibratore parametrico su iCubGenova01 COMPLETE
  1. attualmente fa segfault: Marco R -> Sistemato da Randazzo, l'errore si verificava nel caso in cui nel file di configurazione il numero di dati inserito non corrispondeva al numero dei giunti xchè mancava la verifica della lunghezza. COMPLETE
  2. e' stata cambiata la funzionalita' di alcuni messaggi. Nel calibratore setPositionMode() assume un implicito RUN del controllore che manca. E' stato fixato aggiungendo nel paramteric calibrator la sequenza: iAmps->enableAmp((*lit)); iPids->enablePid((*lit)); iControlMode->setPositionMode((*lit)); Questo pero' ha un impatto sul robot EMS. Da verificare se funziona ancora e da decidere la semantica di setPositionMode(). WARNING
  3. dopo la calibrazione (fallita) le schede rimangono sempre in idle anche premendo RUN sulla robotMotorGui. Fixato: baco del calibratore che non mandava l'ack. COMPLETE
  4. checkMotionDone sui giunti 4dc e' stato rimosso, al suo posto e' usata una tolleranza ampia sulla posizione finale raggiunta (come per i motori brushless). COMPLETE
  5. Baco di motioncontrol nel check della versione del firmware (se la verifica sulla prima scheda fallisce, non venivano testate le altre che apparivano OK. ma in realtà' potevano anche loro avere problemi) COMPLETE
  6. Bachi vari: FW aggiornato su occhi 2.15 1.15 e polso 2.19 1.19, per far si che i giunti si accendano spengano sempre in coppia. Senza questo aggiornamento il paramteric calibrator ha dei malfunzionamenti COMPLETE
  7. il firmware va aggiornato anche per le mc4 di iCubGenova04 per il motivo sopra indicato WARNING


  • Dopo le modifiche al parametricCalibrator i parametri hanno tutte iniziali minuscole (convenzioni camel) e tutti i parametri sono mandatori (non sono ammessi default). iCubGanova01 e' ok. Gli xml di iCubGenova04 vanno aggiornati. WARNING


  • La dorsale 0 (testa-torso) e' stata splittata su due xml che istanziano due device hardware. Il sistema e' funzionante ma vengono printati da motioncontrol numerosi "unexpected message" dato che ovviamente lo sharedcan legge sulla dorsale anche i messaggi indirizzati all'altro device. Una possibilita' e' settare i filtri per rimouvere questi messaggi. WARNING

Planning x dopo ferragosto

Lavori da schedulare a partire dal 19/8: Marco A.

  • hal 3, protocollo
  • flash del firmware board su can via ethernet
  • free ip
  • diagnostica