I due sarchiaponi

  • Home
  • Il blog
  • Francesco e Paolo
    • Per non dimenticare
    • Archeologia2
    • Roma Nascosta
    • Viaggiando …..
    • L’Italia che non ti aspetti
    • Città Fantasma
    • Teatro
    • .Dicono di NOI
    • Collaboratori
    • Album Fotografici Iduesarchiaponi
    • Link Utili
  • Francesco
    • Home_Francesco
    • Archeologia
    • Scuola
      • Didattica
      • Didattica a distanza
      • Soluzioni didattica a distanza
    • Viaggiare
    • Fotografia
      • Alta Fotografia
      • Album fotografici Francesco
      • Gallerie Fotografiche Francesco
    • Lezioni On-line
    • Robotica
      • Circuiti per Robotica
      • Esempi di Robotica
      • Corso Robotica 19-20
      • Gare di Robotica
      • Laboratorio Robotica
      • Archivio Robotica
        • Corso Robotica 15-16
        • Corso Robotica 16-17
        • Corso Robotica 17-18
        • Corso Robotica 18-19
        • OlimpiadiRobotica2016
    • Altro
  • Paolo
    • Album Fotografici Paolo
    • Archeologia1
    • Le sette Meraviglie del mondo
    • Le Sette meraviglie del Mondo moderne
    • Storie e Personaggi Romani
    • Popoli e Civiltà
    • Scrittori e Poeti Antichi
    • Miti e Leggende
    • Gli Svaghi nel mondo Antico
    • I Cibi Romani
    • Antichi eserciti ed armi
    • Si dice… Perchè
  • Notizie
  • Eventi
  • Video
  • Home
  • Pagina Francesco
  • Archivio Robotica
  • corso 2018 L5
17 Maggio 2022

corso 2018 L5

corso 2018 L5

da Francesco Lerteri / giovedì, 07 Dicembre 2017 / Pubblicato il Archivio Robotica

 

LEZIONE n° 5 – MOTORI

 

 

La lezione è sui motori e sulla loro gestione. Si useranno i motori, ma vedremo che abbiamo bisogno di una schield di controllo degli stessi (in pratica stiamo usando l’equivalente di un “ponte H”, il vecchio integrato 298). Per far funzionare i motori sarà necessaria una potenza superiore a quella che possiamo prelevare dalla porta USB del PC. Dovremo necessariamente utilizzare un generatore esterno.

Per provare a fare le modifiche proposte copiare il listato (colorato in rosso) ed incollarlo in un editor di solo testo [Notepad ad esempio]

listato programma esempio numero 8:

/*

contollo motori

*/

//const int ledPin = 13; // the number of the LED pin

int pwm_a = 3; //PWM control for motor outputs 1 and 2 is on digital pin 10

int pwm_b = 11; //PWM control for motor outputs 3 and 4 is on digital pin 11

int dir_b = 13; //direction control for motor outputs 3 and 4 is on digital pin 13

// TAVOLA UNO

int dir_a = 12; //direction control for motor outputs 1 and 2 is on digital pin 12

int speed_outA = 100; //speed

int speed_outB = 100; //speed

int speedL = 50; //speed sotto i 40 non riescono a girare

int speedH = 100; //speed

void setup()

{

Serial.begin(9600);

pinMode(pwm_a, OUTPUT); //Set control pins to be outputs

pinMode(pwm_b, OUTPUT);

pinMode(dir_a, OUTPUT);

pinMode(dir_b, OUTPUT);

analogWrite(pwm_a, speedL); //set both motors to run at (100/255 = 39)% duty cycle (slow)

analogWrite(pwm_b, speedL);

}

void loop()

