Maker, trainer en consultant in elektromechanische prototyping en nieuwe technieken


Nieuwsberichten 2021 klik hier voor eerdere nieuweberichten 

Dynamische Drukregelaar voor Inflatables

23 juli 2021

Inflatables zijn opblaasbare objecten welke door het gecontroleerd opblazen uitgevoerd kunnen worden in vele verschijningsvormen. Bekend als luchtkasteel of als inflatable guys, maar ook in vele opblaasbare varianten als reclameobject of als kunstuiting. Het gecontroleerd kunnen opblazen gaat hand-in-hand met een micro-processing omgeving. 

Eerder afgelopen jaar heb ik een eerste prototype ontwikkeld waarin zowel druk als dynamiek kan worden ingesteld. Afgelopen week heb ik dit eerste prototype (zie "Pressure Regulated Controller : 3 september 2020) op klantspecificatie uitgewerkt en opgeleverd voor een opkomend evenement.

In de nabije toekomst kan de functionaliteit uitgebreid worden pulserende sturing en aansturing van verlichting met NeoPixels of DMX. Ook kan deze drukregelaar ingezet worden als environmental data collector, waarmee data verzameld kan worden welke een goede indicatie geeft of het aantal bezoekers en piek- en daltijden van bezoek. 

DMX Entertainment Lighting  µProcessor gestuurd 

14 juli 2021

Dynamische lichtaansturing is een ontwikkeling die al jaren geleden ingezet is. Binnen de entertainmentindustrie is het DMX512 protocol hierin een dominante factor. Gebaseerd op het RS485 vindt het versturen en managen van stuursignalen op een stabiele en betrouwbare wijze plaats.

Vanuit de het DMX protocol zijn er talloze hardware controllers, maar ook software tools beschikbaar waarmee licht gestuurd kan worden. Zo kunnen vooraf geprogrammeerde lichtpatronen afgespeeld worden op PAR LED lampen en zogenaamde Moving Heads voorzien van Gobo decoratie. 

Voor een van de recente project werd de vraag gesteld of een serie van gebruikte helmen ingezet kan worden als decoratieve verlichting. Zoals in de onderstaande foto's te zien is, is een bouwhelm prima in staat licht te reflecteren als ook translucent door te laten. Daarmee komen talloze decoratieve mogelijkheden binnen handbereik. 

NTP Clock - prototype ontwikkeld binnen één dag - time capture voor crash test high speed recording

9 juli 2021

Voor het onderzoeken en testen van de impact op het moment van botsing is een high speed camera een absolute must. De vraag werd aan me gesteld of ik een high time tracker kon ontwikkelen met een framesnelheid van tenminste 100 fps (frames per seconde) welke op de achtergrond van de recording een heldere tijdindicator toont. Daarbij ook de vraag of hier voor kwaliteitscontrole een NTP (network time protocol) validatie bij iedere recording opgenomen kan worden.

Een interessante vraag, waarbij de voorkeur vrijwel direct gaan naar een Raspberry Pi. De keuze van de high speed camera stond vast, een Sony RX100, met een fps tot boven 900 frames per seconde. De Raspberry Python toolset biedt met Gphoto2 de functionaliteit om computergestuurd de camera een trigger te geven en de recording over te brengen van de camera naar een externe opslagunit.

Hiervoor heb ik binnen 1 dag een werkend prototype gemaakt waarin een set WS2812 Neopixels met een 1/100e in groen en 1/10e seconde indicator in rood exact weergeven wat de time frame is waarin de opname gemaakt is. Voor de opname wordt een NTP stamp gezet en na de opname eveneens. Beide NTP stamps bieden een nauwkeurige tijdsindicatie, waarmee een gekalibreerde meting verricht kan worden. 

Lasersnijden in gedroogde herfstbladeren

5 juli 2021

Eerder vorige maand kreeg ik van één van de andere makers - Evalie, van Evalie Hovers Design, een set gedroogde bladeren van de afgelopen herfst 2020. Gedroogde bladeren, wanneer volledig vlak gedroogd, zijn een mooi organisch materiaal om creatieve uitingen vorm mee te geven. Mijn eigen oogst van herfstbladeren was helaas door de aanwezige kattenpoten vergruisd en daarmee onbruikbaar geworden.

Op mijn privé lasersnijder heb ik de luchttoevoer tot een minimum beperkt, om daarmee de stabiliteit van het blad tijdens het laserproces zo minimaal mogelijk te belasten. Vervolgens heb ik met een hoge snelheid en een aangepast laag vermogen de lasersnijder uiterst precies de skyline van New York uit laten laseren uit een kersenblad. Naast dit kersenblad had ik ook een blad van de Noorse Esdoorn ontvangen. Hier heb ik vervolgens het logo van mijn bedrijf uit gelaserd. 

Na het laseren blijkt dat met name op de plaatsen waar de bladnerven zich bevinden, er soms handmatig nog wat bijgewerkt moet worden. Op de locaties van de bladnerven is het blad robuuster en het ingezette vermogen net wat te beperkt. Het bewerken van organische materialen leidt tot een mooi eindresultaat.

Speakers en trackpad repareren ondersteunt met instructies van iFixit.com

28 juni 2021

Wanneer laptops intensief gebruikt worden treedt er nagenoeg altijd slijtage op. Deze slijtage zit vaak op bewegende delen en zo ook op trackpads en speakers. Gelukkig zijn de meeste van dit soort problemen met inzicht, rust en ervaring goed te fixen. Samen met één van de Innaut pupillen hebben we deze keer een Lenovo Thinkpad x250 met een defecte Trackpad en niet werkende speakers onder handen genomen. 

Het openen van een dergelijke laptop is een precies werkje, waarbij de locatie van de schroeven in combinatie met het gebruikte gereedschap het verschil kunnen maken. Na eerst uitvoerige kennis opgedaan te hebben op iFixIt.com hebben we de laptop opgeschroefd, het moederboard geinspecteerd, de accupack verwijderd en kregen daarmee toegang tot zowel de speakers als de trackpad.

De trackpad bleek in de loop der tijd aardig wat stof verzameld te hebben, waardoor de contacten instabiel zijn geworden. Een juiste dosering perslucht bleek hier afdoende om de verzamelde stofdelen permanent te verwijderen. De speakers hebben we zorgvuldig gedemonteerd, de nieuwe geplaatst en met behulp van kapton tape goed vastgezet. Met de inzet van FlappyBird hebben we de laptop gecontroleerd en vastgesteld dat zowel de trackpad als de speakers weer als nieuw functioneren. 

Succesvolle workshop woordklok - resultaat 4 gepersonaliseerde klokken met enthousiaste deelnemers

22 juni 2021

De voorbereidingen voor de workshop eerdere deze maand hebben bijgedragen aan wederom een succesvolle workshop. Na een rondleiding door de Spark Makers Zone en een uitleg van de stappen in de workshop zijn we om 13:00 gestart met het solderen van de NeoPixel backplate. Een warme soldeerbout en een vast hand zijn hiervoor een vereiste. Nadat de 100 NeoPixels geplakt en gesoldeerd zijn, hebben we de backplates getest, met als gevolg een oplichtende dansvloer aan lichtjes voor iedere oplichtende letter in de klok. 

Vervolgens hebben we de schakelaars voor tijd +/- en kleur vastgeschroefd en gesoldeerd aan het hart van de klok, de Arduino Nano Every met RTC. Vastgeschroefd, gesoldeerd en aangesloten hebben we de programmacode naar de klok geupload. Hierna hebben we het 3D honingraad-grid, geprint met Ultimaker gemonteerd. En dan komt het spannende moment, alles checken, en vaststellen dat alles naar wens technisch functioneert. 

Iedere deelnemer heeft vervolgens de personalisatie van het letterstencil aangebracht en opgeschreven welke pixels hiervoor geprogrammeerd moeten worden. Deze stencils hebben we de lasersnijder uit dik zwart karton gelaserd. Wat mij iedere keer opvalt is dat namen van partners en huisdieren favoriet zijn. Met de gepersonaliseerde stencil en het werkende binnenwerk van de woordklok, vindt vervolgens de eindassemblage plaats. Met als resultaat: enthousiaste, trotse en tevreden deelnemers met iedere en eigen gemaakt werkende woordklok. 

Raspberry Pico ultrasonic distance meter met temparature/humidity sensor

16 juni 2021

De recente aanvulling van de Raspberry Pico aan het processor board assortiment biedt mogelijkheden de input- en outputpoorten met behulp van MicroPython te programmeren. Snelle prototypes, proof of concepts en tastbare realisaties van wilde ideeën komen hiermee snel binnen handbereik. De lage kosten € 5 van het processorboard in combinatie met de maar liefst 26 I/O poorten en mogelijkheid van Python programmeren maken dit een interessant ontwikkelplatform.

Vanmiddag heb ik binnen 2 uur een werkend model ontworpen, in elkaar gesoldeerd en geprogrammeerd, waarmee een ultrasoon sensor tot een afstand van 2 meter met een nauwkeurigheid van 1 cm de afstand tot een object of vloeistof meet. Tegelijkertijd wordt de omgevingstemperatuur en luchtvochtigheid gemeten en alle drie deze datapunten worden iedere seconde uitgelezen en beschikbaar gesteld via de USB bus. Daarbij zijn ook 3 LEDs gekoppeld. Iedere LED heeft een eigen threshold value waarmee op basis van gemeten waarden triggers gegeven worden. Dit kan zowel visueel als via SolidState relais of MOSFETs naar motoren, persluchtcilinders, lampen en actuators. 

Voorbereiding woordklok workshop : nieuwe processor Arduino Nano Every, uitbreiding functionaliteiten

11 juni 2021

In voorbereiding op komende workshops voor het maken van een woordklok heb ik aanpassingen aangebracht die de klok meer functionaliteit gegeven en welke de nieuwe Arduino Nano Every processor ondersteunt. Door gebruik te maken van de Arduino Nano Every blijven bibliotheken ondersteund en kan het basisontwerp uitgebreid worden met meer uitgebreide instellingen voor kleur en tijd + en tijd -.

Met deze aanpassing blijft de basisfunctionaliteit gewaarborgd. Daarnaast is het upload- en update proces stabieler, wat tijdens de workshop een erg prettig voordeel is. Ik zit te overwegen ook een een versie te maken welke gebaseerd is op de Raspberry Pico en ook een versie gebaseerd op de STM Blue Pill. Al deze versie zitten in dezelfde prijsrange maar ondersteunen verschillende programmeeromgevingen.

Voor de Raspberry Pico versie kan dit een leuke, praktische trainingsopdracht zijn om de meer geavanceerde functies binnen Python onder de knie te krijgen. Het gebruik van de time library en de NeoPixel implementatie maken het een interessant studieproject, waarbij de uitbreidingen zeker niet beperkt hoeven te blijven tot een woordklok. 

AI Robot Learning met de PiCar - USB & OpenCV

2 juni 2021

Unmanned Guided Vehicles (UGV) zijn een steeds realistischer toekomstbeeld. Onbemande, zelfsturende mobiele objecten zoals de PiCar-V kunnen autonoom opdrachten uitvoeren en daarmee processen ondersteunen. Alhoewel nog in der kinderschoenen, blijkt het mogelijk om met bestaande open-source ontwikkelplatforms een autonoom sturend en rijdende auto te realiseren en deze vanuit programmacode vooraf bepaalde taken uit te laten voeren.

Het hart van deze PiCar is een Raspberry Pi model 4 8Gb, voorzien van een 120° USB camera. De PiCar heeft twee onafhankelijk aangedreven achterwielen en een servogebaseerde stuurinrichting. Twee 18650 accupacks leveren voldoende energie om zowel de Raspberry als de  motoraandrijving, servostuurinrichting als camerabediening aan te sturen.

Met OpenCV en bijvoorbeeld TensorFlow kan een generieke autoplatform neergezet worden welke gevoed kan worden met zowel pretrained TensorFlow modellen als eigen modellen. Hiermee kan een experimentele omgeving neergezet worden waarmee de UGV autonoom aan de slag gaat. In mijn geval volgt de PiCar een rood rond object en blijft deze volgen op een vooraf ingestelde afstand. Het PiCar platform biedt daarnaast via I2C talloze mogelijkheden om sensoren, schakelaars en actuators te verbinden. 

Ontwerp en 3D printen vanuit Solid Works

25 mei 2021

Binnen de 3D ontwerpomgeving is een groot scala aan software tools beschikbaar voor het ontwerpen, voorbereiden en realiseren van technische onderdelen en projecten. Met name de snelheid van idee tot gerealiseerd product is een bepalende factor voor succes in rapid prototyping. Ieder software tool heeft zijn eigenschappen en toepassingsgebieden. Binnen de 3D tools heb ik recent de stap gemaakt naar Solid Works als ontwikkelplatform.

Solid Works biedt een betrouwbare, gebruiksvriendelijke omgeving voor het professioneel ontwerpen van onderdelen, projecten en producten en biedt een grote variëteit in het beheren van een eigen catalogus. In de ondersteuning van productie-omgevingen wordt daarmee een hogere servicegraad mogelijk en kan snel ontwikkeld worden op bestaande ontwerpen.

Technische export files kunnen eenvoudigweg geprint worden op PLA, PETG of metaalprinters en platte vlakken kunnen geëxporteerd worden voor uitvoering op de lasersnijder of waterjet. Kortom, met Solid Works als ontwikkelplatform is er een goede aansluiting mogelijk op het voor mij beschikbare productiepark. 

Thermal printer ZJ-58 aangestuurd met Python op de Raspberry

17 mei 2021

Drie weken geleden ontving ik mijn USB/Bluetooth thermische printer - een Zijiang ZJ-58, ook wel bekend als een kassabonnetjesprinter. Het mooie van deze printers is dat ze vrijwel geluidsloos zijn en met warme contactpunten printen op een virtueel oneindige kassarol. Naast dat dit soort printers draagbaar zijn, licht in gewicht zijn en voorzien van een interne accu, is de output - smalle kassastrookjes - erg handzaam.

De uitdaging zit in het aansturen van deze printer, aangezien een standaard Epson ESC/POS driver niet afdoende is. Binnen de Python/Raspberry omgeving is CURL de standaard voor het aansturen van printers, maar het blijkt dat specifiek deze ZJ-58 zich ook direct laat aansturen. Om zowel tekst als grafische afbeeldingen te kunnen printen is de goede instelling een vereiste. 

Nu ik vanuit Python volledig controle heb over deze thermische printer komen er talloze mogelijkheden ter beschikking. Een mobiele photobooth, een random gedichtengenerator, een hard-copy printer van excessen bij online datacapture en IOT measurement en natuurlijk gewoon een handige handzame, mobiele printer. 

Training MIG/MAG lassen met Peter van Putten

13 mei 2021

Vandaag mijn eerste praktische training gehad in het MIG/MAG lassen. Dankzij Peter van Putten heb ik vandaag voor het eerst in mijn leven zelf kunnen lassen. In het verleden heb ik vanuit de oldtimerhoek op afstand meegekeken hoe plaatdelen vervangen werden en onze 60 jaar Jeep zodoende weer voldoende jaren vooruit kan. 

Echter, zelf kunnen lassen is een heel andere ervaring. Warmte, geluid en een alles verblindende helm maken het haast een surrealistische beleving. Maar het resultaat mag er zijn - een stevige verbinding tussen verschillende plaatdelen welke eerder nog los door het leven gingen. De snelheid van het leggen van de lasverbinding en het nabewerken met de slijptol geven een scala aan mogelijkheden. Als er iets misgaat en niet gewenst vastgelast zit, is het in no-time weer los en klaar om opnieuw vastgezet te worden.

In vergelijking met solderen een veel ruwer proces, maar qua robuustheid vele malen groter. Voor mijn skill-set een welkome toevoeging, alhoewel ik nog niet in kan schatten hoe vaak ik dit per jaar zal gaan aanwenden. Dank aan Peter voor de interessante training en handige tips. 

NEMA23 Stepper motor - stap-richting gestuurd met Arduino

6 mei 2021

Het aansturen van motor met repeterende, gecontroleerde bewegingen kan prima geregeld worden met behulp van een stappenmotor in combinatie met een stappenmotor driver. Stappenmotors werken in de basis vanuit drie signalen: stap, richting en enable. Deze drie pulstreinen geven de instructie voor beweging, richting en het wel/niet vasthouden van de positie.

Binnen de Arduino omgeving is er een rijke variëteit aan implementaties beschikbaar waarin naast basisacties ook gestuurd kan worden het accelereren en afremmen van de beweging. Door het juiste aantal stappen aan te sturen is de precieze bewegingshoek van de stappenmotor te regelen. Echter wanneer de torque - kracht - van de motor de beweging niet ondersteund, kan het zijn dat er stappen opgeslagen worden. 

De implementatie voor de onderstaande stappenmotor heeft als doel snel - binnen 1 dag - te kunnen valideren of een bepaalde beweging repeterend ingezet kan worden in een nieuw te ontwikkelen productielijn. Door slim data te verzamelen en modulair te programmeren is het mogelijk om efficiënt een rapid prototype te ontwikkelen en de testopstelling op basis van verzamelde data te valideren. 

8 jaar ervaring met de Raspberry Pi - ruime mogelijkheden, nagenoeg voor iedere applicatie een passende uitvoering

28 april 2021

Sinds 2013 heb ik de Raspberry omgeving omarmd. Met de start van de Raspberry Pi Model B heb ik mijn eerste ervaring opgedaan met de 3D printer webservice Octoprint. De 40 pins GPIO poort had direct mijn grote interesse. Met dergelijke poorten had ik 10 jaar eerder vanuit de Arduino omgeving al ervaring opgedaan. Deze Raspberry omgeving ondersteunt direct mogelijkheden voor webservices, MySQL, MQTT, FTP en low-level data transfer.

De combinatie van Python, GPIO poorten en een directe Wifi connectie biedt veel mogelijkheden. Daarnaast maakt de directe koppeling van camera's, ondersteuning I2C en de beschikbaarheid van HDMI video de Raspberry Pi omgeving tot een veelzijdige duizendpoot. De Pi Model, P3, P4, P400, Zero en sinds kort ook de Pico bieden een passende oplossing voor nagenoeg alle prijs/processingpower wensen.

Inmiddels is mijn prototyping portfolio uitgebreid tot alle varianten binnen de Raspberry pool en is er ook uitbereiding in de Nvidia AI Jetson en de MicroPython omgeving zoals ESP32, TTGO en de Raspberry Pico.

  • raspb1
    raspb1
  • rasp3
    rasp3
  • rasp2
    rasp2

Pneumatische klep aangestuurd door MOSFET 

23 april 2021

Het gebruik van pneumatische kleppen is alom aanwezig. Het aansturen van deze kleppen met behulp van processing computers zoals Arduino, STM32, ESP8266 of Raspberry Pi is minder voor de hand liggend. Pneumatische kleppen worden aangestuurd met behulp van een elektromagneet, zoals ook gebruikt voor een relais. 

Deze elektromagneten hebben wel wat specifieke eigenschappen waarbij in de ontwikkeling van applicaties rekening moet worden gehouden. Zo is er een minimale tijd nodig om een elektromagneet de pneumatische klep te laten activeren. Daarnaast is er bij de spoel in de elektromagneet sprake van een inductiespanning bij het uitschakelen van de spoel. Deze inductiespanning kan leiden tot ongewenste voltagepieken, zogenaamde 'spikes'. 

Om deze ongewenste voltage 'spikes' te voorkomen kan er een flyback diode ingezet worden. Deze zorgt ervoor dat de inductiespanning geabsorbeerd wordt en verlaagt de onrustige rimpels op de voedingslijnen. 

  • klep1
    klep1
  • klep2
    klep2
  • klep3
    klep3

24V Sensors verbonden aan de Raspberry Pi

20 april 2021

De Raspberry Pi ontwikkelomgeving biedt een breed scala aan mogelijkheden. De combinatie van Python, Wifi en Physical Computing maakt het mogelijk om de echte buitenwereld te verbinden aan processing algoritmes. De resultaten uit deze algoritmes triggeren vervolgens relais, LEDs, solid-state switches en via MOSFETs ook direct pneumatische kleppen. 

Om een goede, betrouwbare omgeving te creëren is het belangrijk dat de verschillende circuits elektrisch gescheiden zijn. Een voor de hand liggende mogelijkheid hiervoor is het gebruik van opto couplers. Deze maken het mogelijk logische signalen van verschillende niveaus elektronisch gescheiden te koppelen. Een 24 volt sensor kan daarmee op de GPIO poorten van de Raspberry aangesloten en uitgelezen worden. 

Een voorbeeld van een dergelijk opto coupler is de 4N25. Deze 4N25 schakelt zeer snel - binnen 2 micro seconde. Daarbij zijn de ingaande en uitgaande circuits elektronisch gescheiden, waarmee stoorsignalen zo veel mogelijk gereduceerd worden. Het onderstaande Raspberry proto-board bevat 4 inputs en 2 outputs en maakt schakelingen mogelijk tussen 3.3v (Raspberry) en 24v (logic sensors).

  • Opto2
    Opto2
  • Opto1
    Opto1
  • Opto4
    Opto4

Teststroken uit composiet versterkte vezels met behulp van de CO2 lasersnijder

15 april 2021

In voorbereiding op sterkte- en duurtesten van composiet versterkte vezels heb ik voor met het ontwikkelteam van Avans teststroken op maat gemaakt. De versterkte vezels worden aan diverse testen onderworpen. Om tot onderbouwde en reproduceerbare resultaten te komen zijn identieke samples van de verschillende vezels met behulp van de lasersnijder uitgesneden.

De techniek van lasersnijden met de CO2 laser maakt het mogelijk om haarscherpe snijlijnen te realiseren. En door het toepassen van standaard afmetingen wordt het resultaat direct pasklaar gemaakt voor de meetopstelling.

  • Vezels1
    Vezels1
  • Vezels2
    Vezels2
  • Vezels3
    Vezels3

Eerste ervaringen met Artificial Intelligence (AI) op het NVidia Jetson platform

8 april 2021

Afgelopen week heb ik mijn Jetson Nano Developer Kit in ontvangst mogen nemen. Dit ontwikkelingsplatform biedt makers zoals ik de mogelijkheid om zelf praktische ervaring op te doen met Artificial Intelligence en deze toe te passen in elektromechanische projecten. Met de Jetson AI module is het me gelukt om binnen een half uur op basis van eigen foto-opnamen dit board te trainen in het onderscheiden van gezichtsmimiek: 'vrolijk', 'verdrietig', 'boos' of 'neutraal'. Met dit onderscheid kan vervolgens de sfeerverlichting met NeoPixels of Philips HUE aangepast worden of kunnen andere processen aangestuurd worden.

Het Jetson ontwikkelboard is voorzien van een 40pins GPIO poort, welke compatible is met de Raspberry boards. Hierdoor kunnen bestaande interfaces gebruikt worden, maar kan ik zelf ook verder met eigen ontwikkelde prints en schakelingen. Solid state relais gekoppeld aan de GPIO poorten en kunnen lampen schakelen, Zigbee of HUE protocollen aanspreken, maar ook pulsen genereren voor het aansturen van processen.

In de nabije toekomst ga ik AI inzetten bij projecten: voor het in-line herkennen van goede/foute producten, scannen van teksten en codes op stickers en verpakkingen en met live screen-captures verwacht ik microscoopbeelden automatisch te classificeren met image regression. Kortom een nieuwe wereld heeft zich geopend, waardoor ik nu in elektromechanische prototypes ook kunstmatige intelligentie kan integreren.

Zoals hier onder te zien is, werd in mijn thuisopstelling zelfs de voorbijlopende kat als 'cat' geclassificeerd. Deze werd automatisch herkend vanuit het ResNet-18 pre-trained netwerk ;-). De PyTorch AI omgeving is ResNet-18 pre-trained en herkent meer dan 1000 objecten, waarmee onder andere dieren, auto's, mensen, toetsenborden worden onderscheiden. En door self-training kan herkenning van nieuwe objecten worden aangeleerd, waarmee ingespeeld kan worden op specifieke vraagstuken.

  • AI Jetson 2Gb 1
    AI Jetson 2Gb 1
  • AI Jetson 2Gb 5
    AI Jetson 2Gb 5
  • Jetson AI device 1
    Jetson AI device 1
  • AI Jetson 2Gb 6
    AI Jetson 2Gb 6
  • AI Jetson 2Gb 3
    AI Jetson 2Gb 3
  • AI Jetson 2Gb 7
    AI Jetson 2Gb 7

