CHAPITRE 1: INTRODUCTION - PIC Vietnam · comme la masse, la taille, le diamètre de deux roues, la...

42
Scooter en équilibre Tuan Dat MAI–Code d’étudiant P0000016 Promotion: 2000-2005 1 PFIEV-IPHCM CHAPITRE 1 : INTRODUCTION L’objetif de mon sujet est une combinaison de deux pensées: l’équilibration de l’homme sur deux pieds et la mobilité de voiture sur quatre roues dans le transport. En concernant du sujet, on connaît généralement les principals de l’équilibration de Pendule Inverse, la coordination et le traitement de signal des capteurs et l’amplificateur des puissances de MOSFET. À cause de l’intégration et de la programmation des capteurs, j’ai recherche des méthods pour ameliorer et pour la combinaison des capteurs bon marchés. C’est la raison pour la quelle, je vais avoir des signaux délicieux de capteurs. Dans le cadre de mon sujet, je’ai développé un modèle réel lequel est un véhicule sur deux roues. L’axe de deux roues est le même (le axe de deux roues du vélo est parallèl). Le modèle est équipé quelque capteur pour mesurer l’angle, la vitesse de rotation et la vitesse du modèle. Ces capteurs d'angles doivent être petits, légers et peu coûteux. J’ai choisi un accéléromètre ADXL202A et un gyro ENC-03, MP325. L’ADXL202A, cet appareil électronique permet de mesurer l’accélération selon deux axes par rapport à l'horizontale. La technologie la plus simple à mettre en oeuvre utilise en réalité deux accéléromètres. En mesurant la variation du champ gravitationnel terrestre projeté sur les axes du capteur, on déduit les angles formés entre le capteur et la verticale. De par son principe de fonctionnement, ce capteur risque de poser des problèmes lorsque le capteur sera déplacé, car les accélérations seront susceptibles de perturber les mesures d'inclinaisons. Le MP325 est un gyro piézo-électrique, est utilisé dans des R/C hélicoptères, mais son fonction est mesurer la vitesse de rotation. J’utilise un accéléromètre deux axes et un gyro comme des capteurs d’angles. Pour des capteurs d’angle, des microcontrôleurs et des actioneurs, le modèle possède la capacité d’auto équilibration sur deux roues et du mouvement. Avec le structure que deux roues sont parallèles, le centre de gravité du modèle est toujours dans le zone du support de deux roues pendant le mouvement. Dans le système des capteurs, pour éliminer le bruit/pertubation et l’erreur du signal, pour estimer précissement la valeur mesurée des capteurs combinés, les filtres de Kalman sont appris et utilisés pour avoir le résultat optimal des états du modèle, implique les valeurs des capteurs et la commande de l’utiliseur. On est dans un système d'état dans lequel, il y a des perturbations. On modélise dans ce cas l'écart par rapport à l'équation déterministe. Les filtres de Kalman sont les meilleurs estimateurs des équations d'états. Quand l’équations de la bruit/pertubation et de mesure sont établi sur chaque capteur, les filtres de Kalman estimatent des signaux pertubés de source d’entrée (les signaux de inclinomètre et de gyro) pour avoir des signaux ‘purs’ à la source de sortie: pas de pertubation et pas d’error, parce ce que la coordination des signaux

Transcript of CHAPITRE 1: INTRODUCTION - PIC Vietnam · comme la masse, la taille, le diamètre de deux roues, la...

Scooter en équilibre Tuan Dat MAI–Code d’étudiant P0000016

Promotion: 2000-2005 1 PFIEV-IPHCM

CHAPITRE 1: INTRODUCTION L’objetif de mon sujet est une combinaison de deux pensées: l’équilibration de

l’homme sur deux pieds et la mobilité de voiture sur quatre roues dans le transport. En concernant du sujet, on connaît généralement les principals de l’équilibration de Pendule Inverse, la coordination et le traitement de signal des capteurs et l’amplificateur des puissances de MOSFET. À cause de l’intégration et de la programmation des capteurs, j’ai recherche des méthods pour ameliorer et pour la combinaison des capteurs bon marchés. C’est la raison pour la quelle, je vais avoir des signaux délicieux de capteurs.

Dans le cadre de mon sujet, je’ai développé un modèle réel lequel est un véhicule sur deux roues. L’axe de deux roues est le même (le axe de deux roues du vélo est parallèl). Le modèle est équipé quelque capteur pour mesurer l’angle, la vitesse de rotation et la vitesse du modèle. Ces capteurs d'angles doivent être petits, légers et peu coûteux. J’ai choisi un accéléromètre ADXL202A et un gyro ENC-03, MP325. L’ADXL202A, cet appareil électronique permet de mesurer l’accélération selon deux axes par rapport à l'horizontale. La technologie la plus simple à mettre en oeuvre utilise en réalité deux accéléromètres. En mesurant la variation du champ gravitationnel terrestre projeté sur les axes du capteur, on déduit les angles formés entre le capteur et la verticale. De par son principe de fonctionnement, ce capteur risque de poser des problèmes lorsque le capteur sera déplacé, car les accélérations seront susceptibles de perturber les mesures d'inclinaisons. Le MP325 est un gyro piézo-électrique, est utilisé dans des R/C hélicoptères, mais son fonction est mesurer la vitesse de rotation.

J’utilise un accéléromètre deux axes et un gyro comme des capteurs d’angles. Pour des capteurs d’angle, des microcontrôleurs et des actioneurs, le modèle possède la capacité d’auto équilibration sur deux roues et du mouvement. Avec le structure que deux roues sont parallèles, le centre de gravité du modèle est toujours dans le zone du support de deux roues pendant le mouvement.

Dans le système des capteurs, pour éliminer le bruit/pertubation et l’erreur du signal, pour estimer précissement la valeur mesurée des capteurs combinés, les filtres de Kalman sont appris et utilisés pour avoir le résultat optimal des états du modèle, implique les valeurs des capteurs et la commande de l’utiliseur. On est dans un système d'état dans lequel, il y a des perturbations. On modélise dans ce cas l'écart par rapport à l'équation déterministe. Les filtres de Kalman sont les meilleurs estimateurs des équations d'états.

Quand l’équations de la bruit/pertubation et de mesure sont établi sur chaque capteur, les filtres de Kalman estimatent des signaux pertubés de source d’entrée (les signaux de inclinomètre et de gyro) pour avoir des signaux ‘purs’ à la source de sortie: pas de pertubation et pas d’error, parce ce que la coordination des signaux

Scooter en équilibre Tuan Dat MAI–Code d’étudiant P0000016

Promotion: 2000-2005 2 PFIEV-IPHCM

d’entrée (le gyro mesure la vitesse de rotation, il est différent de la valeur de l’inclinomètre: l’angle).

À partie de signaux mesurés, et quelque grandeurs caractéristiques du modèle comme la masse, la taille, le diamètre de deux roues, la puissance du moteur électrique, je vais avoir des valeurs du moment inertie, la vitesse maximale de mouvement, l’aire du support des roues, puis je vais avoir les commandes suitables (commande par retour d’état) pour le modèle est en équilibre.

