delco logique ii

43
Delco Logique II Logiciel Embarqué enté par is DELZON, Clément GEAMBLU, Natalia MENDOZ VENDREDI 12 JUIN 2009 1 Tuteuré par Pascal ACCO

Upload: rock

Post on 24-Feb-2016

66 views

Category:

Documents


0 download

DESCRIPTION

Vendredi 12 Juin 2009. Delco Logique II. Logiciel Embarqué. Tuteuré par Pascal ACCO. Présenté par Alexis DELZON, Clément GEAMBLU, Natalia MENDOZA. Plan. Alexis Delzon. Présentation – Organisation/Retard – La conception – Bilan. Cahier des Charges. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Delco Logique II

1

Delco Logique IILogiciel Embarqué

Présenté parAlexis DELZON, Clément GEAMBLU, Natalia MENDOZA

VENDREDI 12 JUIN 2009

Tuteuré par Pascal ACCO

Page 2: Delco Logique II

1 •Présentation

2 •Organisation / Retard

3 •La conception

4 •Bilan

Plan

2Alexis Delzon

Page 3: Delco Logique II

Mettre en place un ordonnancement pour l’allumage du moteur d’une super 5

Traiter les informations d’autres capteurs pour informer le conducteur

Cahier des Charges

3Alexis Delzon

Analyse du fonctionnement du moteur Création d’algorithmes de calcul d’allumage Programmation d’un microcontrôleur DsPIC

Présentation – Organisation/Retard – La conception – Bilan

Page 4: Delco Logique II

Le moteur 4 temps

Introduction à l’allumage classique

4Alexis Delzon

Présentation – Organisation/Retard – La conception – Bilan

Page 5: Delco Logique II

Présentation global du système

5Alexis Delzon

Présentation – Organisation/Retard – La conception – Bilan

Page 6: Delco Logique II

Delco Logique I

6Alexis Delzon

Batterie 4 Bobines Bougies

Microcontrôleur

Rupteur électronique

Sécurité

Rupteur + Distributeur

Présentation – Organisation/Retard – La conception – Bilan

Page 7: Delco Logique II

Les apports de Delco-Logique 2

7Alexis Delzon

Nouveaux capteurs

Simulateur capteurs

Programmation DsPIC

Présentation – Organisation/Retard – La conception – Bilan

Page 8: Delco Logique II

8

Organisation de l’équipe

Clément Geamblu

Relation Inter-Equipe

3 Taches / 3 Membres◦ Noyau Temps Réel◦ Drivers◦ Simulateurs

Répartition selon Driver

Driver PMH + NTR◦ Clément Geamblu

Driver Delco v2◦ Alexis Delzon

Autres Drivers◦ Natalia Mendoza

Au début Finalement

Présentation – Organisation/Retard – La conception – Bilan

Page 9: Delco Logique II

1 •Conception des drivers•Groupe Capteur

2 •Ressources Communes•1 microcontrôleur à se partager

3 •Installation de l’espace de Travail•30 min avant et après pour l’aménagement

Retards

Clément Geamblu 9

Présentation – Organisation/Retard – La conception – Bilan

Page 10: Delco Logique II

Le choix

• PICos v1.05

Le Noyau Temps Réel

Clément Geamblu 10

Particularités

• Spécifique aux PIC• Basé sur OSEK/VDX (Les années 1990)

• Offene Systeme und deren Schnittstellen fur die Elektronik im Kraftfahrzeug• Vehicle Distributed eXecutive

Présentation – Organisation/Retard – La conception – Bilan

Page 11: Delco Logique II

Qu’est ce que c’est?

• Point Mort Haut (PMH)• Capteur envoyant des signaux carrés

• Après Mise en Forme

Où est placé le PMH?

• Sur la roue dentée du cylindre moteur• Renvoie l’image de la position du cycle moteur

Le PMH

Clément Geamblu 11

Présentation – Organisation/Retard – La conception – Bilan

Page 12: Delco Logique II

Principe

Le driver PMH

Clément Geamblu 12

Source:http://www.geea.org/

Auteur:Jean Pierre HOAREAU

Présentation – Organisation/Retard – La conception – Bilan

Page 13: Delco Logique II

Problème ! SELON GROUPE CAPTEUR

• Pas de roue dentée 60 dents• PMH non compatible avec la super 5

Le driver PMH

Clément Geamblu 13

Solution

• Utiliser la roue dentée 101 dents• Nouvel ordonnancement

Présentation – Organisation/Retard – La conception – Bilan

Page 14: Delco Logique II

Principe d’allumage des bougies

Le driver PMH

Clément Geamblu 14

Dent34 84 34 84 34

Bougie 1

Bougie 2

Bougie 3

Bougie 4

Interruption Dents

Interruption Index Interruption Index Interruption Index

5 ms

5 ms

5 ms

5 ms

Présentation – Organisation/Retard – La conception – Bilan

Page 15: Delco Logique II

Nouvel algorithme sur l’allumage

Le driver PMH

Clément Geamblu 15

Dent34 84 34 84 34

Bougie 1

Bougie 2

Bougie 3

Bougie 4

Interruption Dents

