spacer.png, 0 kB

Torna indietro   Roboitalia.com - Il primo portale in Italia sulla robotica amatoriale > Robotica di base > Elettronica > E. Digitale

Rispondi
 
Strumenti discussione Modalità  visualizzazioe
  #21  
Vecchio 12-08-2009, 20.43.56
Cyber'93 Cyber'93 non è collegato
Robottaro master
 
Data registrazione: 31-10-2004
Residenza: casa mia
Messaggi: 345
Potenza reputazione: 70
Cyber'93 E' sulla buona strada
Predefinito

Citazione:
Orginalmente inviato da Vegekou Visualizza messaggio
Quindi la tua definizione di velocità destra e sinistra non lega perfettamente con il comando di sterzo e gas.
Comincio a perdere il filo di questo topic...
Rispondi citando
  #22  
Vecchio 12-08-2009, 21.10.57
L'avatar di Vegekou
Vegekou Vegekou non è collegato
Administrator
 
Data registrazione: 23-06-2002
Residenza: Roma
Età : 32
Messaggi: 1,196
Potenza reputazione: 196
Vegekou La sua reputazione è oltre la sua famaVegekou La sua reputazione è oltre la sua famaVegekou La sua reputazione è oltre la sua famaVegekou La sua reputazione è oltre la sua famaVegekou La sua reputazione è oltre la sua famaVegekou La sua reputazione è oltre la sua fama
Predefinito

Citazione:
Orginalmente inviato da Cyber'93 Visualizza messaggio
Comincio a perdere il filo di questo topic...
la sottigliezza sta:

imponendo nella tua formulazione una velocità di GAS, il robot viaggierà invece con una velocità GAS/2 rispetto a quella voluta.

Ragionamento analogo, vale per la velocità dello sterzo, che fissata una rotazione questa sarà poco più veloce o poco più lenta rispetto a quella desiderata.

Per il resto, funziona tutto bene

CIAO!

PS: mi sa che ti ho confuso un po' le idee
__________________
Officine robotiche - ~VeGeKoU~ - RäφFǽλłờ - OR2014
Webmaster di: { minisumo.net } - { soloingegneria.com }
Rispondi citando
  #23  
Vecchio 12-08-2009, 21.29.58
gyppe gyppe non è collegato
Robottaro sostenitore
 
Data registrazione: 24-03-2009
Residenza: sardegna
Età : 39
Messaggi: 1,250
Potenza reputazione: 96
gyppe La sua reputazione è oltre la sua famagyppe La sua reputazione è oltre la sua fama
Predefinito

Citazione:
certo se gyppe posta il codice che ha fatto lui possiamo fare un bel code-contest...
E' troppo complicato sarà dura trovare dei partecipanti :P
Comunque il mio è questo:

VSx = Vel - Dir;
VDx = Vel + Dir;

Vince chi riesce a farla più semplice.
Rispondi citando
  #24  
Vecchio 12-08-2009, 21.41.14
Cyber'93 Cyber'93 non è collegato
Robottaro master
 
Data registrazione: 31-10-2004
Residenza: casa mia
Messaggi: 345
Potenza reputazione: 70
Cyber'93 E' sulla buona strada
Predefinito

Citazione:
Orginalmente inviato da gyppe Visualizza messaggio
E' troppo complicato sarà dura trovare dei partecipanti :P
Comunque il mio è questo:

VSx = Vel - Dir;
VDx = Vel + Dir;

Vince chi riesce a farla più semplice.
qualcuno non ha letto la prima pagina di questo topic, in cui spiego perché questa formula non mi va bene abbastanza.
Rispondi citando
  #25  
Vecchio 12-08-2009, 22.08.30
gyppe gyppe non è collegato
Robottaro sostenitore
 
Data registrazione: 24-03-2009
Residenza: sardegna
Età : 39
Messaggi: 1,250
Potenza reputazione: 96
gyppe La sua reputazione è oltre la sua famagyppe La sua reputazione è oltre la sua fama
Predefinito

Senti fai un po come ti pare non ho certo voglia di stare a rompermi troppo per certe stupidate.
Se non ne fai buon uso lo farà qualcun'altro.

Rileggendo bene ho solo visto che ho consigliato la stessa cosa che ti ha detto Mizar.
Rileggendo ancora meglio il listato, impegnandomi un pochino perchè è parecchio incasinato, ho però visto che fa esattamente quello che fa la formuletta più stupida del mondo, quella consigliata, che è stata ottenuta senza fasciarsi la testa in mille problemi, tabelle, formule, testi sacri e menate varie.

Leggiti bene il listato e vedrai che è così.
Rispondi citando
  #26  
Vecchio 13-08-2009, 06.17.18
L'avatar di astrobeed
astrobeed astrobeed non è collegato
Robottaro sostenitore
 
Data registrazione: 18-03-2004
Residenza: Roma
Età : 60
Messaggi: 3,377
Potenza reputazione: 349
astrobeed La sua reputazione è oltre la sua famaastrobeed La sua reputazione è oltre la sua famaastrobeed La sua reputazione è oltre la sua famaastrobeed La sua reputazione è oltre la sua famaastrobeed La sua reputazione è oltre la sua famaastrobeed La sua reputazione è oltre la sua famaastrobeed La sua reputazione è oltre la sua famaastrobeed La sua reputazione è oltre la sua fama
Predefinito

Citazione:
Orginalmente inviato da Cyber'93 Visualizza messaggio
qualcuno non ha letto la prima pagina di questo topic, in cui spiego perché questa formula non mi va bene abbastanza.
La matematica non è un'opinione, è una scienza esatta.
Se il tuo valore del gas varia tra +128 e - 127, stessa cosa per il dir, quando stai fermo sommando e sottraendo il valore massimo del dir ottieni che i motori girano in sensi opposti alla massima velocità.
Se stai viaggiando alla massima velocità a uno dei dei estremi e sottrai/sommi il valore massimo del dir un motore si ferma e l'altro continua a girare alla massima velocità, il risultato è che sterzi con un raggio pari all'interesse delle ruote alla massima velocità possibile.
Tutti i vari valori intermedi ti danno tutti i possibili risultati, ovviamente serve aggiungere un controllo sui valori limite quindi meglio lavorare con numeri interi in modo da poter controllare il risultato e tagliarlo ai valori massimi ammessi.

p.s.
Ha ragione Gyppe, ti stai facende delle pippe mentali assurde, stai rendendo oltremodo complicata una cosa che è semplicissima.
__________________
Bye
Rispondi citando
  #27  
Vecchio 13-08-2009, 07.35.15
Cyber'93 Cyber'93 non è collegato
Robottaro master
 
Data registrazione: 31-10-2004
Residenza: casa mia
Messaggi: 345
Potenza reputazione: 70
Cyber'93 E' sulla buona strada
Predefinito

Citazione:
Orginalmente inviato da astrobeed Visualizza messaggio
Ha ragione Gyppe, ti stai facende delle pippe mentali assurde, stai rendendo oltremodo complicata una cosa che è semplicissima.
Beh, è bello complicarsi la vita
E comunque io resto convinto che con il metodo di Gyppe si perda un po' di precisione ai quattro angoli. Ma si sa... ognuno tira l'acqua per il suo mulino
Grazie a tutti che vi siete confrontati per cercare di risolvere un problema che (seppur stupido), per qualcuno era molto importante.
Ciao
Rispondi citando
  #28  
Vecchio 13-08-2009, 08.35.37
L'avatar di astrobeed
astrobeed astrobeed non è collegato
Robottaro sostenitore
 
Data registrazione: 18-03-2004
Residenza: Roma
Età : 60
Messaggi: 3,377
Potenza reputazione: 349
astrobeed La sua reputazione è oltre la sua famaastrobeed La sua reputazione è oltre la sua famaastrobeed La sua reputazione è oltre la sua famaastrobeed La sua reputazione è oltre la sua famaastrobeed La sua reputazione è oltre la sua famaastrobeed La sua reputazione è oltre la sua famaastrobeed La sua reputazione è oltre la sua famaastrobeed La sua reputazione è oltre la sua fama
Predefinito

Citazione:
Orginalmente inviato da Cyber'93 Visualizza messaggio
Beh, è bello complicarsi la vita
E comunque io resto convinto che con il metodo di Gyppe si perda un po' di precisione ai quattro angoli. Ma si sa... ognuno tira l'acqua per il suo mulino
Perdita di precisione ai 4 angoli ? Ma di quale precisione parli ?
Se parliamo di un sistema ad anello aperto la parola precisione è molto aleatoria con un motore DC, non puo sapere a che velocità gira visto che è fortemente variabile in funzione del carico meccanico, se parliamo di un sistema ad anello chiuso non puoi farlo funzionare troppo prossimo ai punti estremi perchè poi non hai i margini di controllo.
__________________
Bye
Rispondi citando
  #29  
Vecchio 13-08-2009, 09.37.44
Cyber'93 Cyber'93 non è collegato
Robottaro master
 
Data registrazione: 31-10-2004
Residenza: casa mia
Messaggi: 345
Potenza reputazione: 70
Cyber'93 E' sulla buona strada
Predefinito

