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) några av dem är "ville" eller sagt "stable" andra "oönskade" eller instabil. Ändlig stat maskin metoden eller diagram organiserar endast stabila stater. När en utlösare eller en övergång är sant (dvs: sensor ON, knappen sköt), det tidigare tillståndet är avstängd och följande staten är påslagen.

För information:

http://en.wikipedia.org/wiki/finite-state_machine

Andra diagram har nästan samma igång: Moore machine, mjölig maskin, SFC diagram (GRAFCET i franska).

I detta instructable kommer jag att tala om för att genomföra en tillståndsdator i en arduino uno med SM-biblioteket. Detta bibliotek kan du köra "concurent staterna" eller parallella uppgifter (realtid maskiner): kan du styra många olika maskin eller oberoende system med endast en mikrokontroller. Det är mycket kraftfull och behöver inte alltför många kodrader.

I min tidigare instructables jag använder ett enkelt sätt att köra en ändlig tillståndsmaskin på min arduino tända dimmer (utan någon särskild bibliotek) men jag tror det är omöjligt att köra concurent stat och det är mycket svårt att använda nödstopp (nödvändigt och nyttigt för säkerhet i indstrial).

Redaktör jag använde, ritar diagram med SYSML eller UML 2 regler och gör finites stater maskiner som en Moore/Mealy blandning.

Jag genomfört 3 "riktiga" exempel av tillståndsdator att utforska de flesta av funktionerna i biblioteket SM.h.

PS: Denna metod är lämplig, vanliga och välkända för personer som arbetar inom automation, många dator utvecklare inte gillar det. Se denna artikel:

http://www.skorks.com/2011/09/Why-Developers-Never...

Se Steg
Relaterade Ämnen

Hemautomation med Arduino... Och JavaScript!