Tous le modèle est commandé par un microcontrôleurs PIC 18F452. Il est un microcontrôleur de PIC, lesquel a la capacité pour résoudre des signaux de capteurs et transfèrent à l’amplificateur de puissance du moteur ou l‘actioneur hyraulique. Le microcontrôleur marche comme un système des filtres de Kalman avec les signaux des capteurs d’inclinomètre et gyro. Les signaux resultats sont traités avec les signaux de codeurs incrémentals (équippé avec dex roues) et il a les commandes deux moteurs électriques, maintient le modèle en équilibre et en mouvement (à droit, à gauche...). Dans mon expérience, le temps pour completer un process du filtre de Kalman se passe environ 1.6ms, et le temps pour les calculs de regulateur se passe environ 500μs avec la fréquence auquelle le PIC18Fxxx marche est 10MHz PLL. La communication entre le PIC et l’ordinateur est la communication d’USART pour cablirer des cateurs et la covariance de bruit. L’objectif de mon sujet peut être un expérience de la fabrication d’un Pendule Inverse est appliqué dans la fabrication des robots en équilibres et du robot humanoïde. Mes travails sont les suivantes : -Calculer les paramètres dynamiques d’ un modèle Scooter d’équilibre. A partir de ces résultats, Nous allons effectuer des simulations et construire un shéma mécanique. -Fabriquer une maquette et des cartes électroniques : le circuit d’attaque MOSFET, la carte des puissances de MOSFET, la carte des capteurs, la carte pilotage et la programmation de microcontrôleur à commander. Le but du sujet : fabriquer d’une maquette de transport qui se maintient en équilibre sur deux roues parallèles. L’utilisation du MATLABTM-SIMULINK pour simuler est les expériences avant de faire les maquettes réelles. Le véhicule est un châssis en inox lequel associe également un guidon en inox, un plancher scooter en aluminium et deux roues intégrés deux moteurs en parallèles. Cette simulation se prouve qu’il est possible de commander ce système. Le véhicule consiste deux moteurs à courant continu intégrés dans deux roues sont contrôlés par un microcontrôleur PIC18F452, grâce à un amplificateur d’énergie électrique pour des moteurs. Les accus lesquels sont montés sous le plancher sont l’alimentation électrique pour le véhicule.

Scooter en équilibre Tuan Dat MAI–Code d’étudiant P0000016

Promotion: 2000-2005 3 PFIEV-IPHCM

CHAPITRE 2: L’OBJECTIF Le but de projet est la construction d’un véhicule en auto balance, il est capable

de marcher dans une surface plane. Il sont le développement le résultat dynamique du pendule inverse. La capacité de balance sur deux roues est très efficace pour la mobilité, la facilité de rotation dans l’espace serré.

Faire la connaissance des scooters et robots en équilibre, le principe de l’autobalance.

Calculer les paramètres dynammiques du véhicule, les équations d’état du modèle.

Construire le simulation en MSc Nastran và Matlab. Projeter le modèle et fabriquer la structure mécanique du modèle. La carte principale pour pilotage, lequel traite des signaux des capteurs,

et pilote des aux moteurs à courant continu. Apporter le circuit pour unir l’accéléromètre et le gyro. Les cartes de l’amplificateur de courant ayant les puissances de

MOSFETs (le circuit d’attaque MOSFET), type de push-pull en hautes fréquences.

Les cartes des MOSs parallèles qui permet le pilotage en haute fréquence du circuit du pont en H de MOSFET.

Construire l’algorithme du pilotage et du filtre de Kalman sur PIC18F452.

La communication entre le PIC 18F452 et l’ordinateur. Le code source à PIC 18F452.

La méthode du recherche: Construire le modèle géneral en simulation:

o Le modèle équivalent – le pendule inverse. o Le simulation de vN Nastran et MatLAb-Simulink: scooter en

équilibre. S’approcher le modèle réel:

o Projeter le châssis du scooter. o Les cartes de puissance de MOSFET (commander des moteurs). o Les capteurs (angle, position). o Calibrer la valeur réel des capteurs.

Scooter en équilibre Tuan Dat MAI–Code d’étudiant P0000016

Promotion: 2000-2005 4 PFIEV-IPHCM

o La carte principale pour le microcontrôleur et des cartes des capteurs.

o Le code source.

Scooter en équilibre Tuan Dat MAI–Code d’étudiant P0000016

Promotion: 2000-2005 5 PFIEV-IPHCM

CHAPITRE 3: MISE EN ŒURVE

3.1 Mise en œuvre d’un scooter en équilibre

Le pricipe de fonctionnement du scooter en équilibre est sa gravité. Pour

équilibrer, la gravité doit être au-dessus des roues. Cependant, il est difficile de savoir où est la gravité du scooter. Donc, il faut relativement tenir le guidon en vertical.

Si on s’incline de l’avant quand on est à scooter, il accélérate à aller tout droit et si on s’incline de l’après, il accélérate à l’après. Si on veut s’arrêter, il se faut s’incline à l’opposite de direction du mouvement.

3.2 Équation d’état du modèle

Où:

Jthân : inertie du châssis (Nm2). Jbánh, JRL, JRR : inertie de la roue (Nm2).

En équilibre S’incline

Scooter en équilibre Tuan Dat MAI–Code d’étudiant P0000016

Promotion: 2000-2005 6 PFIEV-IPHCM

Mthân, Mbánh : masse du châssis, masse de la roue (kg). R : rayon de la roue (m). D : distance entre deux roues (m). L : distance entre la base du châssis et le centre de gravité du

châssis (m). θ : angle (rad). δ : vitesse de rotation (rad).

• En fin, on a des équations d’état:

XCY

XgM thân θθθ ⋅

−=..

[3–1]

θθ CLMX

LYgX

gMLxthân

thânbánhTB ⎟⎟

⎞⎜⎜⎝

⎛−+

⎟⎟⎟

⎜⎜⎜

⎛+−=

134

34..

[3–2]

θ

θθ

θθ

C

XY

LMXLY

xx

XgM

XMLg

xx

thânbánh

bánh

thân

thân

bánh

bánh

⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢

⎟⎟⎠

⎞⎜⎜⎝

⎛−

+

⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢

⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢

+

⎟⎟⎟

⎜⎜⎜

⎛−

=

⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢

0

134

0

0001000

034100

0010

.

.

..

.

..

.

[3–3]

θ

θθθ

Cxx

x bánh

bánh

bánh⎥⎦

⎤⎢⎣

⎡+

⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢

⎥⎦

⎤⎢⎣

⎡=⎥

⎤⎢⎣

⎡00

01000001

.

.

[3–4]

3.3 Mise en ouvre le régulateur en MatLAB

Placement des pôles par retour d’état: le régulateur est une commande par retour d’état, appliqué au système d’état, quatre variables d’état, un système d’entrée.

LCommande par retour d’état

mbánh = 7kg; Mthân = 90kg; R = 0.2m; L = 1m

Scooter en équilibre Tuan Dat MAI–Code d’étudiant P0000016

Promotion: 2000-2005 7 PFIEV-IPHCM

⎥⎥⎥⎥

⎢⎢⎢⎢

⎡−

=

03290.1900100009620.15000010

A ; ⎥⎥⎥⎥

⎢⎢⎢⎢

=

1653.00

0.20370

B [3–5]

Le système est monovariable, mai il est commandable ? On utilise sur MatLAB: ctrb

>>P = ctrb(A,B)) <enter>

P =⎥⎥⎥⎥

⎢⎢⎢⎢

−−−−

01942.301653.01942.301653.0005935.202037.0

5935.202037.00

[3–6]

>>det(P) <enter> ans =0.1701

|P| ≠ 0 commandable La commande sera facile ? >>cond(P) <enter> ans =80.251 la difficulté de commande est faible Les pôles du système: >>damp(A) <enter>

