Afficher un message
Vieux 11/06/2018, 14h01   #23
CSYSTEME
Membre trés attaché
 
Avatar de CSYSTEME
 
Date d'inscription: décembre 2011
Localisation: FRANCE , Montelimar
Messages: 974
Thanks: 771
Thanked 1 643 Times in 579 Posts
Pouvoir de réputation: 32
CSYSTEME has a brilliant futureCSYSTEME has a brilliant futureCSYSTEME has a brilliant futureCSYSTEME has a brilliant futureCSYSTEME has a brilliant futureCSYSTEME has a brilliant futureCSYSTEME has a brilliant futureCSYSTEME has a brilliant futureCSYSTEME has a brilliant futureCSYSTEME has a brilliant futureCSYSTEME has a brilliant future
Par défaut

bonjour

petit deterrage de post ,

j 'ais essayer de generer un signal phm et acc avec un ardunio .

n'etant pas tres fort en programmation ,j'ais modeliser une roue de 60 dent avec les dents et les creux dans un tableau avec 2 colonnes ,la premiere colone represente le regime et le pmh ,l'autre le signal acc .

ardunio vient lire le tableau a la suite et affiche les donnees sur 2 leds.

le signal pmh est appliquer a un transformateur pour generer un signal inductif et semi sinusoidal (merci a notre ami capalti pour son tuto).

essaie sur un ecu edc15c2 1broche .

l'essais est concluant ,le regime moteur est afficher sur mon diag et la syncronisation effectuer .

ca affiche 489tr/m syncro oui .

le probleme parceque il est la ,c'est quant j'essaye de monter dans les tours ,la syncro est perdu.

par contre ,si je descend dans les tours ,la syncro suit .

je me dis c'est ma position du flag acc qui n'est pas bon ,ou j'ais louper quelques chose

le programme .

int pinLed[2]={12,13}; // Tableau listant les donnees ( 2 sorties 12 et 13 )
//Tableau à double entrée listant l’état (booléen 1 allumé, 0 éteint) des LED à chaque séquence
boolean affichage[120][2]={
1,0, // dent 1
0,0, // creux 1
1,0, // dent 2
0,0, // creux 2
1,0, // dent 3
0,0, // creux 3
1,0,
0,0,
1,0,
0,0,
1,0,
0,0,
1,0,
0,0,
1,0,
0,0,
1,0,
0,0,
1,0, // dent 10
0,0, // creux 10
1,0,
0,0,
1,0,
0,0,
1,0,
0,0,
1,0,
0,0,
1,0,
0,0,
1,0,
0,0,
1,0,// dent 17
0,0, // creux 17
1,0,
0,0,
1,0,
0,0,
1,0,
0,0,
1,0,
0,0,
1,0,
0,0,
1,0,
0,0,
1,0,
0,0,
1,0,
0,0,
1,0,
0,0,
1,0,
0,0,
1,0,
0,0,
1,0,
0,0, //
1,0, // dent 30
0,0, // creux 30
1,0,
0,0,
1,0,
0,0,
1,0,
0,0,
1,0,
0,0,
1,0,
0,0,
1,0,
0,0,
1,0,
0,0,
1,0,
0,0,
1,0,
0,0,
1,0, // dent 40
0,0, // creux 40
1,0,
0,0,
1,0,
0,0,
1,0,
0,0,
1,0,
0,0,
1,0,
0,0,
1,0,
0,0,
1,0, // dent 47
0,0,
1,1,
0,1, // acc ok jusq ua 489tr/m
1,0,
0,0,
1,0, //dent 50
0,0,
1,0,
0,0,
1,0,
0,0,
1,0,
0,0,
1,0,
0,0,
1,0,
0,0,
1,0,
0,0,
1,0,
0,0,
0,0, //dent 58 pmh
0,0, // creux 58 pmh
0,0, // pmh
0,0, //pmh
1,0, // dent 60
0,0 //creux 60
};

void setup() {
for (int i=0;i<2;i++)
{
pinMode(pinLed[i],OUTPUT);
digitalWrite(pinLed[i],LOW);
}

}

void loop() {
for (int i=0;i<120;i++) // boucle de séquence d'affichage
{
for (int p=0;p<2;p++) // boucle pour chaque donnees
{
boolean etat=affichage[i][p]; // on va chercher l'état pour les donnees
digitalWrite(pinLed[p],etat); // on met la donnee concerné à l'état
}

delayMicroseconds(1000); // pause d'affichage

// on passe à la séquence suivante
}
// fin des séquences et on repart au début de la boucle()

}

deja c'est pas mal ,mais j'aimerais arriver a plus de tr/m .

cordialement
CSYSTEME est déconnecté   Réponse avec citation
The Following 4 Users Say Thank You to CSYSTEME For This Useful Post:
aek amine (13/06/2018), Black gees (27/08/2018), j-sky (12/06/2018), Nextrick (11/06/2018)