Scratch

O alumnado de 2º da ESO está aprendendo a programar con Scratch, tomando como eixe argumental os videoxogos.

Comezamos programando todos un mesmo videoxogo inspirado no clásico Arkanoid.

Aínda que é moi básico, serve para introducir e explicar moitos elementos:

  • Obxectos e disfraces
  • Fondos
  • Control do protagonista a través do teclado
  • Movemento autónomo de obxectos
  • Interacción entre obxectos
  • Direccións de movemento
  • Variables e a súa utilización
  • Marcadores
  • Xogabilidade

Cando rematamos co xogo base, propóñolles que realicen diferentes melloras:

  • Introdución de sons ao ter lugar determinadas accións
  • Cambios de disfrace nos obxectos como consecuencia de eventos
  • Incorporación de novos obxectos que engaden elementos ao xogo (por exemplo, obxectos que aumentan/diminúen a puntuación)

Por último, o alumnado terá que deseñar e programar o seu propio videoxogo a partir de todo o aprendido. Todos eles deben incorporar un elemento común que cada programador empregará como desexe. Nesta ocasión, trátase dun tiburón.

LCD + arduino con mBlock

Esta entrada parte do magnífico, interesante e orixinal traballo de Dani Sanz (gracias por compartir!!!) e en particular, do reto #11 .

O control dunha pantalla LCD con arduino é unha tarefa sinxela que pode facerse dende o IDE empregando as librarías adecuadas. Agora tamén é posible controlala dende mBlock, o entorno de programación baseado en Scratch que MakeBlock desenvolveu para os seus robots.

Se queres ter unha descrición de todo o proceso coa explicación detallada de cada paso, podes consultar a entrada que escribín no foro de MakeBlock. Aquí farei unha versión simplificada.

O primeiro que terás que facer será descargar a extensión correspondente. A miña recomendación é que non uses LCD with I2C interface, dispoñible no administrador de extensións de mBlock, senón que descargues NewLiquidCrystal_1.3.4 dende GitHub. Esta librería vaiche ofrecer 8 direccións para o I2C fronte ás 3 que permite a primeira (NOTA: se non sabes que dirección emprega o teu módulo I2C, podes determinala co programa I2C_scan).

Abre mBlock, menú Extensiones-Administrar Extensiones e fai clic en Añadir Extensión. Ábrese unha ventá como a da imaxe e tes que seleccionar zip file para engadir o arquivo que acabas de descargar.

Cando fas clic en Abrir para engadir a extensión, ábrese o navegador cunha pestana para informar dunha incidencia. Péchaa e engade novamente a extensión se é necesario.

As extensións engadidas non aparecen inmediatamente na ventá Administrar Extensiones, senón que é preciso agardar un pouco e mesmo pechar a ventá e abrila de novo. A extensión que estamos buscando é LCD I2C Pack. Terás que seleccionala e facer clic en Bajar. Na imaxe aparece xa instalada no meu equipo.

Podes comprobar se xa a tes instalada porque a extensión aparece na área de programas de mBlock. Neste caso aparece o círculo en vermello porque non teño conectada ningunha placa.

Tamén podes verificar que a extensión está instalada indo a:
C:\Users\o_teu_usuario\AppData\Roaming\com.makeblock.Scratch3.4.10\Local Store\mBlock\libraries

e vendo que tes unha carpeta co nome LCD I2C Pack.

Abre a carpeta C:\Program Files (x86)\mBlock\Arduino\hardware\arduino\avr\libraries e comproba se existe unha carpeta dentro dela co nome NewliquidCrystal. Se non é así, descomprime o arquivo NewliquidCrystal_1.3.4-master.zip que descargaches ao comezo, abre a carpeta NewliquidCrystal_1.3.4-master e copia a carpeta NewliquidCrystal que encontrarás dentro dela. Para finalizar, pégaa en C:\Program Files (x86)\mBlock\Arduino\hardware\arduino\avr\libraries

Agora xa podes controlar unha pantalla LCD co teu arduino programando dende mBlock.

Xogos con Scratch

Este libro de Jon Woodcock é unha proposta interesante para as bibliotecas escolares. De maneira totalmente visual, e partindo de cero, esta guía introduce os conceptos fundamentais de Scratch a través da realización de 8 videoxogos.

Pong con Scratch

Estes días o alumnado de 2º da ESO debe crear un videoxogo usando Scratch, por iso recurpero esta entrada do ano pasado.

Seguro que coñeces o Pong, un xogo integrado nas primeiras videoconsolas dos anos 70. Sabes que podes empregar unha placa de arduino e o entorno de prgramación de mBlock para realizar a túa propia versión? Os xogadores da miña móvense utilizando potenciómetros, como no xogo clásico.

Podes tomar o meu como base e engadirlle extras como a opción de modificar a lonxitude dos xogadores ou a velocidade da bola.

Pong con arduino

Seguro que coñeces o Pong, un xogo integrado nas primeiras videoconsolas dos anos 70. Sabes que podes empregar unha placa de arduino e o entorno de prgramación de mBlock para realizar a túa propia versión? Os xogadores da miña móvense utilizando potenciómetros, como no xogo clásico.

Podes tomar o meu como base e engadirlle extras como a opción de modificar a lonxitude dos xogadores ou a velocidade da bola.

Extensión de Scratch para arduino

Scratch para arduino é a extensión en fase de proba que podes atopar en Scratch X e que che permitirá controlar a túa placa de arduino a través do navegador.

Deixo as instrucións para a súa utilización: (fai clic aquí se queres ver a entrada orixinal pero a ligazón para descargar o plugin está rota)

Actualiza Firmata no IDE de arduino

captura 160719_473

 

Abre StandardFirmata e cárgao na placa que vaias usar

captura 160719_474

 

Descarga o plugin para o navegador

Fai clic aquí para descargar o plugin e execútao para a súa instalación. Este plugin serve para Firefox e en principio, para calquera navegador diferente a Chrome. Existe un plugin para Chrome pero comenta o autor que de momento non funciona correctamente.

 

Executa a extensión en Firefox

Fai clic aquí para acceder á extensión de Scratch para arduino pero asegúrate de que se abre cun navegador diferente a Chrome, por exemplo, Firefox. Terás que permitir a execución dos plugins.

Se todo é correcto, terás luz verde na sección More Blocks e poderás programar a túa placa de arduino.

captura 160719_478

 

mBlock + arduino + joystick

mBlock é o entorno de programación pensado para controlar o robot mBot. Ademais, pode utilizarse para programar placas de arduino e interaccionar a través delas cos obxectos que creamos en mBlock.

No seguinte vídeo podes ver como utilizar un joystick para mover unha nave de mBlock sobre o escenario de xogo. É só unha proba de concepto pero ten todos os elementos básicos dun xogo, incluído o marcador. Anímaste a melloralo?