I detta instructable (mitt första som faktiskt), jag hjälper dig att göra automatisering i hemmet med Arduino, ja, inte så ny... Men vi kommer även JavaScript, med Node.js och en awesome bibliotek att interagera med Arduino heter johnny-fem (Ja, som...

Kör två Nixie rör med en Arduino via ett skiftregister och två SN74141s.

Nixie rör är verkligen göra sval sett och blir ganska populär för sina "retro" utseende. Även om det finns ett antal tutorials ute på med nixie rör och några fina färdigförpackade enheter (se dessa trevliga sådana från ogi lumen och ArduiNIX) in...

Kodgenerator för anpassade Android/Arduino menyer att slå Arduino utgångar på och av. Android/Arduino för nybörjare. Absolut ingen programmering krävs

Uppdatering: användare frågade för undermeny support. pfodApp alltid stött sub-menyerna men jag har lagt undermenyer till pfodDesigner. Den instructable Design A Custom menysystemet visar hur du använder pfodDesigner för att bygga en meny med underme...

Arduino Nano: BMP180 barometertryck och temperatur I2C 2 X 16 LCD uppvisning med Visuino

BMP180 är en mycket populär temperatur och barometriskt tryck Arduino kombinationsgivaren. Jag har redan gjort Instuctable med BMP180. Ett antal människor frågade men hur du kan ansluta en annan I2C enhet till samma I2C buss som BMP180. Äntligen har...

Android Arduino Bluetooth HC-05 - kontrollera Arduino över röst och knappar i App

Hej detta instructable är om Android - Arduino anslutning och kontrollera Arduino över röst och knappar i Android App, ha roligt att göra det och låter oss veta hur du gjorde och några förslag @ micky.patel41För vår Android App BlueUino i Play Storeh...

Arduino rfid läsa och skriva på lcd

Jag kommer att visa dig hur man gör arduino rfid läsa och skriva på lcdSteg 1:Hej du!Idag kommer jag visa dig hur man gör arduino rfid läsa och skriva på lcd. Ladda ner koden och ladda det på arduino det ingen spelar roll häxa en men jag föredrar uno...

Hur du byter en Arduino utgång på och bort från din Android mobil. Arduino för nybörjare

Uppdatering: Se Android/Arduino för nybörjare - Design anpassade Android menyer att slå Arduino utgångar på och av. Absolut No programmering krävs för ett alternativ som inte kräver någon programmering alls.Hur nybörjare kan växla en Arduino utgång p...

Arduino Modbus RTU Master och PLC Panasonic FPX C14R

Denna gång har jag vidarebefordrat Arduino med Panasonic PLC och jag kollade Arduino användbart i industriområdet direfencia tidigare tutorials jag har testat båda enheterna kommunicerar via RS - 232.Sammanfattning1. arduino skickas via modbus ADC vä...

En Arduino infraröd kontrolleras och hinder skatteundandragande Robot

Hej alla,Detta Instructables är uppdelad i två faser, vilket gör den lämplig för både nybörjare och mellanliggande robot designers.Den första fasen omfattar användningen av arduino nano ombord endast som registeransvarige. Med detta ska vi bygga en r...

Arduino - marsvin automatisk mat och vatten dispenser

Idén: att bygga en automatisk mat (två typer av livsmedel) och vatten dispensering system för mina marsvin med en Arduino Mega 2560 ombord.Nödvändiga komponenter:-1 x Arduino Mega 2560-1 x motor sköld – jag använde en gammal version av Adafruit Motor...

Arduino Nano: DHT11 temperatur och luftfuktighet visuella instrumentering med Visuino

DTH11/DTH21/DTH22 och AM2301 är mycket populära kombinerade temperatur och luftfuktighet Arduino sensorer.Jag har redan gjort en Instructable om hur man använder dem och skicka textinformation för temperatur och luftfuktighet över seriell Port.I dett...

Arduino kontrollerade LED stol och spelsystem

Målet med detta projekt var att lära sig använda elverktyg och genomföra programvara med det. Detta delades i tre delar: The LED Strip kontrolleras av en Arduino, Rasberry PI systemet ansluten till en monitor, och byggnaden av stolen där lysdioderna...

Arduino avstånd Display och larm

Detta är min första tutorial på därför om du hittar något fel eller om om koden kan förbättras föreslå vänligen. Detta projekt är inspirerad av bil fordon Backup Monitor parkering stöd System. Detta kommer att Visa avståndet samt höja ett larm om den...

Arduino ljus efter Robot och undvika

Detta är en smiple som följer eller undvika ljus.Jag gjorde denna simulering Proteus 8.3 pro.Komponenter som krävs:-1) Arduino uno.2) 3 LDR.3) 2 dc redskap motorer.4) en Servo.5) tre 1 k motstånd.6) en H-Bridge l290D7) en på & Off knapp [för förändra...

Arduino Lockbox med magnetventil och RFID & anpassad hårdvara

Låt oss göra en lockbox! Vi gick över de viktigaste punkterna i detta projekt i Arduino kontrollerade kryssrutan Lås med magnetventil och RFID, men en massa människor lämnades känsla som vi inte spendera en tillräcklig mängd tid med alternativ för an...

Nybörjarguide till att bygga Arduino robotar med Bluetooth och Android

i den här guiden vi gå mot att skapa en Arduino robot som kan styras via bluetooth med en Android-telefon/tablett. Detta är en Nybörjarguide som kommer att kort gå över ledningar och programmering din robot.Steg 1: Bygga lista... Följande är en lista...

Arduino Zero DAC översikt och vågform Generator exempel

I detta Instructable tar vi en titt på digital till analog omvandlare (DAC) på Arduino nolla. Vi kommer att titta på ett enkelt exempel hur du använder DAC och sedan ska vi titta på ett mer komplicerat exempel som förvandlar DAC i en pseudo vågform g...

Arduino-Datalogger med temperaturgivare och fotomotstånd

i detta projekt som jag kommer att skapa en enkel Datalogger med min Arduino och en Ethernet shield.Jag kommer att använda ett fotomotstånd och en temperaturgivare och alla uppgifter kommer att lagras i ett micro SD-kort.Tanken är att du kan tillämpa...

Hur du använder en Nokia 5110 84 X 48 LCD uppvisning med din Arduino (det är enkel och billig!)

Det är billigt och enkelt att lägga till en 84 X 48 LCD till din Arduino projekt. Dessa Nokia 5110 är överskottet från Nokiatelefoner av de sena 90-tal. Tech är gamla, gör det en fantastisk bakgrundsbelyst display för din Arduino projekt. Det finns m...