Eigenvalue Damping Freq. (rad/sec)

4.3965 -1.0000 4.39

0 -1.0000 0

0 -1.0000 0

- 4.3965 1.0000 4.39

Parce qu’il ont des pôles positifs et des pôles zéros instable. Donc, on doit

établir un régulateur pour avoir des nouveaux pôles stables utiliser la commade acker sur MatLAB pour avoir le vecteur de gain soit un matrice de satabilité A’=A-BK (équation Ackermann).

>>K = acker(A,B,V) <enter> t=0:0.1:10; sysCL=ss(A-B*K,zeros(4,1),C,D);[y,t,X]=initial(sysCL,[0 0.01 0 0],t); Résultat en MatLAB (ne limite pas la valeur de couple du moteur).

Scooter en équilibre Tuan Dat MAI–Code d’étudiant P0000016

Promotion: 2000-2005 8 PFIEV-IPHCM

Le résultat des calculs: a) Choisir le pôle V = [-0.7-j;-0.7+j;-8.2+3*j;-8.2-3*j]

K = [-87.4505 -100.9797 -834.0498 -232.1682]

b) Choisir le pôle V = [-2 – i; -2 + i; -5.4 + 3i; -5.4 - 3i]

K = [-146.8829 -159.0770 -820.5842 -285.6180]

c) Choisir le pôle V = [-0.5–i; -0.5+i; -5.4+3i; -5.4-3i]

K = [-36.7207 -39.7692 -466.0578 -120.4199]

Scooter en équilibre Tuan Dat MAI–Code d’étudiant P0000016

Promotion: 2000-2005 9 PFIEV-IPHCM

d) Choisir le pôle V = [-3.6; -3.6; -3.6+3i; -3.6-3i]

K = [-219.0939 -193.5529 -912.0032 -325.6883].

On choisit le troisième vecteur de pôles V, parce que le gain n’est pas plus

grand, dont on peut facilement commander le scooter en pilotage les moteurs à courant continu (les valeurs de modulation de langeur d’impulsions (MLI)) dans chaque moteur ne changeront pas plus larges, et c’assurer le fonctionnement de la carte de puissance de MOSFET. En revanche, modèle est robust à plus longtemps (7 secondes).

Scooter en équilibre Tuan Dat MAI–Code d’étudiant P0000016

Promotion: 2000-2005 10 PFIEV-IPHCM

3.4 Simulation en vN Nastran et Simulink

Le modèle est construit par vN Nastran

Stabilisation, ne déplace pas K = [-36.7207 -39.7692 -466.0578 -120.4199]

Le position est fixé – angle du châssis

Scooter en équilibre Tuan Dat MAI–Code d’étudiant P0000016

Promotion: 2000-2005 11 PFIEV-IPHCM

Le position est fixé – position des roues

Remarque: le scooter en équilibre est rapidement stable (6 secondes), après il va à l’ancien position (pendant 10 secondes), dont l’homme qui untilise ce scooter ne sent pas incommodant.

Le modèle stablement va tout droit (régulateur PD de l’ angle et régulateur P de la vitesse) , K = [0 -39.7692 -466.0578 -120.4199]

Le modèle va tout droit – angle du châssis

Scooter en équilibre Tuan Dat MAI–Code d’étudiant P0000016

Promotion: 2000-2005 12 PFIEV-IPHCM

Le modèle va tout droit – position des roues

Remarque: le scooter en équilibre est rapidement stable (2 secondes) et la vitesse du modèle est constante aussi.

3.5 Filtre de Kalman Introduction : Proposé par Proffeseur Kalman en 1960, les filtres de Kalman introduisent la

notion de prédiction: prédire l'instant n×t, alors qu'on ne connait que l'instant k×t (avec k < n). Ils describent un solution récursif pour résourde le problème des filtres des discretes ‘data’ donées linéaires. Les filtres de Kalman sont un ensemble des équations mathématiques lesquels founir et estiment le state de process précis: dans le passé, le présente et le futur quand la nature précise du système n’est pas savu par l’estimation de manière optimale, le vecteur d'état x(n) connaissant les mesures ( u(0), u(1),...,u(n) ), les filtres de Kalman réduits et efficaces pour l'assimilation de temps données pour améliorer les performances de nos filtres dans les périodes instables du modèle.

Le filtre de Kalman permet: • Les mesures sont imprécises/incertaines. • Le modèle est simpliste. • On veut savoir la fiabilité d’une estimation si de l’état courant si.

Scooter en équilibre Tuan Dat MAI–Code d’étudiant P0000016

Promotion: 2000-2005 13 PFIEV-IPHCM

Avant le processus du filtre de Kalman

Apres le processus du filtre de Kalman

Dans le cas général du filtre de Kalman, on cherche à minimiser la trace de matrice de covariance du vecteur d'état xk engendré par l'équation de commande.

, x ∈ ℜn [3–7]

, z ∈ ℜm [3–8] wk,vk sont les bruits blancs additifs et:

[3–9]

[3–10] Q : la covariance du bruit R : la covariance du mesurement Filtrage de Kalman: processus itératif d’estimation du vecteur. Estimation à l’instant k:

Scooter en équilibre Tuan Dat MAI–Code d’étudiant P0000016

Promotion: 2000-2005 14 PFIEV-IPHCM

[3–11] Pk traduit la confiance que l’on a en l’estimation.

[3–12]

Si on connaît 1−

kx , la meilleure estimation possible de −∧

kx est:

[3–13]

Processus du filtre de Kalman discrete

On a des équation d’état en Discrete Kalman:

[3–14]

[3–15]

[3–16]

[3–17]

[3–18] Filtres de Kalman itérés:

• Globalement. • Localement.

Objectif: limiter l’influence des linéarisations.

Applications:

− Suivi de la trajectoire d’une particule dans le plan.

− Estimation des paramètres d’une ellipse à partir d’un nuage de points.

Time Update (“Predict”)

Mesurement Update (“Correct”)

Scooter en équilibre Tuan Dat MAI–Code d’étudiant P0000016

Promotion: 2000-2005 15 PFIEV-IPHCM

− Suivi des paramètres externes d’une caméra en trou d’épingle.

Le processus du filtre de Kalman

L’algorithme du filtre de Kalman sur microcontrôleur PIC18F452:

Le capteur de l’angle est l’intérgration du gyro et de l’accéléromètre. Les signaux de deux capteurs sont intégrés par le filtre de Kalman. Le filtre a 2 états: l’angle et le gyro_bias: biaisé.

Gyro_bias est automatiquement réglé par le filtre. Il est très difficile pour programmer le filtre de Kalman à un microcontrôleur. J’ai trouvé ce code source dans le site www.rotomotion.com et l’explique dans ce page.

Il faut intégrer à partir de l’initialisation X et P

⎥⎦

⎤⎢⎣

⎡=

1001

initP [3–19]

float angle; float q_bias; float rate;

R_angle est la covariance du bruit de mesure R_angle = 0.03;

Q est une matrice 2x2, est la covariance du bruit de commande. Dans ce cas,

elle représente la confidance de l’accéléromètre au gyro.

Scooter en équilibre Tuan Dat MAI–Code d’étudiant P0000016

Promotion: 2000-2005 16 PFIEV-IPHCM

⎥⎦

⎤⎢⎣

⎡=⎥

⎤⎢⎣

⎡=

003.000001.0

_00_gyroQ

angleQQ [3–20]

State_update()

State_update est fonctionné chaque la période dt.

Vecteur d’état: ⎥⎦

⎤⎢⎣

⎡=

biasgyroangle

X_

[3–21]

La représentation d’état de ce filtre

⎥⎦

⎤⎢⎣

⎡ −=

⎥⎥⎦

⎢⎢⎣

⎡= •

••

0_

_

biasgyrogyro

biasgyro

angleX [3–22]

La covariance de l’erreur d’estimation P(t) obéit à l’équation différentielle

Pdot = A*P + P*A' + Q

QAPPAP +⋅+⋅=•

' [3–23]

A est le Jacobian du Xdot:

( ) ( )

( ) ( )

⎥⎦

⎤⎢⎣

⎡ −=

⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢

⎟⎠⎞

⎜⎝⎛

⎟⎠⎞

⎜⎝⎛

⎟⎠⎞

⎜⎝⎛

⎟⎠⎞

⎜⎝⎛

= ••

••

0010

_

__

_

biasgyrod

biasgyrod

angled

biasgyrod

biasgyrod

angled

angled

angled

A [3–24]

À raison de la capacité des microcontrôleurs, il faut avoir quelque calculs pour

optimiser le filtre de Kalman;

⎥⎦

⎤⎢⎣

⎡−

−−−=

gyroQPPPPangleQ

