Difference between revisions of "Seguidor de línies virtual"
Line 22: | Line 22: | ||
== Seguidor de línies virtual amb '''Snap!''' == | == Seguidor de línies virtual amb '''Snap!''' == | ||
− | Un robot pot tenir incorporats uns sensors que van a sobre d'ell i que són els que saben detectar els paràmetres físics, en aquest cas un canvi de color o un canvi de contrast. | + | Un robot pot tenir incorporats uns sensors que van a sobre d'ell i que són els que saben detectar els paràmetres físics, en aquest cas un canvi de color o un canvi de contrast. |
− | <p style="text-align: justify">L'aproximació a la realització del seguidor de línies amb '''<span class="hiddenSpellError">Snap</span>!''' té semblances amb un de real. Per fer-ho s'aprofiten dues característiques úniques <span class="hiddenGrammarError">de </span>[[Introducció_a_Snap!|<span class="hiddenSpellError">Snap</span>!]] | + | <p style="text-align: justify">L'aproximació a la realització del seguidor de línies amb '''<span class="hiddenSpellError">Snap</span>!''' té semblances amb un de real. Per fer-ho s'aprofiten dues característiques úniques <span class="hiddenGrammarError">de </span>[[Introducció_a_Snap!|<span class="hiddenSpellError">Snap</span>!]]: la possibilitat de vincular objectes i la comunicació entre ells. El projecte es compon del robot "Robot" i dos sensors, "Sensor Dret" i "Sensor Esquerra", vinculats al robot.</p> <p style="text-align: justify">S'usa una altra característica de '''<span class="hiddenSpellError">Snap</span>'''<span class="hiddenGrammarError">'''!''': </span>la possibilitat de preguntar a un altre objecte. És fàcil saber si un objecte toca un altre fent servir el bloc "'''tocant ...'''". Si es fa amb el sensor dret, per exemple, s'obté:</p> <p style="text-align: justify">[[File:Seguidor4.png|RTENOTITLE]][[File:Seguidor5.png|RTENOTITLE]]</p> <p style="text-align: justify">La clau està en que el robot pugui preguntar als sensors si estan tocant el camí. Per fer-ho es fa servir el bloc "'''pregunta ... per ...'''" que es pot trobar a la categoria '''<span style="background-color:#FFD700;">Control</span>''' i que demana un objecte i una funció a la que cridar.''' '''La icona de '''Snap!''', amb una [https://ca.wikipedia.org/wiki/Càlcul_lambda lambda], ve d'aquesta característica, relacionada amb [https://ca.wikipedia.org/wiki/Alonzo_Church Alonzo].</p> <p style="text-align: justify">[[File:Seguidor3.png|RTENOTITLE]]</p> <p style="text-align: justify">El bloc "'''tocant ...'''" dels sensors retorna ''cert'' o ''fals'' segons si aquests toquen o no un altre objete. Es necessari saber si el sensor toca el camí per fer un moviment a esquerra o dreta que ajusti la trajectoria. Fixa't que cal també un camí prou gruixut, no n'hi ha prou amb una línia fina. El codi pel sensor dret és:</p> <p style="text-align: justify">[[File:Seguidor6.png|RTENOTITLE]][[File:Seguidor5.png|RTENOTITLE]]</p> <p style="text-align: justify">Ara cal afegir blocs d'esdeveniment del tipus "Quan..." i respondre a la detecció del camí amb un lleuger gir del robot (com si s'activessin els motors) en el sentit adient:</p> <p style="text-align: justify">''' [[File:Seguidor2.png|RTENOTITLE]]'''</p> <p style="text-align: justify">El robot es mou i va preguntant als sensors, que estan per fora del cami, si està tocant el camí. Quan el sensor esquerra toca el camí, el robot gira una mica cap a fora. El dret ho fa girant en sentit contrari.</p> |
− | == Variant amb ''Scratch'' == | + | == Variant amb '''Scratch''' == |
− | + | El mateix exercici es pot fer amb [[Ejercicio:_Introducción_a_Scratch|Scratch]] a [[Seguidor_de_línies_virtual_amb_Scratch|Seguidor de línies virtual amb Scratch. ]]Es pot importar el projecte creat amb '''Scratch '''a '''Snap!''',''i tenir exactament el mateix programa traduït, usant aquest [http://djdolphin.github.io/Snapin8r2/ enllaç].'' | |
| | ||
| |
Latest revision as of 00:45, 18 June 2019
Un seguidor de línies és un rastrejador que té com a objectiu, com el mateix nom indica, seguir una línia dibuixada, per exemple, d’un color més fosc situada sobre un fons d’un color més clar. El rastrejador funciona mitjançant sensors. En funció de la complexitat del recorregut, són necessaris més o menys sensors.Existeixen seguidors de línies virtuals i reals. Aquesta pràctica construeix un seguidor de línies virtual per a introduir alguns conceptes bàsics de robòtica, com són els sensors, la presa de decisions amb un mecanisme de control o la resposta per modificar el comportament del sistema.
L’exemple es pot trobar en aquest enllaç.
Seguidor de línies virtual amb Snap!
Un robot pot tenir incorporats uns sensors que van a sobre d'ell i que són els que saben detectar els paràmetres físics, en aquest cas un canvi de color o un canvi de contrast.
L'aproximació a la realització del seguidor de línies amb Snap! té semblances amb un de real. Per fer-ho s'aprofiten dues característiques úniques de Snap!: la possibilitat de vincular objectes i la comunicació entre ells. El projecte es compon del robot "Robot" i dos sensors, "Sensor Dret" i "Sensor Esquerra", vinculats al robot.
S'usa una altra característica de Snap!: la possibilitat de preguntar a un altre objecte. És fàcil saber si un objecte toca un altre fent servir el bloc "tocant ...". Si es fa amb el sensor dret, per exemple, s'obté:
La clau està en que el robot pugui preguntar als sensors si estan tocant el camí. Per fer-ho es fa servir el bloc "pregunta ... per ..." que es pot trobar a la categoria Control i que demana un objecte i una funció a la que cridar. La icona de Snap!, amb una lambda, ve d'aquesta característica, relacionada amb Alonzo.
El bloc "tocant ..." dels sensors retorna cert o fals segons si aquests toquen o no un altre objete. Es necessari saber si el sensor toca el camí per fer un moviment a esquerra o dreta que ajusti la trajectoria. Fixa't que cal també un camí prou gruixut, no n'hi ha prou amb una línia fina. El codi pel sensor dret és:
Ara cal afegir blocs d'esdeveniment del tipus "Quan..." i respondre a la detecció del camí amb un lleuger gir del robot (com si s'activessin els motors) en el sentit adient:
El robot es mou i va preguntant als sensors, que estan per fora del cami, si està tocant el camí. Quan el sensor esquerra toca el camí, el robot gira una mica cap a fora. El dret ho fa girant en sentit contrari.
Variant amb Scratch
El mateix exercici es pot fer amb Scratch a Seguidor de línies virtual amb Scratch. Es pot importar el projecte creat amb Scratch a Snap!,i tenir exactament el mateix programa traduït, usant aquest enllaç.