Elektromechanische aansturing prototype met Arduino Uno

31 maart 2021

De koppeling van een pneumatische klep op een cilinder, een hall-sensor voor actuele hoekmeting, closed loop stappenmotor voor aandrijving, positioning sensors en een solid state relais voor aansturing van externe proces - dit alles wordt gecontroleerd vanuit een centrale Arduino Uno. Low level programming waarbij elektronica aangestuurd wordt door externe sensoren zorgt voor een solide, configureerbare en schaalbare oplossing.

De I/O poorten van de Arduino zorgen voor het uitlezen van de actuele status van de sensoren en voor het aansturen van de uitgaande signalen voor de pneumatische klep, de step/direction/enable van de stappenmotor en de trigger voor een extern proces. De processorsnelheid van 16Mhz is ruim voldoende voor het verwerken van alle ingaande en uitgaande signalen. Om er zeker van te zijn dat triggers goed worden opgevangen, is er gebruik gemaakt van interrupts, welke timing-issues tot 0 reduceren. 

Als tegenhanger van de traditionele PLC's, bieden platforms als Arduino, Raspberry, STM en ESP32's eenvoudige en flexibele connectie naar internet, waardoor het mogelijk is data te verzamelen en processen te monitoren. Flexibel prototypen is hiermee heel goed mogelijk en doorlooptijden en schaalbaarheid blijven beheersbaar. Voor mij als prototyper noodzakelijke vereisten om snel te kunnen ontwikkelen en aanpassingen te blijven maken als gevolg van gewenste wijzigingen tijdens het ontwikkelproces. 

  • MK1
    MK1
  • MK2
    MK2
  • MK3
    MK3

