Laat de Kraken maar los: kunstmatige intelligentie (AI) integreren in industriële systemen
Er is grote belangstelling voor de implementatie van kunstmatige intelligentie (AI) en machine learning (ML) in industriële omgevingen om productiviteit en efficiëntie te verhogen en tegelijkertijd bedrijfskosten te verlagen. Zoals elke ingenieur of technisch manager weet, zijn er echter drie belangrijke probleemgebieden met betrekking tot het toevoegen van zogenaamde ‘smarts’ aan geïnstalleerde ‘domme’ machines, van motoren tot HVAC systemen.
Ten eerste zijn er te weinig mensen met AI- en ML-expertise om aan de vraag te voldoen, en de experts die beschikbaar zijn, zijn niet goedkoop. Ten tweede is er een gebrek aan gekwalificeerde datasets waarmee de AI- en ML-systemen kunnen worden getraind, en alle beschikbare datasets worden angstvallig bewaakt. Ten derde draaien AI- en ML-systemen van oudsher op high-end verwerkingsplatforms.
Wat we nodig hebben, is een manier om bestaande ingenieurs en ontwikkelaars die geen ervaring hebben met AI en ML de mogelijkheid te bieden AI- en ML-systemen te maken en deze op efficiënte, goedkope microcontroller platforms te implementeren. Cartesiam.AI is een interessante startup die al deze problemen oplost met hun NanoEdge AI Studio. Hieronder leg ik uit hoe.
Kwantificeren van de opkomst van AI en ML
Naar verwachting zullen er halverwege de jaren 2020, en afhankelijk van de bron, wereldwijd tussen de 20 en 30 miljard randapparaten zijn1,2. De term ‘randapparaat’ verwijst hier naar aangesloten apparatuur en sensoren aan de ‘edge’ of de rand van het internet en verbonden met de rest van de wereld. Hiervan zal slechts ongeveer 0,3% AI- en ML-mogelijkheden bevatten. Verder wordt geschat dat er in 2025 tussen de 40 en 75 miljard van dergelijke apparaten zullen zijn3,4. Tegen die tijd zal naar verwachting ten minste 25% moeten zijn uitgerust met AI- en ML-mogelijkheden.
Een belangrijke factor voor industriële implementaties is het gebruik van bestaande ‘domme’ machines en deze ‘slim’ te maken door ze uit te breiden met AI en ML. Het potentieel hiervan is ongeëvenaard. Zo bestaat er bijvoorbeeld naar schatting 6,8 biljoen dollar aan bestaande domme (verouderde) infrastructuur en machines alleen in de VS5.
Efficiënter implementeren van AI en ML aan de rand
Het Internet of Things (IoT) en het industriële IoT (IIoT) zijn reeds alomtegenwoordig en overal worden voorwerpen verbonden. De volgende uitdaging is om deze voorwerpen slim te maken.
De traditionele manier om een AI/ML-toepassing te maken is door allereerst een neuraal netwerkarchitectuur te definiëren, inclusief het aantal neurale lagen, het aantal neuronen per laag en de manieren waarop de verschillende neuronen en lagen met elkaar zijn verbonden. Vervolgens moet toegang worden verkregen tot een gekwalificeerde dataset (wat zelf enorm veel tijd en resources kan hebben gekost om te creëren). Deze dataset wordt gebruikt om het netwerk in de cloud te trainen (d.w.z. met gebruik van grote aantallen high-end servers met gigantische computercapaciteiten). Tot slot wordt het getrainde netwerk omgezet in een vorm die geschikt is voor implementatie in het randapparaat.
Volgens het IBM Quant Crunch Report6 zijn data science analytics (DSA) niet langer modewoorden, maar eerder essentiële business tools. Er is echter een toenemende bezorgdheid dat het aanbod van mensen met DSA-vaardigheden gevaarlijk achterblijft bij de vraag, terwijl het tekort aan data scientists alleen al in de VS momenteel 130.000 bedraagt.
Helaas is het gebrek aan ervaren data scientists en gekwalificeerde datasets obstakels voor een snelle en betaalbare ontwikkeling van slimme AI/ML-apparaten. Volgens Cisco7 bedraagt het storingspercentage voor IoT-projecten ongeveer 74% en dit nummer neemt toe voor projecten met AI/ML.
Volgens IDC8 zijn er ongeveer 22 miljoen softwareontwikkelaars in de wereld. Hiervan zijn er circa 1,2 miljoen gericht op embedded systemen en daarvan heeft slechts zo’n 0,2% kennis van AI/ML.
Sommige AI- en ML-systemen, zoals machine vision voor objectdetectie en -identificatie, vereisen gebruik van speciale, high-end computationele apparatuur, waaronder graphics processing units (GPU’s) en/of field-programmable gate arrays (FPGA’s). Nieuwe ontwikkelingen op het gebied van AI/ML-technologieën betekenen echter dat de meeste niet-vision AI/ML-toepassingen kunnen worden geïmplementeerd op de relatief low-end microcontrollers die prominent aanwezig zijn in embedded systemen.
Volgens Statista9 zullen wereldwijde verzendingen van microcontrollers in 2020 naar verwachting circa 28 miljard eenheden bedragen (dat is ongeveer 885 per seconde), waardoor microcontroller-gebaseerde platforms de meest verspreide hardware op de markt zijn. Dankzij de lage kosten en het lage stroomverbruik zijn microcontrollers een perfect platform om intelligentie aan de rand te brengen.
Zelfs voor grote ondernemingen met toegang tot data scientists en datasets en nagenoeg onbeperkte budgetten is het moeilijk om AI en ML te beheersen. Voor kleinere bedrijven is dat wellicht onmogelijk. Als de situatie blijft zoals het nu is, kunnen we met geen mogelijkheid 25% van de randapparatuur in 2025 uitgebreid hebben met AI/ML-mogelijkheden. Konden bestaande ontwikkelaars van microcontroller-gebaseerde embedded systemen nu maar in staat om AI/ML-toepassingen te ontwikkelen...
Een eenvoudige, snelle en betaalbare manier om slimme AI/ML-objecten te ontwikkelen
Het meest gebruikte computationele platform voor embedded toepassingen in industriële omgevingen is de microcontroller. En de meest gebruikte microcontroller is de Cortex-M-familie van Arm, vooral de M0, M0+, M3, M4 en M7.
Afbeelding 1: De V2M-MPS2-0318C is een krachtig ontwikkelingsplatform voor Arm Cortex-M-gebaseerde toepassingen met tal van I/O en een LCD-scherm. (Bron afbeelding: Arm)
Een ding waar bedrijven wél toegang tot hebben, is traditionele ontwikkelaars van embedded systemen. Wat we nodig hebben, is een manier om deze ontwikkelaars AI/ML-experts te maken zonder ze te hoeven trainen. De ideale oplossing zou zijn om traditionele embedded ontwikkelaars de mogelijkheid te geven om snel en eenvoudig zelfbewuste machines te maken die automatisch van hun omgeving kunnen leren, patronen kunnen identificeren en afwijkingen kunnen detecteren, en problemen en resultaten kunnen voorspellen, en dit allemaal te doen op betaalbare microcontroller-gebaseerde platforms aan de rand waar de gegevens worden gegenereerd en vastgelegd.
De oplossing, zoals ik al eerder zei, is NanoEdge AI Studio van Cartesiam.AI. Met behulp van deze geïntegreerde ontwikkelomgeving (IDE), die op Windows 10 en Linux Ubuntu draait, selecteert de embedded ontwikkelaar eerst de target microcontroller, variërend van een Arm Cortex-M0 tot M7. De ontwikkelaar of ontwerper geeft ook de maximale hoeveelheid RAM aan die aan de oplossing moet worden toegewezen. Als je niet meer precies weet hoe dat moet of als dit allemaal nieuw voor je is, is de V2M-MPS2-0318C Arm Cortex-M Prototyping System+ een uitstekende start (Afbeelding 1).
De V2M-MPS2-0318C maakt deel uit van de Versatile Express-serie ontwikkelingskaarten van Arm. Het systeem bevat een vrij grote FPGA voor prototyping Cortex-M-gebaseerde ontwerpen en wordt het geleverd met vaste gecodeerde FPGA-implementaties van alle Cortex-M-processors. Ook heeft het een aantal nuttige peripherals zoals PSRAM, ethernet, touchscreen, audio, een VGA LCD, SPI en GPIO.
Vervolgens selecteert de ontwikkelaar het aantal en het soort sensoren. Het mooie van de Cartesiam.AI is dat er geen harde beperkingen zijn voor de sensoren die kunnen worden gebruikt. Hier zijn een paar voorbeelden:
- Een-, twee- en drie-axiale accelerometers (eigenlijk elke frequentie voor vibratieanalyse)
- Magnetische sensoren
- Temperatuursensoren
- Microfoons (voor geluidherkenning)
- Hall effect-sensoren voor motorbesturing
- Stroombewakingssensoren
Het is goed om te benadrukken dat de ontwikkelaar niet verplicht is om specifieke onderdeelnummers te definiëren, alleen de algemene sensortypen.
De volgende stap is het laden van contextuele sensorgegevens, oftewel algemene gegevens die bij elke sensor horen om het systeem te vertellen van wat het gaat doen.
NanoEdge AI Studio is uitgerust met een uitgebreide reeks AI/ML-bouwstenen die gebruikt kunnen worden om oplossingen te creëren voor 90% of meer van de industriële AI/ML-taken. Zodra het systeem weet wat de doelmicrocontroller is, hoeveel en welke sensoren er zijn en welke algemene soort sensorgegevens het kan verwachten, wordt de beste AI/ML-bibliotheekoplossing geproduceerd van 500 miljoen mogelijke combinaties.
Indien gewenst, kan deze oplossing optioneel worden getest op dezelfde pc waarop NanoEdge AI Studio IDE draait door middel van een meegeleverde emulator, waarna deze in het gecompileerde hoofdprogramma voor microcontrollers wordt geïntegreerd en in het microcontroller-gebaseerde systeem gedownload dat aan de doelmachine moet worden gekoppeld.
Stel nu eens dat we twee domme machines hebben die we slim willen maken. Een van deze machines kan een pomp zijn en de andere een generator. In dit voorbeeld gaan we ervan uit dat we een enkele oplossing creëren met behulp van een temperatuursensor en een 3-axiale versnellingsmeter en dat dezelfde oplossing op beide machines wordt geïmplementeerd (Afbeelding 2).
Afbeelding 2: Nadat NanoEdge AI Studio IDE gebruikt is om een AI/ML-bibliotheek te maken en (eventueel) te testen, wordt die bibliotheek in het hoofdprogramma geïntegreerd, gecompileerd en in het microcontroller-gebaseerde systeem dat gekoppeld is met de doelmachine(s) gedownload. Na een leerfase (meestal een week, dag en nacht) kan de inferentie-engine worden gebruikt om afwijkingen te herkennen en te rapporteren en toekomstige resultaten te voorspellen. (Bron afbeelding: Max Maxfield)
Natuurlijk zullen deze twee machines volledig verschillende kenmerken hebben. In werkelijkheid kunnen twee overigens identieke machines zeer verschillende kenmerken hebben, afhankelijk van hun locatie en omgeving. Twee identieke pompen die zich op 20 meter afstand in dezelfde ruimte van dezelfde fabriek bevinden, kunnen bijvoorbeeld verschillende trillingsprofielen vertonen, afhankelijk van waar ze zijn gemonteerd (een op beton en de andere op houten vloerbalken) en de lengte (en vorm en materiaal) van de leidingen waarop ze zijn aangesloten.
Het belangrijkste van hele proces is dat de AI/ML-oplossingen individueel zijn getraind op bekende, goede machines. Deze training duurt meestal een week, non-stop, dag en nacht, zodat het systeem kan leren van temperatuurschommelingen en trillingspatronen. Later kunnen natuurlijk aanvullende trainingssessies worden gehouden om de modellen te verfijnen door rekening te houden met omgevingsvariaties in verband met verschillende seizoenen (voor externe toepassingen) en andere te verwachte variabelen.
Zodra de oplossingen echter zijn getraind, kunnen ze beginnen nieuwe gegevens te interpreteren, patronen te identificeren en afwijkingen te detecteren, problemen en resultaten te voorspellen en hun conclusies op een dashboard weer te geven voor eventuele technische of managementanalyse.
Conclusie
Ik zie NanoEdge AI Studio als een doorbraak. Het is intuïtief en biedt ontwerpers van embedded systemen die gebruik maken van voordelige low-power ARM Cortex-M microcontrollers — die zijn geïntegreerd in miljarden apparaten over de hele wereld — de mogelijkheid om snel, eenvoudig en goedkoop AI/ML in hun industriële systemen te integreren. Hierdoor worden ‘domme’ machines omgezet in slimme machines, waardoor de productiviteit en efficiëntie worden verhoogd en tegelijkertijd veel verwachte besparingen op de bedrijfskosten worden gerealiseerd.
Referenties
1: https://www.vxchnge.com/blog/iot-statistics
2: https://securitytoday.com/articles/2020/01/13/the-iot-rundown-for-2020.aspx
3: https://www.helpnetsecurity.com/2019/06/21/connected-iot-devices-forecast/
4: https://securitytoday.com/articles/2020/01/13/the-iot-rundown-for-2020.aspx
5: https://www.kleinerperkins.com/perspectives/the-industrial-awakening-the-internet-of-heavier-things/
6: https://www.ibm.com/downloads/cas/3RL3VXGA
7: https://newsroom.cisco.com/press-release-content?articleId=1847422
8: https://www.idc.com/getdoc.jsp?containerId=US44363318
9: https://www.statista.com/statistics/935382/worldwide-microcontroller-unit-shipments/
Have questions or comments? Continue the conversation on TechForum, DigiKey's online community and technical resource.
Visit TechForum




