programme langage C logiciel simulation
Répondre à la discussion
Affichage des résultats 1 à 7 sur 7

programme langage C logiciel simulation



  1. #1
    invite635643ae

    programme langage C logiciel simulation


    ------

    Bonjour à tous et bonne année,

    Je suis en train de faire un petit logiciel de simulation électronique, je n'en suis qu'au début et je suis loin d'avoir terminé le projet, ensuite j'ajouterais des librairies graphiques mais pour le moment je fais des tests sous la console mais j'ai un petit problème pour une formule sur la fréquence de coupure, les résultats lors de la compilation ne sont pas cohérents lorsque je calcule à la main c'est pas la même chose pourtant je ne vois pas ce qui cloche dans mon code


    Code:
    #include <stdio.h>
    #include <stdlib.h>
    
    
    
    void esp(){
    printf("\n");
    }
    
    
    void RC_Filter(){
    
    float Fc;
    float pie=3.14;
    float R;
    float C;
    
    printf("Valeur de R? :");
    scanf("%f", &R);
    
    // Valeur de fréquence de coupure pour  C allant de 1 nF jusqu'à 22  uF
    for(C=0.000001; C<0.00022; C=C+0.000001){
        Fc=1/(2*pie*R*C);
        printf("C= %.2f uF   >>>  %.2f Hz  \n",C*1000000, Fc);
    }
    
    printf("Frequence de coupure souhaiter:");
    scanf("%f", &Fc);
    
    C=1/(2*pie*R*Fc);
    printf("Il faut C= %f uF", C*1000000);
    
    }
    
    void  calcul_resistor(){
    
    float Vdd;
    float I_led;
    float R;
    float led;
    float choix;
    
    printf("Entrez Vdd et I_led:");
    scanf("%f%f", &Vdd, &I_led);
    
    printf("Led bleu, rouge ou Verte?");
    scanf("%f", &choix);
    
    if(choix==1){
    led=1.2;
    R=(Vdd - led)/ I_led;
    printf(" R= %.2f  Ohms ", R);
    }
    
    else if (choix==2){
    led=1.5;
    R=(Vdd - led)/ I_led;
    printf(" R= %.2f  Ohms ", R);
    }
    
    else if (choix==3){
    led=2;
    R=(Vdd - led)/ I_led;
    printf(" R= %.2f  Ohms ", R);
    }
    }
    
    
    void  divider_volt(){                  // Diviseur de tension
        float R1;
        float R2;
        float Vdd;
        float divider;
    
        printf("Entrez la valeur de R1: ");
        scanf("%f",&R1);
        esp();
        printf("Entrez la valeur de R2: ");
        scanf("%f",&R2);
        esp();
        printf("Quelle est la tension d'alimentation?: ");
        scanf("%f", &Vdd);
    
        divider=(R1/(R1+R2))*Vdd;
        printf("La tension vaut %.2f Volt(s)", divider);
    }
    
    
    void calculate_I_P(){                 // Calcul de puissance dissipée LM7805
    
        float Vact;
        float Vact_eff;
        float Vchute_tension;
        char VA;
        float P_dissip;
    
        printf("**********Programme pour regulateur LM7805***********");
        printf("*****************************************************");
        esp();
        printf("Entrez la tension de sortie alternative du transfo: ");
        scanf("%f", &Vact);
    
        esp();
    
        Vact_eff=Vact * 1.41;
        Vchute_tension=Vact_eff - 5;  // En Volts
        P_dissip=Vchute_tension * 1;  // En Watts
    
        printf("La puissance dissipe est de %.2f Watt(s)", P_dissip);
        esp();
        if(P_dissip>3)  printf("Il faut prévoir un dissipateur!");
        else            printf("Un dissipateur n'est pas utile");
    
    
    }
    
    
    int main()
    {
        RC_Filter();
        calcul_resistor();
        esp();
        calculate_I_P();
        divider_volt();
        esp();
        esp();
        return 0;
    }

    -----

  2. #2
    azad

    Re : programme langage C logiciel simulation

    Il est mal parti ton simulateur !
    Et pas en meilleure route ton programme. Tu aurais, pour le moins pu éviter de nous coller tes questionnements sur les couleurs des LEDs et les valeurs au secondaire de ton transfo d'alim. Et en quoi la dissipation dans le régulateur vient affecter la fréquence de coupure ?
    ... et bonjour la taille de ton tableau des valeurs de C ! Es-tu certain que ce soit la bonne méthode ?

  3. #3
    invite635643ae

    Re : programme langage C logiciel simulation

    Je cherche une méthode plus efficace pour ca justement je pense qu'il y a moyen de faire surement

    Les fonctions sont indépendantes les unes des autres, chaque fonction a un rôle après ca sera linké sous forme d'interfaces graphiques donc il n'y aucun rapport avec la fréquence de coupure

  4. #4
    invitee05a3fcc

    Re : programme langage C logiciel simulation

    Moi, le C, je ne connais pas (et ne veux pas connaitre !)
    mais le 78xx , je connais !
    et avec 3W sans radiateur, il explose !
    Sans radiateur, pour 50° ambiant, faut pas dépasser 1,5W ........

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

    Re : programme langage C logiciel simulation

    Ok merci Daudet pour l'information je rectifie

  7. #6
    azad

    Re : programme langage C logiciel simulation

    Bon admettons...
    Alors donne une valeur calculée "à la main" et le résultat que donne ta routine RC_Filter
    Par ailleurs Pi (pie !!!) est assez souvent utilisé un peu partout pour que ça vaille le coup de la déclarer en constante.
    Et pourquoi puisque le but de la fonction est de calculer la fréquence de coupure en fonction de R et de C ne pas entrer justement R et C ? Ainsi tu te passes de la boucle dans laquelle tu incrémentes C par valeur de 1 nF.

  8. #7
    sly37

    Re : programme langage C logiciel simulation

    Bonjour,
    les résultats lors de la compilation ne sont pas cohérents lorsque je calcule à la main c'est pas la même chose pourtant je ne vois pas ce qui cloche dans mon code
    Peux-tu mettre un peu plus de détails sur les différences entre tes résultats théoriques "à la main" et ceux de ton programme ?
    merci.

Discussions similaires

  1. ce que fait un programme en langage c
    Par invite9f95f6e7 dans le forum Programmation et langages, Algorithmique
    Réponses: 21
    Dernier message: 12/11/2011, 13h39
  2. Programme de commande [Langage C]
    Par invitefef498b4 dans le forum Programmation et langages, Algorithmique
    Réponses: 6
    Dernier message: 01/04/2011, 15h17
  3. Sous programme en langage C
    Par invite817c9d71 dans le forum Logiciel - Software - Open Source
    Réponses: 8
    Dernier message: 06/06/2010, 11h25
  4. programme langage C
    Par invite3ca1c29c dans le forum Logiciel - Software - Open Source
    Réponses: 4
    Dernier message: 23/11/2008, 13h19
  5. programme I2C en langage C
    Par invite7670cc44 dans le forum Électronique
    Réponses: 0
    Dernier message: 07/04/2008, 20h47
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...