Raspberry Pi - Python GPIO Interrupts . GPIO.add_event_detect

22 maart 2021

Voor het aansturen van processen met Arduino's en Raspberry's zijn deze werkpaarden uitgevoerd met IO poorten. Deze IO poorten zijn Input/Output poorten waarmee signalen van onder andere sensors en schakelaar uitgelezen kunnen worden. Vervolgens kan een geprogrammeerd algoritme bepalen welke wat er op basis van deze signalen moet plaatsvinden: calculeren van de gemeten waarden, weergave op displays en indicatorlichten, maar ook de aansturing van drivers voor stappenmotors, relais en het posten van parameters op een HTTP:// web service of API. 

Wanneer een IO poort gebruikt worden om een interactie te meten, dan kan het gewenst zijn om bij activering voorrang te krijgen op alle lopende processen. Dit is van toepassing wanneer bijvoorbeeld een rotatiesensor uitgelezen moet worden of wanneer een object op een lopende band een bepaalde positie passeert. Maar ook wanneer een maximale temperatuur bereikt wordt of wanneer er een knop uit een management console indrukt wordt. 

In de bovengenoemde gevallen is de interrupt IO een passende oplossing. Door een specifieke configuratiesetting krijgt een IO poort een soort 'watch dog' functie waarmee continue wordt gecontroleerd of er een interactie plaatsvindt. In de praktijk een handige oplossing, waarbij kennis van programmeren en het begrip van logische elektrische signalen bij elkaar komt. Raising edge, falling edge en specifieke trigger levels zijn hierbij essentieel. Zowel de Raspberry Pi als de Arduino, STM en ESP omgevingen bieden hierin een rijk scala aan mogelijkheden. Spec sheets omschrijvingen hiervan zijn vaak uitgebreid, taai van stof maar wel essentieel om een betrouwbare oplossing te realiseren. 

  • interrupt1
    interrupt1
  • interrupt3
    interrupt3
  • interrupt2
    interrupt2

