Show Posts
Pages: 1 ... 8 9 [10] 11
136  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?
137  International / Français / Re: PROGRAMME URGENT on: December 09, 2012, 01:18:45 pm
Ok, merci
Le code est-il quand même bon?
138  International / Français / Re: PROGRAMME URGENT on: December 09, 2012, 12:35:04 pm
Comme cela?
Mais j'ai toujours un petit doute sur les accollades!

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() {
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
while(compteur < 1)
compteur++;
}
139  International / Français / Re: PROGRAMME URGENT on: December 09, 2012, 12:23:46 pm
Donc si je suis ce que tu as dis, je dois mettre int compteur = 0 en variable au tout début puis enlever les deux accolades, ce qui donne le code suivant:

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() {
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
while(compteur != 1)

   compteur++;

}
140  International / Français / Re: PROGRAMME URGENT on: December 09, 2012, 12:08:01 pm
Avec une variable booléenne je peux faire:
*Marche moteur 5mins 300t/mins
*Arret moteur

Alors que avec un compteur je peux faire: quand le coompteur est réglé sur 3:
*Marche moteur 5mins 300t/mins
*Arret moteur
*Marche moteur 5mins 300t/mins
*Arret moteur
*Marche moteur 5mins 300t/mins
*Arret moteur

Non?

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

// Fonction d'initialisation hardware
void setup() {
    pinMode(PIN_VITESSE, OUTPUT); // Mise en sortie de la broche connecté au moteur
}
void loop() {
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
int compteur = 0;
while(compteur != 1)
{
   compteur++;
}
}

Et est ce code marche correctement?
141  International / Français / Re: PROGRAMME URGENT on: December 09, 2012, 11:57:27 am
Je ne comprends pas ce que tu veux dire par:

Quote
J'aurais simplement utilisé un if avec un changement de la valeur bool à la fin du if.

Est ce que le système compteur que j'ai mis en place fonctionne? Comme ça, ça pourrait me permettre d'avoir un répétition de boucle plus importante qu'avec une variable booléenne.
142  International / Français / Re: PROGRAMME URGENT on: December 09, 2012, 11:41:37 am

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

// Fonction d'initialisation hardware
void setup() {
    pinMode(PIN_VITESSE, OUTPUT); // Mise en sortie de la broche connecté au moteur
}
void loop() {
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
int compteur = 0;
while(compteur != 1)
{
   compteur++;
}
}

Comme ça?
143  International / Français / Re: PROGRAMME URGENT on: December 09, 2012, 11:17:01 am
En fait, je voudrais que mon moteur cc fasse cela:

-moteur tourne dans le sens conventionnel du courant pendant 5 mins a 300t/mins (droite)
-moteur se stope définitivement

-D300000
-Sinfini

- Quand le moteur aura tourné à droite pendant 5 mins a 300t/mins il devra se stopper définitivement


144  International / Français / Re: PROGRAMME URGENT on: December 09, 2012, 10:51:32 am
Alors je remets void loop():

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

// Fonction d'initialisation hardware
void setup() {
    pinMode(PIN_VITESSE, OUTPUT); // Mise en sortie de la broche connecté au moteur
}
void loop() {
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
analogWrite(PIN_VITESSE, 12); // Génération d'un signal PWM contrôlant la vitesse du moteur a 0t/mins
}

Mais si je le laisse, le moteur va faire:
Allumer 5 mins a 300t/mins
Arret
Allumer 5 mins a 300t/mins
Arret
Allumer 5 mins a 300t/mins
Arret
...

Non?
145  International / Français / Re: PROGRAMME URGENT on: December 09, 2012, 10:03:18 am
Ok, donc si je suis l'explemple:

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

// Fonction d'initialisation hardware
void setup() {
    pinMode(PIN_VITESSE, OUTPUT); // Mise en sortie de la broche connecté au moteur
}

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
analogWrite(PIN_VITESSE, 12); // Génération d'un signal PWM contrôlant la vitesse du moteur a 0t/mins