Interruption Index Interruption Index Interruption Index

5 ms 5 ms

5 ms 5 ms

Algorithme à étincelle perdue

Présentation – Organisation/Retard – La conception – Bilan

Page 16: Delco Logique II

Pourquoi ?

•1 seul régime pris en compte• Pas de différence entre le démarrage et le régime établi

Le driver PMH

Clément Geamblu 16

Inconvénient• Consommation d’énergie non optimisée

Présentation – Organisation/Retard – La conception – Bilan

Page 17: Delco Logique II

Le driver PMH

Clément Geamblu 17

Fonctionne◦ Simulateur du driver PMH!◦ Le driver PMH avec algorithme à étincelle perdue◦ Une version de l’algorithme normal pour le régime établi

Soucis◦ Erreur de précision négligeable pour la charge◦ Pas de réglage de l’avance (1 dent = 3.56°)◦ Noyau Temps Réel instable avec le driver PMH

Finalement

101 dents

Présentation – Organisation/Retard – La conception – Bilan

Page 18: Delco Logique II

Le driver PMH

Clément Geamblu 18

Pour l’utilisateur◦ Activation par init_PMH()◦ Paramétrable en statique et en dynamique

Les points importants

Présentation – Organisation/Retard – La conception – Bilan

Page 19: Delco Logique II

Le driver PMH / Noyau Temps Réel

Clément Geamblu 19

Temps alloué au traitement pour un régime de 6000tr/min◦ Tdent= 99µs

Temps Max d’exécution mesuré en simulation◦ Ttraitement_dent_MAX=76µs (avec Focs = 16MHz)

Temps disponible pour les traitements du noyau◦ Tnoyau_MAX=23µs

Temps

Présentation – Organisation/Retard – La conception – Bilan

Page 20: Delco Logique II

Simulation du driver PMH

Clément Geamblu 20

Présentation – Organisation/Retard – La conception – Bilan

Haut Régime Pindex=13.55msBas Régime Pindex=188ms

Page 21: Delco Logique II

Réutilisation des capteurs du groupe Delco I (2008)◦ Pourquoi?

Interrogations sur les nouveaux capteurs◦ Faisabilité?◦ Fonctionnement?◦ Quand?

Démarrage de la voiture◦ Régime transitoire incertain◦ Système de remplacement

Ordonnancement par Delco

21Alexis Delzon

Présentation – Organisation/Retard – La conception – Bilan

Page 22: Delco Logique II

Principe de Fonctionnement

22Alexis Delzon

Présentation – Organisation/Retard – La conception – Bilan

Page 23: Delco Logique II

Principe de Fonctionnement

23Alexis Delzon

Présentation – Organisation/Retard – La conception – Bilan

Page 24: Delco Logique II

Fréquence de Fonctionnement ?◦ 10 ms et 40ms

Ordre d’apparition

Mise en place du simulateur

24Alexis Delzon

Présentation – Organisation/Retard – La conception – Bilan

Page 25: Delco Logique II

Création du simulateur

25Alexis Delzon

Présentation – Organisation/Retard – La conception – Bilan

Page 26: Delco Logique II

Volonté de pouvoir basculer d’un programme à un autre◦ Partage des ressources du DsPIC

Ressources attribuées au départ:◦ Un Timer : gestion de l’ordonnancement◦ Une entrée interruptive : rupteur◦ 4 entrée NI: Signaux Delco I

Ordonnancement par Delco I

26Alexis Delzon

Présentation – Organisation/Retard – La conception – Bilan

Page 27: Delco Logique II

Principe de l’ordonnancement

27Alexis Delzon

Gestion en mode scrutatif des signaux DELCOI + Interruption par rupteur

T(bob) 5ms

Anticipation sur 2 fronts

Nécessité de 2 timers

T(TIMER) = 2T(opt) – T(BOB) Calcul de T(opt) : utilisation du

capteur d’INDEX

Présentation – Organisation/Retard – La conception – Bilan

Page 28: Delco Logique II

Résultat

28Alexis Delzon

Test en simulation : rajout du simulateur d’indexT(bob) modifiable entre 3ms et 5ms

Présentation – Organisation/Retard – La conception – Bilan

Page 29: Delco Logique II

Driver Gestion de la Position de la pédale d’accélération (driver Position)◦ Fonctionnement de l’ADC◦ Configuration de registres de l’ADC◦ Programme

Driver Vitesse de la voiture (driver Vitesse)◦ Fonctionnement◦ Configuration de Registre du Timer et

d’interruption◦ Programme

Les drivers Position et Vitesse

Natalia Mendoza 29

Présentation – Organisation/Retard – La conception – Bilan

Page 30: Delco Logique II

Le driver Position

Natalia Mendoza 30

Récupérer la position de la pédale pour la transmettre à la partie communication.

Présentation – Organisation/Retard – La conception – Bilan

Page 31: Delco Logique II

L’ADC du dsPIC permet de convertir une grandeur continue analogique de tension comprise entre AVSS et AVDD (0 à 5V dans notre cas)

◦ Initialise les ports d’entrée◦ Configure les registres◦ Lance la conversion◦ Exécute la boucle sans fin