Programmeerbare Multi Color Glow Fiber 

16 maart 2021

De combinatie van flexibele fibers en geprogrammeerde LEDs biedt talloze decoratieve mogelijkheden. Door gebruik te maken van programmeerbare LEDs in combinatie en neon-glow style optische vezels kunnen unieke lichteffecten gecreëerd worden en kunnen objecten interactief aangelicht worden.

De glow fibers zijn verkrijgbaar in verschillende diameters, variërend van 2mm tot meer dan 12mm. De structuur van de fibers genereert een egale lichtgloed, is waterbestendig, flexibel en maakt licht transporteerbaar zonder gebruik van stroom en zonder risico op vonken. Aangezien de aanlichting plaatsvindt met adresseerbare LEDs is het mogelijk lichteffecten zo te programmeren dat ze beïnvloed worden door input sensors welke beweging, warmte en/of geluid registeren.

  • glowfiber1
    glowfiber1
  • glowfiber2
    glowfiber2
  • glowfiber3
    glowfiber3

Waterjet metaal toegevoegd aan mijn gereedschapset - tot 25 mm RVS in afmetingen van 30x30 cm.

10 maart 2021

Afgelopen woensdag heb ik mijn training op de waterjet gehad en toegang gekregen tot de OMAX watersnijder. Met deze waterjet kunnen naast metalen als aluminium, titanium en staal ook materialen als glas, composiet, steen, beton en keramiek gesneden worden. 

