Mjukvaruutveckling
Tar processorerna över?
I nästan all elektronik idag sitter det en eller flera mikroprocessorer, och vi ser att mer och mer av elektronikprojektens funktionalitet läggs över i mjukvaran. Det beror bland annat på att processorerna har blivit snabbare, billigare och innehåller allt fler periferifunktioner som t.ex. USB, minne mm. Men även på att moderna produkter oftast kräver goda användargränssnitt och förmåga att kommunicera mot omvärlden. Det innebär att ett elektronikprojekt till en betydande del består av programmering.
Fördelar med funktionalitet i mjukvara
- Ej låst till en implementering, man kan ändra algoritmer, lägga till funktionalitet mm.
- Möjligt att enkelt införa uppdateringar, även för slutkund
- Man kan ha samma hårdvara för olika produkter, skillnaden kan vara i mjukvara
- Användargränssnitt och kommunikation nästan omöjligt att implementera utan mjukvara
- Svårare att kopiera designen för utomstående
Nackdelar
- Prestandan underlägsen en ren hårdvarulösning i extrema fall.
Processorer i olika skepnader
Processorn används oftast i form av en microcontroller då denna även innehåller önskade periferienheter och minne. Om hög databehandlingsprestanda är nödvändig så kan en signalbehandlingsprocessor (DSP) användas. Om hårdvaran innehåller en FPGA så är det möjligt att välja en FPGA med inbyggd mikroprocessor.
Användargränssnitt
Inbyggt användargränssnitt
En större maskin eller utrustning har ofta ett användargränssnitt baserat på en inbyggd display eller monitor. Manövrering sker med knappsats eller direkt på touch-skärm. I vissa fall kan det vara enklast att sköta utrustningen från en tillkopplad PC, som då kan köra ett program utvecklat i .NET.
Fjärrstyrning
Många maskiner eller utrustningar är för små för att man ska få plats med display och då är en fjärrstyrning bättre. Det kan också vara så att utrustningen är placerad på ett sådant sätt att direkt åtkomst är omöjlig. I dessa fall är en fjärrstyrning lämplig. Man kopplar upp sig trådlöst direkt till enheten, eller via internet. Se också Internet Of Things i praktiken. Exempel på fjärrstyrningslösningar:
- Appar i Android (Java), Iphone & Ipad (Objective-C)
- PC program för Windows (Visual Studio C#)
- Via en websida som kör vanlig html eller Java.
Slutsats
Vår erfarenhet är att funktionalitet bör implementeras i mjukvara där så är möjligt. Ta gärna kontakt med oss för ett förutsättningslöst möte där vi tillsammans kan planera snabbaste vägen i mål med just ditt projekt!