Voor weinig geld zijn online kleine printplaatjes met de meest uiteenlopende sensoren te koop. Deze sensormodules zijn primair ontwikkeld voor gebruik met 5 volt microcontrollers maar minder eenvoudig te gebruiken met de fischertechnik elektronicamodules en klassieke ‘Silberlingen’ die zich in het 9 volt domein bevinden. Het hier besproken adaptor-printplaatje werd ontworpen om de compatibiliteit en toepassingsmogelijkheden van deze sensoren te verbeteren. Het faciliteert de nogal uiteenlopende pin-volgorde van de 3-polige stekkers van de diverse boards. Tevens verzorgt het de (lagere) voedingsspanning voor het sensorboard en biedt het de mogelijkheid te werken met 2,5 mm fischertechnik stekkers.
De sensorboards op de foto hiernaast zijn ontworpen voor gebruik bij projecten die zijn opgebouwd met universele microcontroller-boards zoals de Arduino, micro:bit, ESP-32 of Raspberry Pi. Op de foto onder andere een PIR-bewegings-, temperatuur- en vochtigheids-sensor. Ook de passieve reed-schakelaar en trillingssensor zijn als board verkrijgbaar op een boardje met 3-polige stekker. De sensorboardjes worden voor lage prijzen aangeboden en zijn té leuk om niet mee te spelen.
Aansluiten op een Arduino is betrekkelijk eenvoudig. Hiervan zijn ook online talloze succesverhalen te vinden. Maar zoals je weet knutsel ik graag met fischertechnik. Daarom leek het me tijd om eens te onderzoeken welke aanpassingen nuttig zijn om deze sensorboards gemakkelijker te kunnen gebruiken met fischertechniks eigen TX en TXT controller of de klassieke ‘Silberlingen’ elektronicamodules. Hierbij lopen we namelijk tegen enkele incompatibiliteits-hindernissen aan.
Deze sensorboards vereisen zonder enige uitzondering een voedingsspanning van 5 volt. In het verleden onderzocht ik al eens hoe volgens dit principe de Hall-effect-, LDR-, aanraak-schakelaars en infrarood-obstakelsensoren bruikbaar kunnen worden gemaakt. Om de 5 volt voedingsspanning te kunnen aanbieden, ontwierp ik hiervoor enkele voedingsmodules (afbeelding hiernaast).
Zodra de 5 volt voedingsspanning voorhanden is, laten de sensorboards zich goed gebruiken op de ingangen van de reguliere microcontrollers en de TX- en TXT-controller. Voor gebruik van onaangepaste boards met de 'Silberlingen' moeten we echter nog een z.g. 'Grundbaustein' tussenschakelen om het signaalniveau van de uitgang detecteerbaar te maken.
Een andere mogelijkheid is daarom de sensorboards geschikt te maken voor een voedingsspanning van 9~11 volt, die direct uit de TXT-controller of van de 'Silberlingen' kan worden betrokken.
Sommige sensormodules, zoals de IR-obstakelsensor, zijn uitgerust met een LM393 comparator voor een scherper (soms instelbaar) detectieniveau en minder ruis rond de detectiedrempel. De LM393 kan een voedingsspanning van maximaal 36 volt aan, dus zou in theorie zonder problemen direct op een hogere voedingsspanning gebruikt kunnen worden. Het probleem is echter dat de voorschakelweerstanden van de eventueel gemonteerde indicator- (en/of IR-)LEDs hier vanzelfsprekend niet op zijn afgestemd. Zonder aanpassingen lopen deze bij deze bedrijfsspanning daardoor grote kans binnen afzienbare tijd door te branden.
Enkele mogelijkheden om de obstakel-sensoren aan te passen voor gebruik op 9 volt, werden in het recente verleden al eens door mij onderzocht. De afbeelding hiernaast toont enkele van deze experimenten met IR-obstakelsensoren. Links een module waarvan de voorschakelweerstanden (smd) verhoogd zijn, in het midden een waar dit met normale weerstanden is gedaan en rechts een oplossing waarbij een 5 volt spanningsregulator is opgesoldeerd. De uitgangen van deze aangepaste sensoren zijn echter elektronisch nog steeds niet compatible met de 'Silberlingen' waardoor het noodzakelijk blijft een 'Grundbaustein' per sensor tussen te schakelen.
Wie de diverse sensorboards nuttig wil gebruiken zonder microcontroller, zal tevens met incompatibiliteit tussen de uitgangs- en ingangssignalen rekening moeten houden. Microcontrollers beschikken dikwijls over voldoende ingangen met een hoge ingangsimpedantie. Deze ingangen trekken nauwelijks stroom en bemonsteren eigenlijk alleen het aangeboden spanningsniveau van de aangesloten sensoruitgang. Of een logisch ‘hoog’ of actief signaal door +5 volt, of juist 0 volt, wordt gerepresenteerd is daarbij zelfs irrelevant. De logische interpretatie (‘positieve’ of ‘negatieve’ logica) van de fysieke spanningsniveaus van de uitgang kan immers eenvoudig in de programmatuur aangepast worden.
De klassieke fischertechnik elektronicamodules, zoals de 'Silberlingen', vereisen aan hun ingangen echter een stroomschakelend ingangssignaal. Deze modules zijn elektronisch opgebouwd volgens de z.g. diode-transistor techniek. Een gevolg hiervan is dat de 'Silberlingen' z.g. ‘negatieve logica’ hanteren. Hierbij dient voor een logische ‘1’, het ingangssignaal via de ingang naar nul volt niveau getrokken te worden. De uitgangen van de sensorboards kunnen dit niet. Hun logische uitgangssignaal wordt door een spanningsniveau gerepresenteerd dat niet in staat is de ingang van een 'Silberling' naar afdoende nul-niveau te trekken.
Praktischer zou dus zijn als de sensorboards ‘stroom-uitgangen’ zouden hebben. Dit zou de bruikbaarheid voor moderne microcontrollers niet verstoren, maar ze tevens bruikbaar maken voor gebruik met de 'Silberlingen'. Het zou dan zelfs mogelijk worden gebruik te maken van z.g. ‘wired ORs’. En als elk uitgangssignaal tevens geïnverteerd voorhanden is, valt bovendien de mix van ‘positieve logica’ en ‘negatieve logica’ gemakkelijker te maken.
Indien we een universele module voor de diverse sensorboards zouden willen ontwikkelen, zou deze idealiter voor de volgende problemen een oplossing moeten bieden:
Het schema hierboven toont de universele adaptor-printplaat waarmee alle bovenstaande eisen kunnen worden ingewilligd. Om optimale compatibiliteit met de'Silberlingen' te garanderen werd het originele ontwerp van uitgangstrap met inverterende vervolgtrap als uitgangspunt genomen.
De kleine weerstand van 82Ω aan de uitgangen lijkt een eenvoudige stroombegrenzing als beveiliging tegen direct aansluiten van een uitgang aan de positieve voedingsspanning. In de Silberlingen werden echter origineel BC238 transistoren gebruikt met een maximale collectorstroom van 100mA. Dit zou betekenen dat de uitgang (kortstondig) ‘beveiligd’ zou zijn tot een voedingsspanning van 8,2 volt. De keuze voor de tegenwoordig gangbaarder (en goedkoper) universele NPN-transistor BC547 in de zelfbouw'Silberlingen' is dus een prima keuze. Het schakelgedrag van de modules zal er niet door wijzigen terwijl deze transistor een nog hogere maximale collectorstroom heeft.
De spanning van het uitgangssignaal bedraagt ongeveer de voedingsspanning en het geheel kan, ondanks de spanningsregelaar, in de praktijk meestal nog steeds vanaf 5 volt gebruikt worden. Het schema leidde tot het printplaat-ontwerp in figuur 5. Voor de duidelijkheid is hierbij op elke mogelijke positie een 3-polige connector weergegeven. In werkelijkheid wordt vanzelfsprekend alleen de voor de aangesloten sensor toepasselijke positie gebruikt.
Als het sensorboard dit niet al zelf biedt, kunnen optioneel controle LEDs worden gemonteerd waarop de uitgangen kunnen worden afgelezen. De voeding en aansluiting van de uitgangssignalen is mogelijk via , of via de optioneel geplaatste witte JST-connector(en). Omdat er uitsparingen in de zijwanden moeten zitten als er liggende (haakse) JST-connectoren worden gebruikt, ontwierp ik twee varianten van de houder.
De smd-onderdelen bevinden zich na montage van de printplaat in de houder aan de onderzijde. In de behuizing is een halfronde uitsparing opgenomen voor de kleine radiale elco C2 aan de onderzijde van de printplaat. Deze elco is in de praktijk niet noodzakelijk en was alleen bedacht om te beschermen tegen een bijvoorbeeld door motoren sterk met ruis ‘vervuilde’ ingangsspanning.
Op de foto hiernaast is te zien dat ook de LED-aanraakschakelaar op het adaptorboard gebruikt kan worden. Maar misschien zal er echter voor deze aanraak-schakelaars in de toekomst wel nog een wat minder kwetsbare behuizing worden ontworpen...
Het sensorboard van keuze wordt simpelweg op de toepasselijke aansluitpositie gesoldeerd. Soms is een kleine voorbereiding van de sensor-printplaat nodig. Zoals op de foto bovenaan deze pagina te zien is, worden veel van deze sensoren met, vaak haakse, aangesoldeerde 3-polige connectoren geleverd. Als er geen instelmogelijkheden op de bovenzijde van de sensorprint bereikbaar hoeven te blijven, kan de sensorprint in dat geval op de kop in een 3-polige connector met de juiste pin-volgorde worden gestoken.
Iets meer werk, maar een nettere oplossing is de gemonteerde connector te verwijderen en de verbinding met de printplaat te maken met drie korte draadjes. Voor het fixeren van het sensorboard op de module-print behaalde ik bij beide montagemogelijkeden goede resultaten met een lijmpistool. Op deze manier liet zich zelfs de watersensor (zie foto) stevig monteren.
De verschillende aansluitmogelijkheden zijn hiernaast te zien. De blauwe posities A t/m H geven de mogelijke aansluitpunten voor de mogelijke sensorboards aan. De optionele elco, die aan de onderzijde van de print kan worden gesoldeerd, is grijs weergegeven. Ook de LEDs aan de uitgangen zijn optioneel en daarom in grijs weergegeven. Ze zijn niet nodig als het gebruikte sensorboard reeds eigen indicator-LEDs heeft. De voedingsspanning en uitgang(en) kunnen desgewenst met fischertechnik stekkers worden aangesloten in de betreffende connectorgaten in de printplaat. Deze aansluitpunten zijn dubbel uitgevoerd zodat meerdere sensormodules eenvoudig kunnen worden doorgelust.
Te losse stekkerverbindingen kunnen worden opgelost door de lamellen van de stekkers voorzichtig met een mesje wat wijder uit elkaar te buigen en de stekker niet helemaal tot op de printplaat door te drukken.
Wie op aansluithoogte of fischertechnik stekkers wil besparen, en de mogelijkheid heeft zelf snoeren met JST-PH connectoren te maken, kan er optioneel voor kiezen om in plaats van de fischertechnik stekkers (een of) twee staande en/of liggende vierpolige JST-PH connectoren te gebruiken. Er zijn in de behuizing drie plekken beschikbaar waar de aldus naar believen uitgeruste adaptor-printplaat met een kleine 6mm M2 schroef kan worden gemonteerd.
Passieve sensoren, zoals de trillings-sensor, een los reed-contact of een (bedraade) drukknop, kan tussen posities A en H worden aangesloten. De diverse driepolige aansluitpunten bieden een scala aan aansluitmogelijkheden voor de actieve sensorboards die een (5 volt) voedingsspanning vereisen.
Aansluitmogelijkheid E kan worden gebruikt voor LDR-, IR-obstakel- en temperatuur-sensorboards, maar ook voor de LED-aanraakschakelaars. Positie F is in principe hetzelfde, maar door het verschil in positie maakt deze het mogelijk langere varianten van deze sensorboards te plaatsen, of het geheel onder te brengen in een gesloten behuizing. Ook voor de tril-/bewegingssensorboard was dit de juiste aansluitplek. Mijn Hall-Effect-sensorboards plaatste ik op positie G, terwijl de vochtigheidssensor een plaatsje kon vinden op positie B aan de rand van de printplaat (zie foto). Voor de kleine PIR-bewegingssensoren is positie D de beste keuze, het sensorboard reikt dan precies tot de rechter zijkant. Maar deze sensor kan bijvoorbeeld ook ondersteboven met een connectorvoet op positie C worden aangesloten (zie PIR-bewegingsmelder op eerste foto van de reeks hierboven). Kortom, op de adaptorprintplaat is altijd wel een plaatsje voor een bepaald sensorboard te vinden.
Een module met een PIR-bewegingssensor kwam handig van pas voor het op commando starten van een demonstratiemodel met vier LED-verkeerslichten op de laatste bijeenkomst van de Nederlandse fischertechnik-club. Dit model, hieronder zichtbaar op de grote foto, begint een kleine lichtshow zodra een geïnteresseerde op de tafel toe komt lopen. Dit model wordt geregeld met een Arduino Mega Pro Mini waarbij de diverse LED-verkeerslichtjes worden gevoed via enkele modules met kortsluitvaste vermogensuitgangen. Maar met de hier besproken adaptor-printplaat is het net zo eenvoudig mogelijk een dergelijke regeling op te bouwen met de TXT-controller, of zelfs met de traditionele 'Silberlingen'.
In het verleden gebruikte ik de IR-obstacle sensoren al eens om draaisnelheid te meten door zelf de dubbele tachometer te bouwen. Op de foto een mogelijke tachometer met de Hall-Effect sensor in de adaptor-module. Een beweging van de magneet langs de sensor triggert een hardware interrupt waardoor de omwentelingssnelheid kan worden bepaald. Hetzelfde principe wordt gebruikt als het pulssignaal van de fischertechnik encodermotor (nr.153422) op een telleringang van b.v een TXT-controller wordt aangesloten. Een dergelijke externe opbouw kost weliswaar meer ruimte, maar de meting is (in elk geval in theorie) preciezer. Immers: door dichter bij het daadwerkelijke eindpunt van de beweging te meten, in plaats van bij de oorsprong in de motor, wordt mogelijke slip of speling van de (tandwiel-)overbrenging automatisch verdisconteerd.
De adaptor-module bewijst inmiddels reeds goede diensten in diverse modellen. Meer informatie, foto’s en een link naar een filmpje zijn te vinden op de projectpagina online. De 3D-drukbestanden van enkele varianten van de houder die ik voor de adaptor-print ontwierp, is voor iedereen die ze wil (laten) printen te downloaden. Er zijn op dit moment nog voldoende losse printplaatjes met de kant-en-klaar gemonteerde smd-componenten bij mij op voorraad.
Voor wie het (printplaat-)ontwerp nog wil verbeteren zijn het schema, printplaat-ontwerp en de 3D-drukbestanden beschikbaar op GitHub, maar wie direct aan de slag wil help ik vanzelfsprekend graag met voorgemonteerde en geteste adaptormodules. In overleg zijn alle sensoren met houder in (bijna) elke gewenste kleur leverbaar. Het vierpolige JST snoertje (nr. 337), de losse functionele printplaat zonder (nr. 338) en mét (nr. 339) JST-connectoren zijn los verkrijgbaar. Zie hiervoor de online catalogus met elektronica op deze site.