Go Down

Topic: Ordinateur de Bord Voiture (Read 5 times) previous topic - next topic

powerpack

Bonjour

Merci pour vos reponces, mes je pence que un aimant coller sur le cardant et une bonne solution dans le temps.
il faut aller demonter un joint de frigo pour récupérer l'aimant et le coller sur le cardant avec des colliers, une capteur a effet hall et le tour et jouer.
OU http://westfalia.zanzaman.com/tech/regulateur/025-Waeco_MS50.jpg
la solution et la pour moihttp://i34.photobucket.com/albums/d140/Raph40/DSCN3221.jpg
Tout mes calcules sont déja fait, je suis en attente du deuxiéme débimétre.
Cordialement




Windows Certif MCSA. Electronicien.
Arduino Mega 2560.
68hc11F1, 68705U3, 68705P3.
Perl,Java,ABAP,VB,VBS,VBnet,Php,Asp,Css,C,C++,C#,MySql,S

powerpack

Bonjour

J'ai finie le soft, le gros probléme ces que la version 022, présence des probléme de compilation.
je m'explique deux variable fesant la méme chose en terme de calcule et bien cette merdase de donne une variable bonne, et l'autre et par magie multiplier par 2.
Code: [Select]

  // lecture sortie du 4017
   lectureclavier = digitalRead(compteur);
   if (lectureclavier == HIGH ) // horloges toute les deux secondes
         {
          digitalWrite(raz_compteur, LOW);
          digitalWrite(raz_compteur, HIGH);
          digitalWrite(raz_compteur, LOW);
          digitalWrite(lampBoot, LOW); // off la lampe boot
          // controle antiparasite
          control_raz++ ; // incremente le controle antiparasite
          clear_lcd++; ///
          //################################################################################# 
          // INTEROGE LES 4040 SI TU N'EST EN MODE DEBUG
          //#################################################################################
          // LECTURE DES COMPTEURS
                  uint8_t pa = PINA;
                  uint8_t pc = PINC;
                  troue=int(pc);        // nombre tour de roue
                  unte_conso=int(pa); // nombre implusion relevé au débimétre 
                  // reste 4040
                  digitalWrite(reset4040, LOW); 
                  digitalWrite(reset4040, HIGH);  // reset les deux 4040
                  digitalWrite(reset4040, LOW);             
          //********* kilométre parcourue   
           calkilo=troue * (distance_base*0.001);  // distance parcouru en kilométre   
          //########################################################################
          // ###### Bug dans le calcule arduino multipli par 2 la variable debimetre ??????
          // ###### mes pas la variable conso_a na aucun effet.   
           debimetreB=debimetre;
           debimetre=debimetreB + unte_conso; /// consomation général
           // pour le mode trajet fait la suite si passe
           if (traget==1 ) 
                   {
                    conso_a=conso_a + unte_conso; // trajet
                    tseconde=tseconde+2;  // ajouter  2 secondes
                    if (tseconde>=60){tseconde=0; tminute++;} // ajoute 1 minute
                    if (tminute>=60){tminute=0;theure++;} // heure 1 minute
                    //************************************************************
                    // ajoute a la mémoire des kilométre
                    kilo = kilo + calkilo;
                    // *************
                    conso_escence= (conso_a * unite_ess)* carburant; // + 0.01 litre trajet
                    litre= conso_a * unite_ess; //  unite_ess=0.0004 * le nombre implusion débimétre
                    //############################################################
                     prix_trajet= peage + conso_escence;  // a rajouter + conso_escence
                    // save EEPROM
                       saveeeprom(); 
                    //********************
                    }
          // *********************** FIN CALCUL TRAJET ********************************
          // ################# Calcule de la comsomation de la voiture ################
           kilo = kilo + calkilo;
          // *********************** bebug MPC
           kiloa = kilo_normale;
           kilo_normale = kiloa + calkilo ; // kilométre genéral
           //####################  BUG DANS LECTURE DES VARIABLES ########################
           // FONCTIONNE AVEC conso_a mes pas débimétre un pultipli par la variables
           //#############################################################################
           conso_general=(debimetre/ 2)  * unite_ess;  // addition les implusion débimétre
           //########################### 
            EEPROM_writeDouble(60,kilo_normale);  // kilométre parcourue depuis le RAZ
            EEPROM_writeDouble(55,debimetre); // consomation escence depuis le RAZ
            ///**************************************************************************
             if (debug==true)
                  {
                  Serial.print("conso_a=");
                  Serial.println(conso_a);
                  Serial.print("débimetre=");
                  Serial.println(debimetre);
                  Serial.print("conso_general=");
                  Serial.println(conso_general);
                  Serial.print("conso_escence=");
                  Serial.println(conso_escence);
                  Serial.println("--------------------------"); 
                  }           
            //##################### AFFICHE SUR LE LCD NOKIA ############################



comme vous pouvez le voir la valeur debimetre et diviser par deux alors que la conso_a et correct ???
Si quelqu'un a une idée.
Windows Certif MCSA. Electronicien.
Arduino Mega 2560.
68hc11F1, 68705U3, 68705P3.
Perl,Java,ABAP,VB,VBS,VBnet,Php,Asp,Css,C,C++,C#,MySql,S

powerpack

#7
Mar 27, 2011, 12:27 am Last Edit: Mar 28, 2011, 12:01 am by powerpack Reason: 1
Bonsoir

YYYYYYYYYYYYYYYYYYYes, le prochain post vous aurais tout la doc pour vous faire un ordinateur de bord pour votre voiture, ou Bateau, ou Camoin.

J'ai verifier le programme avec un autre arduino 2560, le probléme vient du nombre implusion par litre tro grande, j'ai du changer de débimétre pour faire un teste le résultat nikel, donc il faudra choisir un débimétre avec au max 1000 implusion au litre si non arduino addition les erreurs de virgule flottant a chaque fois et vous vous retrouvé a la fin avec des chiffres du domaine paranormale comme 25L/100Km.
un débimétre Gicar, qui résite tré bien au super et au gasoil, fera l'affaire avec 770 implusion par litre, il faudra tenir compte de l'appel d'escences au démarrage moteur pour moi 0.08 litre a chaque démarrage.
Le prochaine post aura un PDF attacher avec tout les infos, je reviendrer plus en détail sur le FCH-m-POM-LC avec un diviseur par 5, pour eviter les probléme de calcul soi 500 implusion par litre 1 implusion = 0.002 litre cela reste correcte pour un ordinateur de bord arduino.

j'ai rajouter un code démarrage que ont activer ou désavtiver au choix avec 2 contact qui se coupe l'orsque le contact et mie puis retombe aprés avoir entre le bon code, Oui si ont retir l'arduino du circuit cela désactive le code, si non on telecommande les warning et klaxon pendant 1 minute.
A bientôt.

bien le typon il faudra attendre le schéma ne vas pas dutout, je doie déja trouver un programme pour faire le schéma et le typon sous win 7 , orcad sous dos 6.22 ?
Windows Certif MCSA. Electronicien.
Arduino Mega 2560.
68hc11F1, 68705U3, 68705P3.
Perl,Java,ABAP,VB,VBS,VBnet,Php,Asp,Css,C,C++,C#,MySql,S

powerpack

Bonjour des news

Kicad et gratuit il me paré tré bien je vais faire le shéma avec je vous donnéré le schéma avec le typon dans quelque semaine aprés le mise au prope de mon projet.
A bientôt
Windows Certif MCSA. Electronicien.
Arduino Mega 2560.
68hc11F1, 68705U3, 68705P3.
Perl,Java,ABAP,VB,VBS,VBnet,Php,Asp,Css,C,C++,C#,MySql,S

masterbalby

en effet Kicad est très bien.

As tu une idée du prix total du projet fini ???

Go Up