Warning: Undefined array key "bio" in /home/techwatch/domains/test.bits-chips.nl/public_html/wp-content/plugins/wpcodebox2/src/Runner/QueryRunner.php(126) : eval()'d code on line 13
Warning: Undefined array key "bio" in /home/techwatch/domains/test.bits-chips.nl/public_html/wp-content/plugins/wpcodebox2/src/Runner/QueryRunner.php(126) : eval()'d code on line 13
Warning: Undefined array key "bio" in /home/techwatch/domains/test.bits-chips.nl/public_html/wp-content/plugins/wpcodebox2/src/Runner/QueryRunner.php(126) : eval()'d code on line 13
Warning: Undefined array key "bio" in /home/techwatch/domains/test.bits-chips.nl/public_html/wp-content/plugins/wpcodebox2/src/Runner/QueryRunner.php(126) : eval()'d code on line 13
Warning: Undefined array key "bio" in /home/techwatch/domains/test.bits-chips.nl/public_html/wp-content/plugins/wpcodebox2/src/Runner/QueryRunner.php(126) : eval()'d code on line 13
Author:
Reading time: 4 minutes
Android, IOS en HTML5 nemen steeds vaker het stokje over van traditionele softwareplatforms in het embedded-domein. NSpyre deelt de opgedane ervaring met deze technologieën en bespreekt hun belangrijkste voor- en nadelen.
Het digitaliseren van de workflow binnen bedrijven, groot of klein, is niets nieuws. Al jaren zien we een trend richting meer digitale bedrijfsprocessen. Voorheen was de observatie, registratie en correctie van defecten en afwijkingen een kwestie van rapportages maken met pen en papier, eventueel aangevuld met foto‘s. Tegenwoordig gaat dit veelal digitaal, met modernere oplossingen die slimme apparatuur koppelen aan een gebruiksvriendelijke interface en een op afstand beschikbare backoffice.
Ook in de technische automatisering is dit een belangrijke ontwikkeling. Componenten en systemen zijn steeds meer verbonden met elkaar en bieden meer en meer de mogelijkheid om hun status op afstand uit te lezen. Fabrikanten van bijvoorbeeld auto‘s, machines of technische infrastructuren kunnen problemen bespeuren lang voordat de gebruikers er iets van merken. De interactie met de systemen verloopt daarbij steeds vaker via een smartphone of een tablet.
Deze ontwikkeling leidt tot een toenemend gebruik van mobiele softwareplatforms in het embedded-domein. Met name Android, IOS en HTML5 zien we daar steeds vaker het stokje overnemen van traditionele namen als Windows CE, VXWorks, QNX en Linux en specialistische realtime besturingssystemen. Waarom zouden we deze nieuwkomers eigenlijk gebruiken, en waarom niet?

