Formations en Informatique de Lille
Portail pédagogique
Vous êtes ici : FIL > Portail > Master Info > Internet des Objets > CLE

Conception des Logiciels Embarqués

AcronymCLE
BCCSystème d’exploitation (SYS)
Semestre S1
ECTS6
UEs prerequises
ResponsableGiuseppe Lipari

Objectifs

L’objectif de cette UE est de former les étudiants aux méthodologies de programmation spécifiques aux systèmes embarqués.

Programme succinct

  • Introduction to IoT and embedded systems ;
    • characteristics, constraints, goals ;
  • Reactive programming ;
    • Event-based systems, the event loop ;
  • Finite State Automata
  • UML state charts, code generation from state chart
  • Timed Automata
    • Verification with model checking
  • Introduction to automatic control
    • sensors, actuators, control goals, feedback control
  • Synchronous vs. asynchronous and data-flow programming
  • Multi-thread programming for embedded systems
  • Design of a simple IoT based embedded system

Compétences

Understand the main problems and constraints in the design and programming of an embedded system. Know the basis of feedback control to communicate with control engineers. Code generation from high level models of finite state machine. Implementation of a simple embedded system on a real robotic platform.

Modalités d'évaluation

CC, Soutenance orale

Embedded System Design

AcronymCLE
BCCOperating Systems (SYS)
Semester S1
ECTS6
Requirements
ResponsibleGiuseppe Lipari

Objectifs

The objective of this UE is to teach student the design and programming methods typical of embedded systems.

Short Program

  • Introduction to IoT and embedded systems ;
    • characteristics, constraints, goals ;
  • Reactive programming ;
    • Event-based systems, the event loop ;
  • Finite State Automata
  • UML state charts, code generation from state chart
  • Timed Automata
    • Verification with model checking
  • Introduction to automatic control
    • sensors, actuators, control goals, feedback control
  • Synchronous vs. asynchronous and data-flow programming
  • Multi-thread programming for embedded systems
  • Design of a simple IoT based embedded system

Competences

Understand the main problems and constraints in the design and programming of an embedded system. Know the basis of feedback control to communicate with control engineers. Code generation from high level models of finite state machine. Implementation of a simple embedded system.

Evaluation

Projects and Written Exam

Cours progression

All documents (slides etc.) are available on gitlab.

  Date Topic Assignment
1 <2021-09-17 ven.> Introduction, State machines TP 1
2 <2021-09-24 ven.> UML StateCharts TP 2
3 <2021-10-08 ven.> Simulation and code generation TP 3
4 <2021-10-15 ven.> Events, time, interrupts "
5 <2021-10-22 ven.> Feedback control TP 4
6 <2021-10-29 ven.> Feedback control "
7 <2021-11-12 ven.> Timed Automata TP 5
8 <2021-11-19 ven.> Timed Automata "
9 <2021-11-26 ven.> Embedded System programming TP 6
10 <2021-12-03 ven.> Embedded System programming "
11 <2021-12-10 ven.> Embedded System programming "
12 <2021-12-17 ven.> Oral exam (Assignments check)  

Progression

Tous les documents sont disponibles sur gitlab.

  Date Topic Assignment
1 <2021-09-17 ven.> Introduction, State machines TP 1
2 <2021-09-24 ven.> UML StateCharts TP 2
3 <2021-10-08 ven.> Simulation and code generation TP 3
4 <2021-10-15 ven.> Events, time, interrupts "
5 <2021-10-22 ven.> Feedback control TP 4
6 <2021-10-29 ven.> Feedback control "
7 <2021-11-12 ven.> Timed Automata TP 5
8 <2021-11-19 ven.> Timed Automata "
9 <2021-11-26 ven.> Embedded System programming TP 6
10 <2021-12-03 ven.> Embedded System programming "
11 <2021-12-10 ven.> Embedded System programming "
12 <2021-12-17 ven.> Oral exam (Assignments check)  

Évaluation

La note finale est calculé comme note de contrôle continu en fonction de rendus de TP et des interrogations écrites.

L'étudiant recevra 4 notes pendant le semestre:

  • TPA : une note sur les TPs 1, 2, 3, 4 (FSMs, Statecharts, Génération de code, Feedback control) ;
  • TPB : une note sur le TPs 5 et 6 (Timed Automata, Projet final) ;
  • INT : une note sur une interrogation écrite intermédiaire ;
  • INF : une note sur une interrogation écrite finale.

La note finale est calculé comme :

0.25 x TPA + 0.2 x INT + 0.25 x TPB + 0.3 INF

Evaluation

The final mark is computed as a function of the assignments and of the written exams.

The student receives 4 marks during the semester:

  • TPA : a mark on the first 4 TPs (FSMs, Statecharts, code generation, Feedback control) ;
  • TPB : a mark on TPs 5 and 6 (Timed Automata, final project) ;
  • INT : a mark on the intermediate exam ;
  • INF : a mark on the final exam.

The final mark is computed as

0.25 x TPA + 0.2 x INT + 0.25 x TPB + 0.3 INF

Documents

To access the documents, you first need to require access to the CLE-2021 gitlab group. Once the teacher will grant you the access, you can find all the slides and the documents in the documents repository.

You can also download all documents by cloning the repository.

The group also contains repositories for the assignments and training for exams.

Assignments

To perform the assignment, you have to

  1. Fork the corresponding repository into your space ;
  2. Add the teacher (Giuseppe Lipari) as Developer member of the project ;
  3. Clone your repository and start to work on it ;
  4. Commit and push changes before the deadline.

Documents

Pour acceder aux documents, vous devez d'abord demander l'access au groupe CLE-2021 gitlab group. Une fois que l'enseignant vous donne l'acces, vous trouverez les documents dans le repository documents.

Vous avez aussi le droit de cloner le repo. Le groupe containt les repositories pour les TPs et des documents pour vous entrainer pour l'examen.

TPs

Pour faire les TPs, vous devez

  1. Forker les repo correspondante ;
  2. Ajouter l'enseignant (Giuseppe Lipari) comme member Developer du projet ;
  3. Cloner le repo et travailler ;
  4. Faire Commit et push avant l'echeance.