P_]1][1[

]1][1[]0][1[]1][0[_=

= ⎥⎦

⎤⎢⎣

⎡+⎥

⎤⎢⎣

⎡−⎥

⎤⎢⎣

⎡+⎥

⎤⎢⎣

⎡⎥⎦

⎤⎢⎣

⎡ −gyroQ

angleQPPPP

PPPP

_00_

0100

]1][1[]0][1[]1][0[]0][0[

]1][1[]0][1[]1][0[]0][0[

0010

Scooter en équilibre Tuan Dat MAI–Code d’étudiant P0000016

Promotion: 2000-2005 17 PFIEV-IPHCM

= ⎥⎦

⎤⎢⎣

⎡+⎥

⎤⎢⎣

⎡−−

+⎥⎦

⎤⎢⎣

⎡ −−gyroQ

angleQPPPP

_00_

0]1][1[0]1][0[

00]1][1[]0][1[

[3-25]

Nous obtenons la vitesse de rotation rate=q = q_m - q_bias [3–26]

Obtenir le nouveau valeur de l’angle

dtratedtangleangle ⋅=⋅=•

[3–27]

Mise à jour de la matrice de covariance de l'état

dtPPP ⋅+=•

= dtgyroQP

PPPangleQPPPP

⎥⎦

⎤⎢⎣

⎡−

−−−+⎥

⎤⎢⎣

⎡_]1][1[

]1][1[]0][1[]1][0[_]1][1[]0][1[]1][0[]0][0[

[3–28]

Kalman_update() Kalman_update est fonctionné si on veut. C’est une matrice 1x2, c’est la matrice Jacobian de mesure.

[ ]01)_(

)_()(

)_(=⎥

⎤⎢⎣

⎡=

biasgyrodmangled

angledmangledC [3–29]

error est la différence entre le mesure et l’estimation de la sortie.

Angle_error=angle_m – angle [3–30]

L’eurreur d’estimation:

[ ] RPRPPPP

RCPCE T +=+⎥⎦

⎤⎢⎣

⎡⎥⎦

⎤⎢⎣

⎡=+= ]0][0[

01

]1][1[]0][1[]1][0[]0][0[

01 [3–31]

PCt_0= C[0]*P[0][0] [3–32] PCt_1= C[0]*P[1][0] [3–33]

Calcul du gain du filtre optimal:

Scooter en équilibre Tuan Dat MAI–Code d’étudiant P0000016

Promotion: 2000-2005 18 PFIEV-IPHCM

⎥⎦

⎤⎢⎣

⎡=⎥

⎤⎢⎣

⎡EPCtEPCt

KK

/0_/0_

10

[3–34]

( ) KCPPKHPPPKHIP −=−=−= [3–35]

[ ] [ ] [ ]1_0_]1][0[]0][0[]1][1[]0][1[]1][0[]0][0[

01 ttPPPPPP

CP ==⎥⎦

⎤⎢⎣

⎡= [3–36]

Matrice de covariance de l’erreur d’estimation

[ ] ⎥⎦

⎤⎢⎣

⎡⋅⋅⋅⋅

−=⎥⎦

⎤⎢⎣

⎡−⎥

⎤⎢⎣

⎡=

1_10_11_00_0

1_0_10

]1][1[]0][1[]1][0[]0][0[

tKtKtKtK

PttKK

PPPP

P [3–37]

Réactualisation de l'estimation de l'état

⎥⎦

⎤⎢⎣

⎡+=−+=⎥

⎤⎢⎣

⎡=

errangleerrangle

KXHXZKXbiasgyro

angleX estimatemeasure _

_)(

_ [3–38]

angle_err=q_bias_err [3–39]

Scooter en équilibre Tuan Dat MAI–Code d’étudiant P0000016

Promotion: 2000-2005 19 PFIEV-IPHCM

CHAPITRE 4: PROJETER DE MÉCANIQUE La structure mécanique du mon projet est séparé en quatre parties: le châssis en

inox, le plancher en alumnium, le guidon en inox et en plastique, et deux moteurs. Tous les châssis et le guidon sont fabriqués en inox carré 25x25mm, le plancher une pièce rectangle, solide. La plastique poignée du guidon est ∅21 de diamètre, la longeur est 250mm. Les deux moteurs sont intégrés dans deux roues de 400mm diamètre en aluminium. Les structures mécaniques sont détaillés dans des schémas.

Il y a quinze schémas de mécanique du scooter, il y a un schéma A0 composant le montage tous les parties, trois schémas A3, et un schéma A4, consistent en les schémas pour moteur, châssis, plancher, supporter la poignée, l’arbre de moteur.

.Des photos du scooter en équilibre (pas de carte d’électronique et pas d’alimentation).

Scooter en équilibre Tuan Dat MAI–Code d’étudiant P0000016

Promotion: 2000-2005 20 PFIEV-IPHCM

Plan de motage

Scooter en équilibre Tuan Dat MAI–Code d’étudiant P0000016

Promotion: 2000-2005 21 PFIEV-IPHCM

Scooter en équilibre Tuan Dat MAI–Code d’étudiant P0000016

Promotion: 2000-2005 22 PFIEV-IPHCM

CHAPITRE 5: LE PILOTAGE

5.1 Schéma bloc du système

Microcontrolleur

PIC 18F452

Gyro Accelerometer

Driver MOSFET 1 Driver MOSFET 2

MOSFET puissance 1 MOSFET puissance 2

Moteur 1 Moteur 2

Codeurincreùmental 1

Codeurincreùmental 2

Sens

de

cour

ant 1

Sens

de

cour

ant 2

Reùsistance variable+ contacteur LED

5.2 Alimentation

12V D3 luc

MOSFET driv er power

CON4

1234

D4 do

12V

D1

1N40070V

0V

36V

R1

1K

R2 1KD2

1N4007

36V

BT312V 7Ah

BT212V 7Ah

S1

P power

S2

N power

24V

BT112V 7Ah

24V

Montage des accus et l’alimentation pour le driver MOSFET et les deux moteurs

Scooter en équilibre Tuan Dat MAI–Code d’étudiant P0000016

Promotion: 2000-2005 23 PFIEV-IPHCM

BT412V - 1.2Ah

J4

Board trung tam

12

D10

1N4007S6

Cong tac nguon MCU v a MOSFET thang(brake)

D11

1N4007

D9

1N4007

J5

2 MOSFET thang

123

L’alimentation des freins MOSFETs et du microcontrôleur

Nguon 6-12V

HEADER 2/SM

12

D1

1N4007

2 1

VCC

VSS

C181nF

C17100nF

Nguon so capJP30

HEADER 2

12

L3 470uH

C19470uF

C16

1000uFC154.7u

U3LM7805

1

2

3VIN

GN

D

VOUTNgo ra

Alimentation +5V pour le microcontrôlleur et les cartes de capteurs, intégré dans la

carte principale

5.3 Le circuit d’attaque MOSFET ( le driver)

C'est une carte qui permet le pilotage en haute fréquence du circuit du pont en H MOSFET, sous des tensions pouvant atteindre 60V, en garantissant l'isolation électrique de chaque étage.

Caracteristique du circuit d’attaque MOSFET:

Cgs parasite ~ Ciss pour IRFP140 est 1400ρF.

faut charge pour Vth ⇒ ON.

ΔQg somme charge pour G ⇒ ON pour IRFP140 est 97nC

tf: le temps tombée VDS (Δt) pour IRFP140 est 20ns

ΔQg < 97nC pour IRFP140

Δt ~ 50ns pour IRFP140

tQ

dtdqi(t)

ΔΔ

≈= [5–1]

94.150ns97nCi(t) == pour 50nsecond [5–2]

fall

gs

tV

dtdvrate slew

Δ

Δ≈= [5–3]

ΔVgs max ≈ 12V

Scooter en équilibre Tuan Dat MAI–Code d’étudiant P0000016

Promotion: 2000-2005 24 PFIEV-IPHCM

sμ V240

50ns12Vrate slew == [5–4]

R5 1K

+5V

C4470uF/16V

+12V

R2022ohm/1W

R15

1K

C322n

R14

1K

Q4BD140

+24V

OC4

Q6bd139

R16

1K

J2

POWER

1234

+36V

Q2

BD140

OC4

R1

470ohm

R710K

C9

332

N2

N2

GP

1

R810K

R17

22ohm/1W

R13

1K

U1

74HC157

115

4

7

9

12

2

5

11

14

3

6

10

13

SELEN

1Y

2Y

3Y

4Y

1A

2A

3A

4A

1B

2B

3B

4B

+12V

C11000uF/25V

R3

470ohm

Q5bd139

R19

22ohm/1W

Q1

BD140

+12V

+24V

R18 22ohm/1W

R10 1K

J1

PWM in

123456

C5100n

P1

OC1

OC3

+36V

N1

J3

Gate PNNP

1 2 3 4

GN

1

D2

1N4001

21

DZ3

Zener 15V

12

+12V

N1

OC3

U0C3

OPTO TLP 351

34

8

15

2 6

7CATHODE

4

VCC

1GND

ANODE Vout

7

GP

2

Brake/ Float H bridge

Xai chung brake/ Inactiv e H bridge

12

OC2

+ISO2

H11L1+24V

+24V

OC2

P2

R12

220ohm

C8 332

P2

DZ1

Zener 15V

12

R4

470ohm

R11

220ohm

Q3BD140

+12V

+36V

GN

2

Q7bd139

C21000uF/25V

C6 332

R9 1K

R2

470ohm

DZ2

Zener 15V

12

OC1

P1

+24V

+36V

BRAKE signal

Brake

1 2

+5V

DZ4

Zener 15V

12

UOC2

OPTO TLP 351

34

8

15

2 6

7CATHODE

4

VCC

1GND

ANODE Vout

7

+ISO1

H11L1

Q8 bd139

+36V

C7332

Le driver MOSFET

Étage de sortie basse, type de push-pull BD139-BD140.

Canal bas pour MOSFET N. Vdd 12V. N’invertir pas 0V~+12V. 25mV saturation. Iout 3A . fmax < 6MHz.

Étage de sortie haute, type de push-pull BD139-BD140. Canal haut pour MOSFET P. Vgate ~ Vsource +24V ~ +36V. < 24V. Iout 3A. fmax < 6MHz.

Scooter en équilibre Tuan Dat MAI–Code d’étudiant P0000016

Promotion: 2000-2005 25 PFIEV-IPHCM

Les entrées du connecteur J1 sont des entrées logiques, compatibles CMOS et TTL LS. J1 inclut les signaux: V+5V, masse, MLI, direction, inactive et le frein électromécanique.

L’étage dispose d'une sortie pouvant délivrer un courant de 3A par l'intermédiaire du push-pull BD139-BD140. Cette technique est largement utilisée en amplification audio de part sa faible émission en bruit. L’amplification de cet étage est de 1 en tension mais de hFE en courant. Ces transistors ont un fonctionnement complémentaire. Les niveaux de basculement sont liés à la valeur de la tension d'alimentation. Par exemple, pour VDD=24-36V, le niveau haut est compris entre 24V et

36V.

5.4 La carte de puissance pour commander de moteur

IRFP9140x2

IRFP9140

R5

22ohm= R6

22ohm IRFP9140

Les deux MOSFETS paralelles à chaque point du pont en H

Dz 15V

R2

6.8ohm

Q1IRFP9140

Q4IRFP140

J1 MOSFET driv er

1234

R4

6.8ohm

36V

0V

Q3IRFP9140

R3

6.8ohm

Dz 15V

Q2IRFP140

M1

Dong co banh xe

Dz 15V

Dz 15V

R1

6.8ohm

Montage le pont en H des MOSFET puissances

Q6bd139

Q2

BD140

N1

+12V

R14

1K

Scooter en équilibre Tuan Dat MAI–Code d’étudiant P0000016

Promotion: 2000-2005 26 PFIEV-IPHCM

La tension d’alimentation pour pilotage de la puissance du moteur est 36V, le courant normal est 5-10A, le courant maximal est 30A, conduire la vitesse de moteur en fréquence MLI est 9.7665KHz, la résolution du MLI est 10 bits chaque direction. La vitesse du frein pour renverser est de 100ms à 250ms, dépendre du valeur moyenne de l’énergie commandée par le signal MLI.

Les MOSFETs ont un fonctionnement complementaire. VGS sont assurés être comprise en ±15V par monter diode zener parallèle de la grille et de la source, donc, la tension VGS est plus petite que VGS max. Mais, ils diminuent la haut résistance de la grille du MOSFET.

L’application est à la région de saturation. Quand la polarisation est à la région de saturation, l’E-MOSFET égale le résistant minimal.

12V thang

M2

R26

22ohm/1W

J8

Tin hieu brake

12

C14

152

PGND

R27 470ohm

PGND

Q10BD140

R2410ohm/30W

Q Power

IRF140

DZ brake1

DZ15

12

J7

12V brake

1 2

Opto cua brake

OPTO TLP 351

34

8

15

26

7 CATHODE4

VCC

1GND

ANODEVout

7

R25

1K

P+36VQ11

BD139- +

D1

BRIDGE

2

1

3

4

M1

Montage de circuit d’électronique du frein MOSFET

5.5 Le snubber

Snub

ber

2

D5

5A

1 2

R622ohm/5W

Snub

ber

3

D3

5A

1 2

C10224/400V

Snu

bber

4

R22100ohm/10W

J4

Power

12

C12224/400V

O

C11224/400V J5

Motor

12

R23100ohm/10W

Snu

bber

1

D6

5A

12

C13224/400V

R2122ohm/5W

M1

D4

5A

12

+36

M2

Pour balayer le vibration de tension de MOSFET puissance

quand il marche comme un source découplée

Scooter en équilibre Tuan Dat MAI–Code d’étudiant P0000016

Promotion: 2000-2005 27 PFIEV-IPHCM

5.6 La carte des capteurs D28

LED

1 2

+5V sensor

Tilt CON

CON8

12345678

C7470uF

Analog Y

Sef t test

C13100uF

C31nF

C4

4.7uF

Gy ro PS

JUMPER2

+

-

U1B

LM324

5

67

411

Y out

R6

R-VAR

R5R

C62.2uF

R361K

+5VDC sensor Tilt PS

JUMPER2

L1470uH

J6

CON4

1234

R35

1K+ C dc47 uF

CYX f ilt

C2 in0.1uF

U2LM7805

1

2

3VIN

GN

D

VOUT

R8

R-VAR

J4

Sensor Power supply

12

GND

Gy ro 2

CG16

1

3

2

4

V ref

Vcc

GND

Out

C12

C

+

-

U1A

LM324

3

21

411

GND

R set125K

D29xanh 12

C1 in470uF

Analog X

Y out

L2INDUCTOR

TILT sensor

MMA2260D

1234567

141312111098

C10

C

C11

C

C14

100nF

J3

VCC in

12

R4

R

Analog X

Gy ro 1

CG16

1

3

2

4

V ref

Vcc

GND

Out

+5V sensor

C8100nF

none

X outAnalog Y

+5V sensor

C5

4.7uF

CXY f ilt

X out

R9

R-VAR

+5VDC sensor

C9

C

+5VDC sensor

R7

R-VAR

Sef t test

La carte des capteurs: l’ accelérometre et les gyros

Le capteur mesure deux type de l’inclinomètre. Le gyro mesure la vitesse de l’angle, et l’accéléromètre mesure l’angle d’immobile. La valeur de l’accéléromètre est très exacte, mais le temps de réponse n’est pas rapid. Donc, le gyroscope est utilisé parce qu’il compense le temps lent de réponse.

Mon scooter a utilisé le gyroscope, Murata ENC-03, et l’accéléromètre, ADXL202 au dispositif d’analogue. Puis, on applique l’algorithme du fitre de Kalman pour avoir exactement l’angle et la vitesse de l’angle.

Scooter en équilibre Tuan Dat MAI–Code d’étudiant P0000016

Promotion: 2000-2005 28 PFIEV-IPHCM

Accélérometre ADXL202 mesure l’angle associé au vecteur de gravité

et le gyro ENC-03

-60

-40

-20

0

20

40

60

80

100

1 8 15 22 29 36 43 50 57 64 71 78 85 92 99

Tích phân giá trị gyro

Kalman

Accelerometer

Le signal de l’angle du gyro et de l’accélérometre et le signal traité par le fitre Kalman

Scooter en équilibre Tuan Dat MAI–Code d’étudiant P0000016

Promotion: 2000-2005 29 PFIEV-IPHCM

-300

-250

-200

-150

-100

-50

0

50

100

150

1 8 15 22 29 36 43 50 57 64 71 78 85 92 99

Gyro mới (1.5+2.5)*3=12ms

Kalman

Accelerometer

Le signal de rotation de l’angle du gyro et de l’accélérometre et le signal traité par le

fitre Kalman

5.7 Les deux codeurs incrémentales

5.8 Le résistance SHUNT pour mésurer le courant d’électrique traverse à moteur

Un codeur avec 120 impulse

Scooter en équilibre Tuan Dat MAI–Code d’étudiant P0000016

Promotion: 2000-2005 30 PFIEV-IPHCM

J3

Nguon cho banh xe phai

12

S4

Cong tac 15A

0V

J2

Nguon cho banh xe trai

12

0V cua MCU

D8 2V7

D5 do

R510K

R3

0.11ohm 20W0V

R7100ohm

+ C19600uF/50V

+ C29600uF/50V

0V cua MCU

D6 xanh

R610K

R4

0.11ohm 20W

R8100ohm

ISO1

P621

36VD7 2V7

Do qua dong dien banh phai

S3

Cong tac 15A

Do qua dong dien banh trai

36V

ISO2

P621

La carte de surcharge de courant d’électrique traversé les deux moteurs

Les deux résistances SHUNT sont utilisés pour repérer le courant surchargé

électrique traversé chaque de deux ponts H MOSFETs, et envoyer le signal à micro contrôleur pour assurer que le système est pas en pain.

RshuntoptoON VVVV −== 1 [5-5] RIVV shuntoptoON ⋅−= [5-6]

RIVVIR optoONshuntmotorshunt ⋅+==⋅ [5-7]

AR

RIVI

shunt

optoONmotor 30

1.010002.01

=⋅+

=⋅+

= [5-8]

5.9 La carte principale Le chip pricipal que j’utilise dans mon projet est PIC 18F452. Le

microcontrôleur PIC 18F452 de l'écurie Microchip est un microcontrôleur 40 broches, hautes performances, à mémoire FLASH, avec les convertisseurs A/N 10 bits. Il est inséré un quartz 10 MHz. En effet les 18Fxxx intégre une PLL dans leur circuit d'horloge qui mulitplie la fréquence du quartz par 4. Ainsi un quartz à 10 MHz permet de cadencer le PIC à 40 MHz. Le 18F452 possède 32 Koctets de mémoire FLASH pour le programme, 1536 octets de RAM et 256 octets de mémoire EEPROM interne. Comme ses prédécesseurs, il intégre bon nombre de périphériques, comme deux modules CCP/PWM (qui servent à piloter les deux moteurs), 8 convertisseurs A/N 10 bits, I2C, USART, et une porte d’esclave parallèle. Il soit 33 lignes d'entrées/ sorties (E/S) en tout, dont certaines sur le port B peuvent générer des interruptions (cela nous sert par exemple à détecter des chocs).

Le shéma de la carte principale:

Scooter en équilibre Tuan Dat MAI–Code d’étudiant P0000016

Promotion: 2000-2005 31 PFIEV-IPHCM

V+ REF

J9

Ov er Current 2

12

Encoder 2

U2C

74LS08

9

108

J3

CON Motor 1

123456

Forward

Y1 10MHZ

J8

Ov er Current 1

12

Inactiv e12

PWM1

VCC

+

C23

10uF

GND

U2B

74LS08

4

56

GND

MCLR

Inactiv e12

USART

SUB-D 9

594837261

+

C21

10uF

Encoder 2

Encoder 2

Encoder1

CON3

123

Inactiv e12

Ov er Curr 1

Ov er Curr 2

J4

CON Motor 2

123456

Brk2

C reset

10uF

V+ REF

Tilt

PGD

Dir1

VCC

Encoder2

CON3

123

U2A

74LS08

1

23

Brk2

VCC

Brake2

PGD

Control CON

CON41234

Brake1

+

C22

10uF

Ov er Curr 2

C133p

USART MCU

CON2

12

+

C20

10uF

GND

U4

MAX232

1345

16

15 26

129

1110

138

147

C1+C1-C2+C2-

VCC

GND V+V-

R1OUTR2OUT

T1INT2IN

R1INR2IN

T1OUTT2OUT

U2D

74LS08

12

1311

VCC

Turn

Gy ro

PGC

Brk1

R reset4K7

USART con

CON2

12

PIC16F452

U1

PIC16F877A_5

1

23

56789

10

11

12

1314

15161718

19202122

23242526 28

27

2930

31

32

3334353637383940

4

MCLR/VPP

RA0/AN0RA1/AN1

RA3/AN3/VREF+RA4/TOCKIRA5/AN4/SSRE0/RD/AN5RE1/WR/AN6RE2/CS/AN7

VDD

VSS

OSC1/CLKINOSC2/CLKOUT/RA6

RC0/T1OSO/T1CKIRC1/T1OSI/CCP2*RC2/CCP1RC3/SCK/SCL

RD0/PSP0RD1/PSP1RD2/PSP2RD3/PSP3

RC4/SDI/SDARC5/SD0RC6/TX/CKRC7/RX/DT RD5/PSP5

RD4/PSP4

RD6/PSP6RD7/PSP7

VSS

VDD

RB0/INT0RB1/INT1RB2/INT2

RB3/CCP2*RB4

RB5/PGMRB6/PGCRB7/PGD

RA2/AN2

+ C RS23247uF

VCC GND

Gy ro

PGC

C233p

Inactiv e12

Encoder 1

J5

LED con

12345678

Emergency SW

Brk1

PWM2

Emergency SW

Dir2

C encoder2100uF

MCLR C encoder1100uF

ICSP

CON6

123456

VCC

Tilt

PGM

PGMDir1

GND

R OC11K

R OC21K

Sensor CON

CON41234

Brake1

VCC

Ov er Curr 1

PWM2

Turn Encoder 1

VCC

Inactiv e12

Dir2

PWM1VCC

SW1Reset BTN

Encoder 1Encoder AMP

CON2

12

Brake2

VCC

VCC

Forward

Le port A est utilisé comme quatre convertisseurs A/N pour recoit les

informations de différents capteurs: l’accéléromètre, le gyro, deux résisteurs variables accessible via les connecteurs.

Le port B est également des interrupteurs pour recoit les informations de capteurs optiques – codeurs optiques incrémentals (120 pulsations par tour), de courants maximals et de contacteur du circuit de commande.

Le port C a le module CCP/MLI, donc quatre broches du port C et trois broches du port E sont des signaux logiques pour piloter des cartes de motorsation. RC6, RC7 du port C sont l’interface de communication à l’ordinateur par USART.

Le port D est entièrement disponible, mais on peut de plus visualiser l'état de ses sorties via 8 leds interfacées par un ULN2003.

Scooter en équilibre Tuan Dat MAI–Code d’étudiant P0000016

Promotion: 2000-2005 32 PFIEV-IPHCM

5.10 Schéma bloc :

Programme principal

Start

Initialise les PortsPort B en entreùePort D en sortiePort C en sortie

Initialiser A/D

Inactiver le pont H

Initialiser le module MLITimer2

PWM1=PWM2 = 0

Delay 5s

DCPWM1 = 0DCPWM2 = 0

RE1 = 1

Activer les ponts H etles moteurs

Oui

AN0 -> AN4 Vref = AN3

PS 1:4 , PR2 = 0xFF

INT0=0 (contacteur)or AN4>0 Delay 1s

Initialiser les interruptsGIE, Timer0, Timer 1

BoutonRB0 = 0

Surcharger lecourant

d'eùlectrique

Alerter la faute deprocessus

Arreâter l'opeùrationde scooter

Oui

Non

Non

Oui

Alerter la faute de processusArreâter l'opeùration de scooter

Allumer PORTD

END

DCPWM1=0DCPWM2=0

Scooter en équilibre Tuan Dat MAI–Code d’étudiant P0000016

Promotion: 2000-2005 33 PFIEV-IPHCM

Interruptions: Programme de traitement d’interruption prioritaire

Scooter en équilibre Tuan Dat MAI–Code d’étudiant P0000016

Promotion: 2000-2005 34 PFIEV-IPHCM

Calcule la valeurde MLI

Torque =Ktheta*angle_k- angle deùsireux

+ Krate*rate_k + Kpos*pos + Kvel*vel

Vitesse = Vitesse +(Kinertie *inteùrgral du torque)

MLI geùneùral= vitesse + torque

RET

Commande ducontroleur

Angle deùsireux =Ñoïc AN2

Valeur tournant = afficher AN4/8 Angle tournant = 256 - valeur tournant

RET

Scooter en équilibre Tuan Dat MAI–Code d’étudiant P0000016

Promotion: 2000-2005 35 PFIEV-IPHCM

Programme de traitement d’interruption non prioritaire

Encoder1INT1

Timer1

RETOUR

Encoder2INT2

Non

Non

Non

Encoder1

Encoder2

“.” flashRe afficher le position

Oui

Oui

Oui

Interruption nonprioritaire

RETOUR

V = Position - Position ancienPosition ancien = Position

Reafficher leposition

Position = (X1 + X2)/2

RB0=0

RET

X1=0X2=0

Oui

Non

Codeur 2

Direction 2 = 1 X2 =X2 -1

X2 =X2 +1

RETOUR

Oui

Oui

Codeur 1

Direction 1 = 1 X1 =X1 -1

X1 =X1 +1

RETOUR

Oui

Oui

Scooter en équilibre Tuan Dat MAI–Code d’étudiant P0000016

Promotion: 2000-2005 36 PFIEV-IPHCM

Motorisation

PWM1 = PWM geùneùral + vitesse tournantPWM2 = PWM geùneùral - vitesse tournant

PWM1>= 0 PWM 1<1%Oui

Motoriasation

EÙùtat dudirection1 = 1

PWM1=0

PWM1>50%

PWM1=50%

Yes Yes

Non No

PWM1< 0 PWM1> -1%Oui EÙùtat dudirection1 = 0

PWM1=0

PWM1<-50%

PWM1=-50%

Oui Oui

Non Non

No

PWM2>= 0 PWM 2<1%Oui EÙùtat dudirection2 = 1

PWM2=0

PWM2>50%

PWM2=50%

Oui Oui

Non Non

PWM2< 0 PWM2> -1%Oui EÙùtat dudirection= 0

PWM2=0

PWM2<-50%

PWM2=-50%

Oui Oui

Non Non

Non

A

Scooter en équilibre Tuan Dat MAI–Code d’étudiant P0000016

Promotion: 2000-2005 37 PFIEV-IPHCM

EÙùtat du direction 1 != Direction 1 moteurou

EÙùtat du direction 2 != Direction 2 moteur

Freiner les 2moteurs

A

DCPWM1=PWM1DCPWM2=PWM2

Delay 20ms

RET

Delay 20ms

DCPWM1=3%DCPWM2=3%

Non

Oui

Freiner les 2moteurs

DCPWM1=0DCPWM2=0

Delay 20ms

Direction 1 moteur = EÙùtat du direction 1Direction 2 moteur =EÙùtat du direction 2

RET

^LED RD5

Scooter en équilibre Tuan Dat MAI–Code d’étudiant P0000016

Promotion: 2000-2005 38 PFIEV-IPHCM

CHAPITRE 6 CONCLUSION

6.1 Les résultats ont obtenu

− Construire un scooter en équilibre.

− Les calculs pour avoir les équation d’état du modèle, puis avoir le vecteur de gain de la commande par retour d’état.

− Le silmulation du modèle par vN Nastran et MatLAB-SIMULINK.

− Les carte de pilotage des moteurs du scooter: Le montage de la haut puissance

de MOSFET est 30–60A, la valeur de tension est de 12V à 60V.

Le montage des capteurs des accélération et gyro.

La carte principale: PIC 18F452.

− Le code source du microcontrôleur.

− Communication d’USART entre le PIC et l’ordinateur pour calibrer les capteurs.

− Le logiciel pilotage du PIC18F452 commande les opérations du scooter en équilibre.

− Le modèle est capable d’équilibre sur deux roues, d’aller doit et rotation.

6.2 Les résultats n’ont pas obtenu

− L’équilibre du scooter est relativement faible.

− Quand on vire à gauche ou à droite, il y a quelque difficulté pour pilotage.

6.3 Le développement

− Communication entre le PIC du scooter et l’ordinateur pour le scooter.

− Designer la communication de circuit du pilotage plus simple en mouvement.

Scooter en équilibre Tuan Dat MAI–Code d’étudiant P0000016

Promotion: 2000-2005 39 PFIEV-IPHCM

− Augmenter le charge du scooter, environ 100kg, donc il faut augmenter la puissance de MOSFET.

− Diminuer le poids du scooter en changement le châssis en inox en châssis en carbone ou matériaux synthétiques.

− Changer le moteur des roues de moteurs balais aux moteurs à courant continu sans balais.

− Améliorer la capacité du frein préssé.

− Améliorer le stabilité et perfectionner les cartes de puissances pour assurer le fontionnement de la MOSFET puissance quand le moteur change la direction de rotation à la grande vitesse.

Scooter en équilibre Tuan Dat MAI–Code d’étudiant P0000016

Promotion: 2000-2005 40 PFIEV-IPHCM

BIBLIOGRAPHIE

Documents vietnamiens [1]. Dương Minh Trí, Sơ đồ chân linh kiện bán dẫn, Nhà xuất bản khoa học và

kỹ thuật ( tái bản lần 4), 1998, trang 51,357,371.

[2]. Jean-Marie BRÉBEC, Cơ học vật rắn, HACHETTE Supérieur – PFIEV - Nhà xuất bản Giáo dục, 2001.

[3]. Ngô Diên Tập, Đo lường và điều khiển bằng máy tính, Nhà xuất bản khoa

học và kỹ thuật, 1997, trang 19. [4]. Nguyễn Hữu Lộc (cb) và cộng sự, Cơ sở thiết kế máy (phần 1), Trường Đại

học Bách Khoa Tp.Hồ Chí Minh, 1999, trang 302. [5]. Nguyễn Văn Đạo, Stability of Dynamic systems, Nhà xuất bản Đại học quốc

gia tại Hà Nội, 1998, trang 103. [6]. Trịnh Chất- Lê Văn Uyển, Thiết kế hệ dẫn động cơ khí, Nhà xuất bản Giáo

dục, 2003. [7]. Nguyễn Anh Kiệt, Nguyễn Minh Trung, Luận văn tốt nghiệp “Nhận dạng

và bám đối tượng bằng hai camera số”, PFIEV Bộ môn Cơ điện tử, Trường Đại học Bách Khoa Hồ Chí Minh, 2004, trang 62.

Documents francais et anglais

[8]. Georges ASCH et al., Acquisition de données du capteur à l’ordinateur, DUNOD, 1999, p. 330.

[9]. J.BLOT, Les transistors, DUNOD, 1995, p. 51-57. [10]. Max GIODANO et Jaques LOTTIN, Cours de Robotique – Description et

fonctionnement des robots industriels, Armand Colin Éditeur, 1990, p. 68,69,82,83.

[11]. Philippe de LARMINAT, Automatique commande des systèmes linéaires

(2e edition revue et augmentée), HERMES Science Éditeur, 2000, p. 167-211.

[12]. Albert Paul MALVINO, Ph.D, E.E (1999), Electronic principles, Glencoe

Mc Graw–Hill, ( tái bản lần 6), 2001, p. 468-473.

Scooter en équilibre Tuan Dat MAI–Code d’étudiant P0000016

Promotion: 2000-2005 41 PFIEV-IPHCM

[13]. William D.STANLEY, Bộ khuyếch đại xử lý và IC tuyến tính, Nhà xuất bản khoa học và kỹ thuật, 1990, p. 143.

[14]. Ashish TEWARI, Modern Control Design, Indian Institute of Technology

Kanpur, India. John Wiley and sons LTD., 2003, p.219-236, 325-361. [15]. Greg WELCH and Gary BISHOP, An Introduction to the Kalman Filter,

University of North Carolina at Chapel Hill, 2004, p.1-16. Websites

[16]. http://www.geology.smu.edu/~dpa-www/robo/nbot/index.html [17]. http://www.tlb.org/scooter.html [18]. http://leiwww.epfl.ch/joe [19]. http://www.elex.camosun.bc.ca/Projects/2004/hvt/hvt.htm [20]. http://www.fusionglobal.net/gallery.htm [21]. http://www.barello.net/robots/gyrobot [22]. http://www.microchip.com [23]. http:// www.rotomotion.com [24]. http://www.dprg.org/projects/index.html [25]. http://autopilot.sourceforge.net [26]. http://www.wulabs.org/bbot.html [27]. http://homepage.mac.com/sigfpe/Robotics/equibot.html [28]. http://web.mit.edu/sanghyuk/www/balance_bot.html [29]. http://home.earthlink.net/~botronics/index/balibot.html [30]. http://www.analog.com/Analog_Root/productPage/productHome/adxl202,0

0.html [31]. http://murata.com/enc-03 [32]. http://www.picotech.com/applications/pwm-drivers/ [33]. http://www.segway.com [34]. http://www.ee.usyd.edu.au/tutorials_online/matlab/examples/pend/invpen.h

tm

Scooter en équilibre Tuan Dat MAI–Code d’étudiant P0000016

Promotion: 2000-2005 42 PFIEV-IPHCM

TABLE DES MATIÈRES

CHAPITRE 1: INTRODUCTION.................................................................................1

CHAPITRE 2: L’OBJECTIF .......................................................................................3

CHAPITRE 3: MISE EN ŒURVE...............................................................................5

3.1 Mise en œuvre d’un scooter en équilibre.................................................................................................. 5

3.2 Équation d’état du modèle ......................................................................................................................... 5

3.3 Mise en ouvre le régulateur en MatLAB ................................................................................................. 6

3.4 Simulation en vN Nastran et Simulink ................................................................................................... 10

3.5 Filtre de Kalman........................................................................................................................................ 12

CHAPITRE 4: PROJETER DE MÉCANIQUE..........................................................19

CHAPITRE 5: LE PILOTAGE ..................................................................................22

5.1 Schéma bloc du système............................................................................................................................ 22

5.2 Alimentation............................................................................................................................................... 22

5.3 Le circuit d’attaque MOSFET ( le driver) ............................................................................................. 23

5.4 La carte de puissance pour commander de moteur .............................................................................. 25

5.5 Le snubber.................................................................................................................................................. 26

5.6 La carte des capteurs ................................................................................................................................ 27

5.7 Les deux codeurs incrémentales .............................................................................................................. 29

5.8 Le résistance SHUNT pour mésurer le courant d’électrique traverse à moteur............................... 29

5.9 La carte principale .................................................................................................................................... 30

5.10 Schéma bloc : ........................................................................................................................................ 32

CHAPITRE 6: CONCLUSION..................................................................................38