Loading...
  Show Posts
Pages: 1 ... 6 7 [8] 9 10
106  International / Français / Re: PROGRAMME URGENT on: December 30, 2012, 12:48:35 pm
Quote
tu mets simplement ta pin_vitesse à 0 en dehors du while.
Quote
Le while dit : tant que la valeur est inférieur à ce qui est écrit dans ma configuration, ça rentre dans ma boite.... autrement ça passe tout droit.

Disons que tu mette ton while à 3, à chaque boucle ça rentre dans la boite et ça incrémente ton compteur de 1, à la troisième boucle, ton compteur est à 3, correspondant à la valeur du while.... et ça passe tout droit, sans incrémenter ton compteur, donc ton compteur ne fonctionne que 3 fois si il est dans la boucle du while.

Donc maintenant mon code est correct, le moteur s'arrete bien après le while:

Code:
const byte PIN_VITESSE = 3; // Broche de contrôle du moteur par PWM
int compteur = 0; // on met le compteur a zero
int x = 1; // x est le nombre de recommencement de boucle pour y et z
int y = 12; // y est la vitesse en tour minutes
int z = 300; // z est le temps de marche du moteur pour y

// Fonction d'initialisation hardware
void setup() {
    pinMode(PIN_VITESSE, OUTPUT); // Mise en sortie de la broche connecté au moteur
}
void loop() {
while(compteur < x) {
analogWrite(PIN_VITESSE, y); // Génération d'un signal PWM contrôlant la vitesse du moteur a 300t/mins
delay(z); // le moteur reste allumé 5mins
compteur++;
}
analogWrite(PIN_VITESSE, 0);
}
107  International / Français / Sens moteur courant continu on: December 21, 2012, 06:53:44 am
Bonjour à tous,

Je cherche comment contrôler le sens un moteur à courant continu sans interrupteurs, bp ou autre. Pour un sens, il faut juste le brancher, mais pour l'autre, je ne sais pas comment l'avoir.

Je dispose de ce code:
Code:
const byte PIN_VITESSE = 3; // Broche de contrôle du moteur par PWM
int compteur = 0; // on met le compteur a zero
int x = 1; // x est le nombre de recommencement de boucle pour y et z
int vitesse = 12; // vitesse en tour minutes
int temps = 300000; //temps de marche du moteur pour y en ms

// Fonction d'initialisation hardware
void setup() {
    pinMode(PIN_VITESSE, OUTPUT); // Mise en sortie de la broche connecté au moteur
}
void loop() {
while(compteur < x) {
analogWrite(PIN_VITESSE, vitesse); // Génération d'un signal PWM contrôlant la vitesse du moteur a 300t/mins
delay(temps); // le moteur reste allumé 5mins
compteur++;
analogWrite(PIN_VITESSE, 0);
}
}

Pour pouvoir déjà contrôler le sens je pensais ajouter une variable de type x= ? et si:
-Si x=0 alors ne rien faire
-Si x=1 alors sens inverse du moteur..

Merci pour votre aide.
108  International / Français / Re: PROGRAMME URGENT on: December 21, 2012, 06:45:42 am
Merci pour vos aides, pour le TPE, on m'a simplement demandé de faire un programme pour piloter un moteur, je n'ai pas choisis.
109  International / Français / Re: PROGRAMME URGENT on: December 20, 2012, 02:45:55 pm
Là, est ce que je suis en dehors du While?

Code:
const byte PIN_VITESSE = 3; // Broche de contrôle du moteur par PWM
int compteur = 0; // on met le compteur a zero
int x = 1; // x est le nombre de recommencement de boucle pour y et z
int y = 12; // y est la vitesse en tour minutes
int z = 300; // z est le temps de marche du moteur pour y

// Fonction d'initialisation hardware
void setup() {
    pinMode(PIN_VITESSE, OUTPUT); // Mise en sortie de la broche connecté au moteur
}
void loop() {
while(compteur < x) {
analogWrite(PIN_VITESSE, y); // Génération d'un signal PWM contrôlant la vitesse du moteur a 300t/mins
delay(z); // le moteur reste allumé 5mins
compteur++;
}
analogWrite(PIN_VITESSE, 0);
}
110  International / Français / Re: PROGRAMME URGENT on: December 10, 2012, 03:40:44 pm
En dehors du void loop() alors?
111  International / Français / Re: PROGRAMME URGENT on: December 10, 2012, 05:55:57 am
C'est à dire?
112  International / Français / Re: PROGRAMME URGENT on: December 09, 2012, 04:27:51 pm
Ce qui donnerai ça:


Code:
const byte PIN_VITESSE = 3; // Broche de contrôle du moteur par PWM
int compteur = 0;

