Inhoudsopgave:
- Stap 1: Stand-alone multiplexer
- Stap 2: Processorcontrole
- Stap 3: Het RETOUR-pad
- Stap 4: De hardware
Video: HAL MULTIPLEXER: 4 stappen
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:16
(Bijgewerkt op 24 mei 2019, toekomstige updates volgen)
Hoi. Ik las op een ander forum (weet niet meer welke?) van deze man die op zoek was naar een slimme manier om het niveau van een "vloeistof" in een grote (diepe) tank te meten? Het probleem voor hem was dat er maximaal 40 stuks nodig waren. van sensoren, en wat voor soort? Hij vroeg naar het gebruik van 'HALL-effect'-sensoren. Het probleem was dus de bekabeling. Er zouden 40+ leads zijn. Nou, dit maakte me wakker om hierover na te denken! Gewoon uit nieuwsgierigheid begon ik het gedrag van die Hallen te onderzoeken (ik heb dit niet direct nodig, maar … als een nerd zoals ik struikelt over zoiets, kun je het gewoon niet laten staan). Ik kwam met de voor de hand liggende oplossing om een multiplex scanner te hebben.
Begin dus ALTIJD met een zoektocht naar reeds bestaande oplossingen. Er zijn +++ van zowel Hall- als multiplexen van alle soorten. Om deze twee te combineren. Ik heb er twee versies van gemaakt.
De 1e noem ik de:”Stand Alone”, De 2e noem ik de:”Prosessor Controlled”
Van geen van beide heb ik NOG GEEN PCB gemaakt (lees verderop in de tekst, waarom nog niet), alleen schema's voor beide en PCB-layout voor de”Stand Alone”. Toch heb ik de functie van de "Stand Alone" getest op een break-out unit.
Stap 1: Stand-alone multiplexer
Sta alleen.
Hier gebruik ik de bekende 4017 decade-teller en de 555 als oscillator. Ik begon met een HALL-unit met de sensor SS49S, (een uitbraak), en Mosfet's 2N7000.
Ik heb ze tech bijgevoegd. info hiervan als PDF en als BMP-bestanden aan het einde, ook de PCB-lay-outs
Mijn "IDEE" was om de "Bron" van de FET te verbinden met de HALL-sensor GND om deze te activeren. En nu de uitlezing krijgen van de HALL wanneer een magneet deze activeert.
Verbind de 555-uitgang 3 met CLK-pin 14 op 4017 en de Q9 (telnummer 10) pin 11 met de RESET-pin 15 van de 4017 om een continue lus van de 4017 te verkrijgen. Verbind de Q0 (telnummer 1) pin 3 van de 4017 voor sensor 1 naar beide FET GATE's voor T1 en T1.1 via een weerstand, (een weerstand misschien niet nodig, maar zet hem daar toch), De 1e FET T1 DRAIN sluit aan op de GROND van de HALL-sensor en activeert deze. Dan geeft het”signaal” van de HALL”0V” als een magneet de sensor benadert. Het HALL-signaal is verbonden met de 2e FET T1.1 SOURCE.
De DRAIN van de FET T1.1 sluit aan op LED1 Kathod. De anodes van alle LED's zijn met elkaar verbonden en verbinden met +5V via één weerstand (er zal slechts één LED tegelijk branden, dus er is slechts één weerstand nodig)
Ik heb ook een BUZZER parallel aan de LED #8 aangesloten, waardoor het alarm op het laagste niveau wordt gegeven.
En voila. De LED gaat branden wanneer een magneet dicht genoeg bij de sensor is (maar NIET helemaal zoals ik zou willen)
Hetzelfde geldt voor al deze sensoren respectievelijk T2 & T2.1, T3 & T3.1… etc.
Laat de oscillator 555 draaien met wat 10KHz en "knipperen" is niet merkbaar.
*Ik zal later updaten over de waarden van de RES's & CAP voor de 555-oscillator.*
Ik krijg het niet berekend, WAAROM?? Het werkte een beetje, maar na een iteratie (met enkele veranderingen), van tientallen keren, stopte ik, dronk een koffie, een sigaret. (Ik weet het, niet), en een eigen brainstorm.
Goh… ik lees ze tech.specs, (zoals het lezen van de bijbel, met veel respect ervoor), De resultaten werden mij duidelijk door de “feiten” te accepteren. De techniek. specificaties. daarvan zijn de componenten absoluut "juist", mijn verbindingen zijn ook in orde, dus…
MIJN FOUT! (Ik weet dat U dat wist.)
De HALL-sensor SS48E is een ANALOGE sensor.
Met een Vcc +5V en geen magnetische flux is de output precies ½ de spanning 2, 5V. Afhankelijk van de polariteit van de magneet bij het naderen van de sensor, gaat de uitgang naar +5V of naar GND.
Dat was mijn dilemma. Ik kon gewoon geen "heldere" +V of 0V krijgen. Ik heb een andere sensor "3144" besteld, dit is een "LATCHING"-type met een Open Collector-uitgang. Deze sensor heeft een bedrijfsspanning van 4,5 tot 24V. Heb deze nog niet, daarom heb ik ze ook nog geen PCB's besteld, moet deze eerst testen.
Ik ben er vrij zeker van dat iemand commentaar zal geven als: "Waarom zou je dit überhaupt multiplexen? Kun je niet gewoon rechtdoor gaan om die LED's te laten branden vanaf de ingangen van de sensor?".
Eerlijk genoeg. Eigenlijk ben ik, zoals beschreven, met dit ding begonnen om de "lead's" -telling naar die sensoren te krijgen, en met deze oplossing doet het dat niet zo veel. Eigenlijk ben ik begonnen met de "Prosessor Control" maar bij het uitvoeren van dit pad struikelde ik ook over deze oplossing (houd er rekening mee: ik heb nooit de bedoeling gehad om dit voor eigen gebruik te bouwen, maar gewoon voor het belang van dingen). Dus deze "Stand Alone" is gewoon een "ding", maar het kan iemand ideeën geven voor hun eigen builds.
Toen begon ik na te denken of er "ELKE" voordelen zijn om dit soort oplossingen te gebruiken?
Ik bedacht iets: "Als de sensoren zich op grote afstand van de besturingseenheid bevinden, kunnen er problemen zijn met de impedanties. De sensoren zijn van het type "Open Collector" en met een geschikte pull-up-weerstand kun je meer definitieve niveaus krijgen Eigenlijk heb ik deze Ible gemaakt voor de HALL-sensoren, maar je zou gewoon elke soort sensor/schakelaar kunnen gebruiken.
UPDATE: 24 mei
Ik heb 47K-weerstanden en een 0.1uF (100nF) cap.to de 555 gebruikt. Ik heb de oscillatie niet uitgecheckt. de frequentie, maar op het oog lijkt het ongeveer OK., geen merkbaar "flikkeren".*
Ik heb ze "vergrendelende" zalen. Ik heb die "signalen" (uitgangen) van de sensoren op de lijn aan elkaar geknoopt. Ze zijn ook samengebonden op de printplaat. U kunt dit doen omdat het Open Collector-uitgangen zijn en er slechts één tegelijk wordt geactiveerd.
Loopt perfect. Ik heb het getest met een Neodyme-magneet, 20x10x3mm groot en GEEN obstakels in de weg. In de vrije lucht werkte het precies zo, dus … op een afstand van ~30 mm. Het werkte zeker prima met een afstand < 25 mm.
Nu heb je een 10P kabel nodig, (10P= 10leads, 1 lead voor elke sensor naar de Latch, +1 lead voor de Vc +5V (common) en 1 lead voor het retoursignaal (common). Je kunt een 10P "flat -kabel" oftewel een "lintkabel" met bijpassende IDC-connectoren voor de bedrading naar de units.
Je hebt een kleine PCB nodig voor elke "sensor" -eenheid, inclusief: de "sensor" zelf en de IDC-connector. Ik zal hier later een layout van maken en updaten.
GRAAG EEN COMMENTAAR, want ik vind het niet interessant om hiermee door te gaan als het niemand interesseert!!
Stap 2: Processorcontrole
De eenheid "Prosessorgestuurd". NOG GEEN TEST gedaan. Je zou dit een I2C-lijn kunnen noemen. Hier gebruik ik een "Attiny 84" -prosessor (elke controller zal het doen). samen met de 74HC595. Het "hoofdidee" hier is dat ik maar 4 draden nodig heb (+ twee stroomkabels die daar kunnen worden doorverbonden).
De 4 draden zijn: DATA, CLOCK, STROBE (LATCH), RETURN. Je zou de STROBE (LATCH) samen kunnen binden met de CLOCK-lijn aan de ontvangende kant, zodat je een lijn minder hoeft te tekenen, maar deze oplossing zou je in het programma doen nadenken, omdat nu de "uitgangen" in de ontvangende eenheid zal de KLOK volgen. Dit is NIET aan te raden, want als u meer ontvangende eenheden "aaneenketent", verliest u gemakkelijk de controle in het programma "waar gaan we heen?"
Stap 3: Het RETOUR-pad
Het RETURN-pad. Omdat de”Latching”-sensor 3144 een”open collector”-uitgang heeft, kunnen ze allemaal aan elkaar worden”verbonden”, waardoor slechts één lijn nodig is.
Ewery "remote unit" scant op 8 HALL-sensoren. U kunt meerdere afstandsunits gebruiken in een "daisy-chain"-opstelling.
Het wordt aanbevolen om een "dummy-load" te plaatsen op de laatste laatste eenheden (de 8e), sensor.
Hiermee kunt u in uw programma bevestigen dat de DATA door alle eenheden is gegaan.
OPMERKING: als de hoofdregeleenheid ver weg is, heb je line-drivers nodig voor de signalen (ik heb hier geen informatie over?).
Het RETURN-pad heeft mogelijk een externe "pull-up"-weerstand nodig van ongeveer ~10's Kohms, (de ingebouwde pull-up-weerstand van de processor heeft een vrij "HOGE" impedantie en is hier misschien niet goed genoeg).
Ik kom later terug als ik ze "Latching Halls" heb en heb getest.
Na het testen zal ik ze definitieve PCB-layouts maken en deze ible updaten. Dan plaats ik een bestelling (om ze te ontvangen duurt een paar weken), en daarna zal ik dit opnieuw bijwerken. Ik zal hier ook een programma voor maken
Stap 4: De hardware
Goh.. Ik vergat bijna de oplossing van het mechanische deel van het gebruik. Eerlijk gezegd heb ik het alleen in mijn hoofd. Het gaat ongeveer als volgt, (ik heb GEEN foto's of schets hiervan):
Je hebt een drijver, bal, cilinder (naar voorkeur), of ….. Aan deze drijver bevestig je een magneet of magneten (met een cilindrische drijver kun je meerdere magneten bevestigen, waardoor je een "overlappende" functie krijgt).
Het is het beste om de drijver in een "buis" of op een rail te plaatsen om een constante afstand tot de sensoren te bereiken.
Maak nog een "buisje", (isoleert van de vloeistof), en bevestig daar sensoren op afstand van elkaar.
1. Door ze sensoren op een bepaalde afstand te plaatsen, kun je de magneet(en) zo toewijzen dat ze twee (of meer) sensoren tegelijk activeren. Op deze manier krijg je een soort dubbele "gevoeligheid".
2. Met (meerdere) magneten die de afstand tussen twee sensoren reiken, kun je een behoorlijk lange afstand afleggen. Ik zal een foto maken van mijn suggestie en deze later bijwerken. Ik voeg hier de lay-outs toe die ik nu heb, volg ze niet blindelings (zoals gezegd, ik heb ze nog niet), en ze tech. gegevens van de componenten. Ik heb geen stuklijst, omdat ik al deze spullen al had, maar alle componenten zijn heel gewoon en bijna overal te krijgen: e-bay, Bangood, Ali, enz.
Reageer hier alstublieft op My ible, zodat ik feedback krijg of ik iets op het spoor ben?
Stuur me gerust vragen via dit forum of rechtstreeks aan mij: [email protected]
Aanbevolen:
Game Design in Flick in 5 stappen: 5 stappen
Game-ontwerp in Flick in 5 stappen: Flick is een heel eenvoudige manier om een game te maken, vooral zoiets als een puzzel, visuele roman of avonturengame
Automatisch IoT Hal Nachtlampje Met ESP8266 - Ajarnpa
Automatisch IoT Hallway Night Light Met ESP8266: ik begon dit project geïnspireerd door een traplicht van een andere instructable post. Het verschil is dat het brein van het circuit ESP8266 gebruikt, wat betekent dat het een IoT-apparaat zal worden. Wat ik in gedachten heb, is om het nachtlampje in de gang te hebben voor de
Zelfstudie: hoe Arduino meerdere apparaten met hetzelfde adres bestuurt met behulp van TCA9548A I2C-multiplexer - Ajarnpa
Tutorial: hoe Arduino meerdere apparaten met hetzelfde adres bestuurt met behulp van TCA9548A I2C-multiplexer: Beschrijving: De TCA9548A I2C-multiplexermodule is bedoeld om apparaten met hetzelfde I2C-adres (tot 8 hetzelfde adres I2C) aangesloten op één microcontroller mogelijk te maken. De multiplexer fungeert als poortwachter en stuurt de commando's naar de geselecteerde set o
De Peep-Hal: een kijkgaatje ter grootte van HAL-9000 - Ajarnpa
De Peep-Hal: een kijkgaatje ter grootte van HAL-9000: Toen ik gisteren door de gangen van mijn slaapzaal liep, realiseerde ik me hoe het licht dat door het kijkgaatje scheen er bijna precies uitzag als een wit HAL 9000-licht. Dus besloot ik om een klein LED-lampje te maken dat in het kijkgaatje zou passen, en het l
HAL 9000, SAL 9000 Alexa Pi Hybrid - Ajarnpa
HAL 9000, SAL 9000 Alexa Pi Hybrid: Ik heb altijd al een werkende versie van HAL 9000 willen hebben (maar zonder de moorddadige bedoelingen). Toen Amazon Alexa uitkwam, kreeg ik er meteen een. Binnen de eerste dag vroeg ik het om, "open de pod bay-deuren" en het antwoordde prompt: "Het spijt me D