introducció a la robòtica i exemples amb bitbloq · introducció a la robòtica i exemples amb...
TRANSCRIPT
![Page 1: Introducció a la robòtica i exemples amb bitbloq · Introducció a la robòtica i exemples amb bitbloq Introducció a la robòtica: Parts del robot Components Arduino Bitbloq Exercissis](https://reader034.vdocuments.us/reader034/viewer/2022042208/5eac411a6c04fc1fcf4756cf/html5/thumbnails/1.jpg)
Introducció a la robòtica i exemples amb bitbloq
Introducció a la robòtica:
Parts del robot
Components
Arduino
Bitbloq
Exercissis pràctics amb: 1 led Octopus, 1 placa freeaduino, un sensor IR Octopus, Pc amb google Chrome i bitbloq.bq.com
Presentació
Communia.org / Escola Tecnos
Introducció a la programació per blocs
Blockly games
Scratch
Basat en la guia de BQ: http://diwo.bq.com/course/aprende-robotica-y-programacion-con-bitbloq-2Projectes extrets de: http://diwo.bq.com/category/construye
Adaptació feta per communia.org per les extra-escolars 2016-17 de Fablab Terrassa
![Page 2: Introducció a la robòtica i exemples amb bitbloq · Introducció a la robòtica i exemples amb bitbloq Introducció a la robòtica: Parts del robot Components Arduino Bitbloq Exercissis](https://reader034.vdocuments.us/reader034/viewer/2022042208/5eac411a6c04fc1fcf4756cf/html5/thumbnails/2.jpg)
"Un robot és una màquina automàtica programable que és capaç d'interpretar informació del medi físic per modificar la seva conducta. Té la capacitat d'interactuar amb l'entorn i, en funció d'això, realitzar unes funcions o unes altres. "
Veure més a: http://diwo.bq.com/que-es-un-robot-conociendo-los-sensores-y-actuadores
![Page 3: Introducció a la robòtica i exemples amb bitbloq · Introducció a la robòtica i exemples amb bitbloq Introducció a la robòtica: Parts del robot Components Arduino Bitbloq Exercissis](https://reader034.vdocuments.us/reader034/viewer/2022042208/5eac411a6c04fc1fcf4756cf/html5/thumbnails/3.jpg)
![Page 4: Introducció a la robòtica i exemples amb bitbloq · Introducció a la robòtica i exemples amb bitbloq Introducció a la robòtica: Parts del robot Components Arduino Bitbloq Exercissis](https://reader034.vdocuments.us/reader034/viewer/2022042208/5eac411a6c04fc1fcf4756cf/html5/thumbnails/4.jpg)
![Page 5: Introducció a la robòtica i exemples amb bitbloq · Introducció a la robòtica i exemples amb bitbloq Introducció a la robòtica: Parts del robot Components Arduino Bitbloq Exercissis](https://reader034.vdocuments.us/reader034/viewer/2022042208/5eac411a6c04fc1fcf4756cf/html5/thumbnails/5.jpg)
![Page 6: Introducció a la robòtica i exemples amb bitbloq · Introducció a la robòtica i exemples amb bitbloq Introducció a la robòtica: Parts del robot Components Arduino Bitbloq Exercissis](https://reader034.vdocuments.us/reader034/viewer/2022042208/5eac411a6c04fc1fcf4756cf/html5/thumbnails/6.jpg)
ARDUINO / PLACA CONTROLADORA (ZUM BT-328)
![Page 7: Introducció a la robòtica i exemples amb bitbloq · Introducció a la robòtica i exemples amb bitbloq Introducció a la robòtica: Parts del robot Components Arduino Bitbloq Exercissis](https://reader034.vdocuments.us/reader034/viewer/2022042208/5eac411a6c04fc1fcf4756cf/html5/thumbnails/7.jpg)
Programació per blocshttps://duckduckgo.com/?q=scratch+bitblock+blockly+app+inventor+&t=canonical&iax=1&ia=images
![Page 8: Introducció a la robòtica i exemples amb bitbloq · Introducció a la robòtica i exemples amb bitbloq Introducció a la robòtica: Parts del robot Components Arduino Bitbloq Exercissis](https://reader034.vdocuments.us/reader034/viewer/2022042208/5eac411a6c04fc1fcf4756cf/html5/thumbnails/8.jpg)
Anar a bitbloq.bq.com amb Google Chrome:
1. Fer un usuari2. Interfície Bitbloq http://diwo.bq.com/conociendo-bitbloq-2
3. Instalar Web2board http://diwo.bq.com/antes-de-empezar-con-bitbloq-2
![Page 9: Introducció a la robòtica i exemples amb bitbloq · Introducció a la robòtica i exemples amb bitbloq Introducció a la robòtica: Parts del robot Components Arduino Bitbloq Exercissis](https://reader034.vdocuments.us/reader034/viewer/2022042208/5eac411a6c04fc1fcf4756cf/html5/thumbnails/9.jpg)
QUE ES FACI LA LLUM!!programem un led
http://diwo.bq.com/y-la-luz-se-hizo-programando-leds-en-bitbloq-2
![Page 10: Introducció a la robòtica i exemples amb bitbloq · Introducció a la robòtica i exemples amb bitbloq Introducció a la robòtica: Parts del robot Components Arduino Bitbloq Exercissis](https://reader034.vdocuments.us/reader034/viewer/2022042208/5eac411a6c04fc1fcf4756cf/html5/thumbnails/10.jpg)
Què és un LED?
Un LED (light-emitting diode) és un díode, un component que només deixa passar l'electricitat en un sentit i la bloqueja en l'altre.
En el cas dels LED, quan circula electricitat emeten llum.
Els LED són barats, gasten molt poca energia i poden arribar a ser molt lluminosos. S'utilitzen molt en sistemes electrònics i estan substituint a la il·luminació tradicional.
Veure més a: http://diwo.bq.com/y-la-luz-se-hizo-programando-leds-en-bitbloq-2
![Page 11: Introducció a la robòtica i exemples amb bitbloq · Introducció a la robòtica i exemples amb bitbloq Introducció a la robòtica: Parts del robot Components Arduino Bitbloq Exercissis](https://reader034.vdocuments.us/reader034/viewer/2022042208/5eac411a6c04fc1fcf4756cf/html5/thumbnails/11.jpg)
1 Per programar el LED ves a la pestanya "Software"
2 Fes clic a "Components"
3 Busca el bloc "Encendre/Apagar" el LED
4 Arrossega’l dins del bloc loop
Programem un led
![Page 12: Introducció a la robòtica i exemples amb bitbloq · Introducció a la robòtica i exemples amb bitbloq Introducció a la robòtica: Parts del robot Components Arduino Bitbloq Exercissis](https://reader034.vdocuments.us/reader034/viewer/2022042208/5eac411a6c04fc1fcf4756cf/html5/thumbnails/12.jpg)
Hola món: El LED fa pampallugues.
En programació li diem “Hola món!!” al primer programa que fem quan estem aprenent. Quan es programa una placa controladora, el “Hola món” consisteix en fer parpellejar el LED per veure si tot funciona correctament :)
Proj. bitbloq: https://goo.gl/R1aWBn
![Page 13: Introducció a la robòtica i exemples amb bitbloq · Introducció a la robòtica i exemples amb bitbloq Introducció a la robòtica: Parts del robot Components Arduino Bitbloq Exercissis](https://reader034.vdocuments.us/reader034/viewer/2022042208/5eac411a6c04fc1fcf4756cf/html5/thumbnails/13.jpg)
Què és un sensor infraroig?
El sensor infraroig, també conegut com a sensor IR, és un dispositiu que detecta la llum reflectida i, per tant, és capaç de diferenciar entre blanc i negre (o clar i fosc).
Es tracta d'un component digital, ja que únicament retorna dos valors (0 i 1). Quan detecta negre retorna 0 (el negre absorbeix la llum, per tant la llum reflectida és 0) i quan detecta blanc, retorna 1.
Veure més a: http://diwo.bq.com/programando-un-sensor-infrarrojo-en-bitbloq
![Page 15: Introducció a la robòtica i exemples amb bitbloq · Introducció a la robòtica i exemples amb bitbloq Introducció a la robòtica: Parts del robot Components Arduino Bitbloq Exercissis](https://reader034.vdocuments.us/reader034/viewer/2022042208/5eac411a6c04fc1fcf4756cf/html5/thumbnails/15.jpg)
Millorem el programa: variables i funcions
1 2
3
1
2
3
Proj. bitbloq: https://goo.gl/fFZtud
![Page 16: Introducció a la robòtica i exemples amb bitbloq · Introducció a la robòtica i exemples amb bitbloq Introducció a la robòtica: Parts del robot Components Arduino Bitbloq Exercissis](https://reader034.vdocuments.us/reader034/viewer/2022042208/5eac411a6c04fc1fcf4756cf/html5/thumbnails/16.jpg)
/*** Included libraries ***/
/*** G lobal variables and function definition ***/
const int led_integrat = 13;
const int sensor_infrarrojos_0 = 10;
/*** Setup ***/
void setup() {
pinM ode(led_integrat, OUTPUT);
pinM ode(sensor_infrarrojos_0, INPUT);
}
/*** Loop ***/
void loop() {
if (digitalRead(sensor_infrarrojos_0) = = 1) {
digitalW rite(led_integrat, HIGH);
} else {
digitalW rite(led_integrat, HIGH);
}
}
/*** Included libraries ***/
/*** Global variables and function definition ***/
const int led_integrat = 13;
const int sensor_infrarrojos_0 = 3;
const int led_0 = 12;
float negre = 0;
float blanc = 1;
void apagar_leds() {
digitalW rite(led_integrat, LOW );
digitalW rite(led_0, LOW );
}
void encendre_leds() {
digitalW rite(led_integrat, HIGH);
digitalW rite(led_0, HIGH);
}
/*** Setup ***/
void setup() {
pinM ode(led_integrat, OUTPUT);
pinM ode(sensor_infrarrojos_0, INPUT);
pinM ode(led_0, OUTPUT);
apagar_leds();
}
/*** Loop ***/
void loop() {
if (digitalRead(sensor_infrarrojos_0) = = negre) {
apagar_leds();
}
if (digitalRead(sensor_infrarrojos_0) = = blanc) {
encendre_leds();
}
delay(20);
}
/*** Included libraries ***/
/*** Global variables and function definition ***/
const int led_integrat = 13;
/*** Setup ***/
void setup() {
pinM ode(led_integrat, OUTPUT);
}
/*** Loop ***/
void loop() {
digitalW rite(led_integrat, HIGH);
delay(200);
digitalW rite(led_integrat, HIGH);
delay(200);
}
Codi 1er: Codi 2on: Codi 3er:
![Page 17: Introducció a la robòtica i exemples amb bitbloq · Introducció a la robòtica i exemples amb bitbloq Introducció a la robòtica: Parts del robot Components Arduino Bitbloq Exercissis](https://reader034.vdocuments.us/reader034/viewer/2022042208/5eac411a6c04fc1fcf4756cf/html5/thumbnails/17.jpg)
Què és el port de serie?
El port sèrie és el mitjà que té la teva placa controladora per comunicar-se amb un altre aparell com l'ordinador o el teu mòbil.
És molt útil per comprovar d'un cop d'ull el valor d'un sensor o una variable, veure l'estat de la teva programa i, en definitiva, corregir i entendre millor els possibles errors que aquest tingui.
Veure més a: http://diwo.bq.com/comunicandose-con-puerto-serie-bitbloq2/
![Page 18: Introducció a la robòtica i exemples amb bitbloq · Introducció a la robòtica i exemples amb bitbloq Introducció a la robòtica: Parts del robot Components Arduino Bitbloq Exercissis](https://reader034.vdocuments.us/reader034/viewer/2022042208/5eac411a6c04fc1fcf4756cf/html5/thumbnails/18.jpg)
Serial monitor/*** Included libraries ***/
# include < Softw areSerial.h>
# include < BitbloqSoftw areSerial.h>
/*** G lobal variables and function definition ***/
bqSoftw areSerial puerto_serie_0(0, 1, 9600);
[...]
/*** Loop ***/
void loop() {
if (digitalRead(sensor_infrarrojos_0) = = negre) {
apagar_leds();
puerto_serie_0.println("És negre ");
puerto_serie_0.print("negre = ");
puerto_serie_0.println(negre);
}
if (digitalRead(sensor_infrarrojos_0) = = blanc) {
encendre_leds();
puerto_serie_0.println("És blanc ");
puerto_serie_0.print("blanc = ");
puerto_serie_0.println(blanc);
}
puerto_serie_0.println("# # # # final del loop # # # # ");
delay(20);
}
Proj. bitbloq: https://goo.gl/t4LmBn