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
  • cR_17_lezione 11
27 Giugno 2022

cR_17_lezione 11

cR_17_lezione 11

da Francesco Lerteri / martedì, 14 Febbraio 2017 / Pubblicato il Archivio Robotica

 

 

 

LEZIONE n° 11 – messa a punto ROBOT

(CONTARE GLI URTI)

 

 

 

 

Con questa lezione cominciare a programmare il robot.

 

RICORDIAMO I PRINCIPI DELLA PROGRAMMAZIONE DI ARDUINO:

 

n  Variabili:

n  Tipo (intero, reale, carattere, etc.)

n  Nome (caratteri alfanumerici)

 

n  Principali comandi:

n  Assegnazione

n  Si calcola l’espressione a sinistra ed il risultato viene assegnato alla variabile a destra

n  Count = count +1

n  IN/OUT

n  Istruzioni per immettere o prelevare dei dati

n  digitalWrite(pin1,LOW)

n  Test

n  Viene eseguito il test (vero o falso) e secondo il valore viene eseguita l’istruzione seguente

n  If (count <= soglia)

n  Istruzione1

n  istruzione2

n  Cicli

n  Vengono eseguite ripetutamente un gruppo di istruzioni

n  For (x=0;x==9;x++)

n  istruzione1

 

 

ESTENDERE A TUTTI GLI URTI la parte proposta – copiare il listato (colorato in rosso) ed incollarlo in un editor di solo testo [Notepad ad esempio]

la parte in (blu) serve per contare gli urti

 

parte del listato del programma di un ROBOT CHE CONTA GLI URTI:
/*

programma per BIG MAC versione 1

ultimo agg. 14.02.2017

*/

/***************************************************************

Variabili da tarare

***************************************************************/

 

int sogliaSx     = 500;       //soglie luce sinistra  //luce alta

int sogliaDx     = 500;       //soglie luce destra

 

 

int TEMPO_DX1 = 600;       //tempo rotazione dopo urto centro

int TEMPO_SX1 = 300;       //tempo rotazione dopo urto a destra

int TEMPO_SX2 = 550;       //tempo rotazione dopo urto a destra

int TEMPO_CX1 = 600;       //tempo rotazione dopo urto al centro

int TEMPO_D1  = 350;       //tempo rotazione dopo urto al centro

 

/**************************************************************

Variabili da non modificare

***************************************************************/

 

int urto_AVSX = 11;         // digital pin 11

int urto_AVDX = 10;         // digital pin 10

 

int TEMPO_MIN = 6;        //tempo di attesa dopo lettura sens0ri

 

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

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

 

int contaurtiS = 0;         //contatore per i sensori di urto

 

 

void avanti()    // direzione AVANTI

{

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

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

}

void dietro()    // direzione DIETRO

{

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

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

}

void destra()    // direzione DESTRA

{

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

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

}

 

void sinistra()    // direzione SINISTRA

{

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

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

}

void stop_Motori()    // FERMARE MOTORI DIETRO PER POCO

{

//    dietro();

analogWrite(pwm_a, 0);

analogWrite(pwm_b, 0);

 

delay(TEMPO_MIN);

}

 

 

void setup()

{

Serial.begin(9600);

 

pinMode(urto_AVSX, INPUT);  //Set control pins to be inputs

pinMode(urto_AVDX, INPUT);

}

 

void loop()

{

 

//    vado AVANTI SE NON CI SONO OSTACOLI

avanti();    // direzione AVANTI

 

analogWrite(pwm_a, loop_speed_a);

analogWrite(pwm_b, loop_speed_b);

delay(TEMPO_MIN);

 

value_urto_AVDX = digitalRead(urto_AVDX);

delay(TEMPO_MIN);

value_urto_AVSX = digitalRead(urto_AVSX);

delay(TEMPO_MIN);

 

// URTO AVANTI SINISTRA

if ((value_urto_AVSX == HIGH)&&(magic==1))

{

contaurtiS = contaurtiS + 1;

 

stop_Motori();

 

dietro();

analogWrite(pwm_a, loop_speed_a);

analogWrite(pwm_b, loop_speed_b);

delay(TEMPO_D1);

 

if (contaurtiS < 3 )

{

destra();

analogWrite(pwm_a, loop_speed_a);

analogWrite(pwm_b, loop_speed_b);

delay(TEMPO_SX1);

}

else

{

contaurtiS = 0;

destra();

analogWrite(pwm_a, loop_speed_a);

analogWrite(pwm_b, loop_speed_b);

delay(TEMPO_SX1*1.5);

}

 

avanti();

analogWrite(pwm_a, loop_speed_a);

analogWrite(pwm_b, loop_speed_b);

}

 

}

 

// END PROGRAM

 

 

La prima istruzione (blu) definisce la variabile usata come contatore

La seconda istruzione (blu) incrementa il contatore

Il terzo blocco (blu) controlla il valore del contatore e se non è raggiunto il numero di urti fissato RUOTA IL ROBOT PER IL TEMPO TEMPO_SX1. Quando si raggiunge la soglia resetta il contatore ed aumenta il tempo del 50%.

 

di seguito le slide della lezione

 

diapositiva_01
diapositiva_01
diapositiva_02
diapositiva_02
diapositiva_03
diapositiva_03
diapositiva_04
diapositiva_04
diapositiva_05
diapositiva_05
diapositiva_06
diapositiva_06
diapositiva_07
diapositiva_07
diapositiva_08
diapositiva_08

 

(58)

Leggi anche:


  • cR_2019_lezione4

    cR_2019_lezione4


  • cR_2019_lezione5

    cR_2019_lezione5


  • cR_2019_lezione6

    cR_2019_lezione6


  • cR_2019_lezione7

    cR_2019_lezione7


  • LoL n°11 - SIS4 - Elementi di Programmazione

    LoL n°11 – SIS4 – Elementi di Programmazione


  • cR_2019_lezione1

    cR_2019_lezione1


  • cR_2019_lezione2

    cR_2019_lezione2


  • cR_2019_lezione8

    cR_2019_lezione8

  • Tweet
Taggato in: Corso robotica 2017, elettronica, robot, scuola

Su Francesco Lerteri

Che altro puoi leggere

Protetto: cR_2019_lezione10
cR_2019_lezione8
corso 2018 L10

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. (6913)
  • Sigle delle Porte Logiche (5271)
  • Mitologia Norrena. (2897)
  • Moire, Parche, Norne: Il filo della vita, le signore dei destini umani. (2743)
  • Il Mito di Achille (1859)
  • La statua di Zeus ad Olimpia. (1761)

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