Elektriciteitsmeter op atmega. Amateurradiocircuits op meters
-20 dB schreef: |
Waarom zouden we de zaak niet met weinig bloedvergieten aanpakken? Als er zoiets bestaat als de bovengenoemde IZhTS5-4/8, met aparte segmentuitgangen? In de voorraad ongebruikte K176IE4 uit de Sovjettijd was er nog veel over (een teller/deler door 10 met een zevensegmentsdecoder en een overdrachtsuitgang, gebruikt om eenheden van minuten en uren te vormen in een elektronisch horloge, een onvolledige analoge - CD4026 - wat is de onvolledigheid, nog niet gekeken...) bij klassiek inschakelen voor LCD-bediening. 4 stuks - 2 per kanaal, + 2 stuks. 176(561)LE5 of LA7 - één voor enkele pulsvormers (contactbounce-onderdrukkers), de tweede - voor het vormen van een meander om de LCD-indicator te "verlichten"? Natuurlijk is de oplossing op MP mooier, maar op garbage is hij goedkoper, en kan alleen op de knie worden opgelost... Met MP-programmering heb ik het bijvoorbeeld moeilijk (tenzij iemand mij een kant-en-klare dump overhandigt ) - het is gemakkelijker voor mij met hardware. |
Nou, ik ben bereid om hier te wedden. Laten we de wiskunde doen. Om te beginnen de kosten:
1. PIC12LF629 (SOIC-8) - 40 wrijven. (~ $ 1,15)
2. Scherm van Motorola S200/S205/T190/T191 - ongeveer 90 roebel (~ $ 2,57). Bovendien is de resolutie 98x64 - teken en schrijf wat je wilt.
3. Bulk (SMD-snelkoppelingen, knoppen, SMD-condensatoren, enz.) in één oogopslag - ongeveer 50 roebel. (~ $ 1,42)
Totaal: ~180rub (~$5)
De behuizing, de batterij (ik zou de Lo-Pol-batterij van dezelfde C200-motorscooter kiezen - compact, ruim, goedkoop (relatief)) - we tellen deze niet mee, omdat beide nodig zijn in beide opties.
Nu uw optie:
1. LCI5-4/8 - ongeveer 50 roebel (~ $ 1,42)
2. K176IE4 (CD4026) - 15 roebel (~0,42$)x4=60 roebel (~1,68$)
3. K176LA7 - 5 roebel (~0,14$)x4=20 roebel (~0,56$)
4. Bulk (SMD-snelkoppelingen, knoppen, SMD-condensatoren, enz.) in één oogopslag - ongeveer 50 roebel. (~ $ 1,42)
Totaal: ~180rub (~$5)
Wat is het voordeel?
Laten we nu de prestatiekenmerken en functionaliteit schatten:
De versie met MK zal verbruik hebben maximaal 20 mA, terwijl ik in jouw versie 1,5...2 keer meer denk. Bovendien, in uw versie - de complexiteit (relatief) van een printplaat op 7 behuizingen + meerpotige ILC5-4/8 (waarschijnlijk dubbelzijdig), het onvermogen om het apparaat te upgraden (functionaliteit toe te voegen of te wijzigen) zonder te krijgen in het circuit (alleen op softwareniveau), het gebrek aan mogelijkheid om geheugen te organiseren voor metingen (tellen), voeding van minimaal 5V (met minder zul je de LCI niet zwaaien), gewicht en afmetingen. Er zijn nog veel meer argumenten te bedenken. Nu de optie met MK. Ik schreef al over het stroomverbruik - 20mA max. + de mogelijkheid van een slaapmodus (verbruik - 1...5 mA (voornamelijk LCD)), de complexiteit van het bord voor één 8-poots microschakeling en een 5-pins connector voor een Motorola LCD is zelfs belachelijk. Flexibiliteit (je kunt zoiets programmatisch doen, zonder het circuit of de kaart te veranderen - je haren gaan er rechtop van staan), de informatie-inhoud van het 98x64 grafische display kan niet worden vergeleken met de 4,5 cijfers van een 7-segment LCI. voeding - 3...3,5V (je kunt zelfs een CR2032-tablet gebruiken, maar Li-Pol van een mabyl is nog steeds beter). De mogelijkheid om meercellig geheugen te organiseren voor de meetresultaten (tellingen) van het apparaat - wederom alleen op softwareniveau zonder de schakeling en het bord te verstoren. En tot slot: de afmetingen en het gewicht zijn niet te vergelijken met uw optie. Het argument "Ik weet niet hoe ik moet programmeren" zal niet worden aanvaard - wie dat wil, zal een uitweg vinden. Tot gisteren wist ik niet hoe ik met het display van de Motorola S205 mobiele telefoon moest werken. Nu kan ik. Er is een dag verstreken. Omdat ik het NODIG heb. Uiteindelijk heb je gelijk: je kunt het aan iemand vragen.)) Dat is zoiets als dit. En het is geen kwestie van schoonheid, maar van het feit dat discrete logica zowel moreel als technisch hopeloos achterhaald is als het belangrijkste element van circuitontwerp. Wat tientallen koffers vereiste met een enorm totaal verbruik, de complexiteit van PP en enorme afmetingen, kan nu eenvoudig en natuurlijk worden geassembleerd met een 28-40 voet MK - geloof me. Nu is er zelfs veel meer informatie over MK dan over discrete logica - en dit is heel begrijpelijk.
Pulsteller is een serieel digitaal apparaat dat de opslag van een woord informatie mogelijk maakt en daarop een telmicrobewerking uitvoert, die bestaat uit het veranderen van de waarde van een getal in de teller naar 1. In wezen is de teller een reeks verbonden triggers op een bepaalde manier. De belangrijkste parameter van de teller is de telmodule. Dit is het maximale aantal afzonderlijke signalen dat door de teller kan worden geteld. Tellers worden aangeduid met ST (van de Engelse teller).
Pulstellers zijn geclassificeerd
● per telling modulo:
. BCD;
. binair;
. met een willekeurige constante telmodule;
. met variabele telmodule;
. in de richting van de rekening:
. summatief;
. subtractief;
. omkeerbaar;
● door de methode voor het vormen van interne verbindingen:
. met opeenvolgende overdracht;
. met parallelle overdracht;
. met gecombineerde overdracht;
. ring.
Optellen van de pulsteller
Beschouw een optelteller (Fig. 3.67, A). Zo'n teller is gebouwd op vier JK-flipflops, die, als er aan beide ingangen een logisch signaal "1" is, schakelen als er negatieve spanningsvallen optreden op de synchronisatie-ingangen.
Timingdiagrammen die de werking van de teller illustreren, worden getoond in Fig. 3.67, B. Ksi geeft de telmodulus aan (pulstelcoëfficiënt). De status van de linker trigger komt overeen met het minst significante cijfer van het binaire getal, en de rechter komt overeen met het meest significante cijfer. In de begintoestand zijn alle flip-flops ingesteld op logische nullen. Elke trigger verandert alleen van status op het moment dat deze wordt beïnvloed door een negatieve spanningsval.
Deze teller implementeert dus de sommatie van ingangspulsen. Uit de timingdiagrammen blijkt dat de frequentie van elke volgende puls twee keer minder is dan de vorige, dat wil zeggen dat elke trigger de frequentie van het ingangssignaal door twee deelt, wat wordt gebruikt in frequentiedelers.
Drie-bits aftrekkerteller met seriële overdracht
Laten we een drie-bits aftrekkingsteller met sequentiële overdracht bekijken, waarvan het circuit en de timingdiagrammen worden getoond in Fig. 3,68.
(xtypo_quote)De teller gebruikt drie JK-flip-flops, die elk in T-flip-flop-modus werken (flip-flop met telingang).(/xtypo_quote)
Logische 1's worden toegevoerd aan de ingangen J en K van elke flip-flop, daarom verandert elke flip-flop bij de aankomst van de dalende flank van de puls die wordt geleverd aan zijn synchronisatie-ingang C de vorige toestand. Aanvankelijk zijn de signalen aan de uitgangen van alle flip-flops gelijk aan 1. Dit komt overeen met het opslaan in de teller van het binaire getal 111 of het decimale getal 7. Na het einde van de eerste puls F verandert de eerste flip-flop van toestand : het signaal Q 1 wordt gelijk aan 0, a ¯ Q 1 − 1.
De overige triggers veranderen hun status niet. Na het einde van de tweede synchronisatiepuls verandert de eerste trigger opnieuw van toestand en gaat naar toestand 1 (Q x = 0). Dit zorgt voor een verandering in de toestand van de tweede trigger (de tweede trigger verandert van toestand met enige vertraging ten opzichte van het einde van de tweede synchronisatiepuls, aangezien het omvallen ervan tijd vergt die overeenkomt met de werkingstijd van zichzelf en de eerste trigger).
Na de eerste puls F slaat de teller de toestand 11O op. Verdere veranderingen in de tellerstand vinden plaats op dezelfde manier als hierboven beschreven. Na stand 000 gaat de teller terug naar stand 111.
Driecijferige zelfstoppende aftrekkingsteller met seriële overdracht
Beschouw een drie-bit zelfstoppende subtractieve teller met sequentiële carry (Fig. 3.69).
Nadat de teller naar stand 000 gaat, verschijnt aan de uitgangen van alle flip-flops een logisch 0-signaal, dat via een logisch OR-element naar de ingangen J en K van de eerste flip-flop wordt gevoerd, waarna deze flip-flop vertrekt de T-flip-flop-modus en reageert niet meer op F-pulsen.
Drie-bit up/down-teller met seriële overdracht
Beschouw een drie-bits op-/neerteller met sequentiële carry (Fig. 3.70).
In de aftrekkingsmodus moeten de ingangssignalen worden toegevoerd aan de TV-ingang. In dit geval wordt een logisch signaal 0 geleverd aan ingang Tc. Laat alle flip-flops in toestand 111 staan. Wanneer het eerste signaal arriveert bij ingang Tc, verschijnt er een logische 1 aan ingang T van de eerste flip-flop. flop, en het verandert van toestand. Hierna verschijnt aan de inverse ingang een signaal logische 1. Wanneer een tweede puls aankomt op ingang T, verschijnt er een logische 1 aan de ingang van de tweede trigger, dus de tweede trigger zal van status veranderen (de eerste trigger zal ook veranderen de staat ervan bij aankomst van de tweede puls). Verdere staatsveranderingen vinden op vergelijkbare wijze plaats. In de optelmodus werkt de teller op dezelfde manier als een 4-bits optelteller. In dit geval wordt het signaal aan de Tc-ingang toegevoerd. Aan de T-ingang wordt een logische 0 aangeboden.
Beschouw als voorbeeld microschakelingen van omkeertellers (Fig: 3.71) met parallelle overdracht van de 155-serie (TTL):
● IE6 – binaire decimale op-/afteller;
● IE7 – binaire op-/afteller.
De telrichting wordt bepaald door naar welke pin (5 of 4) de pulsen worden gestuurd. Ingangen 1, 9, 10, 15 zijn informatief en ingang 11 wordt gebruikt voor vooropname. Deze 5 ingangen maken vooropname naar de teller mogelijk (preset). Om dit te doen, moet u de juiste gegevens naar de informatie-ingangen sturen en vervolgens een schrijfpuls op laag niveau op ingang 11 toepassen, waarna de teller het nummer onthoudt. Ingang 14 is de O-instellingsingang wanneer een hoog spanningsniveau wordt toegepast. Om tellers met een grotere capaciteit te bouwen, worden voorwaartse en achterwaartse overdrachtsuitgangen gebruikt (respectievelijk pinnen 12 en 13). Vanaf pin 12 moet het signaal naar de voorwaartse telingang van de volgende trap worden gevoerd, en vanaf pin 13 naar de afwaartse telingang.
De begintoestand is het nulniveau op alle triggeruitgangen (Q 1 – Q 3), d.w.z. digitale code 000. In dit geval is het meest significante cijfer uitgang Q 3. Om alle flip-flops naar de nultoestand te brengen, worden de ingangen van de R-flip-flops gecombineerd en wordt het vereiste spanningsniveau daarop toegepast (dat wil zeggen een puls die de flip-flops reset). Dit is feitelijk een reset. Ingang C ontvangt klokpulsen die de digitale code met één verhogen, d.w.z. na aankomst van de eerste puls schakelt de eerste trigger over naar toestand 1 (code 001), na aankomst van de tweede puls schakelt de tweede trigger over naar toestand 1, en de eerste geeft 0 aan (code 010), dan de derde, enz. Als gevolg hiervan kan zo'n apparaat tot 7 tellen (code 111), aangezien 2 3 – 1 = 7. Wanneer alle uitgangen van de triggers zijn ingesteld op degenen, zeggen ze dat de teller overstroomt. Na de aankomst van de volgende (negende) puls wordt de teller op nul gezet en begint alles vanaf het begin. In de grafieken treden veranderingen in triggertoestanden op met een bepaalde vertraging th. Bij het derde cijfer is de vertraging al verdrievoudigd. De vertraging die toeneemt met het aantal bits is een nadeel van tellers met seriële overdracht, die ondanks hun eenvoud het gebruik ervan in apparaten met een klein aantal bits beperken.
Classificatie van meters
Tellers zijn apparaten voor het tellen van het aantal pulsen (opdrachten) dat op hun ingang wordt ontvangen, het opslaan en opslaan van het telresultaat, en het afgeven van dit resultaat. De belangrijkste parameter van de teller is de telmodule (capaciteit) Kс. Deze waarde is gelijk aan het aantal stabiele toestanden van de teller. Na aankomst van de Kc-pulsen keert de teller terug naar zijn oorspronkelijke toestand. Voor binaire tellers Kс = 2 m, waarbij m het aantal telbits is.
Belangrijke kenmerken van de meter zijn naast Kc de maximale telfrequentie fmax en de bezinktijd tset, die de snelheid van de meter karakteriseren.
Tst is de duur van het overgangsproces waarbij de teller naar een nieuwe status wordt geschakeld: tset = mttr, waarbij m het aantal cijfers is, en ttr de trigger-schakeltijd is.
Fmax is de maximale frequentie van ingangspulsen waarbij geen pulsverlies optreedt.
Per soort operatie:
– Optellen;
– Subtractief;
– Omkeerbaar.
Bij een sommerende teller verhoogt de aankomst van elke ingangspuls het telresultaat met één, bij een subtractieve teller neemt het af met één; Bij omkeertellers kan zowel optellen als aftrekken plaatsvinden.
Per structurele organisatie:
- consistent;
- parallel;
– serie-parallel.
In een seriële teller wordt de ingangspuls alleen aan de ingang van het eerste cijfer geleverd; de uitgangspuls van het voorgaande cijfer wordt aan de ingangen van elk volgend cijfer geleverd.
In een parallelle teller vindt bij de aankomst van de volgende telimpuls gelijktijdig het schakelen van triggers plaats bij de overgang naar een nieuwe toestand.
Het serie-parallelle circuit omvat beide voorgaande opties.
In volgorde van statuswijzigingen:
– met een natuurlijke volgorde van tellen;
– met een willekeurige telvolgorde.
Modulo-telling:
– binair;
– niet-binair.
De telmodule van een binaire teller is Kc=2, en de telmodule van een niet-binaire teller is Kc= 2m, waarbij m het aantal tellerbits is.
Optellen van seriële teller
Figuur 1. Optellen van seriële 3-bits teller.
De triggers van deze teller worden geactiveerd door de dalende flank van de telimpuls. De ingang van het hoge cijfer van de teller is verbonden met de directe uitgang (Q) van het lage aangrenzende cijfer. Het timingdiagram van de werking van een dergelijke teller wordt getoond in figuur 2. Op het initiële tijdstip zijn de toestanden van alle flip-flops respectievelijk gelijk aan log.0, aan hun directe uitgangen is er log.0. Dit wordt bereikt door middel van een kortetermijnlog.0 die wordt toegepast op de ingangen van de asynchrone instelling van flip-flops op log.0. De algemene status van de teller kan worden gekenmerkt door een binair getal (000). Tijdens het tellen wordt logica 1 gehandhaafd aan de ingangen van de asynchrone triggerinstallatie in log.1. Na de aankomst van de achterflank van de eerste puls schakelt de 0-bit over naar de tegenovergestelde toestand - log.1. De voorflank van de telimpuls verschijnt aan de 1-bit ingang. Tellerstatus (001). Nadat de dalende flank van de tweede puls bij de ingang van de teller arriveert, schakelt de 0-bit over naar de tegenovergestelde toestand - log.0, en verschijnt de dalende flank van de telpuls aan de ingang van de 1-bit, die schakelt de 1-bit naar log.1. De algemene status van de teller is (010). De volgende dalende flank aan de 0-bit-ingang zal deze instellen op logisch 1 (011), enz. De teller accumuleert dus het aantal ingangspulsen dat bij zijn ingang arriveert. Wanneer er 8 pulsen op de ingang aankomen, keert de teller terug naar de oorspronkelijke status (000), wat betekent dat de telcoëfficiënt (CFC) van deze teller 8 is.
Rijst. 2. Timingdiagram van een seriële optelteller.
Subtractieve seriële teller
De triggers van deze teller worden geactiveerd door de dalende flank. Om de aftrekking uit te voeren, wordt de telingang van het cijfer van hoge orde verbonden met de inverse uitgang van het aangrenzende cijfer van lage orde. De triggers zijn voorlopig ingesteld op log.1 (111). De werking van deze teller wordt getoond in het timingdiagram in Fig. 4.
Rijst. 1 Seriële subtractieve teller
Rijst. 2 Timingdiagram van een seriële subtractieve teller
Omkeerbare seriële teller
Om een op-/afteller te implementeren, is het noodzakelijk om de functies van een optelteller en de functies van een aftrekkingsteller te combineren. Het diagram van deze teller wordt getoond in Fig. 5. De signalen "som" en "verschil" worden gebruikt om de telmodus te besturen. Voor de sommatiemodus geldt: “sum” = log.1, “0” is log.0 voor de korte termijn; “verschil” = log.0, “1” - kortetermijnlog.0. In dit geval maken de elementen DD4.1 en DD4.3 de toevoer van signalen mogelijk van de directe uitgangen van triggers DD1.1, DD1.2 naar de klokingangen van triggers DD1.2, DD2.1 via elementen DD5.1 en DD5.2, respectievelijk. In dit geval zijn de elementen DD4.2 en DD4.4 gesloten, er is een log 0 aan hun uitgangen, dus de actie van de inverse uitgangen heeft op geen enkele manier invloed op de telingangen van de flip-flops DD1.2, DD2.1. De sommatiebewerking wordt dus geïmplementeerd. Om de aftrekbewerking te implementeren, wordt log.0 geleverd aan de “sum”-invoer, en log.1 aan de “verschil”-invoer. In dit geval maken de elementen DD4.2, DD4.4 het mogelijk dat signalen van de inverse uitgangen van triggers DD1.1, DD1.2 worden geleverd aan de ingangen van de elementen DD5.1, DD5.2, en dienovereenkomstig aan de telfunctie. ingangen van triggers DD1.2, DD2.1. In dit geval zijn de elementen DD4.1, DD4.3 gesloten en hebben de signalen van de directe uitgangen van de triggers DD1.1, DD1.2 geen enkele invloed op de telingangen van de triggers DD1.2, DD2. 1. De aftrekkingsbewerking wordt dus geïmplementeerd.
Rijst. 3 Seriële omhoog/omlaag 3-bits teller
Om deze tellers te implementeren, kunt u ook triggers gebruiken die worden geactiveerd door de stijgende flank van de telimpulsen. Vervolgens moet bij het optellen een signaal van de inverse uitgang van het aangrenzende bit van lage orde worden toegevoerd aan de telingang van het hoogste cijfer, en bij het aftrekken moet, omgekeerd, de telingang worden aangesloten op de directe uitgang.
Het nadeel van een seriële teller is dat naarmate de bitdiepte toeneemt, de installatietijd (tset) van deze teller proportioneel toeneemt. Het voordeel is het gemak van implementatie.
Rijst. 3 – Teller omkeren
Er zijn twee ingangen voor het tellen van pulsen: “+1” – voor toename, “-1” – voor afname. De corresponderende ingang (+1 of -1) is verbonden met ingang C. Dit kan gedaan worden met behulp van een OF-schakeling als je deze voor de eerste flip-flop plaatst (de uitgang van het element is naar de ingang van de eerste flip-flop). -flop, de ingangen zijn naar bussen +1 en -1). Het rare spul tussen de triggers (DD2 en DD4) wordt het AND-OR-element genoemd. Dit element is samengesteld uit twee EN-elementen en één OF-element, gecombineerd in één behuizing. Eerst worden de ingangssignalen op dit element logisch vermenigvuldigd, waarna het resultaat logisch wordt opgeteld.
Het aantal ingangen van het EN-OF-element komt overeen met het nummer van het cijfer, d.w.z. als het derde cijfer, dan drie ingangen, de vierde - vier, enz. Het logische circuit is een schakelaar met twee standen die wordt bestuurd door de directe of inverse uitvoer van de vorige trigger. Bij log. 1 op de directe uitgang telt de teller de pulsen van de “+1”-bus (als ze aankomen uiteraard), met een log. 1 op de inverse uitgang – van de “-1” bus. De EN-elementen (DD6.1 en DD6.2) vormen de overdrachtssignalen. Bij uitgang >7 wordt het signaal gegenereerd bij code 111 (nummer 7) en de aanwezigheid van een klokpuls op bus +1, aan de uitgang<0 сигнал формируется при коде 000 и наличии тактового импульса на шине -1.
Dit alles is natuurlijk interessant, maar het ziet er mooier uit in het ontwerp van de microschakelingen:
Rijst. 4 Vier-bits binaire teller
Hier is een typische vooraf ingestelde meter. CT2 betekent dat de teller binair is; als deze decimaal is, dan is CT10 ingesteld; als deze binair-decimaal is, is het CT2/10. Ingangen D0 – D3 worden informatie-ingangen genoemd en worden gebruikt om elke binaire status naar de teller te schrijven. Deze status wordt weergegeven bij de uitgangen en het aftellen begint vanaf daar. Met andere woorden, dit zijn vooraf ingestelde ingangen, of eenvoudigweg voorinstellingen. Ingang V wordt gebruikt om code-opname op de ingangen D0 – D3 mogelijk te maken, of, zoals ze zeggen, voorinstelling. Deze ingang kan ook met andere letters worden aangeduid. Een voorlopige registratie in de teller vindt plaats wanneer een schrijfvrijgavesignaal wordt verzonden op het moment dat de puls arriveert bij ingang C. Ingang C wordt geklokt. Impulsen worden hier geduwd. De driehoek betekent dat de teller wordt geactiveerd door het vallen van de puls. Als de driehoek 180 graden wordt gedraaid, dat wil zeggen met de rug naar de letter C, dan wordt deze geactiveerd door de rand van de puls. Ingang R wordt gebruikt om de teller te resetten, d.w.z. als er een puls op deze ingang wordt gezet, worden er logs op alle telleruitgangen gezet. 0. De PI-ingang wordt carry-ingang genoemd. De uitvoer p wordt de carry-uitvoer genoemd. Op deze uitgang wordt een signaal gegenereerd wanneer de teller overloopt (wanneer alle uitgangen op logisch 1 staan). Dit signaal kan worden toegevoerd aan de carry-ingang van de volgende teller. Wanneer de eerste teller vervolgens overloopt, schakelt de tweede over naar de volgende status. Uitgangen 1, 2, 4, 8 zijn eenvoudigweg uitgangen. Ze genereren een binaire code die overeenkomt met het aantal pulsen dat wordt ontvangen aan de ingang van de teller. Als de conclusies cirkels hebben, wat veel vaker voorkomt, dan zijn ze omgekeerd, dat wil zeggen in plaats van logaritmisch. 1 krijgt logboek. 0 en omgekeerd. De werking van meters samen met andere apparaten zal later in meer detail worden besproken.
Parallelle totalisator
Het werkingsprincipe van deze teller is dat het ingangssignaal met telpulsen gelijktijdig aan alle bits van deze teller wordt toegevoerd. En het instellen van de teller op log.0 of log.1 wordt geregeld door het stuurcircuit. Het circuit van deze teller wordt getoond in figuur 6
Rijst. 4 Parallelle accumulerende teller
De tellerbits zijn triggers DD1, DD2, DD3.
Stuurcircuit – element DD4.
Het voordeel van deze teller is de korte installatietijd, die niet afhankelijk is van de cijfercapaciteit van de teller.
Het nadeel is de complexiteit van de schakeling naarmate de tellercapaciteit toeneemt.
Parallelle carry-tellers
Om de prestaties te verbeteren wordt een methode gebruikt waarbij gelijktijdig een overdrachtssignaal voor alle bits wordt gegenereerd. Dit wordt bereikt door EN-elementen te introduceren, waardoor klokpulsen onmiddellijk naar de ingangen van alle bits van de teller worden gestuurd.
Rijst. 2 – Parallelle carry-teller en grafieken die de werking ervan verklaren
Alles is duidelijk bij de eerste trigger. Er wordt alleen een klokpuls doorgegeven aan de ingang van de tweede trigger als er een log aanwezig is aan de uitgang van de eerste trigger. 1 (een kenmerk van het EN-circuit), en naar de ingang van de derde - wanneer er een log is aan de uitgangen van de eerste twee. 1, enz. De responsvertraging op de derde trigger is dezelfde als op de eerste. Zo'n teller wordt een parallelle carry-teller genoemd. Zoals uit het diagram blijkt, neemt het aantal logs toe naarmate het aantal bits toeneemt. AND-elementen, en hoe hoger de rang, hoe meer input het element heeft. Dit is een nadeel van dergelijke tellers.
Ontwikkeling van een schematisch diagram
Puls voormalig
Een pulsvormer is een apparaat dat nodig is om contactstuiteren te elimineren dat optreedt wanneer mechanische contacten gesloten zijn, wat kan leiden tot een onjuiste werking van het circuit.
Figuur 9 toont diagrammen van pulsvormers van mechanische contacten.
Rijst. 9 Pulsvormers van mechanische contacten.
Weergaveblok
Er moeten LED's worden gebruikt om het telresultaat weer te geven. Om een dergelijke uitvoer van informatie uit te voeren, kunt u het eenvoudigste schema gebruiken. Het diagram van de LED-display-eenheid wordt getoond in Figuur 10.
Rijst. 10 LED-display-eenheid.
Ontwikkeling van CCS (combinatieregelcircuit)
Om deze teller uit de TTLSh-serie K555-microschakelingen te implementeren, heb ik gekozen voor:
twee K555TV9-microcircuits (2 JK-triggers met installatie)
één K555LA4-microschakeling (3 3I-NOT-elementen)
twee K555LA3-microcircuits (4 2I-NOT-elementen)
één K555LN1-chip (6 omvormers)
Deze chips zorgen voor een minimaal aantal pakketten op een printplaat.
Opstellen van een blokschema van de meter
Blokdiagram is een set meterblokken die een bepaalde functie vervullen en de normale werking van de meter garanderen. Figuur 7 toont het blokschema van de meter.
Rijst. 7 Blokschema van de meter
De besturingseenheid voert de functie uit van het verzenden van een signaal en het besturen van triggers.
Het telblok is ontworpen om de status van de teller te wijzigen en deze status op te slaan.
De weergave-eenheid geeft informatie weer voor visuele waarneming.
Opstellen van een functioneel diagram van de meter
Functioneel diagram – interne structuur van de meter.
Laten we het optimale aantal triggers bepalen voor een niet-binaire teller met een telcoëfficiënt Kc=10.
M = log2 (Kc) = 4.
M = 4 betekent dat voor het implementeren van een binaire decimale teller 4 flip-flops nodig zijn.
De eenvoudigste eencijferige pulstellers
De eenvoudigste pulsteller met één cijfer kan een JK-flip-flop en een D-flip-flop zijn die in telmodus werken. Het telt ingangspulsen modulo 2 - elke puls schakelt de trigger naar de tegenovergestelde status. Eén trigger telt tot twee, twee in serie geschakelde triggers tellen tot vier, n triggers tellen tot 2n pulsen. Het telresultaat wordt gegenereerd in een bepaalde code, die kan worden opgeslagen in het geheugen van de teller of kan worden gelezen door een ander digitaal decoderapparaat.
De figuur toont het circuit van een drie-bits binaire pulsteller gebouwd op een JK flip-flop ax K155TB1. Monteer een dergelijke teller op een breadboard-paneel en sluit LED-indicatoren (of transistor - met een gloeilamp) aan op de directe uitgangen van de triggers, zoals eerder werd gedaan. Breng een reeks pulsen met een herhalingsfrequentie van 1 ... 2 Hz aan van de testgenerator naar de ingang C van de eerste trigger van de teller en plot de werking van de teller met behulp van de lichtsignalen van de indicatoren.
Als op het eerste moment alle triggers van de teller zich in de nulstatus bevonden (u kunt de knopschakelaar SB1 "Set.0" instellen, waarbij een lage spanning wordt toegepast op de ingang R van de triggers), dan zal bij het afnemen van de Bij de eerste puls (Fig. 45.6) zal de trigger DD1 overschakelen naar de enkele status - er zal een hoog spanningsniveau verschijnen op de directe uitgang (Fig. 45, c). De tweede puls schakelt de DD1-trigger naar de nulstatus en de DD2-B-trigger naar de enkele status (Fig. 45, d). Als de derde puls valt, zullen triggers DD1 en DD2 zich in de één-status bevinden, en trigger DD3 zal zich nog steeds in de nul-status bevinden. De vierde puls schakelt de eerste twee triggers naar de nulstatus, en de derde naar de enkele status (Fig. 45, d). De achtste puls schakelt alle triggers naar de nulstatus. Wanneer de negende ingangspuls valt, begint de volgende werkingscyclus van de driecijferige pulsteller.
Als je de grafieken bestudeert, valt het gemakkelijk op dat elk hoog cijfer van de teller twee keer zoveel telpulsen verschilt van het lage cijfer. De periode van de pulsen aan de uitgang van de eerste trigger is dus 2 keer groter dan de periode van de ingangspulsen, aan de uitgang van de tweede trigger - 4 keer, aan de uitgang van de derde trigger - 8 keer. Sprekend in de taal van digitale technologie, werkt een dergelijke teller in een 1-2-4 gewichtscode. Hier verwijst de term 'gewicht' naar de hoeveelheid informatie die door de teller wordt ontvangen nadat de triggers op nul zijn gezet. In apparaten en instrumenten van digitale technologie worden viercijferige pulstellers die werken in de gewichtscode 1-2-4-8 het meest gebruikt. Frequentiedelers tellen de ingangspulsen tot een bepaalde toestand gespecificeerd door de telcoëfficiënt, en vormen vervolgens een trigger-schakelsignaal naar de nultoestand, beginnen opnieuw de ingangspulsen te tellen tot de gespecificeerde telcoëfficiënt, enz.
De figuur toont het circuit en de grafieken van de werking van een deler met een telfactor van 5, gebouwd op JK-flip-flops. Hier wordt de reeds bekende drie-bits binaire teller aangevuld met een logisch element 2-NOT DD4.1, waardoor de telfactor 5 wordt. Het gebeurt als volgt. Tijdens de eerste vier ingangsimpulsen (nadat de triggers op nul zijn gezet met behulp van de SB1 “Set 0”-knop), werkt het apparaat als een gewone binaire pulsteller. In dit geval werkt een laag spanningsniveau op één of beide ingangen van element DD4.1, zodat het element zich in één enkele toestand bevindt.
Bij het afnemen van de vijfde puls verschijnt een hoog spanningsniveau aan de directe uitgang van de eerste en derde triggers, en dus aan beide ingangen van het DD4.1-element, waardoor dit logische element naar de nultoestand wordt geschakeld. Op dit moment wordt aan de uitgang een korte puls van laag niveau gevormd, die via de diode VD1 naar de R-ingang van alle flip-flops wordt verzonden en deze naar de initiële nultoestand schakelt.
Vanaf dit moment begint de volgende cyclus van de tellerwerking. Weerstand R1 en diode VD1, die in deze teller worden geïntroduceerd, zijn nodig om te voorkomen dat de uitgang van element DD4.1 wordt kortgesloten met de gemeenschappelijke draad.
U kunt de werking van een dergelijke frequentiedeler controleren door pulsen met een frequentie van 1 ... 2 Hz toe te passen op de ingang C van de eerste trigger en een lichtindicator aan te sluiten op de uitgang van de DD3-trigger.
In de praktijk worden de functies van pulstellers en frequentiedelers uitgevoerd door speciaal ontworpen microschakelingen met een hoge mate van integratie. In de K155-serie zijn dit bijvoorbeeld tellers K155IE1, K155IE2, K155IE4, etc.
Bij amateurradio-ontwikkelingen worden de K155IE1- en K155IE2-microcircuits het meest gebruikt. Conventionele grafische symbolen van deze telmicroschakelingen met de nummering van hun uitgangen worden getoond in Fig. 47.
De K155IE1-microschakeling (Fig. 47a) wordt een tiendaagse pulsteller genoemd, dat wil zeggen een teller met een telfactor van 10. Deze bevat vier in serie geschakelde triggers. De uitgang (pin 5) van de microschakeling is de uitgang van de vierde trigger. Alle flip-flops worden in de nultoestand gezet door gelijktijdig een hoge spanning aan te leggen op beide ingangen R (pinnen 1 en 2), gecombineerd volgens het AND-elementcircuit (symbool “&”). Telpulsen, die een laag niveau moeten hebben, kunnen worden aangeboden aan de met elkaar verbonden ingangen C (pennen 8 en 9), ook gecombineerd langs I., of aan een daarvan, als op dat moment de tweede een hoog spanningsniveau heeft. Bij elke tiende ingangspuls genereert de teller een laagniveaupuls die qua duur gelijk is aan de ingangspuls. Microschakeling K155IE2 (Fig. 48b)
Binair-decimale viercijferige teller. Ook heeft hij vier flip-flops, maar de eerste heeft een aparte C1-ingang (pin 14) en een aparte directe uitgang (pin 12). Drie andere triggers zijn met elkaar verbonden zodat ze een deler door 5 vormen. Wanneer de uitgang van de eerste trigger (pin 12) wordt verbonden met de ingang C2 (pin 1) van het circuit van de overige triggers, wordt de microschakeling een deler door 10 (Fig. 48, a), werkend in code 1 -2-4-8, wat de cijfers aan de uitgangen van de grafische aanduiding van de microschakeling symboliseren. Om de tellertriggers in de nulstand te zetten, wordt een hoge spanning op beide ingangen R0 (pinnen 2 en 3) aangelegd.
Met twee gecombineerde ingangen R0 en vier scheidende uitgangen van de K155IE2-microschakeling kunt u zonder extra elementen frequentiedelers bouwen met deelfactoren van 2 tot 10. Als u bijvoorbeeld pinnen 12 en 1, 9 en 2, 8 n 3 aansluit (Fig. 48, 6), dan is de telfactor 6, en bij het aansluiten van pinnen 12 en 1, 11. 2 en 3 (Fig. 48, c) wordt de telfactor 8. Dankzij dit kenmerk van de K155IE2-microschakeling kan deze zowel als binaire pulsteller als als frequentiedeler worden gebruikt.
Een digitale pulsteller is een digitale eenheid die de pulsen telt die bij de ingang aankomen. Het telresultaat wordt door de teller in een bepaalde code gegenereerd en kan gedurende de gewenste tijd worden opgeslagen. Tellers zijn gebouwd op triggers, en het aantal pulsen dat de teller kan tellen wordt bepaald aan de hand van de uitdrukking N = 2 n – 1, waarbij n het aantal triggers is, en min één, omdat in de digitale technologie 0 als uitgangspunt wordt genomen. Tellers zijn summatief als de telling richting stijging gaat, en de subtractieve telling richting daling. Als de teller tijdens bedrijf kan overschakelen van optellen naar aftrekken en omgekeerd, wordt deze omkeerbaar genoemd.
2006
Om de elektrische energie die over een bepaalde periode wordt verbruikt te berekenen, is het noodzakelijk om de momentane waarden van het actieve vermogen in de loop van de tijd te integreren. Voor een sinusvormig signaal is het vermogen gelijk aan het product van spanning en stroom in het netwerk op een bepaald moment. Elke elektriciteitsmeter werkt volgens dit principe.
2006
Het installeren en aansluiten van een elektriciteitsmeter is niet moeilijk. Het paneel met de meter moet op vier rollen (op de hoeken van het paneel) in de kamer worden geïnstalleerd, vlakbij de plaats waar de elektrische bedrading van de gemeenschappelijke appartementmeter loopt
2012
Dit apparaat bewaakt het elektriciteitsverbruik van huishoudens en registreert de metingen op een SD-geheugenkaart. Eenvoudige analoge versterkers versterken het signaal van spannings- en stroomsensoren, en op basis van de ontvangen gegevens berekent de ATmega168-microcontroller het energieverbruik. Spanning en stroom worden gemeten bij 9615 Hz, dus de metingen moeten nauwkeurig zijn, zelfs bij niet-sinusvormige belastingen zoals computers of fluorescentielampen.
TELLER OP DE MICROCONTROLLER
Op veel technische en automatiseringsapparaten zijn nog steeds mechanische tellers geïnstalleerd. Ze tellen het aantal bezoekers, de producten op de lopende band, de draadwindingen in wikkelmachines, enzovoort. Als het niet lukt, is het niet eenvoudig om zo'n mechanische meter te vinden en is het onmogelijk om deze te repareren vanwege het gebrek aan reserveonderdelen. Ik stel voor om de mechanische teller te vervangen door een elektronische met behulp van een PIC16F628A-microcontroller.
Een elektronische teller blijkt te complex als deze is gebouwd op microschakelingen uit de K176-, K561-serie. vooral als een tegenrekening nodig is. Maar u kunt een teller bouwen op slechts één chip: de universele PIC16F628A-microcontroller, die een verscheidenheid aan randapparatuur omvat en een breed scala aan problemen kan oplossen.
Onlangs vroeg iemand mij om een meercijferige pulsteller te maken. Ik heb gekozen voor LED-knipperlichten omdat ze veel ruimte in beslag nemen en veel energie verbruiken. Daarom heb ik het circuit op LCD geïmplementeerd. De teller op de microcontroller kan ingangspulsen van maximaal 15 cijfers meten. De eerste twee cijfers worden gescheiden door een punt. EEPROM werd niet gebruikt omdat het niet nodig was de meterstatus te onthouden. Er is ook een aftelfunctie - achteruit. Schematisch diagram van een eenvoudige teller op een microcontroller:
De teller is gemonteerd op twee printplaten van glasvezelfolie. De tekening wordt weergegeven in de figuur.
Eén van de borden heeft een LCD-indicator, de andere heeft 4 knoppen, een controller en andere onderdelen van de meter, met uitzondering van de voeding. Je kunt de printplaten en het tellercircuit in Lay-formaat downloaden, evenals de firmware van de microcontroller op het forum. Materiaal geleverd door Samopalkin.