Citazione:
Orginalmente inviato da astrobeed Visualizza messaggio
Perdita di precisione ai 4 angoli ? Ma di quale precisione parli ?
Se parliamo di un sistema ad anello aperto la parola precisione è molto aleatoria con un motore DC, non puo sapere a che velocità gira visto che è fortemente variabile in funzione del carico meccanico, se parliamo di un sistema ad anello chiuso non puoi farlo funzionare troppo prossimo ai punti estremi perchè poi non hai i margini di controllo.
Non ho mai parlato di motori DC... né tantomeno del fatto che questo sistema sia applicato direttamente ad un robot...
La routine di conversione infatti la userò in un software che gira sul PC per una simulazione, per questo ho usato concetti ideali di robot a trazione differenziale; partendo da dati di "input" che non sono soggetti a limiti di saturazione (procedura che mi consigliavate di seguire usando le formule più semplici) ma sono perfettamente convertiti, ottengo una migliore risposta alla fine di tutti i calcoli successivi che il SW esegue sugli spostamenti.
Se dovessi applicarla, che ne so, per controllare il mio minisumo con il joy della PlayStation, di certo non avrei necessità di tutto 'sto pacco di codice, sarebbero molto più semplici le formulette che ho postato all'inizio e che Gyppe, Myzhar e Vegekou (li ringrazio ancora per i consigli) hanno ripreso.
Quindi, polemiche a parte, non dico che le due formulette stupide non facciano il loro dovere, semplicemente che dopo aver applicato TUTTI i metodi che mi sono stati consigliati ho scelto il... mio, perchè i risultati sono più accurati rispetto agli altri metodi.
Ciao a tutti
Rispondi citando
  #30  
Vecchio 13-08-2009, 09.51.55
L'avatar di Vegekou
Vegekou Vegekou non è collegato
Administrator
 
Data registrazione: 23-06-2002
Residenza: Roma
Età : 32
Messaggi: 1,196
Potenza reputazione: 196
Vegekou La sua reputazione è oltre la sua famaVegekou La sua reputazione è oltre la sua famaVegekou La sua reputazione è oltre la sua famaVegekou La sua reputazione è oltre la sua famaVegekou La sua reputazione è oltre la sua famaVegekou La sua reputazione è oltre la sua fama
Predefinito

Citazione:
Orginalmente inviato da Cyber'93 Visualizza messaggio
Beh, è bello complicarsi la vita
E comunque io resto convinto che con il metodo di Gyppe si perda un po' di precisione ai quattro angoli. Ma si sa... ognuno tira l'acqua per il suo mulino
Grazie a tutti che vi siete confrontati per cercare di risolvere un problema che (seppur stupido), per qualcuno era molto importante.
Ciao
Questa cosa però è proprio semplice, il codice che ti avevo postato in precedenza era in realtà costruito in questo modo:

Codice:
void convertToMovement(float OutputV, float OutputW)
{
	float riferRF = (1/RADIUS)*OutputV+(DIS/(2*RADIUS))*OutputW;
	float riferLF = (1/RADIUS)*OutputV-(DIS/(2*RADIUS))*OutputW;
	
	if(riferRF >= INT_MAX) riferR = INT_MAX;
	else if(riferRF <= INT_MIN) riferR = INT_MIN;
	else riferR = (int)riferRF;

	if(riferLF >= INT_MAX) riferL = INT_MAX;
	else if(riferLF <= INT_MIN) riferL = INT_MIN;
	else riferL = (int)riferLF;
}
Come puoi notare le ultime 6 righe controllano che i valori in uscita non siano troppo grandi o troppo piccoli rispetto alla variabile che controlla effettivamente i motori

Ciao!
__________________
Officine robotiche - ~VeGeKoU~ - RäφFǽλłờ - OR2014
Webmaster di: { minisumo.net } - { soloingegneria.com }
Rispondi citando
Rispondi


Utenti attualmente attivi che stanno leggendo questa discussione: 1 (0 utenti e 1 ospiti)
 
Strumenti discussione
Modalità  visualizzazioe

Regole di scrittura
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code è Attivato
Le smilies sono Attivato
[IMG] è Attivato
Il codice HTML è Disattivato

Vai al forum

Discussioni simili
Discussione Autore discussione Forum Risposte Ultimo messaggio
Simulatore di guida furlo88 Forum generale 24 17-06-2012 22.10.09
Guida download Smigol Forum generale 3 10-04-2009 07.38.32
guida microprocessori & C Earth Elettronica 5 23-01-2007 17.42.35
c'era una volta... la guida di marnic... selfservice CNC e Robotica Cartesiana 2 07-12-2006 08.05.57


Tutti gli orari sono GMT. Adesso sono le: 18.08.39.


Basato su: vBulletin Versione 3.8.8
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.
Realizzazione siti web Cobaltica Foligno
spacer.png, 0 kB