X-Git-Url: http://git.piffa.net/web?p=sketchbook_andrea;a=blobdiff_plain;f=motors%2Fmotor_1_PWM%2Fmotor_1_PWM.ino;fp=motors%2Fmotor_1_PWM%2Fmotor_1_PWM.ino;h=087c90bf1bd703886e6c4f34fb68b08c2ee458a1;hp=0000000000000000000000000000000000000000;hb=ea8d99c7d1bf9824a769c81533fe90e437ccd360;hpb=75928e346c7e5631544b0bea01e2d4ae9a5d749e diff --git a/motors/motor_1_PWM/motor_1_PWM.ino b/motors/motor_1_PWM/motor_1_PWM.ino new file mode 100644 index 0000000..087c90b --- /dev/null +++ b/motors/motor_1_PWM/motor_1_PWM.ino @@ -0,0 +1,33 @@ +/* Simple Motor: PWM + Gestine di un motore DC utilizzando il PWM + per modificarne la velocita': ciclo ascendente e discendente + + Schemi: + - Breadboard: http://lab.piffa.net/schemi/motor_transistor_diode_bb.png + - Schema circuito: http://lab.piffa.net/schemi/motor_transistor_diode_schem.png + + */ + +int motorPin = 9; // Pin tramite cui Arduino controlla il motore +void setup() { + pinMode(motorPin, OUTPUT); +} +void loop() { + for(int motorValue = 0 ; motorValue <= 255; motorValue +=5){ // PWM up + analogWrite(motorPin, motorValue); + delay(60); + } + for(int motorValue = 255 ; motorValue >= 0; motorValue -=5){ // PWM down + analogWrite(motorPin, motorValue); + delay(30); + } +delay(900); // Pause +} + +/* Domande +1. Il motore si muove con i valori di corrente molto bassi? +2. A quali valori comincia a muoversi effettivamente? +2.1 E per fermarsi, il valore e' diverso? +3. Impostare un valore minimo per la partenza del motore. +4. Come fare per invertire la direzione di rotazione del motore? +*/