]> git.piffa.net Git - sketchbook_andrea/blob - motors/simple_motor_PWM_transistor_diode_1_soluzione/simple_motor_PWM_transistor_diode_1_soluzione.ino
motori e diodi
[sketchbook_andrea] / motors / simple_motor_PWM_transistor_diode_1_soluzione / simple_motor_PWM_transistor_diode_1_soluzione.ino
1 /* Simple Motor: PWM Soluzione
2
3  Motore DC con variazione della velocita' tramite PWM
4  
5  */
6
7 int motorPin = 9;
8 int minValue = 60;  // Valore minimo per far partire il motore da fermo
9 void setup() {
10   pinMode(motorPin, OUTPUT);
11 }
12 void loop() {
13   for(int motorValue = minValue ; motorValue <= 255; motorValue +=5){ // PWM up
14     analogWrite(motorPin, motorValue);
15     delay(60);
16   }
17   for(int motorValue = 255 ; motorValue >= 30; motorValue -=5){ // 
18   // Quando il motore e' in movimento puo' muoversi fino a un valore piu' basso
19   // di minVal
20     analogWrite(motorPin, motorValue);
21     delay(30);
22   }
23 analogWrite(motorPin, 0); // Fermiamo il motore per sicurezza
24 delay(900); // Pause 
25 }
26
27 /* Domande
28 1. Il motore si muove con i valori di corrente molto bassi?
29 2. A quali valori comincia a muoversi effettivamente?
30 2.1 E per fermarsi, il valore e' diverso?
31 3. Impostare un valore minimo per la partenza del motore.
32 4. Come fare per invertire la direzione di rotazione del motore?
33
34   Risposte:
35 4. Basta invertire la polarita' dei cavi che vanno al motore
36
37 */
38