[Programmation] Matériel temps réel
Répondre à la discussion
Affichage des résultats 1 à 12 sur 12

Matériel temps réel



  1. #1
    Anduriel

    Matériel temps réel


    ------

    Bonjour,

    Dans le cadre d'asservissement de systèmes, j'aimerais m'intéresser aux supports de calculs temps réels.

    En tapant RTOS sur Google, je tombe sur divers systèmes ou plates-formes ou je ne sais trop quoi (pour le moment) mais j'aimerais bien trouver des explications avec approche très simple orientée hardware: j'imagine que ça tourne autour d'une horloge qui génère une interruption sur un composant qui exécute alors un code ? Est ce faisable avec Raspberry ou arduino ou microprocesseur "simple" type PIC ?

    Auriez vous des lectures à me conseiller, ni trop grand public, ni grand expert ?

    Merci

    -----

  2. #2
    DAUDET78

    Re : Matériel temps réel

    Citation Envoyé par Anduriel Voir le message
    j'aimerais m'intéresser aux supports de calculs temps réels.
    C'est quoi pour toi la notion de temps réel ?
    J'aime pas le Grec

  3. #3
    Anduriel

    Re : Matériel temps réel

    Bonjour,

    Dans mon referentiel c'est réaliser une tâche à un cadencement très précis: quand on discrétise un correcteur (transformation de Tustin par exemple) on doit connaître la fréquence d'échantillonnage. Une trop grosse incertitude dessus (ou un jitter trop élevé) peut entraîner des instabilités.

  4. #4
    DAUDET78

    Re : Matériel temps réel

    Chacun a donc ses notions du temps réel .
    Si ton processeur n'a qu'une seule tache à faire, il sera temps réel si il donne le résultat avant que le prochain échantillon arrive.

    La ou ça se complique, c'est lorsqu'il y a plusieurs taches à faire (Par exemple : une tache pour rafraîchir un écran, une tache pour gérer un interface homme/machine et une tache pour calculer une FFT)
    Dans ce cas, si les taches sont exécutées l'une après l'autre, et que la FFT prend 1 secondes, un appui fugitif sur un bouton ne sera pas vu .

    La notion d'OS temps réel, c'est d'avoir un chef d’orchestre qui va lancer chaque tache successivement, mais avec un temps limité ( par exemple 20ms)
    Donc
    pendant 20ms ->écran
    pendant 20ms ->IHM
    pendant 20ms ->FFT
    pendant 20ms ->écran
    pendant 20ms ->IHM
    pendant 20ms ->FFT
    etc etc
    Comme ça , l'écran est mise à jour toutes les 60ms, ainsi que la lecture des boutons de l'IHM

    NB : Expliquer en 5 lignes un OS temps réel, c'est impossible. Donc je laisse beaucoup de chose dans l'ombre, mais le reste n'est pas idiot.
    J'aime pas le Grec

  5. A voir en vidéo sur Futura
  6. #5
    lou_ibmix_xi

    Re : Matériel temps réel

    Un OS temps réel est un OS dont le délais de réponse à une interruption est bornée. Ce n'est pas le cas des OS classiques car c'est contre productif, à plateforme équivalente, un OS temps-réel aura des délais de réponses bien plus important qu'un OS classique dans 99% des cas, en fait c'est le 1% des cas où le délais explose, un délais de quelques 10aines de ms n'est pas dramatique quand tu regardes une vidéo, ça l'est bien plus dans le pilotage d'un avion ou d'une centrale nucléaire.

    La notion de temps-réel n'a pas de sens dans le monde du matériel, un système électronique a un délais de réponse fini, mais tu as des architectures qui sont plus "réactives" que d'autre. Ca ne change rien sur la garantie que le temps est borné, mais ça diminue les délais. Un exemple classique est le(s) cache(s) mémoires, c'est très bien pour une grande majorité d'application, mais pour la réactivité c'est pas top, il faut vidanger tout les caches pour les re-remplir avec le code de l'interruption....

  7. #6
    Anduriel

    Re : Matériel temps réel

    Merci pour vos réponses. Connaissez vous un système temps réel du coup (dans le sens d'un séquenceur permettant de réaliser différentes tâches sur des périodes precises) simplement abordable pour se familiariser sur le sujet ?
    J'ai entendu parler de WxWorks, est ce le plus simple qui existe ? (dans le sens prise en main)

    Merci

  8. #7
    lou_ibmix_xi

    Re : Matériel temps réel

    Citation Envoyé par Anduriel Voir le message
    Merci pour vos réponses. Connaissez vous un système temps réel du coup (dans le sens d'un séquenceur permettant de réaliser différentes tâches sur des périodes precises) simplement abordable pour se familiariser sur le sujet ?
    J'ai entendu parler de WxWorks, est ce le plus simple qui existe ? (dans le sens prise en main)

    Merci
    tout dépends de la finalité.... Pour un problème simple tu peux utiliser une solution purement électronique (FPGA...), pour un problème intermédiaire un micro-controleur (pic, msp430, ARM...) et un "OS" simple comme FreeRTOS. Si tu as besoin de la complexité d'un "vrai" ordinateur, il faut effectivement utiliser une solution type WxWorks, LinuxRT etc... Suivant la solution retenue les aspects temps-réels sont "cachés", c'est de la prog multi-thread classique, ou il faut que tu te tapes du développement en mode noyau, plus difficile.

  9. #8
    jiherve

    Re : Matériel temps réel

    Bonsoir,
    Dans ce cas précis il n'est pas besoin d'un os temps réel mais amha un d'un bête séquenceur géré par interruption.
    JR
    l'électronique c'est pas du vaudou!

  10. #9
    lou_ibmix_xi

    Re : Matériel temps réel

    Citation Envoyé par jiherve Voir le message
    Bonsoir,
    Dans ce cas précis il n'est pas besoin d'un os temps réel mais amha un d'un bête séquenceur géré par interruption.
    JR
    Je ne sais pas ce que tu entends par séquenceur. Mais c'est l'OS qui gère les interruptions, donc si l'OS n'est pas temps-réel il n'y a aucune garantie que la réponse à l'interruption arrive à temps.

  11. #10
    jiherve

    Re : Matériel temps réel

    Bonsoir,
    Point n'est besoin d'un OS pour gérer des interruptions. L'OS est implicite(hardware) et préemptif ,terme honnis par la plupart des softeux car cela suppose une maitrise totale de la machine. Aucun processeur ne demande d'OS pour être utilisable, il faudrait se plonger un peu dans les datasheet.
    Il fut un temps ou ce genre de tâche se gérait par un bête 6809 et ses interruptions (NMI,FIRQ,IRQ) et cela fonctionnait bien , mais on peut faire la même chose avec n'importe quel processeur.
    Je présume que tu ne développes pas le soft de base?
    JR
    Dernière modification par jiherve ; 01/08/2017 à 20h23.
    l'électronique c'est pas du vaudou!

  12. #11
    lou_ibmix_xi

    Re : Matériel temps réel

    Tout dépends de ce qu'on doit faire en temps réel... Des tâches simples peuvent être gérées par une solution simple... Mais si on s'embête avec des bousins comme WxWorks pour des trucs plus compliqués ce n'est pas par masochisme!

  13. #12
    jiherve

    Re : Matériel temps réel

    Bonsoir
    Bien sur , il y a de çà quelques années nous faillîmes utiliser WxWorks mais coté certification DO170 DAL A ce n’était pas forcement gagné aussi nous restâmes sur notre OS Arinc 653 propriétaire, depuis je suis parti en retraite et je ne connais pas la suite.
    JR
    l'électronique c'est pas du vaudou!

Discussions similaires

  1. Analyse du temps de réponse des systèmes temps réel
    Par Argii dans le forum Électronique
    Réponses: 15
    Dernier message: 12/04/2014, 22h58
  2. Analyse du temps de réponse des systèmes temps réel// PPE Terminale S.I
    Par Argii dans le forum TPE / TIPE et autres travaux
    Réponses: 1
    Dernier message: 24/03/2014, 16h11
  3. [Biologie Moléculaire] PCR en temps réel
    Par invite993df254 dans le forum Biologie
    Réponses: 5
    Dernier message: 18/09/2007, 10h15
  4. Temps moyenné vs temps réel
    Par invite42d0c639 dans le forum Physique
    Réponses: 4
    Dernier message: 26/05/2007, 11h51
Découvrez nos comparatifs produits sur l'informatique et les technologies.