18
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-2 Projectes extrets de: http://diwo.bq.com/category/construye Adaptació feta per communia.org per les extra-escolars 2016-17 de Fablab Terrassa

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

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

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

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

"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
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
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
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

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

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

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

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

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

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

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

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 14: 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

Controlem el LED amb un sensor IR

Proj. bitbloq: https://goo.gl/CeJ3md

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

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

/*** 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

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

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