1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    avril 2009
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : avril 2009
    Messages : 29
    Points : 22
    Points
    22

    Par défaut Codé un retard (time delay) en C

    Bonjour tout le monde,

    Je travaille avec matlab et je code mes modèles en C pour pouvoir les utiliser dans mon banc d'essai expérimental. Là, je cherche à coder un retard (time delay) en C. J'ai beau cherché sur le net, je n'ai pas trouvé une réponse à ma question.

    Merci d'avance à vous.

  2. #2
    Expert confirmé Avatar de fregolo52
    Homme Profil pro
    Développeur C
    Inscrit en
    août 2004
    Messages
    2 354
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur C

    Informations forums :
    Inscription : août 2004
    Messages : 2 354
    Points : 5 231
    Points
    5 231

    Par défaut

    salut,

    je pense que tu ne sais pas ce que tu dois chercher, c'est pour ça que tu ne trouves pas.

    Peux-tu expliquer ce qu'implique ce retard dans ta chaine de calcul ? Est-ce qu'il interrompt le calcul ? Est-ce que tu as plusieurs calculs en parallèle ?

    Le plus vulgaire des retards est la fonction Sleep, mais je pense qu'elle ne te convient pas.

    Je suppose que tu es sous Windows.

  3. #3
    Membre éprouvé
    Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    mars 2006
    Messages
    881
    Détails du profil
    Informations personnelles :
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués
    Secteur : Industrie

    Informations forums :
    Inscription : mars 2006
    Messages : 881
    Points : 1 217
    Points
    1 217

    Par défaut

    Salut,

    Si tu veux un code multiplateformes, il faudrait t'inspirer de ça:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    #if defined (Win32)
    #  include <windows.h>
    #  define psleep(sec) Sleep ((sec) * 1000)
    #elif defined (Linux)
    #  include <unistd.h>
    #  define psleep(sec) sleep ((sec))
    #endif
    Ça créée une macro psleep (pour portable sleep?) tenant compte des spécificités des deux principales plateformes.C'est un code que j'ai vu ici il y a une petite dizaine d'années, il me semble qu'il est d'Ed, qui ne poste visiblement plus aujourd'hui.

    A+

    Pfeuh

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    avril 2009
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : avril 2009
    Messages : 29
    Points : 22
    Points
    22

    Par défaut

    Citation Envoyé par fregolo52 Voir le message
    salut,

    je pense que tu ne sais pas ce que tu dois chercher, c'est pour ça que tu ne trouves pas.

    Peux-tu expliquer ce qu'implique ce retard dans ta chaine de calcul ? Est-ce qu'il interrompt le calcul ? Est-ce que tu as plusieurs calculs en parallèle ?

    Le plus vulgaire des retards est la fonction Sleep, mais je pense qu'elle ne te convient pas.

    Je suppose que tu es sous Windows.
    Merci pour ta réponse. En fait, sous matlab, il y a unit delay, qui induit un retard dans le traitement de l'information. Si par exemple, on a un signal, le time delay permet de retarder le signal avec d'une durée égale au temps d'échantillonnage.

  5. #5
    Membre éclairé

    Profil pro
    Ingénieur développement matériel électronique
    Inscrit en
    juillet 2010
    Messages
    322
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement matériel électronique
    Secteur : Industrie

    Informations forums :
    Inscription : juillet 2010
    Messages : 322
    Points : 660
    Points
    660

    Par défaut

    Salut,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     Si par exemple, on a un signal, le time delay permet de retarder le signal avec d'une durée égale au temps d'échantillonnage.
    C'est un filtre d’équation z^-1. Cela correspond a un simple stockage d'un donnée dans un variable en informatique, a un étage de pipeline en électronique numérique.

    @+

  6. #6
    Expert confirmé Avatar de fregolo52
    Homme Profil pro
    Développeur C
    Inscrit en
    août 2004
    Messages
    2 354
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur C

    Informations forums :
    Inscription : août 2004
    Messages : 2 354
    Points : 5 231
    Points
    5 231

    Par défaut

    Citation Envoyé par espoir1976 Voir le message
    Merci pour ta réponse. En fait, sous matlab, il y a unit delay, qui induit un retard dans le traitement de l'information. Si par exemple, on a un signal, le time delay permet de retarder le signal avec d'une durée égale au temps d'échantillonnage.
    On va dire que la fonction Sleep (en ms sous Windows) devrait faire l'affaire. Par contre, quelle est l'unité de temps de l'échantillonnage ?

Discussions similaires

  1. [Variable Time Delay] en discret
    Par lecteur1001 dans le forum Simulink
    Réponses: 6
    Dernier message: 14/09/2011, 18h15
  2. Comment creer un time delay negatif
    Par titeleonie dans le forum Simulink
    Réponses: 3
    Dernier message: 08/06/2011, 14h31
  3. Comment appliquer un réseau de neurones à retard (TDNN - Time Delay Neural Network) (MATLAB)
    Par alimo44 dans le forum Méthodes prédictives et apprentissage automatique
    Réponses: 1
    Dernier message: 29/06/2010, 14h23
  4. Comment fonctionne un réseau TDNN (time delay neural network) ?
    Par alimo44 dans le forum Méthodes prédictives et apprentissage automatique
    Réponses: 0
    Dernier message: 29/06/2010, 13h19
  5. Time delay neurone network with AG
    Par nadou114 dans le forum Signal
    Réponses: 0
    Dernier message: 10/12/2009, 22h32

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo