Problema con blocco encoder Motion board e porta seriale UD

Forum relativo alle schede FLEX, ERIKA Enterprise, RT-Druid, ScicosLab, ...

Moderator: paolo.gai

Locked
Hal
Newbie
Posts: 5
Joined: Wed Mar 09, 2011 6:06 pm

Problema con blocco encoder Motion board e porta seriale UD

Post by Hal » Fri May 06, 2011 10:45 am

Salve,
sono uno studente di ingegneria dell'Automazione dell'università degli studi di Firenze. Ho realizzato un robot mobile tramite ruote in modalità differential drive e lo sto programmando attraverso la generazione di codice da scicoslab. Ho caricato sulla scheda flex il seguente sistema a blocchi scicos:

Hal
Newbie
Posts: 5
Joined: Wed Mar 09, 2011 6:06 pm

Problema con blocco encoder Motion board e blocco UDP

Post by Hal » Fri May 06, 2011 11:55 am

Chiedo scusa per l'invio prematuro messaggio. Lo schema a blocchi è il seguente:

Image

Questo schema retroazionato serve per far inseguire al robot una traiettoria rettilinea (creata dal blocco T_rect ) e una volta caricato sulla scheda sembra funzionare. Il problema è che quando vado a visualizzare i valori di X,Y e theta dalla porta ethernet, tramite lo schema:

Image

i valori ottenuti sono nulli. La cosa strana è che senza retroazione i dati sono visualizzati correttamente, ho fatto una prova con lo schema:

Image

e in questo modo i dati arrivano. Qualcuno ha già avuto problemi di questo tipo?

paolo.gai
Administrator
Posts: 875
Joined: Thu Dec 07, 2006 12:11 pm

Re: Problema con blocco encoder Motion board e porta seriale

Post by paolo.gai » Tue May 10, 2011 2:26 pm

Prova a verificare se i dati escono veramente dal sistema. Infatti, se c'e' un problema di qualche tipo nel codice generato di fatto il sistema non spedirà pacchetti, che risultareanno sempre 0 lato host.

Per testare l'arrivo dei pacchetti puoi usare dei software tipo http://www.wireshark.org/

La cosa potrebbe anche accadere per las eguente causa: se i calcoli da effettuare sono eccessivi, il sistema non riuscirà a terminare i calcoli prima del prossimo tempo di campionamento. L'effetto è che la CPU sarà utilizzata al 100% dal task di controllo, senza lasciare spazio al task a bassa priorità che si occupa di spedire i dati tramite UDP.

In quel caso, probabilmente basta aumentare il periodo di campionamento (ovvero abbassare la frequenza del controllo).

Ciao,

PJ

Hal
Newbie
Posts: 5
Joined: Wed Mar 09, 2011 6:06 pm

Re: Problema con blocco encoder Motion board e porta seriale

Post by Hal » Wed May 11, 2011 10:30 am

ok farò subito queste prove grazie ancora vi farò sapere.

Hal

Locked