Finite State maskin på en Arduino



I dag kommer vi att genomföra en finite-state maskin (FSM) på en Arduino. Detta kan du ställa in system med en exakt definierade beteende utifrån skilda stater. Du lär dig vad en finite-state maskin är och vad det är bra för.
I ett nötskal, kommer vi grafiskt modell en strömbrytare, generera kod från denna modell, genomföra vissa lim kod och köra det på en Arduino. Detta inlägg är därför mindre om själva projektet utan om utvecklingsmetodik bakom den. Du kommer att se hur lätt det är att modellera ditt system som en tillståndsdator och köra det på din Arduino. Och, naturligtvis, alla programvaruverktyg vi använder är gratis.

Vad du behöver:

  • En Arduino, en LED, en knapp, två resistorer - 220R och 1kR, rondellen
  • En dator med Windows, OSX eller Linux
  • Viss erfarenhet med C
  • Viss erfarenhet med Eclipse är användbart
Se Steg
Relaterade Ämnen

En liten te Timer (TTT) maskin för Arduino och ATtiny

TinyTeaTimmer (TTT) är en implementering för ett litet tillbehör som enkelt kan monteras och programmeras med hjälp av en strömbrytare, en knapp, 1 eller 2 lysdioder, en liten servomotor och en Arduino ombord eller en ATTiny processor.Du kan hitta fi...

Papper Man: en maskin skapad av Arduino och NFC.

Papper är en maskin som består av Arduino, NFC sköld, termoskrivare och en pappersmodell skal – Iron Man.Du kan direkt skickade meddelanden från din mobil till papper man tack vare NFC skölden, och papper man ska spotta ut av utskrift med termisk skr...

Arduino ändlig tillståndsmaskin och parallellbearbetning

En ändlig tillståndsmaskin är diagram används för att organisera aktiviteter för att styra flera insdustrial system (produktion, värmare, pump, transportörer...).Alla dessa sytems med stater (förknippas med en "åtgärd", dvs: start, kör, stoppa)...

Enkla självbalanserande Robot med Galileo Gen 2

Efter volontärarbete på den lokala mini Maker Faire, och att få en chans att spela med Intel Galileo Gen 2 Arduino styrelsen, var jag motiverad att hitta ett maker projekt för mig själv. Efter en snabb undersökning av alternativen och mina intressen...

Bop med FPGA ombord

Välkommen till Bop det med FPGA styrelsen Instructable,Projektet arbetar med CPE 133 på Cal Poly, San Luis Obispo. Detta projekt skapades av Ian Nielsen och Omri Nissan. Utanför koder var inblandade på olika platser och nämns i den slutliga rapporten...

DIY Tilt Sensor minne spelet

Hur man bygger en FPGA DIY minne spelet.Team projekt: Minne Blitz. Av: Bit för Bit ProductionsKim LarssonDana CarverMegan VanHumbeckDetta projekt är för våra ECE2220 Digital Logic system kurs vid University of Manitoba. Inspirerad av de handhållna sp...

Nexys3 LED Timer spel

Detta är en handledning för hur man gör timer spel. Timer spelet är inspirerat av den lätta arkadspelet, spelet där ett ljus rör sig längs en sträng av lampor och du försöker stoppa det röda ljuset att vinna ett pris. Detta spel är olika i att när du...

Arduino Mini CNC Plotter-maskin från dvd-enheter

I detta projekt kommer jag visa dig hur man enkelt bygga din egen billiga Arduino Mini CNC Plotter!Detta projekt är en uppdatering från min tidigare cnc, med bättre konstruktion och med mer precision.Jag bestämde mig att göra detta detaljerad guide a...

Hur man gör en Arduino Powered CNC-maskin

Stegvisa instruktioner om hur man bygger en låg kostnad CNC-maskin med en Arduino Uno!Steg 1: Fabricera en bas och x-axeln slädeRoller skate hjul kommer att användas att skapa x-axeln släden. En kombination av 2 in och 1 i stål slangar bildar basen a...

Arduino tända dimmer

Un système qui imite les cyklar du jour.Ett system för dagen ljus simulering med hjälp av RTC.Steg 1: IntroduktionCE-système va permettre d'imiter un spaken de soleil (LV) et un coucher de soleil (CO), une fois par jour. Cet appareil est destiné surt...

Quiz Game Controller med hjälp av "Ljus och ljud Buzzers" och Arduino

fara stil frågesport spel är favoriter för att skapa spänning och pedagogiska instruktioner samtidigt. Lärare, summer camp rådgivare och även industrin pedagoger hitta denna typ av spel för att skapa intresse och engagemang från deltagarna.Tanken bak...

Sallad för livet - Arduino 101 baserad automatiserad Controller för Hydroponics, Aeroponics, kretsloppsodling, Etc. Intellekten Curie

SAMMANFATTNINGEn enhet som kan användas till att styra upp till 4 olika hydroponiska/Aeroponic system på en gång. Enheten kommer att styra komponenter i systemet och meddelande till en LCD-skärm och tillåter användaren att anpassa inställningar via B...

Rube Goldberg bearbetar med maskin

Låt mig förklara maskinen är inte bara ett begrepp utan även nygamla av senaste teknik för att åstadkomma en ny uppgift. I våra kedjereaktion maskin har vi Arduino controller att driva en motor som flyttar ett ljus bredvid en sträng. Ljuset brinner s...

Hemautomation - lägga till reläer till Arduino

Hur du väljer reläer – handlar om makt.När du väljer ett relä för anslutning till din Arduino måste du övervägaen) makt (spänning och ström) vad du vill slå på och av ochb) makt (spänning och ström) krävs för att driva reläet (dvs. att vitalisera rel...

Gasbrännare Controller

jag är en homebrewer, att göra all säd extrahera öl.Jag håller på att automatisera min bryggeri, som jag gör bara för skojs skull, som automation inte är verkligen behövs på en process som tar 5 timmar och har ca tio minuter av verkligt arbete!Min br...

FPGA solpanel Optimizer

Solceller: Maximal irradians upptäcktSolceller konvertera ljus till elektricitet med hjälp av silikon eller några andra halvledarmaterial genom att absorbera fotoner med tillräckligt med energi för att slå elektronerna fria så att de kan flöda som en...

Fofoque-mig: Vox Populi--en motoriserad allmänheten system

Baserat på några tidigare arbete vi har gjort med megafoner i offentliga utrymmen, inbjöds mig och min kompanjon, Radamés Ajna, att delta i en utställning kallad multituden, curerad av Lucas Bambozzi och Andrea Caruso Saturnino.Utställningen byggde p...

Juni 2014 Bulid natt: LittleBits reglaget blinkar

Detta Instructable kommer att bli enklare än de andra littleBits bygganden från H3 Labs för denna bygga natt. Jag bestämde mig att markera Arduino programmering aspekten snarare än fysiska projektet.Det kräver endast några delar:Dator (att ladda skis...

Flera blinkande lysdioder i olika

I denna tutorial ska jag visa dig hur blinka flera lysdioder i olika takt på Arduino-liknande nämnder använder VIPER.Blinkar en LED är känd som "Hej världen av inbäddade enheter"... men med VIPER kan vi göra det roligare. Vi kan blinka många lys...