{

int tempo = 3000;

Serial.print(” AVANTI \n ” );

delay(10);

digitalWrite(dir_a, HIGH); //Set motor direction, 1 low, 2 high

digitalWrite(dir_b, LOW); //Set motor direction, 3 high, 4 low

speed_outA = speedL;

speed_outB = speedL;

analogWrite(pwm_a, speed_outA); //set both motors to run at 100% duty cycle (fast)

analogWrite(pwm_b, speed_outB);

Serial.print(“velocita motore A = ” );

Serial.print(speed_outA);

delay(10);

Serial.print(” velocita motore B = ” );

Serial.print(speed_outB);

Serial.print(“\n “);

delay(10);

// digitalWrite(ledPin, HIGH);

delay(tempo);

speed_outA = speedH;

speed_outB = speedH;

analogWrite(pwm_a, speed_outA); //set both motors to run at 100% duty cycle (fast)

analogWrite(pwm_b, speed_outB);

Serial.print(“velocita motore A = ” );

Serial.print(speed_outA);

delay(10);

Serial.print(” velocita motore B = ” );

Serial.print(speed_outB);

Serial.print(“\n “);

delay(10);

// digitalWrite(ledPin, LOW);

delay(tempo);

Serial.print(” INDIETRO \n ” );

delay(10);

digitalWrite(dir_a, LOW); //Set motor direction, 1 low, 2 high

digitalWrite(dir_b, HIGH); //Set motor direction, 3 high, 4 low

speed_outA = speedL;

speed_outB = speedL;

analogWrite(pwm_a, speed_outA); //set both motors to run at 100% duty cycle (fast)

analogWrite(pwm_b, speed_outB);

Serial.print(“velocita motore A = ” );

Serial.print(speed_outA);

delay(10);

Serial.print(” velocita motore B = ” );

Serial.print(speed_outB);

Serial.print(“\n “);

delay(10);

// digitalWrite(ledPin, HIGH);

delay(tempo);

speed_outA = speedH;

speed_outB = speedH;

analogWrite(pwm_a, speed_outA); //set both motors to run at 100% duty cycle (fast)

analogWrite(pwm_b, speed_outB);

Serial.print(“velocita motore A = ” );

Serial.print(speed_outA);

delay(10);

Serial.print(” velocita motore B = ” );

Serial.print(speed_outB);

Serial.print(“\n “);

delay(10);

// digitalWrite(ledPin, LOW);

delay(tempo);

}

 

 

listato programma esempio numero 9:

/*

controllo di una coppia di motori secondo il valore letto da due potenziometri

*/

int sensorPin = A0;

int sensorValue = 0; // variable to store the value coming from the sensor

int pwm_a = 3; //PWM control for motor outputs 1 and 2 is on digital pin 10

int pwm_b = 11; //PWM control for motor outputs 3 and 4 is on digital pin 11

int dir_a = 12; //direction control for motor outputs 1 and 2 is on digital pin 12

int dir_b = 13; //direction control for motor outputs 3 and 4 is on digital pin 13

int speed_outA = 100; //speed

int speed_outB = 100; //speed

int speedL = 50; //speed sotto i 40 non riescono a girare

int speedH = 100; //speed

int versusH = HIGH; //speed

int versusL = LOW; //speed

int versusA = 0; //speed

int versusB = 0; //speed

int soglia = 500; //soglia

int TEMPO = 2000; //soglia

void setup()

{

Serial.begin(9600);

pinMode(pwm_a, OUTPUT); //Set control pins to be outputs

pinMode(pwm_b, OUTPUT);

pinMode(dir_a, OUTPUT);

pinMode(dir_b, OUTPUT);

analogWrite(pwm_a, speedL); //set both motors to run at (100/255 = 39)% duty cycle (slow)

analogWrite(pwm_b, speedL);

}

void loop()

{

// read the state of the pushbutton value:

sensorValue = analogRead(sensorPin);

// print the results to the serial monitor:

Serial.print(“\n “);

Serial.print(“sensor = ” );

Serial.print(sensorValue);

Serial.print(“\n\n “);

delay(10);

if (sensorValue <= soglia){

versusA = versusH;

versusB = versusL;

Serial.print(” AVANTI \n ” );

delay(10);

}

else {

versusA = versusL;

versusB = versusH;

Serial.print(” INDIETRO \n ” );

delay(10);

}

digitalWrite(dir_a, versusA); //Set motor direction, 1 low, 2 high

digitalWrite(dir_b, versusB); //Set motor direction, 3 high, 4 low

speed_outA = speedL;

speed_outB = speedL;

analogWrite(pwm_a, speed_outA); //set both motors to run at 100% duty cycle (fast)

analogWrite(pwm_b, speed_outB);

Serial.print(“velocita motore A = ” );

Serial.print(speed_outA);

delay(10);

Serial.print(” velocita motore B = ” );

Serial.print(speed_outB);

Serial.print(“\n “);

delay(10);

// digitalWrite(ledPin, HIGH);

delay(TEMPO);

speed_outA = speedH;

speed_outB = speedH;

analogWrite(pwm_a, speed_outA); //set both motors to run at 100% duty cycle (fast)

analogWrite(pwm_b, speed_outB);

Serial.print(“velocita motore A = ” );

Serial.print(speed_outA);

delay(10);

Serial.print(” velocita motore B = ” );

Serial.print(speed_outB);

Serial.print(“\n “);

delay(10);

// digitalWrite(ledPin, LOW);

delay(TEMPO);

}

Modifiche proposte:

 

  • Cambiare i tempi
  • Cambiare il potenziometro
  • Accendere un led (di colore diverso) secondo il verso

 

di seguito le slide della lezione

