Ontwikkelborden

Wat is een ontwikkelbord?

Om te beginnen moeten we eerst duidelijk vaststellen wat bedoeld wordt met een ontwikkelbord en hoe het verschilt van een SBC (single-board computer). Een ontwikkelbord wordt meestal gemaakt door een fabrikant van een microcontroller om de functies te benadrukken (hoewel de term nu ook vaak wordt gebruikt voor andere soorten componenten). Een microcontroller is een geïntegreerd circuit dat een processor, wat RAM, flash-opslag en IO-functionaliteit bevat, zodat hij ook met de “echte wereld” kan communiceren. Hij functioneert in feite als een miniatuurcomputer in één enkel pakket, met als doel ontwikkelaars een handige manier te bieden om ermee te werken en externe componenten aan te sturen, zoals lampen, kleine motoren, enz. Een SBC biedt deze functionaliteit ook, met als belangrijkste verschil dat de CPU, het RAM en de opslag elk in afzonderlijke IC's op het bord zijn ondergebracht, en dat er interfaces zijn voor aansluiting op een toetsenbord en/of beeldscherm.

De microprocessor op een SBC vereist een besturingssysteem, terwijl een microcontroller wordt beheerd met behulp van een geïntegreerde ontwikkelomgeving (IDE) van de fabrikant. De hedendaagse ontwikkelborden bevatten vaak een microcontroller die niet zozeer als doel heeft om de functies van de microcontroller zelf te demonstreren, maar die van gekoppelde sensoren of andere geïntegreerde circuits. Deze worden "demonstratieborden", "evaluatiekits" of, indien ze zijn samengesteld om onderdelen te verzamelen voor een tastbaar doel, "referentie-ontwerpen" genoemd.

Sommige borden zijn niet primair bedoeld om hardware te ontwikkelen, maar om softwareontwikkelaars toegang te verschaffen tot reële gegevens voor het creëren en het verfijnen van de algoritmen die nodig zijn voor toepassingen op het gebied van AI en machine learning. Hoewel ze misschien niet voldoen aan de oorspronkelijke definitie en het doel van een "ontwikkelbord", worden ze nu collectief gezien als een verwijzing naar elk stuk hardware dat kan worden gebruikt bij de ontwikkeling van hardware en/of software van nieuwe elektronische producten.

Verleden

Het eerste microcontroller-ontwikkelbord dat de aandacht trok van de engineering-gemeenschap verscheen in 2006. Dit prototypingplatform, dat later bekend werd als Arduino (Figuur 1) werd positief ontvangen door een nieuwe categorie ontwerpers op het gebied van elektronica, waaronder liefhebbers, hobbyisten en doe-het-zelvers. Arduino legde de basis voor het commerciële succes van latere SBC's en op microcontrollers gebaseerde platforms en werd in 2008 opgevolgd door BeagleBoard, dat technici een goedkoop en door de gemeenschap ondersteund open-source ontwikkelplatform bood. In 2012 kwam de Raspberry Pi op de markt, de eerste single board computer. Deze SBC werd, net als Beagleboard, speciaal ontworpen als een educatief platform bedoeld om studenten een goedkope manier te bieden om programmacodes te leren schrijven. Dankzij zijn grote aantrekkingskracht trok de Raspberry Pi een veel breder publiek dan alleen studenten en werd snel omarmd door zowel amateurhobbyisten als professionele technici. 

 
Arduino ontwikkelborden
Figuur 1: Arduino microcontroller-ontwikkelbord. (Source: Shutterstock)

Heden

Vandaag de dag zijn er twee hoofdcategorieën SBC's - merkgebonden en open-source. Merkgebonden SBC's zijn doorgaans ontworpen voor gebruik in eindtoepassingen en worden onderworpen aan dezelfde tests en kwaliteitsborging als andere eindproducten. Ze zijn ofwel geïntegreerd in elektronische apparatuur of geïnstalleerd in een kast. Open-source SBC's bieden gebruikers toegang tot het hardware-ontwerp, de lay-out en alle benodigde broncodes. Op deze manier kunnen ze snel en gemakkelijk leren hoe de hard-/software werkt en het ontwerp vervolgens aan hun eisen aanpassen.

De hedendaagse ontwikkelborden en SBC's worden geleverd met een grote verscheidenheid aan processors. Deze variëren van op X86 gebaseerde types in de traditionele pc-sferen (AMD en Intel) tot ARM-processors voor industriële en mobiele toepassingen. Linux en zijn afgeleiden (Ubuntu, Fedora, Debian, enz.), Android en Windows CE zijn de meest gebruikte besturingssystemen op SBC's. Microcontroller-ontwikkelborden hebben geen besturingssysteem nodig en worden geprogrammeerd via een door de fabrikant geleverde IDE. Microcontroller-ontwikkelborden en SBC's zijn beide uitgerust voor draadloze connectiviteit (wifi, bluetooth) en de meest recente audio- en video-interfaces. Dit betekent dat sommige SBC's nu functies hebben die gelijkwaardig zijn aan die van veel pc's en tablets.

