01: Blockly4Arduino

Blockly voor Arduino: programmeer je Arduino door gebruik te maken van eenvoudige blokken. Ideaal om te starten met Arduino als je nog niet goed weet wat programmeren is!

Selecteer de taal waarin je Blockly4Arduino wil gebruiken:

  1. Nederlandstalige Blockly 4 Arduino
  2. English Blockly 4 Arduino

Blockly4Arduino

Blockly4Arduino is ideaal voor niet-programmeurs om toch met een Arduino bord te kunnen werken. Neem de tijd om de basis te leren, en veel typische programmeerfouten eigen aan Arduino programmeren, zijn onmogelijk. Ingegno geeft graag ondersteuning aan iedereen die Blockly4Arduino wil gebruiken.

Wat ook interessant is, Blockly4Arduino is touch ready, en werkt dus ook op de tablet of smartphone.

Handleiding

Blockly4Arduino is nog in volle ontwikkeling. Een goede handleiding is degene welke Ingegno en De Creatieve STEM gebruiken voor de UGO workshops: UGO Arduino handleiding met Blockly4Arduino.

De basiswerking van Blockly4Arduino is als volgt:

  1. Open de cloud app Blockly4Arduino. Eenmaal geladen draait alles op je eigen computer in de browser. De snelheid hangt dus af van de snelheid van je computer. Gebruik Google Chrome voor de snelste ervaring, maar blockly4Arduino werkt ook in Firefox.
  2. Heb je eerder met Blockly4Arduino gewerkt? Druk dan refresh (F5) om de meest recente versie te hebben. Anders kan het gebeuren dat je met code uit het verleden werkt die op je computer opgeslagen werd. Blockly4Arduino is nog in volle ontwikkeling, enkel via refresh heb je de nieuwste versie.
  3. De interface heeft volgende elementen:
    01_start

    1. De canvas. Hierop sleep je blokken
    2. De blokken. Deze vind je in de linkerbalk. Klik op de naam van het type blok die je nodig hebt (Input, Functies, …), en klik dan op het blok om het te slepen naar de canvas
    3. De code. De Arduino code is in het rechterblok. Code die nieuw toegevoegd wordt door de laatste wijziging op de canvas zal oranje oplichten.
    4. Topbalk functies. In de topbalk heb je enkele functies. Je vindt een menublok met voorbeelden, de vuilnisbalk laat je toe alle blokken te verwijderen om te herbeginnen, daarna komt de opslagfunctie om je Arduino sketch op te slaan (bestandsextentie .ino), dan komt de opslagfunctie om je blokken op te slaan zodat je later kunt verder werken (bestandsextentie .xml), dan de laad functie om een blokkenbestand te laden die je eerder opgeslagen hebt.
    5. Tabbladen. In de topbalk zijn er ook 3 tabbladen.
      • De eerste is de blokken pagina met de canvas.
      • De tweede is de Upload tab. Klik erop. Je dient een login te maken bij codebender om vanuit de browser je code naar je Arduino te kunnen opladen.
      • De derde is de XML tab waarop je de blokkenstructuur kunt zien. Je kan hier blokken aan toevoegen (bv uit opgeslagen xml bestanden) die dan zullen verschijnen op de canvas. Voor geavanceerde gebruikers!
  4. Begin met uit de Componenten blokken een Arduino blok op de canvas te zetten:

    02a_uno

    Klik op het blauwe icoontje om het blok aan te passen. Sleep de pinnen die je nodig hebt voor je ontwerp van links naar rechts. Bv een digitale en analoge pin.

    02b_uno

    Daarna kies je de pinnen uit de menuselectie die je gaat gebruiken

    02c_uno

    Voeg nu de componenten toe uit de Componenten blokken die je gaat gebruiken.

  5. We nemen het voorbeeld van een knop die als ingedrukt een LED laat oplichten. Van de Arduino UNO worden dan twee digitale pinnen gebruikt, een als input (de knop) en een als output (de LED). Voeg een Arduino uitvoer functie toe aan de canvas, en dan de blokken zoals weergegeven hieronder:

    03_sketch

    Klik op de Upload tab, kopieer de arduino sketch uit de rechterkolom naar het codebender scherm, en druk op Upload in het codebender scherm. Proficiat, je eerste sketch die je via Blockly4Arduino gemaakt hebt!

  6. Algemeen: Sleep blokken om je Arduino programma te maken uit de linkerkolom. Extra voorbeelden komen binnenkort. Ondertussen kun je bovenaan op Voorbeelden knop drukken om de code te zien die nodig voor enkele basiselementen, alsook voor de LedUpKidz kit van Ingegno.
  7. Je kan blokken kopiëren (CTRL+C) en plakken (CTRL+V) om snel dubbels te maken. Gebruik de vuilbak rechts onder om blokken te verwijderen op een tablet.
  8. Wil je stoppen om later verder te doen? Sla dan lokaal een backup van je werk op via de knop XML Opslaan. Je kan dan later of op een andere computer via XML Laden de code waaraan je werkte terug openen. Blockly4Arduino slaat automatisch ook je werk op in de browser, als je niet te lang wacht om verder te werken zal je code dus automatisch terug openen (als je cache van de browser leeg maakt is de code weg, schoolcomputers doen dat vaak automatisch!).
  9. Je kan ook de Arduino code downloaden via de Arduino Code Opslaan knop.

Basiscursus als presentaties

Voorbeeld blok sketches

Als je Arduino kent, ken je waarschijnlijk al de standaard Arduino voorbeelden. We tonen hier hoe je deze voorbeelden kunt maken via Blockly4Arduino. Zie de Arduino website voor de elektrische componenten die je nodig hebt en de verbinding op een schakelbord.

De Basis

Digitaal

  • Blink Zonder Delay: Laat een LED knipperen zonder de delay() functie te gebruiken. Gebruik dit als je bv LED knipperen wil terwijl je ook een servo motor beweegt.

UGO & TESS

Handleiding voor de blokkencode door een UGO of TESS interactieve robot te maken. Hierbij leer je met blokken Arduino programmeren.

Ingegno LedUpKidz

De Ingegno LedUpKidz kun je programmeren via Blockly4Arduino. Begin met het basisschema, en onderzoek hoe je het kan aanpassen om je persoonlijke effect te maken!

  • LedUpKidz Basis. Het basisschema om je effect te programmeren op de prototype doos. Voor je oplaad naar de LedUpKidz hanger, dienen de pinnen de juiste nummers te krijgen!

Off-line gebruik

Geen of slecht internet? Je kan Blockly4Arduino ook lokaal gebruiken. Download de zip van het Blockly4Arduino github project, en unzip het op je PC of intranet. Je kan Blockly4Arduino nu uitvoeren door te klikken in je file explorer op het bestand Blockly4Arduino/index.html.

Ontwikkeling, Andere blokken

Wil je helpen bij de ontwikkeling van Blockly4Arduino? Of eigen blokken toevoegen? Zie de info op github: Blockly4Arduino en onze versie van ardublockly.