diapositiva2018_L5_01
diapositiva2018_L5_01
diapositiva2018_L5_22
diapositiva2018_L5_22
diapositiva2018_L5_02
diapositiva2018_L5_02
diapositiva2018_L5_03
diapositiva2018_L5_03
diapositiva2018_L5_04
diapositiva2018_L5_04
diapositiva2018_L5_05
diapositiva2018_L5_05
diapositiva2018_L5_06
diapositiva2018_L5_06
diapositiva2018_L5_07
diapositiva2018_L5_07
diapositiva2018_L5_08
diapositiva2018_L5_08
diapositiva2018_L5_09
diapositiva2018_L5_09
diapositiva2018_L5_10
diapositiva2018_L5_10
diapositiva2018_L5_11
diapositiva2018_L5_11
diapositiva2018_L5_12
diapositiva2018_L5_12
diapositiva2018_L5_13
diapositiva2018_L5_13
diapositiva2018_L5_14
diapositiva2018_L5_14
diapositiva2018_L5_15
diapositiva2018_L5_15
diapositiva2018_L5_16
diapositiva2018_L5_16
diapositiva2018_L5_17
diapositiva2018_L5_17
diapositiva2018_L5_18
diapositiva2018_L5_18
diapositiva2018_L5_19
diapositiva2018_L5_19
diapositiva2018_L5_20
diapositiva2018_L5_20
diapositiva2018_L5_21
diapositiva2018_L5_21

(45)

Leggi anche:


  • cR_2019_lezione4

    cR_2019_lezione4


  • cR_2019_lezione5

    cR_2019_lezione5


  • cR_2019_lezione2

    cR_2019_lezione2


  • cR_2019_lezione3

    cR_2019_lezione3


  • cR_2019_lezione8

    cR_2019_lezione8


  • cR_2019_lezione6

    cR_2019_lezione6


  • cR_2019_lezione9

    cR_2019_lezione9


  • cR_2019_lezione10

    cR_2019_lezione10

  • Tweet
Taggato in: Corso robotica 2018, robot, scuola

Su Francesco Lerteri

Che altro puoi leggere

cR_2019_lezione9
Sede della ROMECUP 2016
Protetto: cR_2019_lezione11

Lascia un commento Annulla risposta

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.

Articolo in Evidenza

 

 

  

Il Sepolcro degli Scipioni

 

 

Le categorie

  • .Dicono di NOI
  • Album fotografici Francesco
  • Album Fotografici Iduesarchiaponi
  • Album Fotografici Paolo
  • Alta Fotografia
  • Altro
  • Antichi eserciti ed armi
  • Archeologia
  • Archeologia1
  • Archeologia2
  • Archivio Robotica
  • Circuiti per Robotica
  • Città Fantasma
  • Collaboratori
  • Corso Robotica 19-20
  • Didattica
  • Didattica a distanza
  • Esempi di Robotica
  • Eventi
  • Fotografia
  • Francesco
  • Francesco e Paolo
  • Gallerie Fotografiche Francesco
  • Gare di Robotica
  • Gli Svaghi nel mondo Antico
  • I Cibi Romani
  • Il blog
  • L'Italia che non ti aspetti
  • Laboratorio Robotica
  • Le sette Meraviglie del mondo
  • Le Sette meraviglie del Mondo moderne
  • Lezioni On-line
  • Link Utili
  • Miti e Leggende
  • Mitologia Norena
  • Notizie
  • Paolo
  • Per non dimenticare
  • Popoli e Civiltà
  • Robotica
  • Roma Nascosta
  • Scrittori e Poeti Antichi
  • Scuola
  • Si dice… Perchè
  • Soluzioni didattica a distanza
  • Storie e Personaggi Romani
  • Teatro
  • Viaggiando …..
  • Viaggiare
  • Video

Siti da visitare

 …

Rolex replica

replica watches
fake watches

Da la raccolta “La LIVELLA” di TOTO

....... E camminanno a ttaglio e nu burrone, nchiurette ll'uocchie e se menaie abbascio. Vulette 'nzerrà 'o libbro Sarchiapone, e se ne jette a 'o munno 'a verità .

SCRIVICI

Se ci vuoi contattare scrivici a: info@iduesarchiaponi.com

I più letti

  • Esopo e Fedro: I geni che hanno ascritto la favola nell’arte letteraria. (6908)
  • Sigle delle Porte Logiche (5244)
  • Mitologia Norrena. (2886)
  • Moire, Parche, Norne: Il filo della vita, le signore dei destini umani. (2731)
  • Il Mito di Achille (1857)
  • La statua di Zeus ad Olimpia. (1758)

Visitatori online

Visitatori online – 0:
Utenti –
Ospiti –
Bots –
Il numero massimo di visitatori è stato – 2019-04-03:
Tutte le visite – 68300:
Utenti – 643
Ospiti – 66154
Bots – 1503
browser – Firefox 18.0

  • SOCIAL

© 2014 Copyright by Francesco e Paolo. All rights reserved.

TORNA SU