Announcement

Collapse
No announcement yet.

Announcement

Collapse
No announcement yet.

Traction control

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Font Size
    #61
    Originally posted by Ultrone View Post
    Ricordiamoci che senza l'addomesticazione dell'elettronica non avremmo delle belle GSX-R 1000 K7 o CBR 1000 RR da 170 cv alla ruota cos? guidabili e gestibili!

    Che facciamo? La leviamo e torniamo ai CBR 900 del 1990 da 97 Cv?
    SIIIII!!!!

    EVVIVA LA NONNAPOTENTE!!!!


    (comunque i cavalli alla ruota sono 130, misurati a gennaio 2007...)



    Poi ovviamente ci mettiamo l'antispin sulla NONNAPOTENTE.

    Tornando a bomba: io ci voglio guardare dentro a sta cosa.
    Convengo che l'assenza di un giroscopio qualcosina vorr? pur dire in termini di prestazione, ma posto i costi di un traction control vero (da gara) "cavarsela" con 1700 euri ivati risulta fin quasi incredibile. Per questo mi interessa vedere come finzuna questo anti-pattinamento.
    Se Gubellini si arrischia a venderlo al pubblico vuol dire che un suo minimo perch? ce l'ha. Adesso bisogna vedere qual'?. perch? son curioso come una scimmietta...

    Del resto noi non siamo piloti veri, quindi ? inutile mettere un traction control vero...

    Comment


    • Font Size
      #62
      Comunque, tanto per aggiungere delle variabii onde compicare il discorso, eccovi un altro simpatico spunto...



      chiedo scusa se fosse cosa già nota.

      Comment


      • Font Size
        #63
        Originally posted by buzzy84 View Post
        Th? ... qu? c'? l'intervista a Gubellini ... e parla del suo TC

        http://www.gpone.com/news/News.asp?NNews=1926
        Originally posted by @Anubi@ View Post
        tratto da qui: http://www.gpone.com/news/News.asp?NNews=1926

        Fuori dai Gran Premi, hai sviluppato un sistema di Traction Control applicabile a qualsiasi moto: puoi spiegare come funziona?
        ?Il mio progetto prevede un sistema a taglio della corrente su un singolo cilindro o su un singolo iniettore. Il sistema ? composto da una centralina e due sensori (da applicare alle due ruote), e si pu? appunto applicare a qualsiasi moto: strada, cross e motard. ? programmabile e per questo capace di adattarsi a tutte le esigenze, relative sia al mezzo sul quale ? installato, sia allo stile di guida del pilota. Utilizzando i due sensori posti sulle ruote questo sistema (come quelli utilizzati in MotoGP) ha il pregio di aumentare, in modo automatico, la propria sensibilit? in base all?inclinazione del veicolo. Un fattore da non sottovalutare infatti ? proprio il profilo del pneumatico: ad angoli di piega elevati le gomme poggiano sulla spalla e per questo il rotolamento dei due pneumatici cambia, rispetto alla situazione in cui il veicolo ? dritto. Il pneumatico posteriore diminuisce il proprio diametro di appoggio in misura molto maggiore rispetto al pneumatico anteriore, per via del profilo pi? ?appuntito?. In pratica, a parit? di velocit? lineare, andando ad aumentare l'angolo di piega la ruota posteriore aumenter? la propria velocit? di rotazione in misura maggiore rispetto alla ruota anteriore e questo porta con s? un aumento ?fantasma? del rapporto tra le due velocit? anche in assenza di pattinamento. Tramite un controllo preventivo del profilo della gomma, si fa in modo che il sistema tenga conto di questo aumento: traducendo, il pattinamento richiesto per l?innesco del Traction Control ? minore ad angoli di piega maggiori rispetto ad angoli di piega minori?.

        Sentito come funzionerebbe..... mi sorgon un paio di dubbi

        -il TC dovrebbe esser settato sul profilo delle gomme ?? e se uno cambia gomma che fa risetta tutto ??

        E se uno passa in pista da intagliate a slick com misure diverse che fa tenta il suicidio o si rassegna al TC che fa a caxxo suo ??

        -Fosse che il TC di gubellini per misurare l'inclinazione della moto sfrutta la differenza di rotolamento tra ant e post in curva ? sarebbe svelato l'arcano

        -In che misura verr? pre-settato sto benedetto TC, xch? nn mi sembra na passeggiata trovare il settaggio migliore, con tutte le variabili tra profilo gomma che cambia da modello a modello e con lo stato d'usura della gomma stessa, differenza di stili guida etc...

        Magari nn capisco un cavolo.... ma mi sembra ci sian un p? di lacune in tutto il ragionamento



        (diecicaratteri)

        Comment


        • Font Size
          #64
          Originally posted by AleCaf? View Post
          Comunque, tanto per aggiungere delle variabii onde compicare il discorso, eccovi un altro simpatico spunto...



          chiedo scusa se fosse cosa gi? nota.
          Miii Ale ? la 1? volta che lo vedo,
          ma qua siamo alla fantascienza

          .... tra un p? arriva il mago Oronzo col pendolino predice gli slittamenti delle ruote....e autosetta il TC

          Comment


          • Font Size
            #65
            Originally posted by @Anubi@ View Post
            Miii Ale è la 1° volta che lo vedo,
            ma qua siamo alla fantascienza

            .... tra un pò arriva il mago Oronzo col pendolino predice gli slittamenti delle ruote....e autosetta il TC
            Già visto e se non erro non è tanto lontano da quello ideato da Gubellini ovvero basa il proprio funzionamento allo stesso modo, sono solo supposizioni perché non è che si siano sprecati a dare informazioni
            Last edited by buzzy84; 21-05-08, 10:33.

            Comment


            • Font Size
              #66
              Originally posted by @Anubi@ View Post
              Miii Ale ? la 1? volta che lo vedo,
              ma qua siamo alla fantascienza

              .... tra un p? arriva il mago Oronzo col pendolino predice gli slittamenti delle ruote....e autosetta il TC
              Infatti qui vediamo il video che illustra il settaggio del medesimo.

              Si parte cinque facili chiavi alfanumeriche cinque...


              ta-ta-ta

              ta-ttaaaaaaa


              Poi la cosa si fa complicata....

              Col rischio poi di essere seriamente "rapiti"

              [YOUTUBE]tUcOaGawIW0[/YOUTUBE]


              Comment


              • Font Size
                #67
                Originally posted by buzzy84 View Post
                Uhhhhh quanti paroloni ...
                Lo ho leto anch'io il sito volevo solo sapere se ? un semplice controllo proprorzionle oppure hanno fatto una cosa pi? raffinata ... questa risposta me la pu? dare solo Diego G.
                In ogni caso sono sempre meno convinto che possa funzioanare bene per i motivi gi? citati ... adesso stacco davvero ...a dopo
                Prima chiedi le spiegazioni "serie" poi dici "Uh che paroloni!". Mio nonno avrebbe detto: Ma va un p? affanc... Tu fai il furbo ma non dici mai niente. Troppo facile fare sempre cos? ad ogni cosa che si dice.

                Cmq visto che la sboronaggine non ha fine ti posto anche questo cos? vedi anche i dettagli!

                Quindi si tratta di un PIC accoppiato a tabelle memorizzate in un 24LC16B una memoria cancellabile tipo EEPROM organizzata come otto blocchi di memoria da 256 x 8 bit con un canale di interfaccia compatibile I2C. Ovviamente ad uso e consumo degli IngeGNIeri!



                -------------------------------------------------------------------------
                ' Program Description
                ' -------------------------------------------------------------------------
                '
                ' GRIPOne ? sensibile agli interrupts forniti dai due sensori di prossimit?
                ' dai giri motore e dai due pulsanti per la gestionedei parametri di
                ' configurazione

                ' -------------------------------------------------------------------------
                ' Device Settings
                ' -------------------------------------------------------------------------

                DEVICE SX28, OSC4MHZ, TURBO, STACKX, OPTIONX
                FREQ 4_000_000
                IRC_CAL IRC_4MHZ

                'ID "GRIPOne_001"
                'WATCH anyVariable

                ' -------------------------------------------------------------------------
                ' IO Pins
                ' -------------------------------------------------------------------------

                fr_sensor VAR RB.0 'impulsi da sensore ruota anteriore
                rr_sensor VAR RB.1 'impulsi da sensore ruota posteriore
                rpm_sensor VAR RB.2 'impulsi da giri motore
                button_1 VAR RB.3 'pulsante di scelta
                button_2 VAR RB.4 'pulsante di incremento
                t_control VAR RB.5 'uscita controllo di trazione
                start_reset VAR RB.6 'uscita on/off sistema
                rpm_control VAR RB.7 'uscita controllo rpm

                SDA VAR RA.0
                SCL VAR RA.1



                ' -------------------------------------------------------------------------
                ' Constants
                ' -------------------------------------------------------------------------

                SlaveID CON $A0 ' for 24LC16B
                Ack CON 0
                Nak CON 1

                nr_parametri CON 6 'numero di parametri memorizzabili tramite i pulsanti



                ' -------------------------------------------------------------------------
                ' Variables
                ' -------------------------------------------------------------------------
                vettore1 VAR byte(16) 'array di variabili byte del bank1
                counter_fr_l VAR vettore1(0)
                counter_fr_h VAR vettore1(1)
                counter_rr_l VAR vettore1(2)
                counter_rr_h VAR vettore1(3)
                counter_rpm_l VAR vettore1(4)
                counter_rpm_h VAR vettore1(5)
                last_fr_l VAR vettore1(6)
                last_fr_h VAR vettore1(7)
                last_rr_l VAR vettore1(8)
                last_rr_h VAR vettore1(9)
                last_rpm_l VAR vettore1(10)
                last_rpm_h VAR vettore1(11)
                spinning_l VAR vettore1(12)
                spinning_h VAR vettore1(13)
                appoggio_l VAR vettore1(14)
                appoggio_h VAR vettore1(15)

                vettore2 VAR byte(16) 'array di variabili byte del bank1
                interrupts_signal VAR vettore2(0) 'byte per verificare quale interrupt ? stato avvertito
                eeprom_adr VAR vettore2(1) 'byte per puntare sulla eeprom
                byte_interrupt VAR vettore2(2) '0=fr, 1=rr, 2=rpm, 3=pulsante1, 4=pulsante2


                addr VAR Word ' address in 24LC16B
                addrLo VAR addr_LSB
                addrHi VAR addr_MSB

                outVal VAR vettore2(3) ' to 24LC16B
                inVal VAR vettore2(4) ' from 24LC16B

                tmpW1 VAR Word ' work vars
                tmpB1 VAR vettore2(5)
                tmpB2 VAR vettore2(6)
                tmpB3 VAR vettore2(7)
                tmpB4 VAR vettore2(8)

                demoltiplicatore VAR vettore2(8)

                word_appoggio1 VAR Word
                word_appoggio2 VAR Word
                word_appoggio3 VAR Word


                WATCH addr ' for Debug/Poll mode
                WATCH outVal
                WATCH inVal


                ' -------------------------------------------------------------------------
                ' Subroutine Declarations
                ' -------------------------------------------------------------------------

                CHECK_SPINNING SUB 0 '
                MEM_OUT SUB 3 ' write value to memory
                MEM_IN SUB 2 ' read byte from memory

                ' -------------------------------------------------------------------------
                INTERRUPT 50_000
                ' -------------------------------------------------------------------------

                ISR_Start:

                Ch1:
                IF fr_sensor = byte_interrupt.0 THEN ' if not, try next
                IF counter_fr_l < 255 THEN
                INC counter_fr_l
                GOTO Ch2
                ELSE
                counter_fr_l = 0
                IF counter_fr_h < 255 THEN
                INC counter_fr_h
                ENDIF
                GOTO Ch2
                ENDIF
                ELSE
                IF byte_interrupt.0 = 0 THEN
                byte_interrupt.0 = 1
                ELSE
                byte_interrupt.0 = 0
                ENDIF
                last_fr_l = counter_fr_l
                last_fr_h = counter_fr_h
                counter_fr_l = 0
                counter_fr_h = 0
                ENDIF

                Ch2:
                IF rr_sensor = byte_interrupt.1 THEN ' if not, try next
                IF counter_rr_l < 255 THEN
                INC counter_rr_l
                GOTO Ch3
                ELSE
                counter_rr_l = 0
                IF counter_rr_h < 255 THEN
                INC counter_rr_h
                ENDIF
                GOTO Ch3
                ENDIF
                ELSE
                IF byte_interrupt.1 = 0 THEN
                byte_interrupt.1 = 1
                ELSE
                byte_interrupt.1 = 0
                ENDIF
                last_rr_l = counter_rr_l
                last_rr_h = counter_rr_h
                counter_rr_l = 0
                counter_rr_h = 0
                ENDIF

                Ch3:
                IF rpm_sensor = byte_interrupt.2 THEN ' if not, try next
                IF counter_rpm_l < 255 THEN
                INC counter_rpm_l
                GOTO Ch4
                ELSE
                counter_rpm_l = 0
                IF counter_rpm_h < 255 THEN
                INC counter_rpm_h
                ENDIF
                GOTO Ch4
                ENDIF
                ELSE
                IF byte_interrupt.2 = 0 THEN
                byte_interrupt.2 = 1
                ELSE
                byte_interrupt.2 = 0
                ENDIF
                last_rpm_l = counter_rpm_l
                last_rpm_h = counter_rpm_h
                counter_rpm_l = 0
                counter_rpm_h = 0
                ENDIF

                Ch4:
                IF button_1 <> byte_interrupt.3 THEN 'istruzione pulsante di selezione
                IF byte_interrupt.3 = 0 THEN 'inverto il valore di riferimento
                byte_interrupt.3 = 1
                ELSE
                byte_interrupt.3 = 0
                ENDIF
                IF addr > nr_parametri THEN 'se l'indirizz supera il numero dei parametri allora lo azzero
                addr = 0
                ENDIF
                MEM_OUT addr, inVal 'send to 24LC16
                addr = addr + 2 'incremento di 2 l'indirizzo di riferimento alla eeprom di 2
                inVal = MEM_IN addr 'leggo il valore del parametro memorizzato nella eeprom
                ENDIF

                Ch5:
                IF button_2 <> byte_interrupt.4 THEN ' if not, try next
                IF byte_interrupt.4 = 0 THEN 'inverto il valore di riferimento
                byte_interrupt.4 = 1
                ELSE
                byte_interrupt.4 = 0
                ENDIF
                PAUSE 500 ' delay for Debug/Poll mode
                INC inVal ' get from 24LC16
                ENDIF
                GOTO ISR_Exit


                IF demoltiplicatore < 200 THEN
                INC demoltiplicatore
                ELSE
                demoltiplicatore = 0
                GOTO CHECK_SPINNING
                ENDIF

                ISR_Exit:

                RETURNINT

                ' ================================================== =======================
                PROGRAM Start
                ' ================================================== =======================


                ' -------------------------------------------------------------------------
                ' Program Code
                ' -------------------------------------------------------------------------

                Start:
                TRIS_B = %00011111 ' imposto gli ingressi e le uscite della porta B
                TRIS_C = %00000000 ' imposto gli ingressi e le uscite della porta C

                counter_fr_l = 255
                counter_fr_h = 255
                counter_rr_l = 255
                counter_rr_h = 255
                counter_rpm_l = 255
                counter_rpm_h = 255
                last_fr_l = 255
                last_fr_h = 255
                last_rr_l = 255
                last_rr_h = 255
                last_rpm_l = 255
                last_rpm_h = 255
                demoltiplicatore = 0

                Main:
                DO
                LOOP

                ' -------------------------------------------------------------------------
                ' Subroutines Code
                ' -------------------------------------------------------------------------

                '
                '

                CHECK_SPINNING:

                RETURN

                ' Use: MEM_OUT address, value
                ' -- writes 'value' to 24LC16B location at 'address'

                MEM_OUT:
                tmpW1 = __WPARAM12 ' copy address
                tmpB1 = __PARAM3 ' copy value

                I2CSTART SDA
                tmpW1_MSB = tmpW1_MSB & $03 ' get block value
                tmpW1_MSB = tmpW1_MSB << 1
                tmpW1_MSB = tmpW1_MSB | SlaveID ' create control byte
                tmpW1_MSB.0 = 0 ' set RW bit for write
                I2CSEND SDA, tmpW1_MSB ' send slave ID
                I2CSEND SDA, tmpW1_LSB ' send word address
                I2CSEND SDA, tmpB1 ' send data byte
                I2CSTOP SDA ' finish
                RETURN

                ' -------------------------------------------------------------------------

                ' Use: value = MEM_IN address
                ' -- reads 'value' from 24LC16B location at 'address'

                MEM_IN:
                tmpW1 = __WPARAM12 ' copy address

                I2CSTART SDA
                tmpW1_MSB = tmpW1_MSB & $03 ' get block value
                tmpW1_MSB = tmpW1_MSB << 1
                tmpW1_MSB = tmpW1_MSB | SlaveID ' create control byte
                tmpW1_MSB.0 = 0 ' set RW bit for write
                I2CSEND SDA, tmpW1_MSB ' send slave ID
                I2CSEND SDA, tmpW1_LSB ' send word address
                I2CSTART SDA ' restart for read
                tmpW1_MSB.0 = 1 ' set RW bit for Read
                I2CSEND SDA, tmpW1_MSB ' resend slave ID
                I2CRECV SDA, tmpB1, Nak ' get one byte
                I2CSTOP SDA
                RETURN tmpB1
                -------------------------------------

                Basta questo o ti devo spiegare tutto blocco per blocco?

                Comment


                • Font Size
                  #68
                  Ultro, ogni quanto si puo' leggere il dato sui sensori ?

                  Comment


                  • Font Size
                    #69
                    Originally posted by @Anubi@ View Post
                    tratto da qui: http://www.gpone.com/news/News.asp?NNews=1926

                    Fuori dai Gran Premi, hai sviluppato un sistema di Traction Control applicabile a qualsiasi moto: puoi spiegare come funziona?
                    ?Il mio progetto prevede un sistema a taglio della corrente su un singolo cilindro o su un singolo iniettore. Il sistema ? composto da una centralina e due sensori (da applicare alle due ruote), e si pu? appunto applicare a qualsiasi moto: strada, cross e motard. ? programmabile e per questo capace di adattarsi a tutte le esigenze, relative sia al mezzo sul quale ? installato, sia allo stile di guida del pilota. Utilizzando i due sensori posti sulle ruote questo sistema (come quelli utilizzati in MotoGP) ha il pregio di aumentare, in modo automatico, la propria sensibilit? in base all?inclinazione del veicolo. Un fattore da non sottovalutare infatti ? proprio il profilo del pneumatico: ad angoli di piega elevati le gomme poggiano sulla spalla e per questo il rotolamento dei due pneumatici cambia, rispetto alla situazione in cui il veicolo ? dritto. Il pneumatico posteriore diminuisce il proprio diametro di appoggio in misura molto maggiore rispetto al pneumatico anteriore, per via del profilo pi? ?appuntito?. In pratica, a parit? di velocit? lineare, andando ad aumentare l'angolo di piega la ruota posteriore aumenter? la propria velocit? di rotazione in misura maggiore rispetto alla ruota anteriore e questo porta con s? un aumento ?fantasma? del rapporto tra le due velocit? anche in assenza di pattinamento. Tramite un controllo preventivo del profilo della gomma, si fa in modo che il sistema tenga conto di questo aumento: traducendo, il pattinamento richiesto per l?innesco del Traction Control ? minore ad angoli di piega maggiori rispetto ad angoli di piega minori?.

                    Sentito come funzionerebbe..... mi sorgon un paio di dubbi

                    -il TC dovrebbe esser settato sul profilo delle gomme ?? e se uno cambia gomma che fa risetta tutto ??

                    E se uno passa in pista da intagliate a slick com misure diverse che fa tenta il suicidio o si rassegna al TC che fa a caxxo suo ??

                    -Fosse che il TC di gubellini per misurare l'inclinazione della moto sfrutta la differenza di rotolamento tra ant e post in curva ? sarebbe svelato l'arcano

                    -In che misura verr? pre-settato sto benedetto TC, xch? nn mi sembra na passeggiata trovare il settaggio migliore, con tutte le variabili tra profilo gomma che cambia da modello a modello e con lo stato d'usura della gomma stessa, differenza di stili guida etc...

                    Magari nn capisco un cavolo.... ma mi sembra ci sian un p? di lacune in tutto il ragionamento

                    1) Anche sul 1098R ? importante il profilo delle gomme. Infatti ti mettono in guardia di non usarne di diverse (vedesi Master Bike dove il 1098R ha dato forfait per l'impiego di d209 GP racer in luogo delle Diablo Supercorsa previste)

                    2) Dubito che si possa "misurare" l'angolo di piega tramite la differenza di rotolamento progressivo tra le 2 ruote, anche se con un algoritmo apposito potrebbe essere teoricamente possibile, ma si dovrebbe conoscere ed utilizzare sempre lo stesso tipo di gomma.
                    Ci sarebbero poi da apportare fattori di correzine quali la diminuzione del diametro dovuto all'usura, pi? veloce al posteriore e poi la velocit? di percorrenza n modo da correggere l'effetto centrifuga delle gomme.
                    Naaaa, troppo complicato per un aggeggio da 2 soldi.

                    3) La taratura ? ovvio che richiede un periodo di apprendistato ma su 15 x 15 settaggi considera che i primi e gli ultimi sono inutilizzabili, e che quindi quelli effettivamente buoni, si riducono enormemente.

                    Comment


                    • Font Size
                      #70
                      Originally posted by TarTaRo View Post
                      Ultro, ogni quanto si puo' leggere il dato sui sensori ?
                      Il campionamento ? su min 3 punti fino ad un max di 6 (i bulloni del disco freno), e se la velocit? minima di utilizzo ? 20km orari, tocca vedere quanti giri f? la ruota a 20km/h e moltiplicarli per il minimo dei 3 punti di lettura. Quello ? il minimo sindacale affinche il TC abbia una certa accuratezza.

                      Il Campionamento max non ? un problema elettronico, in quanto pu? essere elevatissimo, ma si tratta di limitazioni meccaniche, tipo effetto centrifuga della gomma e altre cose del genere.

                      Comment


                      • Font Size
                        #71
                        Be' si potrebbe quindi aumentare con una ruota fonica..

                        Comment


                        • Font Size
                          #72
                          Ultrone sei il + SBORONE delgi sboroni!!! Qlksa ci ho capito anche se non sono un ingeGNIere...assomiglia molto al linguaggio di programmazione macro dei CNC...ma alla fine, non hai dato alcuna risposta ai miei interrogativi...

                          Io sono favorevole tanto quanto sono contrario, ad esempio, alla PC...ma mi resta il dubbio che, a seconda della taratura, o non mi serva quando sono in piega (leggi : io apro e mi ribalto) o mi rompe i maroni sul dritto (leggi:RATATATATATATATATATA)

                          Comment


                          • Font Size
                            #73
                            Io sarei uno sborone? Ma vaaaaa!

                            Ale hai raGGione, ora tocca solo che qualche baBBeo lo compri, lo provi e ci dica che razza di fetenzia sia il prodotto.

                            Confesso che ieri quando ho telefonato in FG era per avere informazioni per comprarlo...
                            Last edited by Ultrone; 21-05-08, 12:40.

                            Comment


                            • Font Size
                              #74
                              Ultrone...

                              MAVAAAAFFAAAAAN.....
                              (scherzoso, eh?)



                              NON HO CAPITO NIENTE!!!

                              riesci a spiegarmelo, almeno tenti...

                              Ale, ho fatto il classico e son laureato in lettere io!

                              Comment


                              • Font Size
                                #75
                                Ale........so caXXi tua!!!

                                Ultrone scrive e sboroneggia e Ultrone mo ha dda scccpieg&#224;...

                                Comment

                                X
                                Working...
                                X