introducció a la robòtica i exemples amb bitbloq · introducció a la robòtica i exemples amb...
Post on 30-Apr-2020
6 Views
Preview:
TRANSCRIPT
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
"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
ARDUINO / PLACA CONTROLADORA (ZUM BT-328)
Programació per blocshttps://duckduckgo.com/?q=scratch+bitblock+blockly+app+inventor+&t=canonical&iax=1&ia=images
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
QUE ES FACI LA LLUM!!programem un led
http://diwo.bq.com/y-la-luz-se-hizo-programando-leds-en-bitbloq-2
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
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
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
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
Millorem el programa: variables i funcions
1 2
3
1
2
3
Proj. bitbloq: https://goo.gl/fFZtud
/*** 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:
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/
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
top related