La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Logiciel Embarqué 1. 1 Présentation 2 Organisation / Retard 3 La conception 4 Bilan 2.

Présentations similaires


Présentation au sujet: "Logiciel Embarqué 1. 1 Présentation 2 Organisation / Retard 3 La conception 4 Bilan 2."— Transcription de la présentation:

1 Logiciel Embarqué 1

2 1 Présentation 2 Organisation / Retard 3 La conception 4 Bilan 2

3 Mettre en place un ordonnancement pour lallumage du moteur dune super 5 Traiter les informations dautres capteurs pour informer le conducteur 3 Analyse du fonctionnement du moteur Création dalgorithmes de calcul dallumage Programmation dun microcontrôleur DsPIC Présentation – Organisation/Retard – La conception – Bilan

4 Le moteur 4 temps 4 Présentation – Organisation/Retard – La conception – Bilan

5 5

6 6 Batterie 4 Bobines Bougies Microcontrôleur Rupteur électronique Sécurité Rupteur + Distributeur Présentation – Organisation/Retard – La conception – Bilan

7 7 Nouveaux capteurs Simulateur capteurs Programmation DsPIC Présentation – Organisation/Retard – La conception – Bilan

8 8 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 Présentation – Organisation/Retard – La conception – Bilan

9 1 Conception des drivers Groupe Capteur 2 Ressources Communes 1 microcontrôleur à se partager 3 Installation de lespace de Travail 30 min avant et après pour laménagement 9 Présentation – Organisation/Retard – La conception – Bilan

10 Le choix PICos v 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

11 Quest ce que cest? 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 limage de la position du cycle moteur 11 Présentation – Organisation/Retard – La conception – Bilan

12 Principe 12 Source: Auteur: Jean Pierre HOAREAU Présentation – Organisation/Retard – La conception – Bilan

13 Problème ! S ELON GROUPE CAPTEUR Pas de roue dentée 60 dents PMH non compatible avec la super 5 13 Solution Utiliser la roue dentée 101 dents Nouvel ordonnancement Présentation – Organisation/Retard – La conception – Bilan

14 Principe dallumage des bougies 14 Présentation – Organisation/Retard – La conception – Bilan

15 Nouvel algorithme sur lallumage 15 Dent Bougie 1 Bougie 2 Bougie 3 Bougie 4 Interruption Dents Interruption Index 5 ms Présentation – Organisation/Retard – La conception – Bilan

16 Pourquoi ? 1 seul régime pris en compte Pas de différence entre le démarrage et le régime établi 16 Inconvénient Consommation dénergie non optimisée Présentation – Organisation/Retard – La conception – Bilan

17 17 Fonctionne Simulateur du driver PMH! Le driver PMH avec algorithme à étincelle perdue Une version de lalgorithme normal pour le régime établi Soucis Erreur de précision négligeable pour la charge Pas de réglage de lavance (1 dent = 3.56°) Noyau Temps Réel instable avec le driver PMH Finalement 101 dents Présentation – Organisation/Retard – La conception – Bilan

18 18 Pour lutilisateur Activation par init_PMH() Paramétrable en statique et en dynamique Les points importants Présentation – Organisation/Retard – La conception – Bilan

19 19 Temps alloué au traitement pour un régime de 6000tr/min T dent = 99µs Temps Max dexécution mesuré en simulation T traitement_dent_MAX =76µs (avec Focs = 16MHz) Temps disponible pour les traitements du noyau T noyau_MAX =23µs Temps Présentation – Organisation/Retard – La conception – Bilan

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

21 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 21 Présentation – Organisation/Retard – La conception – Bilan

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

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

24 Fréquence de Fonctionnement ? 10 ms et 40ms Ordre dapparition 24 Présentation – Organisation/Retard – La conception – Bilan

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

26 Volonté de pouvoir basculer dun programme à un autre Partage des ressources du DsPIC Ressources attribuées au départ: Un Timer : gestion de lordonnancement Une entrée interruptive : rupteur 4 entrée NI: Signaux Delco I 26 Présentation – Organisation/Retard – La conception – Bilan

27 27 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 dINDEX Présentation – Organisation/Retard – La conception – Bilan

28 28 Test en simulation : rajout du simulateur dindex T(bob) modifiable entre 3ms et 5ms Présentation – Organisation/Retard – La conception – Bilan

29 Driver Gestion de la Position de la pédale daccélération (driver Position) Fonctionnement de lADC Configuration de registres de lADC Programme Driver Vitesse de la voiture (driver Vitesse) Fonctionnement Configuration de Registre du Timer et dinterruption Programme 29 Présentation – Organisation/Retard – La conception – Bilan

30 30 Récupérer la position de la pédale pour la transmettre à la partie communication. Présentation – Organisation/Retard – La conception – Bilan

31 LADC du dsPIC permet de convertir une grandeur continue analogique de tension comprise entre AVSS et AVDD (0 à 5V dans notre cas) Initialise les ports dentrée Configure les registres Lance la conversion Exécute la boucle sans fin 31 Fonctionnement Présentation – Organisation/Retard – La conception – Bilan

32 Valeur récupérée sur ADCBUF3 32 Configuration du registre de lADC 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 lentré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

33 Récupère une image de la position 33 Programme: 1 ere 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

34 Récupère la position en % 34 Programme: 2 eme Fonction float calcule_niveau_acceleration(void) { long num ; num = calcul_acceleration (); return ((0.0244)*num); } Présentation – Organisation/Retard – La conception – Bilan

35 35 -Mesure le temps entre chaque front montant - gère les interruptions - fait le calcul. Présentation – Organisation/Retard – La conception – Bilan

36 Configuration du port dentrée Configuration du registre dinterruption et du Timer Lancement de linterruption Exécution de la boucle 36 Fonctionnement Présentation – Organisation/Retard – La conception – Bilan

37 37 Configuration des registres //Configuration du Port dentrée : TRISD |= 0x0400;//RD10 en entrée //Configuration du registres du Timer : TMR4 = 0;//Initialisation du Compteur a 0 T4CON = 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 dInterruption: INTCON2 &= 0xFFF7;//INT3 sur front positive IEC2bits.INT3IE = 1;//Validation Interruption INT3 Présentation – Organisation/Retard – La conception – Bilan

38 38 La fonction dinterruption 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

39 Calcul et fourni la vitesse de la voiture 39 Fonction Utilisateur void lance_Vitesse_voiture (void){ // resultat en (Km/H) Vitesse_voiture = ( / periode_vitesse) ; } Présentation – Organisation/Retard – La conception – Bilan

40 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 40 Présentation – Organisation/Retard – La conception – Bilan

41 Points forts Répartition des tâches pour travailler indépendamment Meilleur gestion du temps Séparation en drivers Délimitation précise des périphériques et du code à générer Points faibles Partage des ressources parfois difficile Une seule carte de test + 1 DsPIC 41 Présentation – Organisation/Retard – La conception – Bilan

42 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 lalgorithme de passage entre démarrage et régime établi Driver Delco v2 Utilisation de Timers pour la gestion de lavance 42 Présentation – Organisation/Retard – La conception – Bilan

43 Si vous avez des questions ? 43


Télécharger ppt "Logiciel Embarqué 1. 1 Présentation 2 Organisation / Retard 3 La conception 4 Bilan 2."

Présentations similaires


Annonces Google