Et j'ai enlevé la boucle voidloop() pour que le moteur ne recommence pas le cycle: allume 300t/mins pdt 5 mins - arret à l'infini
146  International / Français / Re: PROGRAMME URGENT on: December 09, 2012, 09:37:59 am
Par exemple, je veux que mon moteur aille a 300t/mins pendant 5 mins, dois-je faire comme ça?

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

// Fonction d'initialisation hardware
void setup() {
    pinMode(PIN_VITESSE, OUTPUT); // Mise en sortie de la broche connecté au moteur
}

// Routine de travail (boucle infini)
for(int delay(0);delay(300000);void loop() {
    analogWrite(PIN_VITESSE, 12); // Génération d'un signal PWM contrôlant la vitesse du moteur
})
{
}


147  International / Français / Re: PROGRAMME URGENT on: December 09, 2012, 04:59:24 am
Merci, je vais me poser et réfléchir à la question, mai avant, si je veux que mon moteur tourne par exemple pendant une minute, je vais devoir ajouter un variable temps et une fonction, mais quelle fonction je dois utiliser, delay() ou milis()?
148  International / Français / Re: PROGRAMME URGENT on: December 08, 2012, 12:37:04 pm
Et j'ai oublié que je ne connaissais rien à la programmation il y a quelques temps.
149  International / Français / Re: PROGRAMME URGENT on: December 08, 2012, 12:35:45 pm
Je suis en première SSI et je dois écrire cette maquette pour piloter un moteur pour un robot pour mon projet de TPE.
Quel est la différence entre ce code:

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

// Fonction d'initialisation hardware
void setup() {
    pinMode(PIN_VITESSE, OUTPUT); // Mise en sortie de la broche connecté au moteur
}

// Routine de travail (boucle infini)
void loop() {
    analogWrite(PIN_VITESSE, 12); // Génération d'un signal PWM contrôlant la vitesse du moteur
}

et celui ci:

Code:
const byte PIN_VITESSE = 3; // Broche de contrôle du moteur par PWM
const byte PIN_MESURE = A0; // Broche de mesure analogique (signal de contrôle)

// Fonction d'initialisation hardware
void setup() {
    pinMode(PIN_VITESSE, OUTPUT); // Mise en sortie de la broche connecté au moteur
}

// Routine de travail (boucle infini)
void loop() {
    int mesure_brute = 0; // Mesure brute mesuré sur la broche analogique

    mesure_brute = analogRead(PIN_MESURE); // Mesure de la tension sur la broche du signal de contrôle
    mesure_brute = map(mesure_brute, 0, 1023, 0, 255); // Linéarisation de la mesure depuis [0 ~ 1023] vers [0 ~ 255]
    analogWrite(PIN_VITESSE, mesure_brute); // Génération d'un signal PWM contrôlant la vitesse du moteur
}
150  International / Français / Re: PROGRAMME URGENT on: December 08, 2012, 05:52:46 am
Est ce que dans le code, je dois remplacer toutes les mesure_brute par 12?

Code d'origine]

Code:
mesure_brute = analogRead(PIN_MESURE); // Mesure de la tension sur la broche du signal de contrôle
    mesure_brute = map(mesure_brute, 0, 1023, 0, 255); // Linéarisation de la mesure depuis [0 ~ 1023] vers [0 ~ 255]
    analogWrite(PIN_VITESSE, mesure_brute); // Génération d'un signal PWM contrôlant la vitesse du moteur

Code modifié:
Code:
12 = analogRead(PIN_MESURE); // Mesure de la tension sur la broche du signal de contrôle
    12 = map(mesure_brute, 0, 1023, 0, 255); // Linéarisation de la mesure depuis [0 ~ 1023] vers [0 ~ 255]
    analogWrite(PIN_VITESSE, 12); // Génération d'un signal PWM contrôlant la vitesse du moteur
Pages: 1 ... 8 9 [10] 11