Difference between revisions of "Main Page"
(→Informazioni e materiale utile) |
|||
(159 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
− | ____ ___ _ _ _____ _ _ ____ ___ _____ | + | |
− | / ___/ _ \| \ | |_ _| | | | __ ) / _ \_ _| | + | ____ ___ _ _ _____ _ _ ____ ___ _____ ____ |
− | | | | | | | \| | | | | | | | _ \| | | || | | + | / ___/ _ \| \ | |_ _| | | | __ ) / _ \_ _/ ___| |
− | | |__| |_| | |\ | | | | |_| | |_) | |_| || | | + | | | | | | | \| | | | | | | | _ \| | | || | \___ \ |
− | \____\___/|_| \_| |_| \___/|____/ \___/ |_| | + | | |__| |_| | |\ | | | | |_| | |_) | |_| || | ___) | |
+ | \____\___/|_| \_| |_| \___/|____/ \___/ |_| |____/ | ||
+ | |||
+ | '''CONTUbernio robotics and roBOTS''' | ||
+ | |||
+ | ---- | ||
+ | |||
+ | = ROBOTS = | ||
+ | == Le 3 leggi della robotica == | ||
+ | |||
+ | # “Un robot non può recar danno a un essere umano né può permettere che a causa del proprio mancato intervento un essere umano riceva danno”. | ||
+ | # “Un robot deve obbedire agli ordini impartiti dagli esseri umani purché tali ordini non contravvengano alla prima legge”. | ||
+ | # “Un robot deve proteggere la propria esistenza purché questo non contrasti con la prima e la seconda legge”. | ||
+ | |||
+ | [https://it.wikipedia.org/wiki/Isaac_Asimov Isaac Asimov] | ||
+ | |||
+ | Ok ma ... | ||
+ | * cosa è un essere umano? (per un robot!) | ||
+ | * cosa vuol dire "ricevere un ordine"? | ||
+ | * come capire se un ordine provocherà un danno? | ||
+ | * ... | ||
+ | |||
+ | = THYMIO = | ||
+ | == Programmi preimpostati == | ||
+ | |||
+ | {| class="wikitable" | ||
+ | |+Programmi preimpostati sui thymio | ||
+ | |||
+ | ! COMPORTAMENTO !! COLORE!! SPIEGAZIONE | ||
+ | |- | ||
+ | ! ESPLORATORE | ||
+ | | giallo || evita gli ostacoli | ||
+ | |- | ||
+ | ! AMICONE | ||
+ | | verde || segue un amico | ||
+ | |- | ||
+ | ! FIFONE | ||
+ | | rosso || cerca di non farsi acchiappare | ||
+ | |- | ||
+ | ! CURIOSO | ||
+ | | blu || inseguitore di linea | ||
+ | |- | ||
+ | ! OBBEDIENTE | ||
+ | | fucsia || si può controllare con le frecce | ||
+ | |- | ||
+ | ! ATTENTO | ||
+ | | azzurro || reagisce ai suoni | ||
+ | |} | ||
+ | |||
+ | # [https://www.youtube.com/watch?v=BwkZ-Df0hdg Découverte du robot éducatif Thymio 2] | ||
+ | # [https://www.thymio.org/it:thymiostarting iniziare con il thymio] | ||
+ | |||
+ | == VPL base == | ||
+ | |||
+ | === introduzione === | ||
+ | |||
+ | Alcuni video sul THYMIO e sulla programmazione con il VPL (Visual Programming Language) | ||
+ | |||
+ | # [https://www.youtube.com/watch?v=Qc6nL8twWSI Introduction au robot Thymio (1/4) Thymio et ses comportements de base] | ||
+ | # [https://www.youtube.com/watch?v=dA-BW38kl6E Introduction au robot Thymio (2/4) Thymio et ses comportements de base] | ||
+ | # [https://www.youtube.com/watch?v=l2JRdcBNIdY Introduction au robot Thymio (3/4) Thymio et ses comportements de base] | ||
+ | # [https://www.youtube.com/watch?v=IpL5k78kXVI Introduction au robot Thymio (4/4) Thymio et ses comportements de base] | ||
+ | |||
+ | == VPL avanzato == | ||
+ | |||
+ | # https://www.thymio.org/it:thymiovpl | ||
+ | # | ||
+ | |||
+ | == Inseguitore di linea == | ||
+ | |||
+ | La traccia deve essere almeno larga 4 cm con alto contrasto rispetto al terreno; meglio è '''nero su bianco'''. | ||
+ | '''Il livello di riconoscimento della traccia può essere calibrato''' quando la modalità 'Investigatore' viene attivata: | ||
+ | ''' | ||
+ | * Premere simultaneamente entrambe le '''frecce avanti e indietro con i sensori inferiori sulla traccia, per calibrare il livello del nero'''. | ||
+ | * Premere simultaneamente entrambe le '''frecce destra e sinistra con i sensori inferiori su un'area bianca per calibrare il livello del bianco'''. | ||
+ | |||
+ | == SUMO == | ||
+ | 2 robot su un ring lottano per spingere l'avversario fuori dal ring | ||
+ | |||
+ | * https://www.youtube.com/watch?v=gIYMAymGzdI | ||
+ | * https://www.youtube.com/watch?v=3tguWcKTXQI | ||
+ | * https://www.youtube.com/watch?v=suyPkO0apak | ||
+ | |||
+ | Le regole: | ||
+ | * si programmano i robot | ||
+ | * una volta iniziata la gara non si possono toccare i robot | ||
+ | * vince chi riesce a spingere l'altro fuori dal ring | ||
+ | * si ha un pareggio se entro un certo tempo nessuno dei 2 riesce a spingere l'altro fuori | ||
+ | |||
+ | Obiettivi nel fare il programma: | ||
+ | # programmare il robot in modo che non esca dal ring | ||
+ | # programmare il proprio robot per spingere il robot avversario fuori dal ring | ||
+ | # programmare il robot per evitare sia spinto fuori dal ring | ||
+ | |||
+ | = Informazioni e materiale utile = | ||
+ | * [[Robotica EXTRAcurricolare]] | ||
+ | * [[Robotica CURRICOLARE]] | ||
+ | * [[Strumenti e spunti]] | ||
+ | |||
+ | = Elettricità ed elettronica = | ||
+ | |||
+ | == pile e generatori == | ||
+ | === generatori in serie === | ||
+ | |||
+ | <math>V=V_1+V_2</math> | ||
+ | |||
+ | === generatori in parallelo === | ||
+ | |||
+ | <math>I=I_1+I_2</math> | ||
+ | |||
+ | == resistenza e legge di ohm == | ||
+ | === resistenze in serie === | ||
+ | |||
+ | <math>R=R_1+R_2</math> | ||
+ | |||
+ | === resistenze in parallelo === | ||
+ | <math>\frac{1}{R}=\frac{1}{R_1}+\frac{1}{R_2}</math> | ||
+ | |||
+ | === partitore di tensione === | ||
+ | |||
+ | <math>I=I_1=I_2</math> | ||
+ | |||
+ | <math>V_1=I * R_1</math> | ||
+ | |||
+ | <math>V_2=I * R_2</math> | ||
+ | |||
+ | <math>V = I * R_1 + I * R_2 \ </math> | ||
+ | |||
+ | <math>I = \frac{V_{in}}{R_1 + R_2}</math> | ||
+ | |||
+ | <math>V_2 = I * V_{in} = V_{in} * \frac{R_2}{R_1 + R_2} = V_{out} </math> | ||
+ | |||
+ | = arduino = | ||
+ | == ARDUINO NANO == | ||
+ | |||
+ | == DRIVER MOTORI == | ||
+ | |||
+ | = CONTUBOT1 = | ||
+ | |||
+ | == Hardware == | ||
+ | |||
+ | === Meccanica === | ||
+ | |||
+ | # https://www.youtube.com/watch?v=uW8YVcBjPGU | ||
+ | |||
+ | === Schema dei collegamenti === | ||
+ | |||
+ | NB | ||
+ | |||
+ | * controllare '''SEMPRE''' PRIMA DI COLLEGARE LE PILE altrimenti POTREBBE ROMPERSI IL CONTROLLORE | ||
+ | * non utilizzare più di 9V | ||
+ | |||
+ | <graphviz> | ||
+ | digraph G4 { | ||
+ | rankdir=LR | ||
+ | subgraph cluster_0 { | ||
+ | color=green; | ||
+ | rankdir=LR; | ||
+ | node [style=filled,color=green]; | ||
+ | VIN; | ||
+ | V5V; | ||
+ | GNDC; | ||
+ | |||
+ | D00; | ||
+ | D01; | ||
+ | |||
+ | D02; | ||
+ | D03; | ||
+ | |||
+ | D04; | ||
+ | D05; | ||
+ | D06; | ||
+ | D07; | ||
+ | D08; | ||
+ | D09; | ||
+ | D10; | ||
+ | D11; | ||
+ | D12; | ||
+ | |||
+ | label = "controller"; | ||
+ | } | ||
+ | |||
+ | subgraph cluster_1 { | ||
+ | color=red; | ||
+ | node [style=filled,color=red]; | ||
+ | VM; | ||
+ | VCC; | ||
+ | GNDD; | ||
+ | AIN1; | ||
+ | AIN2; | ||
+ | PWMA; | ||
+ | BIN1; | ||
+ | BIN2; | ||
+ | PWMB; | ||
+ | STBY; | ||
+ | A01; | ||
+ | A02; | ||
+ | B01; | ||
+ | B02; | ||
+ | label = "driver"; | ||
+ | } | ||
+ | |||
+ | |||
+ | subgraph cluster_2 { | ||
+ | P [shape=Msquare]; | ||
+ | N [shape=Msquare]; | ||
+ | color=green; | ||
+ | node [style=filled]; | ||
+ | label = "battery"; | ||
+ | color=blue | ||
+ | } | ||
+ | subgraph cluster_3 { | ||
+ | ECHO; | ||
+ | TRIG; | ||
+ | VCCU; | ||
+ | GNDU; | ||
+ | color=green; | ||
+ | node [style=filled]; | ||
+ | label = "Ultrasuoni"; | ||
+ | } | ||
+ | |||
+ | |||
+ | subgraph cluster_4 { | ||
+ | M1P; | ||
+ | M1N; | ||
+ | color=orange; | ||
+ | node [style=filled]; | ||
+ | label = "Motore 1"; | ||
+ | } | ||
+ | |||
+ | subgraph cluster_5 { | ||
+ | M2P; | ||
+ | M2N; | ||
+ | color=orange; | ||
+ | node [style=filled]; | ||
+ | label = "Motore 2"; | ||
+ | } | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | P->VIN; | ||
+ | N->GNDC; | ||
+ | GNDC->GNDD; | ||
+ | VIN->VM; | ||
+ | V5V->VCC; | ||
+ | |||
+ | V5V->VCCU; | ||
+ | GNDC->GNDU; | ||
+ | D10->TRIG; | ||
+ | ECHO->D04; | ||
+ | D08->AIN1; | ||
+ | D09->AIN2; | ||
+ | D05->PWMA; | ||
+ | D12->BIN1; | ||
+ | D11->BIN2; | ||
+ | D06->PWMB; | ||
+ | D07->STBY; | ||
+ | |||
+ | A01->M1P; | ||
+ | A02->M1N; | ||
+ | B01->M2P; | ||
+ | B02->M2N; | ||
+ | |||
+ | } | ||
+ | </graphviz> | ||
+ | |||
+ | === Tabella riassuntiva === | ||
+ | |||
+ | |||
+ | '''CONNESSIONI''' | ||
+ | |||
+ | == Software == | ||
+ | |||
+ | * Programma [[robotExplorerContubot1simple]] | ||
+ | |||
+ | === Esempi === | ||
+ | * https://www.youtube.com/watch?v=uW8YVcBjPGU |
Latest revision as of 08:42, 4 February 2021
____ ___ _ _ _____ _ _ ____ ___ _____ ____ / ___/ _ \| \ | |_ _| | | | __ ) / _ \_ _/ ___| | | | | | | \| | | | | | | | _ \| | | || | \___ \ | |__| |_| | |\ | | | | |_| | |_) | |_| || | ___) | \____\___/|_| \_| |_| \___/|____/ \___/ |_| |____/ CONTUbernio robotics and roBOTS
Contents
ROBOTS
Le 3 leggi della robotica
- “Un robot non può recar danno a un essere umano né può permettere che a causa del proprio mancato intervento un essere umano riceva danno”.
- “Un robot deve obbedire agli ordini impartiti dagli esseri umani purché tali ordini non contravvengano alla prima legge”.
- “Un robot deve proteggere la propria esistenza purché questo non contrasti con la prima e la seconda legge”.
Ok ma ...
- cosa è un essere umano? (per un robot!)
- cosa vuol dire "ricevere un ordine"?
- come capire se un ordine provocherà un danno?
- ...
THYMIO
Programmi preimpostati
COMPORTAMENTO | COLORE | SPIEGAZIONE |
---|---|---|
ESPLORATORE | giallo | evita gli ostacoli |
AMICONE | verde | segue un amico |
FIFONE | rosso | cerca di non farsi acchiappare |
CURIOSO | blu | inseguitore di linea |
OBBEDIENTE | fucsia | si può controllare con le frecce |
ATTENTO | azzurro | reagisce ai suoni |
VPL base
introduzione
Alcuni video sul THYMIO e sulla programmazione con il VPL (Visual Programming Language)
- Introduction au robot Thymio (1/4) Thymio et ses comportements de base
- Introduction au robot Thymio (2/4) Thymio et ses comportements de base
- Introduction au robot Thymio (3/4) Thymio et ses comportements de base
- Introduction au robot Thymio (4/4) Thymio et ses comportements de base
VPL avanzato
Inseguitore di linea
La traccia deve essere almeno larga 4 cm con alto contrasto rispetto al terreno; meglio è nero su bianco. Il livello di riconoscimento della traccia può essere calibrato quando la modalità 'Investigatore' viene attivata:
- Premere simultaneamente entrambe le frecce avanti e indietro con i sensori inferiori sulla traccia, per calibrare il livello del nero.
- Premere simultaneamente entrambe le frecce destra e sinistra con i sensori inferiori su un'area bianca per calibrare il livello del bianco.
SUMO
2 robot su un ring lottano per spingere l'avversario fuori dal ring
- https://www.youtube.com/watch?v=gIYMAymGzdI
- https://www.youtube.com/watch?v=3tguWcKTXQI
- https://www.youtube.com/watch?v=suyPkO0apak
Le regole:
- si programmano i robot
- una volta iniziata la gara non si possono toccare i robot
- vince chi riesce a spingere l'altro fuori dal ring
- si ha un pareggio se entro un certo tempo nessuno dei 2 riesce a spingere l'altro fuori
Obiettivi nel fare il programma:
- programmare il robot in modo che non esca dal ring
- programmare il proprio robot per spingere il robot avversario fuori dal ring
- programmare il robot per evitare sia spinto fuori dal ring
Informazioni e materiale utile
Elettricità ed elettronica
pile e generatori
generatori in serie
generatori in parallelo
resistenza e legge di ohm
resistenze in serie
resistenze in parallelo
partitore di tensione
arduino
ARDUINO NANO
DRIVER MOTORI
CONTUBOT1
Hardware
Meccanica
Schema dei collegamenti
NB
- controllare SEMPRE PRIMA DI COLLEGARE LE PILE altrimenti POTREBBE ROMPERSI IL CONTROLLORE
- non utilizzare più di 9V
The ImageMap extension is not installed.
Tabella riassuntiva
CONNESSIONI
Software
- Programma robotExplorerContubot1simple