Capitolo 5
Modello del Pilota Virtuale
In questo capitolo verranno descritte le principali caratteristiche del sis-tema pilota virtuale, sviluppato in [4]. Il pilota deve possedere essenzialmente due capacità:
• evitare la naturale caduta del veicolo, dovuta all’instabilità intrinseca; • far seguire al veicolo traiettorie prestabilite con sufficiente
approssi-mazione.
Le due abilità sono esercitate per mezzo della gestione di due entità: • la coppia che il pilota esercita sul manubrio;
• La forza di trazione/frenata esercitata nel contatto fra ruota posteriore e terreno.
5.1
Strategia di controllo per regolare il rollio
Per contrastare il moto di caduta da un lato, il pilota deve agire sul manubrio in maniera tale da sterzare dallo stesso lato; così facendo, il vei-colo raggiunge una condizione equilibrio dinamico fra azioni che tendono ad aumentare il rollio ed azioni opposte. Per effettuare una curva la serie di azioni che un pilota deve compiere diventa più complessa e meno intuibile. Tuttavia, si può affermare che nella prima fase di impostazione della curva il pilota deve sterzare dalla parte opposta, in modo tale da favorire il moto di
5.2 Controllo della traiettoria 66
rollio favorevole alla traiettoria voluta; succesivamente, dopo aver raggiunto l’ angolo di rollio necessario, deve essere esercitata un’azione sterzante op-posta rispetto a quella della prima fase, per stabilizzare il veicolo in quella posizione.
Per percorrere una curva con una data curvatura Ct , il motoveicolo
deve assumere un determinato angolo di rollio1 Φ
r tale da garantire
l’equi-librio globale. Trascurando gli effetti giroscopici2 e quelli dovuti agli spessori
non nulli delle ruote, il valore dell’angolo di rollio di equilibrio come è stato ricavato in [4] è il seguente: Φr = arctan µ u2 NCt g ¶ (5.1) Si noti che con Ct(t) si indica che la curvatura è funzione del tempo e, di
conseguenza, anche Φr.
La legge di controllo utilizzata per controllare il rollio del motociclo è la seguente: τ(t) = K0Φ(t) + K¨ 1˙Φ(t) + K2 h Φ(t) − Φr(t + Tpr) i (5.2) Dove Tpr è il tempo di previsione del rollio; esso ha un significato fisico
descrivibile come la capacità di stimare l’angolo di rollio in instanti futuri. I valori dei coefficienti Ki non sono costanti, ma funzioni di Φr(t + Tpr).
5.2
Strategia di controllo per guidare su una
traiettoria imposta
Si definiscono gli errori di posizione ∆R(t) e di direzione ∆Ψ(t) come in figura (5.1): La posizione del veicolo (punto N(t)) varia nel tempo e ad essa corrisponderà il punto P (t) , più vicino ad esso fra tutti quelli della traiettoria imposta. Si ha che:
∆R(t) = fr[xN(t), yN(t), xP(t), yP(t)] ∆Ψ(t) = fΨ[xN(t), yN(t), xP(t), yP(t), Ψv(t)] Ct(t) = fCt[xN(t), yN(t), xP(t), yP(t)] (5.3)
1Il pilota mantiene il motoveivolo intorno all’ angolo di rollio di equilibrio. 2Questi effetti sono trattati in dettagli nel capitolo (2).
5.2 Controllo della traiettoria 67
Figura 5.1: Definizione errori di posizione e di traiettoria
Qualora il veicolo si trovi ad un certo istante con i suddetti errori non nulli, il pilota deve agire in maniera tale da azzerare tali errori, mantenendo il veicolo in equilibrio. Il modo di agire per recuperare la condizione voluta varia da pilota a pilota ed è fortemente influenzato dall’esperienza e dallo stile di guida (vedi Fig. 5.2).
Figura 5.2: Recupero traiettoria voluta
La legge di controllo utilizzata per essere in grado di guidare il veicolo su traiettorie imposte è la seguente:
τ(t) = K0Φ(t) + K¨ 1˙Φ(t) + K2 h Φ(t) − Φr(t + Tpr) i + − K3∆R(t + Tpe) − K4∆Ψ(t + Tpe) (5.4)
I coefficienti sono positivi; i segni − che precedono i termini dovuti agli errori di posizione e di traiettoria permettono di simulare il comportamento reale. Infatti, in un primo momento il controllore agisce sullo sterzo allontanandosi maggiormente dal percorso voluto, ma inclinandosi in maniera favorevole a
5.3 Influenza dei coefficienti 68
recuperare la posizione. Successivamente, intervengono anche i contributi dovuti al rollio e la coppia di sterzo cambia di segno. Il Tpe è il tempo
di previsione degli errori di traiettoria; esso serve a simulare le capacità di percezione dello stato del sistema e di percezione dello stato futuro (vedi Fig. 5.3).
Figura 5.3: Previsione dell’errore di traiettoria
È opportuno segnalare che sono stati introdotti tempi di previsione se-parati, infatti:
• Tpe rappresenta quanto lontano valutare gli errori di posizione e
di-rezione
• Tpc rappresenta l’anticipo con cui iniziare una manovra
5.3
Influenza dei coefficienti sull’azione di
con-trollo
I 5 coefficienti precedentemente introdotti, assieme ai tempi di previsione, determinano il comportamento del driver. Qualitativamente gli effetti di ciascun coefficiente si possono schematizzare come segue:
• K2: all’aumentare di questo parametro il sistema reagisce più
5.4 Controllo della velocità longitudinale 69
oscillazione del moto di rollio. Sopra un certo limite il sistema diventa instabile.
• K1: all’aumentare di questo parametro si ha un maggiore smorzamento
dell’oscillazione del moto di rollio attorno alla posizione di equilibrio, rendendo il sistema più stabile.
• K0: all’aumentare di questo parametro si ha una maggiore prontezza
nel reagire alle perturbazioni dalla condizione di equilibrio, che tuttavia viene mantenuta con oscillazioni più ampie. In alcuni casi si arriva all’instabilità.
• K3 e K4: all’aumentare dei parametri il sistema reagisce più
pronta-mente agli errori di posizione e traiettoria. Tutti i coefficienti sono funzione di Φr.
5.4
Strategia di controllo per regolare la
velo-cità longitudinale
Per regolare la velocità longitudinale è stato utilizzato un controllore che agisce sulla forza di trazione/frenatura Ft, applicata al posteriore. La legge
di controllo è la seguente: ˙ F(t) = −C1˙uN(t) + C2 ³ udes(t) − uN(t) ´ (5.5) C1 e C2 sono costanti positive e udes è la velocità longitudinale desiderata.
Questo tipo di controllo non tiene di conto delle caratteristiche del motore e presuppone di poter usufruire, istante per istante, di tutta la forza a ter-ra necessaria. Tuttavia, lo scopo di questa legge di controllo è quello di mantenere la velocità in manovre dove essa è pressoché costante.
5.5 Implementazione del controllore in Matlab e Simulink 70
5.5
Implementazione del controllore in Matlab
e Simulink
Per poter far compiere al veicolo una determinata manovra è necessario creare una rappresentazione analitica della traiettoria da seguire, in modo da poter determinare ad ogni passo di simulazione i seguenti dati:
• posizione del punto della traiettoria più vicino al veicolo • direzione della tangente alla traiettoria nel punto più vicino • curvatura della traiettoria nel punto più vicino
Date le coordinate di un certo numero di punti del percorso da seguire for-nite in input, viene generata in ambiente Matlab l’ascissa curvilinea, che verrà utilizzata per creare una spline cubica che interpola la traiettoria per i punti dati. Essa viene discretizzata con un passo prestabilito, per calcolare la direzione della tangente alla traiettoria e la sua curvatura, come si vede in Fig. 5.4.
Figura 5.4: Traiettoria discretizzata
Lo schema esterno del controllore completo sviluppato in ambiente Simulink è schematizzato in Fig. 5.5.
5.5 Implementazione del controllore in Matlab e Simulink 71
5.5 Implementazione del controllore in Matlab e Simulink 72
Figura 5.6: Schema del controllore per la coppia di sterzo