présentation pfe
TRANSCRIPT
المدرسة الوطنية للمهندسين بتونس
École Nationale d’Ingénieurs de TunisDépartement Technologies de l’Information et des Communications
Travail effectué par Gharbi Khaled En collaboration avec: Laboratoire Systèmes de Communications
Pour obtenir le Diplôme National d’ingénieur en télécommunications
Intégration du RTOS µC/OS-II dans le code généré relatif au SAE selon l’approche Model Based Design et son
déploiment sur réseau CAN
Encadré par: M. Salem HASNAOUI
1
Module 2Slide 2
Plan
Introduction
Les réseaux automobiles
Le Model Based Design
Présentation des ECUs
Génération de code
Intégration de µC/OS-II
Conclusion 2/29
Module 2Slide 3
Introduction
• Systèmes éléctroniques et informatiques autonomes
• Systèmes complexes soumis à plusieurs contraintes
• Systèmes qui envahissent le secteur industriel
L’obligation de la parfaite maîtrise des deux aspects des
systèmes embarqués (matériel et logiciel)
Intégration de µC/OS-II
Génération de code
Présentation des ECUs
Introduction
Les réseaux automobiles
Le Model Based Design
Conclusion3/29
Module 2Slide 4
Problématique
• Accélérer le processus de développement spécialement
dans l’automobile.
Avoir recours à de nouvelles méthodes de conception et de
développement telle que Model Based Design.
Utilisation des RTOS préemptifs pour assurer la sécurité et
le respect des délais.Intégration de µC/OS-II
Génération de code
Présentation des ECUs
Introduction
Les réseaux automobiles
Le Model Based Design
Conclusion4/29
Module 2Slide 5
Les réseaux automobiles (1)
“L’évolution du développement du logiciel embarqué automobile de couche supérieure a été exponentiel” Robert Gee: Directeur de stratégie pour Motorola automobile
5/29
Module 2Slide 6
Les réseaux automobiles (2)
• Défis actuels dans l’automobile:
Limitation de l’émission du CO2 à 120g/km en 2015.
Diminution de la consommation des voitures en carburant.
Diminution de 40% du coût matériel.
Garantie d’un meilleur rapport qualité/prix.
Assurer le maximum de sécurité aux utilisateurs.
Intégration de µC/OS-II
Génération de code
Présentation des ECUs
Introduction
Les réseaux automobiles
Le Model Based Design
Conclusion6/29
Module 2Slide 7
Les réseaux automobiles (3)CAN
MOST
FlexRayX-by-Wire
LIN
Safe-by-Wire Plus
Module 2Slide 8
Model Based Design (2)
• Les nouvelles tendances du développement embarqué:
Amélioration de la qualité.
Réutilisation des IPs.
Détection et correction des erreurs dès le début de la
conception.
Réduction des délais et des coûts.
Opter à l’approche Model Based Design.Intégration de µC/OS-II
Génération de code
Présentation des ECUs
Introduction
Les réseaux automobiles
Le Model Based Design
Conclusion
8/29
Module 2Slide 9
• Basé sur les environnements de simulation
(Simulink, Octave, Test In View..)
• Fondé sur:
Des spécifications exécutables.
La conception et la simulation.
L’implémentation en utilisant la génération
automatique de code.
Test et vérification en continu.
Intégration de µC/OS-II
Génération de code
Présentation des ECUs
Introduction
Les réseaux automobiles
Le Model Based Design
Conclusion
Model Based Design (1)
9/29
Module 2Slide 10 Model based Design (3)
Recherches spécifications
Conception
Modèle de l’environement
Composants physiques
Algorithmes
Implémentation
Intégration
Test et vérification
C,C++VHDL,V
erilog
•Conception des modèles sous
Simulink
• Génération automatique du
code en utilisant le RTWEC .
• Optimisation de code.
• Vérification continue des
conditions fournies dans le cahier des
charge.• Test d’intégration
virtuel.• Simulation
hardware-in-the-loop
10/29
Module 2Slide 11
Outils utilisés
Matlab 2010. Simulink. RTWEC. Tasking C166-ST10. Dave. XC167 CI
Intégration de µC/OS-II
Génération de code
Présentation des ECUs
Introduction
Les réseaux automobile
Le Model Based Design
Conclusion11/29
Module 2Slide 12
Présentation des ECUs (1)
• L’association mondiale SAE: Society of automotive Engineers.
• Transmission de 53 messages entre sept différents ECUs:
Battery.
Brakes.
Driver inputs.
Inverter/Motor Controller.
Instrument panel display.
Transmission controller.
Vehicle controller.
Intégration de µC/OS-II
Génération de code
Présentation des ECUs
Introduction
Les réseaux automobile
Le Model Based Design
Conclusion12/29
Module 2Slide 13
Présentation des ECUs (2)
• Système de suspension constitué de cinq noeuds:
Calculateur central.
Calculateur secondaire au niveau de chaque roue.
Échange de 12 signaux sur réseau CAN
Intégration de µC/OS-II
Génération de code
Présentation des ECUs
Introduction
Les réseaux automobile
Le Model Based Design
Conclusion13/29
Module 2Slide 14
• Conception d’un nouveau noeud.
• Système d’injection de carburant sur réseau CAN.
•Traitement de 6 nouveaux signaux.
Obtention d’un réseau composé de 13 noeuds.
Traitement de 71 signaux.
Intégration de µC/OS-II
Génération de code
Présentation des ECUs
Introduction
Les réseaux automobile
Le Model Based Design
Conclusion
Présentation des ECUs (3)
14/29
Module 2Slide 15
Le système de suspension
• Modèle décrit par CHALASANI (1986).
• Modèle avec sept degrés de liberté:
Une masse suspendue libre de faire trois mouvements.
Quatre masses non suspendues pouvant faire chacune un
mouvement vertical.
Intégration de µC/OS-II
Génération de code
Présentation des ECUs
Introduction
Les réseaux automobile
Le Model Based Design
Conclusion15/29
Module 2Slide 16
• Modèle développé par Mohamed El Mongi BEN GAID en 2006.
Définition de 12 signaux pour le modèle de suspension.
Intégration dans le SAE Benchmark.
• Élaboration de quatre calculateurs secondaires au niveau de chaque
roue.
• Élaboration d’un calculateur central.
16/29
Module 2Slide 17
Le système d’injection
• EFI: Electronic Fuel Injection.
• Le EFI remplace le carburator.
• Reception de quatre messages (non standards) :
Engine speed signal.
Throttle angle signal.
Exhaust gas oxygen.
Manifold absolute pressure.
• Emission de deux messages (non standards) :
Air /fuel Mixture Ratio.
O2-out.
Intégration de µC/OS-II
Génération de code
Présentation des ECUs
Introduction
Les réseaux automobile
Le Model Based Design
Conclusion17/29
Module 2Slide 18
18/29
Module 2Slide 19
Description du modèle de l’EFI
Module 2Slide 20
Génération de code (1)
• Établissement du lien entre Matlab et Tasking
• Configuration des paramètres du modèle:
Choix du solver.
Choix de la cible.
Choix du type: single rate/multirate, single tasking/Multitasking
• Utilisation du Real Time workshop Embedded Coder.
• Utilisation du compilateur Tasking pour optimisation du code.
• Génération automatique du code C à partir des modèles.
Intégration de µC/OS-II
Génération de code
Présentation des ECUs
Introduction
Les réseaux automobiles
Le Model Based Design
Conclusion20/29
Module 2Slide 21
Génération de code (2)
20/29
Module 2Slide 22
Le code généré
• Le code généré comporte:
“start.asm”.
“dispatcher.asm”.
“Brakes_model.c”.
“Brakes_model.h”.
“TwinCAN_driver.c”.
“c166_main.c”.Intégration de
µC/OS-II
Génération de code
Présentation des ECUs
Introduction
Les réseaux automobiles
Le Model Based Design
Conclusion22/29
Module 2Slide 23
L’ordonnancement sous « RT kernel »
Brakes_model.c
Model_Step(tid)
Struct 1
Struct 2
Rate_Schedular ( )
TimingC166 main
Rt_OneStep( )
• Vérifier s’il y a des erreurs.
• Déterminer les blocs qui vont être exécutés.• Exécuter la fonction: Model_Step(tid)
Intégration de µC/OS-II
Génération de code
Présentation des ECUs
Introduction
Les réseaux automobiles
Le Model Based Design
Conclusion23/29
Module 2Slide 24
Intégration de µC/OS-II
• Profiter des structures et des tâches optimisées.
• µC/OS-II est un RTOS:
Ouvert.
Portable.
Romable.
Préemptif.
Multitâche.
• Une bonne gestion des tâches en utilisant les sémaphores, les
“mailboxes” et les “queues”.
Intégration de µC/OS-II
Génération de code
Présentation des ECUs
Introduction
Les réseaux automobiles
Le Model Based Design
Conclusion24/29
Module 2Slide 25
Procédure d’intégration
Élimination du « RT kernel » fourni par RTWEC
Écriture des tâches pour ce modèle à partir de la fonction « brakes Model_step () »
Développement du “main.c” en tenant compte du µC/OS-II
Intégration des services de µC/OS-II
Développement du BSP
Portage de µC/OS-II
.c .h Compilation et “Build”
ECU
25/29
Module 2Slide 26
Problèmes rencontrés
• Utilisation du concept S-function pour le modèle de EFI.
• Génération des fichiers hexadecimales.
• Portage du µC/OS-II sous le le compilateur Tasking.
• Quelques erreurs lors de la conception des modèles
Intégration de µC/OS-II
Génération de code
Présentation des ECUs
Introduction
Les réseaux automobiles
Le Model Based Design
Conclusion26/29
Module 2Slide 27
Conclusion
• Acquérir une base solide dans les systèmes embarqués
temps réel.
• Étudier et utiliser les réseaux automobiles: CAN, FlexRay.
• Approfondir les connaissances relatives aux méthodes de
développement embarqué.
• Utiliser l’approche Model Based Design pour la conception
et le développement de ces systèmes.
• Se familiariser avec le système d’exploitation µC/OS-II.
Intégration de µC/OS-II
Génération de code
Présentation des ECUs
Introduction
Les réseaux automobiles
Le Model Based Design
Conclusion27/29
Module 2Slide 28
Perspectives
• Élaboration des calculateurs pour les différents nœuds.
• Utilisation des blocs Simulink FlexRay lors de la
conception.
• Utilisation des outils de tests:
• Automatisation de l’intégration de µC/OS-IIIntégration de
µC/OS-II
Génération de code
Présentation des ECUs
Introduction
Les réseaux automobiles
Le Model Based Design
Conclusion28/29
Module 2Slide 29
المدرسة الوطنية للمهندسين بتونس
École Nationale d’Ingénieurs de TunisDépartement Technologies de l’Information et des Communications
Merci pour votre attention
29/29