1 / 43

Delco Logique II

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.

rock
Download Presentation

Delco Logique II

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Vendredi 12 Juin 2009 Delco Logique II Logiciel Embarqué Tuteuré par Pascal ACCO Présenté par Alexis DELZON, Clément GEAMBLU, Natalia MENDOZA

  2. Plan Alexis Delzon

  3. Présentation– Organisation/Retard – La conception – Bilan Cahier des Charges • Mettre en place un ordonnancement pour l’allumage du moteur d’une super 5 • Traiter les informations d’autres capteurs pour informer le conducteur  Analyse du fonctionnement du moteur  Création d’algorithmes de calcul d’allumage  Programmation d’un microcontrôleur DsPIC Alexis Delzon

  4. Présentation– Organisation/Retard – La conception – Bilan Introduction à l’allumage classique • Le moteur 4 temps Alexis Delzon

  5. Présentation– Organisation/Retard – La conception – Bilan Présentation global du système Alexis Delzon

  6. Présentation– Organisation/Retard – La conception – Bilan Delco Logique I • Batterie • 4 Bobines • Bougies • Rupteur + • Distributeur • Rupteur • électronique • Microcontrôleur • Sécurité Alexis Delzon

  7. Présentation– Organisation/Retard – La conception – Bilan Les apports de Delco-Logique 2 Simulateur capteurs Nouveaux capteurs Programmation DsPIC Alexis Delzon

  8. Présentation – Organisation/Retard– La conception – Bilan Organisation de l’équipe Au début Finalement • 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 Clément Geamblu

  9. Présentation – Organisation/Retard– La conception – Bilan Retards Clément Geamblu

  10. Présentation – Organisation/Retard – La conception– Bilan Le Noyau Temps Réel Clément Geamblu

  11. Présentation – Organisation/Retard – La conception– Bilan Le PMH Clément Geamblu

  12. Présentation – Organisation/Retard – La conception– Bilan Le driver PMH Source: http://www.geea.org/ Auteur: Jean Pierre HOAREAU Clément Geamblu

  13. Présentation – Organisation/Retard – La conception– Bilan Le driver PMH Clément Geamblu

  14. Présentation – Organisation/Retard – La conception– Bilan Interruption Index Interruption Index Interruption Index Dent 34 84 34 84 34 Bougie 1 Interruption Dents 5 ms Bougie 2 5 ms Bougie 3 5 ms Bougie 4 5 ms Le driver PMH Clément Geamblu

  15. Présentation – Organisation/Retard – La conception– Bilan Interruption Index Interruption Index Interruption Index Dent 34 84 34 84 34 Bougie 1 Interruption Dents Bougie 2 Bougie 3 5 ms 5 ms Bougie 4 5 ms Le driver PMH 5 ms Algorithme à étincelle perdue Clément Geamblu

  16. Présentation – Organisation/Retard – La conception– Bilan Le driver PMH Clément Geamblu

  17. Présentation – Organisation/Retard – La conception– Bilan 101 dents Le driver PMH • 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 Clément Geamblu

  18. Présentation – Organisation/Retard – La conception– Bilan Le driver PMH • Pour l’utilisateur • Activation par init_PMH() • Paramétrable en statique et en dynamique Clément Geamblu

  19. Présentation – Organisation/Retard – La conception– Bilan Le driver PMH / Noyau Temps Réel • 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 Clément Geamblu

  20. Présentation – Organisation/Retard – La conception– Bilan Simulation du driver PMH Haut Régime Pindex=13.55ms Bas Régime Pindex=188ms Clément Geamblu

  21. Présentation – Organisation/Retard – La conception– Bilan Ordonnancement par Delco • 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 Alexis Delzon

  22. Présentation – Organisation/Retard – La conception– Bilan Principe de Fonctionnement Alexis Delzon

  23. Présentation – Organisation/Retard – La conception– Bilan Principe de Fonctionnement Alexis Delzon

  24. Présentation – Organisation/Retard – La conception– Bilan Mise en place du simulateur • Fréquence de Fonctionnement ? • 10 ms et 40ms • Ordre d’apparition Alexis Delzon

  25. Présentation – Organisation/Retard – La conception– Bilan Création du simulateur Alexis Delzon

  26. Présentation – Organisation/Retard – La conception– Bilan Ordonnancement par Delco I • 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 Alexis Delzon

  27. Présentation – Organisation/Retard – La conception– Bilan Principe de l’ordonnancement • 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 Alexis Delzon

  28. Présentation – Organisation/Retard – La conception– Bilan Résultat Test en simulation : rajout du simulateur d’index T(bob)  modifiable entre 3ms et 5ms Alexis Delzon

  29. Présentation – Organisation/Retard – La conception– Bilan Les drivers Position et Vitesse • 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 Natalia Mendoza

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

  31. Présentation – Organisation/Retard – La conception– Bilan Le driver Position • 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 Natalia Mendoza

  32. Présentation – Organisation/Retard – La conception– Bilan Le driver Position • Valeur récupérée sur ADCBUF3 voidadcconfiguration(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 } Natalia Mendoza

  33. Présentation – Organisation/Retard – La conception– Bilan Le driver Position • Récupère une image de la position intcalcul_acceleration (void){ ADCON1bits.SAMP = 0; // start conversion while(ADCON1bits.DONE); // attend la fin return ADCBUF3; } Natalia Mendoza

  34. Présentation – Organisation/Retard – La conception– Bilan Le driver Position • Récupère la position en % floatcalcule_niveau_acceleration(void) { longnum ; num = calcul_acceleration ();  return ((0.0244)*num); } Natalia Mendoza

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

  36. Présentation – Organisation/Retard – La conception– Bilan Le driver Vitesse • Configuration du port d’entrée • Configuration du registre d’interruption et du Timer • Lancement de l’interruption • Exécution de la boucle Natalia Mendoza

  37. Présentation – Organisation/Retard – La conception– Bilan Le driver Vitesse //Configuration du Port d’entré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 d’Interruption: INTCON2 &= 0xFFF7; //INT3 sur front positive IEC2bits.INT3IE = 1; //Validation Interruption INT3 Natalia Mendoza

  38. Présentation – Organisation/Retard – La conception– Bilan Le driver Vitesse 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; } Natalia Mendoza

  39. Présentation – Organisation/Retard – La conception– Bilan Le driver Vitesse • Calcul et fourni la vitesse de la voiture voidlance_Vitesse_voiture (void){ // resultat en (Km/H) Vitesse_voiture = (3. 392 / periode_vitesse) ; } Natalia Mendoza

  40. Présentation – Organisation/Retard – La conception – Bilan Bilan technique • 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 Alexis Delzon

  41. Présentation – Organisation/Retard – La conception – Bilan Bilan organisationnel • 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 Natalia Mendoza

  42. Présentation – Organisation/Retard – La conception – Bilan Améliorations envisageables • 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 Timerspour la gestion de l’avance Clément Geamblu

  43. Merci de votre attention • Si vous avez des questions ?

More Related