Door de toepassing van een hoge druk waterstraal en speciaal snijzand wordt heel zuiver gesneden door maximaal 25mm materiaal. Het snijvlak omvat 30x30cm waarbij de snelheid bepaald wordt door het ontwerp en de materiaaleigenschappen.

Voor één van mijn lopende projecten was afgelopen week een specifieke bracket nodig. Vanaf idee tot en met ontwerp en realisatie in 4mm RVS is bij het onderstaande model binnen 60 minuten gerealiseerd. Voor mijn rapid prototyping projecten een ideale toevoeging aan het assortiment beschikbare gereedschappen.

  • waterjet1
    waterjet1
  • waterjet 6
    waterjet 6
  • waterjet2
    waterjet2
  • waterjet 7
    waterjet 7
  • waterjet4
    waterjet4
  • waterjet 5
    waterjet 5

Technische Oriëntatie Masterclass - mechanica & programmeren (2) 

5 maart 2021

In navolging van afgelopen week heb ik deze week twee sessies gegeven van de Technische Oriëntatie Masterclass, welke georganiseerd is door InnAut (www.innaut.nl). In deze sessies ben ik op een heel praktische wijze ingegaan op mechanica en programmeren. 

Na een introductie over productielijnen, robotarmen, motoren, sensoren en meet- en regeltechniek heb ik met een interactieve rondleiding binnen het productiepark van de Spark Makers Zone de theorie aan de praktijk gekoppeld. Zien en beleven in de praktijk zegt meer dan plaatjes in een presentatie.