Toekomst: Ontwikkelborden worden het eindproduct

Van oudsher creëerden fabrikanten ontwikkeltools met de bedoeling deze te gebruiken als marketingsteun om de kans op verkoop van hun microcontrollers aan potentiële klanten te vergroten (in de industrie vaak "Design-in" genoemd). Zij hoopten dat door de tijd die een ontwerper besteedt in een laboratorium aan de vervolmaking van een onderdeel te minimaliseren en door de toegang tot en het onderzoek naar de functionaliteiten te vereenvoudigen, de kans groter zou zijn dat hij voor zijn productprototyping voor hun microcontroller en bijkomende onderdelen zou kiezen, wat uiteindelijk zou leiden tot meer bestellingen in het geval van massaproductie. Voor producten waarbij het verschil in technische specificaties tussen onderdelen van verschillende leveranciers verwaarloosbaar is, is dit een voorzichtige aanpak. Deze strategie kent echter ook een keerzijde. Sommige fabrikanten werden in bepaald opzicht het slachtoffer van hun eigen succes. Zij realiseerden zich dat ze de hoeveelheid werk die een ontwerper aan zijn product besteedt moeten blijven verminderen. Het ontwikkelbord is hierbij de belangrijkste onderscheidende factor geworden. Dit geldt vooral voor producten die in grote lijnen vergelijkbaar zijn met die van hun concurrenten.

De verwachtingen van ontwerpers zijn zodanig gestegen dat zij, zelfs voor onderdelen met een duidelijk aanwijsbaar concurrentievoordeel (bijvoorbeeld qua vermogen of snelheid), nog steeds veronderstellen dat de bijbehorende ontwikkelborden plug-and-play toegankelijk zijn.

Fabrikanten hebben hun waardevoorstel verder verbeterd door referentie-ontwerpen aan te bieden, bestaande uit een microcontroller en andere geïntegreerde circuits (meestal sensoren). Aanvankelijk waren deze bedoeld als leidraad voor de manier waarop apparaten met elkaar konden worden verbonden om de elektrische functionaliteit van een eindproduct te emuleren, waarbij weinig aandacht werd besteed aan de vormfactor, de grootte van het ontwerp of de produceerbaarheid. Sommige fabrikanten hebben hun referentie-ontwerpen echter naar een hoger niveau getild om volwaardige prototypen en zelfs volledig levensvatbare producten te creëren.

De HSP (health sensor platform) referentie-ontwerpen van Maxim Integrated (nu onderdeel van Analog Devices) kunnen worden gebruikt als voorbeeld om deze evolutie in kaart te brengen. De eerste versie van deze referentie-ontwerpen was een klein ontwikkelbord met een assortiment sensoren (temperatuur, druk, versnellingsmeter, biopotentiaal, enz.). Het bord was uitermate geschikt voor gezondheids- en fitnesstoepassingen en configureerbaar met een microcontroller. Zijn opvolgers, HSP2.0 en HSP3.0, hadden een vormfactor die het mogelijk maakte om ze om de pols te dragen en lijken sterk op andere, op de markt verkrijgbare draagbare apparatuur (figuur 2).

Figuur 2: De HSP3.0 van Maxim Integrated

Dit stelde ontwikkelaars in staat om de functionaliteit van hun sensoren in reële scenario’s te evalueren. Belangrijk hierbij was dat deze ontwerpen softwareontwikkelaars vrije toegang verschaften tot sensormetingen (informatie die niet gemakkelijk toegankelijk is bij andere draagbare gezondheids- en fitnessapparatuur). Het doel van deze aanpak was om algoritmen voor AI en machine learning te ontwikkelen die waarde zouden toevoegen aan de toepassing.

Door te laten zien hoe hun hardware de toegang tot gegevens vergemakkelijkt, hoopte Maxim dat productontwikkelaars m.b.t. hun sensoroplossing zouden kiezen voor enkele (of alle) IC's. Maxim breidde deze aanpak zelfs uit tot de ontwikkeling van de MAX HEALTH BAND (pols) en MAX ECG MONITOR (borstband), beide speciaal ontworpen en samengesteld als draagbare gezondheids- en fitnessapparatuur. Hoewel het niet de bedoeling was om ze op de consumentenmarkt aan te bieden, konden bedrijven een overeenkomst met Maxim sluiten om deze producten onder hun eigen merknaam uit te brengen in ruil voor een royaltybetaling.