Android
Het gratis te gebruiken Android is extra interessant voor embedded toepassingen. Het is namelijk én opensource én gebaseerd op Linux. De onderliggende Linux-configuratie is volledig aan te passen en ondersteunt standaard al vele drivers, waardoor het mogelijk is het Google-OS werkend te krijgen in een breed scala aan embedded toepassingen, zoals handscanners, boordcomputers voor auto‘s, infotainmentsystemen voor vliegtuigen en televisies. Er zijn zelfs al ovens en stofzuigers waar het op draait.
Voor Android is het belangrijk dat de hardware krachtig genoeg is, maar dit is steeds minder een issue. De ontwikkelingen op de smartphonemarkt tonen dat zelfs de goedkoopste apparaten tegenwoordig indrukwekkende prestaties kunnen neerzetten. Op embedded systemen is dezelfde ervaring te bieden als gebruikers kennen van hun mobiele telefoon. De volledige aanpasbaarheid van Android maakt het bovendien mogelijk om klantspecifieke hardware aan het systeem te koppelen. Een mooi voorbeeld van een toepassing waaraan NSpyre heeft gewerkt, is de Greencat ATX-boordcomputer voor bedrijfswagens.
Het grootste nadeel van Android is de snelle opvolging van verschillende releases. Dit kan voor problemen zorgen wanneer bedrijven zelf aan de slag gaan om het platform geschikt maken voor hun systeem. Het upgraden naar volgende releases zal lang niet altijd noodzakelijk zijn, maar het is wel zaak om hier bewust van te zijn. Het hoge ontwikkelingstempo bij Android heeft ook zijn voordelen: het besturingssysteem krijgt zo constant nieuwe mogelijkheden.
IOS
Ontwikkelen voor IOS, het besturingssysteem van de mobiele Apple-apparaten, heeft een belangrijke pre: het beperkte aantal modellen op de markt maakt dat de gebruikerservaring voor een groot deel betrouwbaar en makkelijk te bevestigen is in het testproces. Een aandachtspunt is dat er een Apple-computer nodig is om applicaties te bouwen en digitaal te ondertekenen; ondanks dat het programmeren ook kan op Windows of Linux, is het aan te bevelen om te ontwikkelen op een Mac. Apple verspreidt IOS bovendien niet los, waardoor het onmogelijk is om klantspecifieke hardware te gebruiken met het besturingssysteem erop.
IOS-applicaties ontwikkelen we bij NSpyre voornamelijk voor bedrijven die het bring your own device-principe (BYOD) willen toepassen. Dat doen we dan óf in HTML5 óf native voor de twee grote platforms, Android en IOS. Daarnaast hebben we voor een van onze klanten een applicatie gemaakt die de gebruikerservaring van nog te ontwikkelen embedded toepassingen demonstreert en vastlegt. Deze ervaring wordt geanalyseerd om verbeteringen in het uiteindelijke product aan te brengen. Hierbij hadden we twee hoofdredenen om voor IOS te kiezen: door de applicatie volledig voor het Apple-platform te schrijven, kunnen we ten eerste een vloeiende ervaring bieden in een korte ontwikkeltijd en ten tweede een professionele uitstraling realiseren bij de demonstratie met Iphones en Ipads.

HTML5
Wanneer we spreken over HTML5, hebben we het meestal over een verzameling van ruwweg drie technologieën: de mark-up-taal HTML5 zelf, CSS3 om eenvoudig websites en -applicaties op te maken en verschillende, relatief nieuwe, Javascript-programmeerinterfaces. Ondanks dat het platform al sinds 2004 in ontwikkeling is, heeft het tot afgelopen december geduurd voordat het grootste gedeelte van de mogelijkheden die het biedt officieel zijn vastgelegd. Door de erkenning van het World Wide Web Consortium (W3C) zal de adoptie van HTML5 alleen maar groeien.
HTML5 is een open standaard, waarvan een onafhankelijke partij de specificaties bijhoudt. We hoeven dus geen licentiekosten af te dragen aan derde partijen. Bovendien zullen de specificaties nog lang ondersteund blijven. Dit is met name een interessant voordeel voor bedrijven in industrieën met lange productcycli, zoals de automotivesector.
Ook aan HTML5 kleven nadelen. De verscheidenheid van systemen waarop het verondersteld wordt te draaien, maakt het lastiger om eventuele problemen te ontdekken dan bij native platforms. Verder is er een erg groot verschil in performance tussen low- en high-end systemen. In het midden- tot hoge segment biedt HTML5 een goede gebruikerservaring. Daar is het prima in te zetten boven op Android of IOS, om in één keer een multiplatformoplossing te creëren.
Voor een van onze klanten bouwen we HTML5-gebruikerinterfaces voor bestaande dashboardsystemen omdat die eenvoudig te integreren zijn. De ontwikkeling doen we boven op mid-end Android-smartphones. Deze bieden goede hardwareversnelling voor CSS3, zodat de interfaces even goed en soms zelfs beter reageren dan bij native applicaties. HTML5 op Android is ook uitermate geschikt om met OpenGL gerenderde kaarten weer te geven. Voor een brede inzetbaarheid bij klanten hebben we de interfaces zo ontwikkeld dat ze eenvoudig te porten zijn naar andere platforms, zoals IOS, Linux, Qt en Blackberry 10 (met QNX).