In de middagsessie hebben de cursisten kennis gemaakt met de Arduino programmeeromgeving. Vanuit het 'blink' LED voorbeeld en het uitlezen van potmeters, naar de seriële monitor feedback en tenslotte realiseert iedereen een heuse 3D geprinte servo-gestuurde parkeerzuil met een geprogrammeerd algoritme met geconfigureerde begin-en-eind positie.   

  • masterclass1
    masterclass1
  • masterclass2
    masterclass2
  • masterclass4
    masterclass4
  • masterclass5
    masterclass5

Indoor & Outdoor LED panel - P3

3 maart 2021

Vijf jaar geleden zag ik ze voor het eerst met eigen ogen op de Shenzhen SEG Electronics Market, indoor & outdoor LED displays - verkrijgbaar in P2, P3, P4, P5 en P6 formaten. Door het koppelen van 64x64 LED matrix panelen is het mogelijk om grote displaypanelen te realiseren welke zowel indoor als outdoor gebruikt kunnen worden.

Afgelopen week kreeg ik voor het eerst mijn eigen P3 paneel binnen 2x 64x64 = 128x64 pixels en ik ben zeer positief verrast over de mogelijkheden welke het video display controller board hierin biedt. Wifi koppeling en directe aansturing vanuit Rx/Tx signalen maken het mogelijk teksten en images weer te geven. 

Door gebruik te maken van een hardware/software back-door lijkt het ook mogelijk om KPI data weer te geven. Daarmee ligt een koppeling van data uit sensors, tellers, applicaties en databasevelden naar grote displays binnen handbereik.   

  • P3LED1
    P3LED1
  • P3LED2
    P3LED2
  • P3LED3
    P3LED3

7 Segment Flip-Dot Display 402L-3 Signalex uit 1989

26 februari 2021

Recent heb ik de hand kunnen leggen op 4 originele Sginalex Flip Digits uit 1989. Deze elektromechanische 7-segment displays hebben een rijke historie in het weergeven van tijd, temperatuur en sportscores in publieke ruimten. Deze displays hebben een unieke combinatie van high visibility en low power energiegebruik. De energiezuinige toepassing van magnetische spoelen maken iedere uniek segment 'zichtbaar' of 'onzichtbaar'.  

De aansturing van deze displays vindt plaats door het activeren van elektromagnetische spoelen. Ieder segment heeft twee aansluitingen. Eén aansluiting voor 'zichtbaar' maken en één aansluiting voor 'onzichtbaar' maken. Het omklappen van een segment vereist een puls van 50ms en heeft maar 0,048 watt nodig. Daarmee zijn dit extreem low low power displays. 

De aankomende tijd zal ik vanuit de Arduino en vanuit de Raspberry omgeving een aansturing voor deze displays gaan realiseren. Om daarmee deze mooie techniek uit de '80-er jaren weer een hernieuwd leven te geven.

  • flipdot3
    flipdot3
  • flipdot2
    flipdot2
  • flipdot1
    flipdot1

Technische Oriëntatie Masterclass - elektronica (1) 

25 februari 2021

Deze week heb ik de kick-off training gegeven van de Technische Oriëntatie Masterclass, welke georganiseerd is door InnAut (www.innaut.nl). Op een praktische wijze laat ik participanten in mijn 2-daagse bijdrage kennis te laten maken met elektronica, mechanica en programmeren.  

In deze kick-off is gestart met een uitleg van de basisbeginselen van elektronica en het opbouwen van proefschakelingen op een breadboard. Vervolgens hebben we aansluitend een elektronische dobbelsteen in elkaar gesoldeerd. Alle participanten hebben met succes een werkend model gemaakt en daarmee praktisch kennis opgedaan met de werking van LEDs, weerstanden, schakelaars, condensatoren, diodes en IC's en bovendien met het monteren en solderen van onderdelen op een printplaat. 

Op naar de volgende sessie, waarbij ik op praktische wijze in ga op de basisbeginselen het programmeren. Hierin gaan we LEDs aansturen met behulp van Arduino's in combinatie met schakelaars, potentiometers, sensors en servo's.


  • MasterClass4
    MasterClass4
  • MasterClass5
    MasterClass5
  • MasterClass6
    MasterClass6

Side Glow Fiber - NeoPixel decoratie

23 februari 2021

Side Glow fibers maken deel uit van de categorie optische vezels. Naast de traditionele glasvezelkabels welke gebruikt worden voor optische communicatie en gegevensuitwisseling, is er een nieuwe categorie in opkomst.... de side glow fiber. Deze heeft een aantal specifieke kenmerken: verbruikt geen stroom, kan tegen water, is zacht en flexibel en kan verschillende kleuren transporteren een als side glow weergeven.

Side glow fiber is beschikbaar is verschillende diameters en goed verkrijgbaar van 2-14mm. Het is gemaakt van PMMA is door de grote mate van flexibiliteit niet makkelijk breekbaar. Lichttransport vindt probleemloos plaats binnen het bereik van 380-780nm. Het aansturen met licht kan efficiënt vanuit een vaste LED bron of een op NeoPixel gebaseerde lichtbron, waarmee een breed scala van kleuren ondersteund wordt. 

Het gebruik van flexibele lichtweergave waarbij de kleur dynamische interactie aan kan gaan met de omgeving biedt een nieuwe set aan mogelijkheden. Interactiviteit, dynamische kleurweergave en flexibele - bewegende lichtobjecten. 

  • Glow2
    Glow2
  • Glow1
    Glow1
  • Glow5
    Glow5

