Hvordan kommer du i gang med IoT prototyping?

Device domain

Hvilke board er fordelagtige at vælge?

Når du skal i gang med IoT kan prototyping være en oplagt metode. Men hvilken platform skal du vælge?

MCU vs. SBC

Vi skelner mellem to typer af boards, Micro Controller Units (MCU, se billedet) og Single Board Computers (SBC).

Arduino board

En MCU er letvægtsudgaven af en computer, der indeholder hukommelse og processorkraft nok til at kunne foretage målinger og processere meget simple data. En SBC er en kraftigere sag, der også kan håndtere keyboard, mus og skærm sammen med (ofte flere) sensorer og aktuatorer.

Hvad skal man så vælge? Svaret afhænger af, hvad det er du skal arbejde med – både hvilke input du skal modtage, hvilke sensorer du vil bruge og hvilke data, der skal komme ud af dit system. Du kan starte med at arbejde med følgende designbeslutninger:

  • Bestem typen og antallet af perifere sensorer og udgangskomponenter du har brug for
  • Afgør hvilke datakommunikationsprotokoller, du skal bruge til kommunikation mellem enheden og eventuelle tilknyttede sensorer
  • Vælg om du har behov for at gennemføre beregninger og datahåndtering på enheden eller om du skal videresende dataene til behandling i skyen

Det er især det sidste punkt, som er med til at afgøre, hvorvidt der er behov for en MCU eller SBC. MCU’er kan som udgangspunkt ikke håndtere tung databehandling. En SBC er bedre egnet til dette. Databehandling på enheden er også kendt som edge computing.

Uanset hvilket scenario en IoT-løsning skal understøtte, så bør man dog altid vælge en prototypemulighed, der ikke begrænser videreudvikling. På den anden side ønsker man heller ikke at kaste for mange penge efter en prototype som måske aldrig bliver til noget. Med de moderne udviklingsboards er det nu muligt at vælge lige præcis det board, der kan løfte opgaven uden at gå på kompromis med økonomi og løbende udvikling i krav.

Et nærmere kig på de forskellige boards

Vi har foretaget en analyse af de ti mest gængse boards på markedet baseret på hvilke boards, der hyppigst fremkommer i søgninger efter development boards’. Blandt de ti har vi udvalgt tre MCU’er og tre SBC’er og giver vores bud på styrker og svagheder ved dem. Den fulde analyse af de 10 mest gængse boards kan downloades som pdf lige her. 

Sammenligning af tre udvalgte MCU’er

De tre MCU’er, vi har udpeget, har hver især deres styrker. De tre er blevet vurderet på en række parametre som vi mener er relevante for at skabe en god IoT-prototype. Figuren nedenfor viser de tre MCU’ers formåen. Jo større en flade enheden dækker, jo bedre er den på dét område.

Sammenligning af MCU'er

Arduino3 MCU'er

Arduino Uno er et af de meste kendte boards og kendetegnes ved at være billigt. Det er især kendt som et godt hobby board, men Arduino er også stærke i at have en udbyggetog velkendt platform, som kan bryste sig af at have et stort og stærkt community i ryggen. Arduino har også udvidet deres sortiment med flere forskellige boards, der blandt andet er dedikeret til forskellige kommunikations protokoller. Samtidig er hele platformen bygget på C++ hvilket er standardsproget, når man har med embedded software at gøre, og det gør det nemt at overføre protypesetuppet til produktshardware.

Particle ElectronParticle Electron ligner på mange punkter Arduino og har i bund og grund bedre specifikationer end Arduino, men prisen er også højere. Det har medført, at Particle Electron har en lidt lavere kendskabsgrad og herved et mindre community. Ligesom Arduino er Particles platform bygget op omkring C++ og er hermed et rigtig godt bud, og i mange henseender, med undtagelsen af prisen, et bedre board end Arduino.

Pycom

