Firmata och Johnny-Five

Firmata

Firmata är ett protokoll för att kommunicera med microcontrollers (som t.ex. Arduino) från mjukvara i en dator. Protokollet kan implementeras in firmware (t.ex. Arduino sketcher) på vilken microcontroller som helst (men den bästa implementationen finns för Arduino just nu), samt i mjukvara på vilken dator som helst.

Läs mer om firmata

Om en dator och microcontroller som pratar firmata kopplas ihop med varandra kan de kommunicera och datorn kan styra microcontrollerns portar/pins och därmed all utrustning (LEDs, mikrofoner, sensorer, motorer etc) du kopplar till den.

Inga program behöver då specialkodas i det native språk microcontroller pratar. Allt som finns i dess firmware är firmataprotokollet.

Firmata-protokollet är lustigt nog är baserat på MIDI (Musical Instrument Digital Interface) – ett tidigt protokoll från 80-talet för att få datorer att prata med synthar och andra digitala musikinstrument.

Firmata körs normal sett över USB, dvs. är från början ej tänkt att köras trådlöst över WiFi.

Installera Firmata på Arduino Uno

  1. Ladda hem Arduino IDE
  2. Koppla in din Arduino via USB och se till att Arduino IDE-programmet kan kommunicera med den.
  3. Välj File -> Example -> Firmata -> Standard Firmata.
  4. Ladda upp den ”sketch”/programkod som öppnas till din Arduino.

VIKTIGT – FÖR WINDOWS-ANVÄNDARE

Om du använder Windows och har en Arduino Uno måste du hämta hem Arduion IDE 1.7.1.

Tyvärr är denna mjukvara lite beta fortfarande och du kommer när du har installerat eventuellt även att behöva flytta några filer i sketch-mapperna som Standard-Firmata-sketchen vill inkludera men som inte hittas.

Johnny-Five

Johnny-Five är en node.js-modul som är byggd ovan på en JavaScript-implementation av firmata. Modulen erbjuder många förenklingar ovanpå firmata. Istället för att behöva säga ”stäng av/sätt på ström på en viss pin” kan man direkt be LED:s att blinka, motorer att snurra i en viss hastighet, läsa av sensorer etc.

Johnny-Five gör det möjligt att på ett enkelt och lättförståeligt sätt i JavaScript via Node.js programmera vad en USB-ansluten microcontroller (t.ex. Arduino) ska göra.

Johnny-Five har även en utmärkt dokumentation.

Firmata över WiFi

På senare tid har de kommit allt fler lösningar för att koppla ihop datorer och microcontrollers som behöver prata firmata med varandra över WiFi, istället för USB.

Tyvärr verkar det än så länge inte finnas någon lösning för Arduino Uno WiFi (som flera av grupperna använder), vilket innebär att vi kan behöva ett extra chip med WiFi – Esp8266 kopplat till Arduinon.

0 votes