Magnetische Hall-sensor voor absolute positiebepaling met een NEMA17 - TB6600 opstelling

19 februari 2021

In projecten waarbij rotatie een belangrijk aspect is, komt ook vaak de positiebepaling de hoek om kijken. Een draaibaar plateau wordt in veel gevallen pas waardevol wanneer bekend is en real-time berekend kan worden onder welke draaihoek het plateau zich bevindt. 

Een handig type sensor hierbij is de hall-sensor. Een hall-sensor maakt gebruik van het de elektrische stroom welke optreedt bij een verandering in het magneetveld. Door een magneet in de omgeving van de sensor te plaatsen verandert het opgenomen magneetveld en registreert de sensor een verandering. Deze verandering kan vervolgens een anders proces in gang zetten. Doordat er geen fysiek contact hoeft te zijn tussen de magneet en de sensor, kan dit wrijvingsvrij plaatsvinden. Daarnaast is de reactiesnelheid van een hall-sensor aantrekkelijk voor snel veranderende situaties. Zo worden Hall-sensoren ook toegepast bij hoekmeting, positionering, afstandmeting, onstekingstijdstip van een benzinemotor en als gashendel op elektrische scooter.

Door in de programmacode een koppeling te maken tussen het moment van sensor-detectie en te tijd welke nodig is om te komen tot een volgende tijdsdetectie wordt het eenvoudig mogelijk om de tijd te berekenen welke nodig is om een rotatiehoek te realiseren. Zo blijkt het in de onderstaande NEMO17 - TB6600 opstelling mogelijk om een 180
° hoek te realiseren binnen 138 milliseconde. 

  • Hall1
    Hall1
  • Hall3
    Hall3
  • Hall7_1
    Hall7_1
  • Hall4
    Hall4
  • Hall5
    Hall5
  • Hall6
    Hall6

I2C LCD Display op Raspberry 4

9 februari 2021


Het Arduino platform staat bekend om de efficiënte mogelijkheid analoge en digitale elektronica te koppelen aan geautomatiseerde processen vanuit de centrale microcontroller. Het Raspberry platform is een compleet andere omgeving. Deze Raspberry omgeving gebruikt een microprocessor en beschikt standaard over een video- en audio-uitgang. Ook is de programmeertaal Python van een Raspberry anders dan de C++ omgeving bij de Arduino. 

Vanuit de Python libraries zijn er een krachtige methoden beschikbaar om gegevens van webpagina's te extracten en deze met Python te verrijken, bewerken en als variabelen toe te passen in programma's. Wanneer vervolgens een LCD display gekoppeld wordt, is het mogelijk om live gegevens vanuit het web weer te geven op displays deze met interactiviteit te integreren.

Een lastige bijkomstigheid van de Raspberry omgeving is de 3.3v level incompatibiliteit. Hiervoor is het in veel gevallen noodzakelijk stuursignalen van in- en uitgaande signalen met level-converters aan te passen. Dit voorkomt dat input- en output-kanalen van de microprocessor te maken krijgen met te veel spanningsverschil. Door het bypassen van de 5v connectie van de I2C connector op het HD4470 20x4 LCD display kan deze direct op de Raspberry aangesloten worden en live streams vanuit data op webpagina's weergeven. 

  • I2C-1
    I2C-1
  • I2C-2
    I2C-2
  • I2C3 - PyCharm
    I2C3 - PyCharm


Object counter Arduino - feedback via display, audio en LEDs

7 februari 2021


In een recent project is er behoefte aan een custom object counter welke voorzien is van een optische teller-sensor, een up-count en reset button, een LED display om de actuele tellerstand door te geven, een serie LEDs welke interacties aangeven en een audio-alarm om aan te geven wanneer een nieuw vooraf ingesteld aantal behaald is. 

Om dit prototype kostenefficient te ontwikkelen is gebruik gemaakt van het Arduino platform. De benodigde processingkracht is beperkt, er is geen interactie met internet noodzakelijk en input/output triggers kunnen allen op logische TTL niveaus plaatsvinden. Daarnaast is het noodzakelijk dat bij een behaalde tellerstand een trigger doorgegeven kan worden aan een opvolgend proces waarin een stappenmotor aangestuurd wordt. 

Het resultaat is een kostenefficiënt, betrouwbare teller welke naar wens uitgebreid kan worden. Zodra de eindconfiguratie bepaald is, wordt de teller in een passende behuizing geplaatst en voorzien van connectoren voor praktische montage, gebruik en onderhoud. 

Raspberry Pico - MicroPython 

2 februari 2021


Afgelopen maand heeft Raspberry een nieuwe microprocessor op de markt gebracht, de Raspberry Pico voor onder de € 5. Deze kleine, krachtige uProcessor biedt talloze nieuwe mogelijkheden. Een groot verschil met de Arduino omgeving is dat de Pico ondersteund wordt door Micro Python, de kleine broer van Python. 

Een belangrijke test voor mij is de eenvoud in ondersteuning van NeoPixels en het gebruik van digitale en analoge GPIO poorten. Binnen de Raspberry Pico omgeving is dit een heel toegankelijke omgeving. Met 3 analoge IO poorten, ondersteuning van I2C, SPI en UART lijkt het haast wel een Zwitsers zakmes onder de development boards. 

Het gemak van een development board zoals de Arduino en de kracht en eenvoud van de Python omgeving zoals bij de Raspberry's gaan hier samen in een kostenefficiënt board. Het biedt mij talloze mogelijkheden voor het ontwikkelen van prototypes.


Python Webscraping - Scannen van het aantal views op YouTube met Beautifulsoup BS4

26 januari 2021


Hoe mooi zou het zijn als er een scheepsbel rinkelt bij iedere nieuwe subscriber op een service, of een grote teller welke bij de entree van een pand aangeeft hoeveel nieuwe views of pagina visits er de afgelopen 24 uur hebben plaatsgevonden. Dat wat zich online afspeelt kan verbonden worden met de fysieke wereld, door interactie tussen webpagina's en processoren zoals Raspberry, Arduino, ESP32 of STM32's mogelijk te maken.