Pycom FiPy boardet er en nyere spiller på markedet, som har produceret et board, der er skræddersyet til at være et IoT udvikling. Det ses blandt andet ved at boardet indeholder hele fem forskellige kommunikationsprotokoller (WiFi, SigFox, LoraWan, Bluetooth og NB-IoT) og på den måde bliver boardet særdeles velegnet til IoT-udvikling. Pycom har endda lavet en web-platform, som kan bruges til at skabe forbindelse. Webplatformen er dog ikke færdigudviklet endnu, men potentialet for dette board til prototyper er meget stor. Ulemperne er den relative høje pris og så har Pycom baseret platformen på sproget MicroPython og derfor kræver det mere arbejde at gå fra prototype til produktionshardware.

Sammenligning af tre udvalgte SBC’er

De tre boards er vurderet efter samme parametre som MCU’erne.

SBC sammenligning

3 SBC'er

Raspberry PiRaspberry Pi er et stort og stærkt brand indenfor SBC’er og det skyldes først og fremmest den meget lave pris i forhold til deres konkurrenter. Det har ligesom for Arduino været med til at skabe et stort community omkring boardet, som gør det let tilgængeligt for hobbymanden/kvinden. Raspberry Pi har ligeledes end fordel, idet de har skabt deres eget Linuxbaserede styresystem, hvilket gør det nemt at udvikle apps og programmer til styring af boardet. Raspberry Pi er også et af boards som har kunne køre Microsofts styresystem Windows 10 IoT Core, der er designet til IoT løsninger.

DragonboardDragonboardet fra Qualcomm er et noget dyrere board end Raspberry Pi, men scorer højere på mange af parametrene. Og ligesom Raspberry Pi er det lykkes Qualcomm at tilbyde Windows 10 IoT Core som en del af de mulige styresystemer. Men det er ikke lykkes for Qualcomm at lave deres eget styresysem og skabe det community som Raspberry Pi har. Dette gør, at boardet er mere ukendt samtidig med at det altså hgar en højre pris, hvilket er en skam da boardet i mange henseender er bedre end Raspberry Pi.

Azure SphereDet sidste board vi har valgt at fremhæve, er Microsoft Azure Sphere, hvor der er tale om et board med stort fokus på sikkerhed. Boardet blev frigivet den 24-09-2018 og er dermed så nyt, at erfaringer med muligheder og ydeevne stadig er meget få. Der er dog ingen tvivl om, at dette er et udviklingsboard, der er værd at se nærmere på, hvis man ønsker at arbejde med Microsoftprodukter. Specifikationsmæssigt er boardet i middelklassen, men signalværdien og potentialet i at Microsoft lancerer et board er stort og det  er et tegn på den voldsomme interesse for IoT.

Hvilket board skal jeg vælge?

Der er ikke nogen one-size-fits-all for valg af hardware til IoT-projekter. Det er dog en god ide at vælge sin platform med omhu, da det kan spare tid og udgifter og sikre en nemmere overførsel af erfaringerne fra prototypen til selve produktionshardwaren. Der er ingen tvivl om, at de to mest populære boards: Arduino (MCU) og RaspberryPi (SBC), har opnået deres udbredelse ved at lægge et stort stykke arbejde i at etablere et community, hvor brugene kan finde hjælp til at opbygge prototyper. Brugerne kan skabe deres egen stejle læringskurve og komme hurtigt i gang – og det, som læres i prototypefasen, kan hjælpe os med at tage kritiske beslutninger om designet, når vi går i gang med at implementere IoT-løsningen.

Hent hele vores analyse af de ti mest gængse boards her.

Følg os på LinkedIn eller tilmeld dig vores nyhedsbrev for at få mere information om, hvordan kaastrup|andersen kan hjælpe dig og din organisation med IoT og digitalisering, men også servitization eller projektledelse.

Vil du vide mere?

Anton Kaastrup-Hansen

CTO
+45 70 27 77 19
Kontakt mig