// Fonction d'initialisation hardware
void setup() {
    pinMode(PIN_VITESSE, OUTPUT); // Mise en sortie de la broche connecté au moteur
}
void loop() {
while(compteur < 1) {
analogWrite(PIN_VITESSE, 12); // Génération d'un signal PWM contrôlant la vitesse du moteur a 300t/mins
delay(300000); // le moteur reste allumé 5mins
compteur++;
}
analogWrite(PIN_VITESSE, 0)
}
113  International / Français / Re: PROGRAMME URGENT on: December 09, 2012, 04:20:36 pm
Donc quelle moyen je dois utiliser pour que mon moteur s'arrête?
114  International / Français / Re: PROGRAMME URGENT on: December 09, 2012, 04:05:59 pm
oui mai si jamais je veux mettre un while à 3, il vaut mieux mettre la deuxième proposition, non?
115  International / Français / Re: PROGRAMME URGENT on: December 09, 2012, 02:53:55 pm
Quote
Ton compteur va fonctionner qu'un fois 

Le reste devrait fonctionner.
Coment ca, il devrait fonctionner le nombre de fois que j'aurais mis dans while?

Pour l'arrêt du moteur:

Code:
const byte PIN_VITESSE = 3; // Broche de contrôle du moteur par PWM
int compteur = 0;

// Fonction d'initialisation hardware
void setup() {
    pinMode(PIN_VITESSE, OUTPUT); // Mise en sortie de la broche connecté au moteur
}
void loop() {
while(compteur < 1) {
analogWrite(PIN_VITESSE, 12); // Génération d'un signal PWM contrôlant la vitesse du moteur a 300t/mins
delay(300000); // le moteur reste allumé 5mins
compteur++;
if (compteur == 1)
{
analogWrite(PIN_VITESSE, 0)
}
}
}

ou sinon:

Code:
const byte PIN_VITESSE = 3; // Broche de contrôle du moteur par PWM
int compteur = 0;

// Fonction d'initialisation hardware
void setup() {
    pinMode(PIN_VITESSE, OUTPUT); // Mise en sortie de la broche connecté au moteur
}
void loop() {
while(compteur < 1) {
analogWrite(PIN_VITESSE, 12); // Génération d'un signal PWM contrôlant la vitesse du moteur a 300t/mins
delay(300000); // le moteur reste allumé 5mins
compteur++;
if (compteur == 1)
{
analogWrite(PIN_VITESSE, 0)
}
else
{
while(compteur < 1) {
analogWrite(PIN_VITESSE, 12); // Génération d'un signal PWM contrôlant la vitesse du moteur a 300t/mins
delay(300000); // le moteur reste allumé 5mins
compteur++;
}
}
}

Mais je pencherais plutôt pour le second code, qui est plus général et qui marchera beaucoup mieux.
116  International / Français / Re: PROGRAMME URGENT on: December 09, 2012, 01:57:30 pm
Les portes ont été rajoutés:

Code:
const byte PIN_VITESSE = 3; // Broche de contrôle du moteur par PWM
int compteur = 0;

// Fonction d'initialisation hardware
void setup() {
    pinMode(PIN_VITESSE, OUTPUT); // Mise en sortie de la broche connecté au moteur
}
void loop() {
while(compteur < 1) {
analogWrite(PIN_VITESSE, 12); // Génération d'un signal PWM contrôlant la vitesse du moteur a 300t/mins
delay(300000); // le moteur reste allumé 5mins
compteur++;
}
}
117  International / Français / Re: PROGRAMME URGENT on: December 09, 2012, 01:47:23 pm
C'est vrai que c'est plus clair:
Ca devarit être bon maintenant:

Code:
const byte PIN_VITESSE = 3; // Broche de contrôle du moteur par PWM
int compteur = 0;

// Fonction d'initialisation hardware
void setup() {
    pinMode(PIN_VITESSE, OUTPUT); // Mise en sortie de la broche connecté au moteur
}
void loop() {
while(compteur < 1)
analogWrite(PIN_VITESSE, 12); // Génération d'un signal PWM contrôlant la vitesse du moteur a 300t/mins
delay(300000); // le moteur reste allumé 5mins
compteur++;
}
118  International / Français / Re: PROGRAMME URGENT on: December 09, 2012, 01:35:45 pm
Je ne vois vraiment pas ce qui peut-être dans le désordre.
119  International / Français / Re: PROGRAMME URGENT on: December 09, 2012, 01:26:20 pm
Donc, il y a des choses qui ne sont pas dans le bon ordre?
120  International / Français / Re: PROGRAMME URGENT on: December 09, 2012, 01:18:45 pm
Ok, merci
Le code est-il quand même bon?
Pages: 1 ... 6 7 [8] 9 10