Een belangrijk onderdeel hierin is het monitoren van variabelen welke op webpagina's getoond worden, zoals bijvoorbeeld het aantal views van een YouTube filmpje, het aantal likes op een Facebook post of het aantal opmerkingen bij bij LinkedIn bericht. Door het inzetten van webscraping is het mogelijk met vaste tijdsintervallen de status van dit soort variabelen op te zoeken en vast te leggen in een logfile. Deze logfile wordt ingezet om vooruitgang of achteruitgang te meten, waardoor er een dataset ontstaat waarmee processors getriggerd kunnen worden. Het real-time aansturen van lampen, alarmbellen, relais, stappenmotoren, servo's en weergave op displays wordt hiermee mogelijk.

In mijn onderstaande proof of concept wordt een lijst van YouTube filmpjes met vaste tijdsintervallen gescand op het aantal views. Hiervan wordt vastgelegd wat de titel, het aantal views en het moment van registratie is. De variabele 'vviews' is numeriek en stuur de GPIO poorten van een Raspberry aan. De resultaten van de scans worden tevens opgeslagen in een CSV file welke bijvoorbeeld in Excel kunnen worden uitgelezen in een dashboard van een BI tool worden weergegeven.

Single Line Art - 3D printen op ABB Robotarm

20 januari 2021


Met mijn recente training op de 3D print ABB Robotarm is er een compleet nieuwe wereld opengegaan. Een wereld waar 3D printen en single line art samenkomen. Op basis van een tekening uit 1 enkele lijn is het mogelijk hier een grote versie van te printen welke als decoratie-object gebruikt kan worden.

De basistekening wordt omgezet naar een vectorfile welke met de juiste dimensies (hoogte en dikte) wordt vertaald naar een svg file. Deze wordt vervolgens in het 3D print voorbewerkingsprogramma omgezet naar een g-codefile. Nadat deze ingelezen is in de software voor de aansturing van de robotarm is het wachten op het resultaat. 

De afmeting van deze 3D printer zijn indrukwekkend groot. En door de grote nozzle 8-12 mm zijn de snelheden om 3D te kunnen printen aanzienlijk. Hiermee is het mogelijk om grote decoratieve objecten te creëren in diverse materialen.  

SMS Messaging vanuit Arduino/ESP32/STM32 compatible omgeving 

11 januari 2021


De afgelopen dagen heb ik een LoRa Hub ontwikkeld. Wanneer er gebruik gemaakt wordt van een rapportage- en management systemen, komt het voor dat er bij het overschrijden van een bepaalde kritische waarde actief gealarmeerd moet worden. Denk hierbij aan een te hoge temperatuur, een te lage waterstand, het breken van glas of het openen van deuren of afgesloten ruimten. Een handig systeem hiervoor is SMS. SMS'jes kunnen immers ontvangen worden op een persoonlijk mobieltje of afgevangen worden door een SMS receiver welke andere processen in gang zet.

Om laagdrempelig de mogelijkheid te hebben om SMS'jes te kunnen versturen heb ik een ESP32/STM32/Arduino compatible omgeving gecreëerd waarmee een SMS message verstuurd kan worden. Belangrijk hierbij is dat de inhoud van de SMS dynamisch opgebouwd kan worden. Zo kan de inhoud aangeven wat de mate van urgentie is, wat de gemeten waarde is, de hoeveelste melding het is en vanuit welke GPS coördinaat de melding plaatsvindt. 

Wanneer van toepassing, kan de SMS messaging plaatsvinden vanuit een batterij gevoede omgeving. In slaap-modus is een verbruik van 1.0mA haalbaar. En door slim koppelen aan deep-sleep mode is een verbruik van zelfs de onder 200µA mogelijk. Dit biedt talloze mogelijkheden voor een off-the-grid alarm messaging. 

3D Print autodeur 90x60cm voor NEKAF legerjeep met ABB robotarm

8 januari 2021


Samen met mijn broer bezit ik een ruim 60 jaar oude NEKAF legerjeep. Deze jeep is standaard niet voorzien van deuren. Jaren geleden hebben we hiervoor houten deuren gemaakt maar de tand des tijds vraagt om een upgrade. Met de beschikking over een grote 3D printer bij de Spark Makers Zone, kwam de mogelijkheid tot voor een robuuste 3D geprinte versie binnen handbereik. 

Nadat ik vanuit een overtrekmodel een een 3D tekening had gemaakt, is deze na het slicen voorbewerkt in RoboDK. Vervolgens is dit ontwerp op de ABB robotarm uitgeprint in zowel een bestuurder- als een bijrijder versie met een formaat van 90 x 60 cm. Het resultaat mag er zijn. En de CEAD polypropylene 30% glass fiber met UV stabilizer blijkt uitermate stevig materiaal. 

 

ESP32 LORA Controller board - Long Range, Low Power - sensor management en rapportage

6 januari 2021


De afgelopen twee weken heb ik een LoRa prototype ontwikkeld waarmee op afstand monitoring plaatsvindt van een agriculture environment. LoRa is een techniek waarbij Long Range, Low Power gecombineerd wordt en waarbij over langere afstanden kleine pakketjes informatie overgedragen kunnen worden. Hiermee is het mogelijk sensors voor vochtigheid, temperatuur, waterstand, CO2 uitstoot op verschillende locaties te plaatsen en centraal inzicht te houden met een management dashboard.

Door gebruik te maken van LoRa kunnen sensors meerdere jaren informatie versturen vanuit een enkele batterij. Door gebruik te maken van zonnepanelen is het mogelijk om een off-the-grid installatie te ontwikkelen waarbij bewatering automatisch en gecontroleerd plaatsvindt en waarbij kritische waarden als vochtigheid, temperatuur continue gerapporteerd worden. 

Gebruik makend van het ESP32 platform is connectiviteit naar sensors vrijwel onbeperkt. Geïmplementeerde algoritmen activeren waterpompen, richten de zonnepalen voor een optimale opbrengst. En indien noodzakelijk wordt een SMS verstuurd zodat er op afstand ingegrepen kan worden. 


 

Voor nieuwsberichten uit 2020

1 januari 2020 - 31 december 2020


Klik hier