Le driver Position

Natalia Mendoza 31

Fonctionnement

Présentation – Organisation/Retard – La conception – Bilan

Page 32: Delco Logique II

Valeur récupérée sur ADCBUF3

Le driver Position

Natalia Mendoza 32

Configuration du registre de l’ADC

void adcconfiguration(void){

// Configuration ADC en lancement immédiat ADCON1 = 0x8000; // ADON = 1 module de conversion active ADCON2 = 0x0400; // ALTS=0 ADCHS = 0x0003; // Selection de l’entrée : CHONA=0, CHOSA=0011 ADCON3 = 0x0080; // Tad = internal RC clock, ADCR = 1 ADCON1bits.ADON = 1; // turn ADC ON

}

Présentation – Organisation/Retard – La conception – Bilan

Page 33: Delco Logique II

Récupère une image de la position

Le driver Position

Natalia Mendoza 33

Programme: 1ere Fonction

int calcul_acceleration (void){ ADCON1bits.SAMP = 0; // start conversion while(ADCON1bits.DONE); // attend la fin return ADCBUF3;}

Présentation – Organisation/Retard – La conception – Bilan

Page 34: Delco Logique II

Récupère la position en %

Le driver Position

Natalia Mendoza 34

Programme: 2eme Fonction

float calcule_niveau_acceleration(void) {   long num ; num = calcul_acceleration ();  return ((0.0244)*num); }

Présentation – Organisation/Retard – La conception – Bilan

Page 35: Delco Logique II

Le driver Vitesse

Natalia Mendoza 35

-Mesure le temps entre chaque front montant- gère les interruptions- fait le calcul.

Présentation – Organisation/Retard – La conception – Bilan

Page 36: Delco Logique II

Configuration du port d’entrée

Configuration du registre d’interruption et du Timer

Lancement de l’interruption

Exécution de la boucle

Le driver Vitesse

Natalia Mendoza 36

Fonctionnement

Présentation – Organisation/Retard – La conception – Bilan

Page 37: Delco Logique II

Le driver Vitesse

Natalia Mendoza 37

Configuration des registres

//Configuration du Port d’entrée :TRISD |= 0x0400; //RD10 en entrée

//Configuration du registres du Timer :TMR4 = 0; //Initialisation du Compteur a 0T4CON = 0xA020; //T2ON=1 (Demarrage Compteur),

//TSIDL=1(Fonctione sur idle mode)//(Synchronisation sur Front externe),

//TCS=1 (Entrée Externe sélectionné)

//Configuration du registres d’Interruption:INTCON2 &= 0xFFF7; //INT3 sur front positiveIEC2bits.INT3IE = 1; //Validation Interruption INT3

Présentation – Organisation/Retard – La conception – Bilan

Page 38: Delco Logique II

Le driver Vitesse

Natalia Mendoza 38

La fonction d’interruption

void __attribute__((__interrupt__, auto_psv)) _INT3Interrupt(void){

IEC2bits.INT3IE = 0; //Inhibe les interruptions sur INT3 pendant le traitement

periode_vitesse = TMR4; TMR4 = 0; //Réinitialisation Timer 4 (Base de Temps

Calcul Période) pour le prochain tour

IFS2bits.INT3IF = 0; // Supprime drapeau d'interruption sur INT3 IEC2bits.INT3IE = 1;

}

Présentation – Organisation/Retard – La conception – Bilan

Page 39: Delco Logique II

Calcul et fourni la vitesse de la voiture

Le driver Vitesse

Natalia Mendoza 39

Fonction Utilisateur

void lance_Vitesse_voiture (void){

// resultat en (Km/H)Vitesse_voiture = (3. 392 / periode_vitesse) ;

}

Présentation – Organisation/Retard – La conception – Bilan

Page 40: Delco Logique II

Points forts ◦ Fonctionnement des drivers ◦ Fonctionnement des simulateurs des capteurs◦ Drivers adaptables par fichier de configuration

Points faibles◦ Aucun test en réel◦ Noyau temps réel difficile à maîtriser◦ Avance driver Delco v2 gérée mécaniquement

Bilan technique

40

Présentation – Organisation/Retard – La conception – Bilan

Alexis Delzon

Page 41: Delco Logique II

Points forts ◦ Répartition des tâches pour travailler

indépendammentMeilleur gestion du temps

◦ Séparation en driversDélimitation précise des périphériques et du code à

générer Points faibles

◦ Partage des ressources parfois difficileUne seule carte de test + 1 DsPIC

Bilan organisationnel

Natalia Mendoza 41

Présentation – Organisation/Retard – La conception – Bilan

Page 42: Delco Logique II

Noyau Temps Réel◦ Faire un noyau Temps Réel propre au projet

Driver PMH◦ Utiliser un Timer pour le début de la charge de la bobine◦ Réaliser l’algorithme de passage entre démarrage et régime établi

Driver Delco v2◦ Utilisation de Timers pour la gestion de l’avance

Améliorations envisageables

42

Présentation – Organisation/Retard – La conception – Bilan

Clément Geamblu

Page 43: Delco Logique II

Si vous avez des questions ?

Merci de votre attention

43