Het op deze manier aanbieden van een volledig functionerend product waarbij al het ontwikkelingswerk al is gedaan, heeft een potentiële aantrekkingskracht op een nieuwe en bredere niet-technische zakelijke klantenkring. Nordic Semiconductor’s Thingy:91 is een ander voorbeeld van een ontwikkelingsplatform waar de hardware bijna een bijkomstigheid is geworden van de taak om ontwikkelaars toegang te verschaffen tot de gegevens die zij nodig hebben om de software en algoritmen te ontwikkelen waarmee de intrinsieke waarde van de hardware kan worden gerealiseerd (maar waardoor zij ook de voor de hand liggende keuze worden voor gebruik in nieuwe productontwerpen die gebruik maken van deze algoritmen). Waarschijnlijk zullen in de toekomst nog meer fabrikanten voor deze aanpak kiezen.

Toenemend gebruik van ontwikkelborden in industriële producten

Het aanpassen van ontwikkelborden en SBC's voor gebruik in commerciële producten komt steeds meer voor, maar een andere opkomende trend is hun gebruik in toepassingen met een lager volume, maar een hogere waarde - industriële eindproducten, zoals PLC’s (Programmeerbare Logische Controllers) (figuur 3), waarvoor strengere normen gelden dan voor hun commerciële tegenhangers.

Programmable Logic Controller
Figuur 3: Programmeerbare Logische Controller. (Source: Shutterstock)

Testborden voor industriële toepassingen

Veel van de huidige SBC's zijn per definitie volledig geverifieerde ontwerpen geworden omdat de onderdelen die ze bevatten oorspronkelijk werden ontwikkeld voor gebruik in eindproducten. Ze zijn derhalve getest en gecontroleerd op kwaliteit. Dit komt ook doordat open-source ontwerpen voortdurend worden beoordeeld door een leger van competente ontwerpers en programmeurs die de borden en de software die ze gebruiken updaten en evalueren.

Het testen van SBC-borden wordt nu uitgevoerd door hoogwaardige ontwerpbureaus en productiebedrijven. De borden worden onderworpen aan dezelfde strenge kwaliteitscontrole als alle andere eindproducten, waardoor ze zelfs in aanmerking komen voor een CE- of FCC-certificering. Deze teststroom kan eenvoudig worden uitgebreid om aan de eisen van industriële producten te voldoen.

Anderzijds worden door fabrikanten of derden geleverde microcontroller-ontwikkelborden, die gewoonlijk ook geschikt zijn voor gebruik in commerciële producten, doorgaans niet aan dezelfde strenge testnormen onderworpen. Dit betekent dat fabrikanten ze momenteel (in hun huidige vorm) niet aanbevelen voor onmiddellijk gebruik in deze toepassingen.

Hoewel sommige borden zijn uitgerust met hoogwaardige industriële componenten, zijn ze meestal slechts van commerciële kwaliteit. Ze zijn specifiek ontworpen om te functioneren bij kamertemperatuur. Prototypes van ontwikkelborden worden gewoonlijk gedurende enkele dagen of weken getest bij kamertemperatuur, maar dit verschilt per fabrikant, omdat er geen vaste normen zijn. De belangrijkste kwaliteitseis voor fabrikanten is dat hun borden betrouwbaar functioneren bij een gangbare omgevingstemperatuur. Daarom moet de consument zich ervan bewust zijn dat het aangekochte product waarschijnlijk niet is getest bij extreme temperaturen of vochtigheid. De borden worden normaliter ook niet getest op de belastingen die gepaard gaan met intense trillingen of schokken.

Dus het belangrijkste punt om op te letten bij het bepalen van welk ontwikkelbord te gebruiken in een industriële toepassing, is het risico. Hoe lager, hoe beter. Bij het selecteren van een bord voor gebruik in een industriële toepassing moeten de componenten van het bord van de juiste temperatuurklasse zijn. Het is ook zinvol om gelijktijdig verschillende borden bij een hoge temperatuur gedurende enkele dagen te onderwerpen aan een stresstest. Dit geldt ook voor ontwikkelborden in producten die blootstaan aan een hoge vochtigheidsgraad. Ook deze dienen onder vergelijkbare condities te worden geëvalueerd. Borden bedoeld voor gebruik in een toepassing met hoge trillingen moeten eerst in een testframe op trillingen worden getest.

Conclusie

SBC's en microcontroller-ontwikkelborden bieden kleine bedrijven een handige manier om hun ontwerpen snel op de markt te brengen zonder de ontwikkelingskosten van nieuwe hardware. Hierdoor kunnen zij zich concentreren op software-innovatie en in toenemende mate op de ontwikkeling van algoritmen voor AI en machine learning. SBC's en ontwikkelborden zijn nu veel breder inzetbaar dan oorspronkelijk was voorzien en hebben een grote impact gehad op de recente geschiedenis van de elektronica-industrie. Ze worden steeds krachtiger, slimmer en responsiever, terwijl ze toch gemakkelijk toegankelijk blijven voor zowel professionele technici als elektronicaliefhebbers.