Show Posts
Pages: 1 ... 8 9 [10]
136  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


137  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?
138  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
139  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
})
{
}


140  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()?
141  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.
142  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
}
143  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
144  International / Français / Re: PROGRAMME URGENT on: December 08, 2012, 05:42:25 am
Merci, donc ça veut dire que si je veux une vitesse de 300t/mins, je devrais avoir le pwm theorique a appliqué, 12. Mais où mettre cette valeur 12?
145  International / Français / Re: PROGRAMME URGENT on: December 08, 2012, 05:05:42 am
Merci pour tes explications.
Dans ce code, par exemple, si je veux une vitesse de 300 tours minutes, quelles variables dois-je modifierou comment dois-je faire?

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
}
146  International / Français / Re: PROGRAMME URGENT on: December 07, 2012, 01:40:44 pm
Je ne comprends pas ta réponse.
Urgent dans le sens j'en ai besoin pour la semaine prochaine.
147  International / Français / PROGRAMME URGENT on: December 07, 2012, 07:37:41 am
Bonjour,
j'ai actuellement le programme suivant:

const int BP=2; //Cette variable permet la déclaration des constantes de broches utilisées dans le branchement effectué sur l'arduino.
const int VITESSE=3; //Cette variable permet la déclaration des constantes de broches utilisées dans le branchement effectué sur l'arduino.
const int Voie_0=0; //Cette variable permet la déclaration des constantes de broches utilisées dans le branchement effectué sur l'arduino pour un affiche analogique
void loop(){ // BOUCLE QUI VA PERMETTRE AU PROGRAMME DE RECOMMENCER SANS FIN L4ALGORITHME JUSQUA LA MISE HORS TENSION DU SYSTEME ARDUINO
int mesure_brute=0;// Cette variable d'acquisition va permettre au programme une acquisition du résultat brute et le convertir en analogique numérique
float mesuref=0.0;// Cette variable d'acquisition va permettre au programme d'effectuer un calcul résultat décimal et le convertir en analogique numérique
pinMode(VITESSE, OUTPUT); //Fonction mettant la broche de vitesse connectée à l'arduino en sortie
//DEBUT DE LA FONCTION QUI PERMET LA GESTION DE LA VITESSE DU MOTEUR
//debut des tensions qui vont permettre les mesures de la tension avec la résistance variable
mesure_brute=analogRead(Voie_0); // Fonction calculant la tension sur la voix analogique
mesure_brute=map(mesure_brute,0,1023,0,255); // Fonction qui adapte la tenion et la mesure à l'echelle de valeur
//génération impulsion PWM fonction de la tension mesurée
analogWrite(VITESSE,mesure_brute); //Fonction qui va permetttre de fixer l'impulsion de commande de la vitesse du moteur en fonction de la mesure de la tension en sortie de la résistance
} //FIN DE LA FONCTION QUI VA REPETER SANS FIN LE PROGRAMME
// ********************************************************************************

// --- Fin programme ---

et quand je le compile dans le logiciel arduino, j'ai les erreurs suivantes:
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\build823819488904814423.tmp\core.a(main.cpp.o): In function `main':

E:\arduino-0018-fr\arduino-0018-fr\hardware\arduino\cores\arduino/main.cpp:7: undefined reference to `setup'

Je suis débutant dans l'arduino, il s'agit de mon premier programme. Je dois effectuer un programme qui puisse contrôler un moteur a courant continue ainsi que son sens (sans boutons ou autres) juste a partir d'une séquence données par une personne qui veut faire fonctionner le moteur à courant continu à son besoin (la personne peut être comparée a un micro contrôleur).

Si vous avez des suggestions, je suis preneur,

Merci d'avance

Edwin
Pages: 1 ... 8 9 [10]