Megfordítható fordulatszámláló az avr-on. Elektronikus menetszámláló csévélőgéphez

Sok készülékben Háztartási gépekés viszonylag friss kiadások ipari automatizálása, mechanikus számlálók vannak beépítve. Ezek szállítószalagon lévő termékek, tekercselő gépek huzalfordulatai stb. Meghibásodás esetén nem könnyű hasonló mérőt találni, és alkatrész hiányában nem is lehet javítani. A szerző azt javasolja, hogy a mechanikus számlálót elektronikusra cseréljék. A mechanikus helyettesítésére kifejlesztett elektronikus számláló túl bonyolultnak bizonyul, ha alacsony és közepes integrációs fokú mikroáramkörökre épül (például a K176, K561 sorozat). különösen, ha fordított számlára van szükség. És annak érdekében, hogy az eredményt a kikapcsolás után is megőrizze, tartalék akkumulátort kell biztosítani.

De számlálót csak egyetlen chipre építhet - egy univerzális programozható mikrokontrollerre, amely számos különféle elemet tartalmaz perifériákés nagyon sokféle probléma megoldására képes. Sok mikrokontroller rendelkezik egy speciális memóriaterülettel - EEPROM. A beleírt adatok (beleértve a programvégrehajtás során is), például az aktuális számlálási eredmény a kikapcsolás után is mentésre kerülnek.

A javasolt számláló az Almel AVR családjának Attiny2313 mikrokontrollerét használja. A készülék fordított számlálást valósít meg, az eredményt a jelentéktelen törlésével jeleníti meg

kaptár négybitesre LED kijelző, eltárolja az eredményt az EEPROM-ban, amikor a készülék ki van kapcsolva. A mikrokontrollerbe épített analóg komparátort használnak a tápfeszültség csökkenésének időben történő észlelésére. A számláló megjegyzi a számlálás eredményét az áramellátás kikapcsolásakor, visszaállítja azt bekapcsoláskor, és hasonlóan a mechanikus számlálóhoz, reset gombbal van ellátva.

A számláló áramkör az ábrán látható. A B port hat sora (РВ2—РВ7) és a D port öt sora (PDO, PD1, PD4—PD6) szolgál a számlálási eredmény dinamikus jelzésének megszervezésére a HL1 LED-jelzőn. A VT1 és VT2 fototranzisztorok kollektorterhelései a mikrokontrollerbe épített ellenállások, amelyeket olyan szoftver engedélyez, amely a mikrokontroller megfelelő érintkezőit a tápáramköréhez köti.

Az N számlálási eredmény eggyel nő a megszakítás pillanatában optikai kommunikáció a VD1 emittáló dióda és a VT1 fototranzisztor között, ami növekvő szintkülönbséget hoz létre a mikrokontroller INT0 bemenetén. Ebben az esetben az INT1 bemenet szintjének alacsonynak kell lennie, azaz a VT2 fototranzisztort a VD2 emittáló diódával kell megvilágítani. Abban a pillanatban, amikor az INT1 bemeneten emelkedik a differenciál, az INT0 bemeneten pedig alacsony szint lesz, az eredmény eggyel csökken. A szintek egyéb kombinációi és azok különbségei az INT0 és INT1 bemeneteken nem változtatják meg a számlálás eredményét.

A 9999-es maximális érték elérése után a számlálás nullától folytatódik. A nulla értékből egyet levonva 9999 az eredmény. Ha nincs szükség visszaszámlálásra, akkor a VD2 emittáló diódát és a VT2 fototranzisztort kizárhatja a számlálóból, és a mikrokontroller INT1 bemenetét a közös vezetékre csatlakoztathatja. A szám csak tovább fog növekedni.

Mint már említettük, a tápfeszültség csökkenésének érzékelője a mikrokontrollerbe épített analóg komparátor. Összehasonlítja az egyenirányító kimenetén lévő nem stabilizált feszültséget (VD3 diódahíd) a beépített DA1 stabilizátor kimenetén lévő stabilizált feszültséggel. A program ciklikusan ellenőrzi a komparátor állapotát. A mérő hálózatról való leválasztása után a C1 egyenirányító szűrőkondenzátor feszültsége leesik, és a stabilizált feszültség egy ideig változatlan marad. Az R2-R4 ellenállások a következők szerint vannak kiválasztva. hogy a komparátor állapota ebben a helyzetben fordított. Ezt észlelve a program még azelőtt kiírja az aktuális számlálás eredményét a mikrokontroller EEPROM-jába, mielőtt az áramszünet miatt leállna. A következő bekapcsoláskor a program beolvassa az EERROM-ban írt számot és megjeleníti a jelzőn. A számolás ettől az értéktől folytatódik.

A mikrokontroller tűinek korlátozott száma miatt a számlálót nullázó SB1 gomb csatlakoztatásához a 13-as érintkezőt használták, amely a komparátor (AIM) invertáló analóg bemeneteként és egyúttal „digitális” bemeneteként is szolgál. PB1. A feszültségosztó (R4, R5 ellenállások) logikailag beállítja a mikrokontroller által érzékelt szintet, ha megnyomja az SB1 gombot, az alacsony lesz. Ez nem befolyásolja a komparátor állapotát, mivel az AIN0 bemenet feszültsége még mindig nagyobb, mint az AIN1.

Az SB1 gomb megnyomásakor a program az indikátor minden számjegyében mínuszjelet jelenít meg, majd elengedése után nullától kezdi a számolást. Ha a gomb lenyomása közben lekapcsolja a mérőműszert, az aktuális eredmény nem kerül az EEPROM-ba, és az ott tárolt érték változatlan marad.

A program úgy van megtervezve, hogy könnyen illeszthető más mutatókkal (például közös katódokkal), különböző vezetékekkel rendelkező mérőhöz nyomtatott áramkör stb. Használatkor a program enyhe korrekciójára lesz szükség kvarc rezonátor olyan frekvenciára, amely több mint 1 MHz-el eltér a megadott frekvenciától.

Ha a forrásfeszültség 15 V, mérje meg a feszültséget a mikrovezérlő panel 12. és 13. érintkezőjén a közös vezetékhez (10. érintkező) viszonyítva. Az elsőnek 4...4,5 V tartományban kell lennie, a másodiknak 3,5 V-nál nagyobbnak, de kisebbnek kell lennie, mint az elsőnek. Ezután a forrás feszültsége fokozatosan csökken. Amikor 9...10 V-ra csökken, a 12-es és 13-as érintkezőknél a feszültségértékek különbségének nullává kell válnia, majd előjelet kell váltania.

Most már telepítheti a programozott mikrokontrollert a panelbe, csatlakoztathatja a transzformátort és rákapcsolhatja a hálózati feszültséget. 1,5...2 mp után meg kell nyomni az SB1 gombot. A számláló kijelzőjén a 0 szám jelenik meg. Ha semmi nem jelenik meg a kijelzőn, ellenőrizze újra a feszültségértékeket a mikrokontroller AIN0.AIN1 bemenetein. Az elsőnek nagyobbnak kell lennie, mint a másodiknak.





Ha a számláló sikeresen elindult, már csak a számlálás helyességét kell ellenőrizni oly módon, hogy a fototranzisztorokat váltakozva árnyékoljuk egy IR-sugarak számára átláthatatlan lemezzel. A nagyobb kontraszt érdekében célszerű az indikátorokat piros szerves üvegszűrővel letakarni.



Továbbá, ha valaki kvarc nélkül szerel össze egy mérőt az Atiny2313-on,
A biztosítékokat így programoztam

Miután áttekintettem a magazinban megjelent számos különféle célra szolgáló számlálót (például ), úgy döntöttem, hogy kifejlesztek egy saját verziót egy fordulatszámlálóról, amely egy mikrokontroller nem felejtő memóriáját használja. Ennek eredményeként egyszerű és könnyen kezelhető tekercselési számlálót lehetett létrehozni egy csévélőgéphez, amely nem tartalmaz szűkös alkatrészeket.

0-tól 9999 tengelyfordulatig képes számolni, ezután a visszajelző leolvasások nullára állnak, és újra kezdődik a számlálás. Amikor a tengely befordul hátoldal A jelző minden fordulatnál eggyel csökkenti a leolvasott értéket.


Rizs. 1

A számláló több csomópontból áll (1. ábra). A kialakítás alapja a DD1 mikrokontroller, amelyhez R10-R16 áramkorlátozó ellenállásokon keresztül egy négyjegyű HG1 LED jelző csatlakozik. Két optocsatoló - egy infravörös kibocsátó dióda - fototranzisztor (VD2VT1, VD3VT2) - amelyek sebességérzékelőt képeznek a gép munkatengelyéhez, alacsony szintű impulzusokat generálnak, amelyekből a mikrokontroller meghatározza a forgásirányt és a tengely fordulatszámát. Van egy SB1 gomb a memória visszaállításához, valamint a segédáramkörök: R2C2, amely a mikrokontroller beépített óragenerátorának részeként működik, VD1C1, amely fenntartja a mikrokontroller SLEEP módba kapcsolásához szükséges tápfeszültséget, és R6R8, amely a mérő tápfeszültségét figyeli.


Ismeretes, hogy a PIC család mikrovezérlői meglehetősen szeszélyesek az EEPROM-mal való munka során (különösen, ha az írás automatikusan történik). A tápfeszültség csökkentése torzíthatja a memória tartalmát A számláló működése közben a mikrokontroller RB1 (7-es érintkező) vonala, amelyre az R6R8 áramkör csatlakozik, lekérdezi a tápfeszültség meglétét, és ha eltűnik, akkor a VD1C1 áramkörnek köszönhetően a mikrokontroller alvó módba tud lépni, ezáltal blokkolja a további programvégrehajtást és védi az EEPROM-ban lévő információkat. A számlálási folyamat során a mikrokontroller a gép munkatengelyének minden egyes fordulata után számokat tárol a memóriában. Minden alkalommal, amikor a készüléket bekapcsolja, a HG1 jelző a leállítás előtti számot mutatja.
Az érzékelő egy kis nyomtatott áramköri lap (22x22 mm), amelyre két emittáló dióda és két fototranzisztor van felszerelve, úgy szerelve, hogy kettőt alkossanak. optikai csatorna adó-vevő. A csatornák optikai tengelyei párhuzamosak, az interaxiális távolság kb. 10 mm.
A gép munkatengelyére 1...2 mm vastagságú, infravörös sugarak számára átlátszatlan kemény, átlátszatlan anyagból (textolit, getinax, fém, műanyag) készült korong alakú redőny van rögzítve. A függöny átmérője 35...50 mm, a központi rögzítőfurat átmérője megegyezik a tengely átmérőjével. A tábla úgy van rögzítve a gépen, hogy a tengellyel együtt forgó függöny mindkét IR sugarat blokkolni tudja.
A függönybe egy hiányos szektor alakú kivágást vágnak. A kivágás szögszélességének és mélységének olyannak kell lennie, hogy a tengely forgásakor a redőny biztosítsa az infravörös sugárzás rövid távú átjutását, először csak az egyik csatornán, majd mindkettőn, végül csak a másik csatornán keresztül, amint az sematikusan látható az ábrán. Ábra. 2. Az egyik vagy másik pozícióban nyitott csatornák színnel jelennek meg. Az érzékelőtől érkező jelek ilyen sorrendje lehetővé teszi a mikrokontroller számára, hogy meghatározza a gép munkatengelyének forgásirányát
.

A mérőt három AA galvanikus cellából álló akkumulátor (R6) táplálja, de bármilyen 5 V stabilizált kimeneti feszültségű hálózati egységet használhat.
Az érzékelő 1 mm vastag fóliával bevont üvegszálas laminátumból készült nyomtatott áramköri lapra van felszerelve. A tábla rajza az ábrán látható. 3. A nyomtatott vezetők oldalára az R3 áramkorlátozó ellenállást, a másikra az emittáló diódákat és a fototranzisztorokat forrasztják.
A fennmaradó alkatrészeket (kivéve a GB1 akkumulátort és az SA1 kapcsolót) egy másik, ugyanabból az üvegszálból készült táblára helyezzük. A rajza a ábrán látható. 4. Az összes ellenállás (az R3 kivételével) a felületre szerelhető nyomtatási oldalon, a mikrokontroller, a digitális kijelző, a kondenzátorok, a dióda, az SB1 gomb és a vezeték jumperek pedig az ellenkező oldalon található. A mikrokontroller a lapra forrasztott panelbe van beépítve.
Az érzékelő táblát két konzollal rögzítjük a főre, 1,2 mm átmérőjű ónozott rézhuzalból hajlítjuk és a táblák élnyomott vezetőihez forrasztjuk. A táblák géptesthez való rögzítésére szolgálnak házi készítésű tartók csavarnak való szemmel, ugyanabból a drótból és az alaplapra is forrasztva.


Rizs. 4


A tekercsgépre szerelt mérő egyik tervezési lehetőségének általános képe látható az ábrán látható képen. 5. A gép hátuljára kapcsolóval ellátott feszültségcellákból álló akkumulátor van rögzítve.

Az érzékelőhöz az ábrán feltüntetetteken kívül használhat SEP8706-003, SEP8506-003, KM-4457F3C, AL144A, AL108AM és más kibocsátó diódákat, valamint fototranzisztorokat - SDP8436-003, KTF102A. A régi golyóspontos számítógépes egerek - egerek - optocsatolói szintén nagyon alkalmasak; Az emittáló diódáknál a rövid vezeték a katód, a fototranzisztoroknál pedig a rövid vezeték az emitter.
Meg kell jegyezni, hogy jobb, ha a fototranzisztorokat átlátszatlan (fekete) tokban használjuk - ebben az esetben minimális lesz a meghibásodások és a számlálási hibák a fotodetektorokat érő külső fényes források fényinterferenciája miatt. Ha a rendelkezésre álló fototranzisztorok átlátszóak, mindegyikre kell helyezni egy darab fekete PVC-csövet, amelynek a lencsével szemben van egy lyuk, és a teljes érzékelőt le kell fedni a külső fény elől fekete papírborítóval. Ha a függöny fényvisszaverő anyagból készült, akkor javasolt matt fekete festékkel letakarni.
A „felületi” ellenállások helyett MLT-0,125 vagy S2-23 használható 0,062 W teljesítménnyel. SB1 gomb - bármely gomb, amely megfelel a táblán lévő rögzítési helynek. Az E40281-L-O-0-W helyett az FYQ-2841CLR digitális jelző alkalmas.

A mikrokontroller program fejlesztése és hibakeresése Proteus környezetben történt, majd az ICProg programozó segítségével betöltődött a mikrokontrollerbe. A mikrokontroller panelbe történő telepítése után a mérő első és további bekapcsolásakor a jelző mínuszjelet mutat minden ismert helyen. Körülbelül két másodperc múlva nullák jelennek meg a kijelzőn - ez annak a jele, hogy a mérő üzemkész.

A program vészhelyzeti memória-reset funkciót biztosít arra az esetre, ha hibás információt kapna és a mikrokontroller lefagyna (ez rendkívül ritkán, de előfordulhat). A mikrokontroller működési módba való visszaállításához ki kell kapcsolnia a mérőműszert, meg kell nyomnia a „Reset” gombot, és anélkül, hogy elengedné, kapcsolja be a tápfeszültséget. Amint a kijelzőn nullák jelennek meg, folytathatja a munkát, de az előző fordulatszámra vonatkozó információk természetesen elvesznek.
A megfelelően összeállított készülék nem igényel beállítást.

Sok háztartási készülék és ipari automatizálási eszköz, amely viszonylag új gyártási évet gyártott, mechanikus számlálóval rendelkezik. Ezek szállítószalagon lévő termékek, tekercselő gépek huzalfordulatai stb. Meghibásodás esetén nem könnyű hasonló mérőt találni, és alkatrész hiányában nem is lehet javítani. A szerző azt javasolja, hogy a mechanikus számlálót elektronikusra cseréljék. A mechanikus helyettesítésére kifejlesztett elektronikus számláló túl bonyolultnak bizonyul, ha alacsony és közepes integrációs fokú mikroáramkörökre épül (például a K176, K561 sorozat). különösen, ha fordított számlára van szükség. És annak érdekében, hogy az eredményt a kikapcsolás után is fenntartsa, tartalék akkumulátort kell biztosítani.

De számlálót csak egyetlen chipre építhet - egy univerzális programozható mikrokontrollerre, amely számos perifériás eszközt tartalmaz, és nagyon sokféle probléma megoldására képes. Sok mikrokontroller rendelkezik egy speciális memóriaterülettel - EEPROM. A beleírt adatok (beleértve a programvégrehajtás során is), például az aktuális számlálási eredmény a kikapcsolás után is mentésre kerülnek.

A javasolt számláló az Almel AVR családjának Attiny2313 mikrokontrollerét használja. A készülék fordított számlálást valósít meg, az eredményt a jelentéktelen törlésével jeleníti meg

kaptár egy négyjegyű LED kijelzőn, amely az eredményt az EEPROM-ban tárolja, amikor a tápellátást kikapcsolják. A mikrokontrollerbe épített analóg komparátort használnak a tápfeszültség csökkenésének időben történő észlelésére. A számláló megjegyzi a számlálás eredményét az áramellátás kikapcsolásakor, visszaállítja azt bekapcsoláskor, és hasonlóan a mechanikus számlálóhoz, reset gombbal van ellátva.

A számláló áramkör az ábrán látható. A B port hat sora (РВ2-РВ7) és a D port öt sora (PDO, PD1, PD4-PD6) szolgál a számlálási eredmény dinamikus jelzésének megszervezésére a HL1 LED-jelzőn. A VT1 és VT2 fototranzisztorok kollektorterhelései a mikrokontrollerbe épített ellenállások, amelyeket olyan szoftver engedélyez, amely a mikrokontroller megfelelő érintkezőit a tápáramköréhez köti.

Az N számlálási eredmény eggyel növekszik a VD1 emittáló dióda és a VT1 fototranzisztor közötti optikai kapcsolat megszakadásakor, ami növekvő szintkülönbséget hoz létre a mikrokontroller INT0 bemenetén. Ebben az esetben az INT1 bemenet szintjének alacsonynak kell lennie, azaz a VT2 fototranzisztort a VD2 emittáló diódával kell megvilágítani. Abban a pillanatban, amikor az INT1 bemeneten emelkedik a differenciál, az INT0 bemeneten pedig alacsony szint lesz, az eredmény eggyel csökken. A szintek egyéb kombinációi és azok különbségei az INT0 és INT1 bemeneteken nem változtatják meg a számlálás eredményét.

A 9999-es maximális érték elérése után a számlálás nullától folytatódik. A nulla értékből egyet levonva 9999 az eredmény. Ha nincs szükség visszaszámlálásra, akkor a VD2 emittáló diódát és a VT2 fototranzisztort kizárhatja a számlálóból, és a mikrokontroller INT1 bemenetét a közös vezetékre csatlakoztathatja. A szám csak tovább fog növekedni.

Mint már említettük, a tápfeszültség csökkenésének érzékelője a mikrokontrollerbe épített analóg komparátor. Összehasonlítja az egyenirányító kimenetén lévő nem stabilizált feszültséget (VD3 diódahíd) a beépített DA1 stabilizátor kimenetén lévő stabilizált feszültséggel. A program ciklikusan ellenőrzi a komparátor állapotát. A mérő hálózatról való leválasztása után a C1 egyenirányító szűrőkondenzátor feszültsége leesik, és a stabilizált feszültség egy ideig változatlan marad. Az R2-R4 ellenállások a következők szerint vannak kiválasztva. hogy a komparátor állapota ebben a helyzetben fordított. Ezt észlelve a program még azelőtt kiírja az aktuális számlálás eredményét a mikrokontroller EEPROM-jába, mielőtt az áramszünet miatt leállna. A következő bekapcsoláskor a program beolvassa az EERROM-ban írt számot és megjeleníti a jelzőn. A számolás ettől az értéktől folytatódik.

A mikrokontroller tűinek korlátozott száma miatt a számlálót nullázó SB1 gomb csatlakoztatásához a 13-as érintkezőt használták, amely a komparátor (AIM) invertáló analóg bemeneteként és egyúttal „digitális” bemeneteként is szolgál. PB1. A feszültségosztó (R4, R5 ellenállások) logikailag beállítja a mikrokontroller által érzékelt szintet, ha megnyomja az SB1 gombot, az alacsony lesz. Ez nem befolyásolja a komparátor állapotát, mivel az AIN0 bemenet feszültsége még mindig nagyobb, mint az AIN1.

Az SB1 gomb megnyomásakor a program az indikátor minden számjegyében mínuszjelet jelenít meg, majd elengedése után nullától kezdi a számolást. Ha a gomb lenyomása közben lekapcsolja a mérőműszert, az aktuális eredmény nem kerül az EEPROM-ba, és az ott tárolt érték változatlan marad.

A program úgy van megtervezve, hogy könnyen illeszthető legyen a mérőhöz más mutatókkal (például közös katódokkal), eltérő nyomtatott áramköri elrendezéssel stb. A program enyhe korrekciója akkor is szükséges, ha kvarc rezonátor használata a megadott frekvenciától 1 MHz-nél nagyobb mértékben eltérõ frekvenciára.

Ha a forrásfeszültség 15 V, mérje meg a feszültséget a mikrovezérlő panel 12. és 13. érintkezőjén a közös vezetékhez (10. érintkező) viszonyítva. Az elsőnek 4...4,5 V tartományban kell lennie, a másodiknak 3,5 V-nál nagyobbnak, de kisebbnek kell lennie, mint az elsőnek. Ezután a forrás feszültsége fokozatosan csökken. Amikor 9...10 V-ra csökken, a 12-es és 13-as érintkezőknél a feszültségértékek különbségének nullává kell válnia, majd előjelet kell váltania.

Most már telepítheti a programozott mikrokontrollert a panelbe, csatlakoztathatja a transzformátort és rákapcsolhatja a hálózati feszültséget. 1,5...2 mp után meg kell nyomni az SB1 gombot. A számláló kijelzőjén a 0 szám jelenik meg. Ha semmi nem jelenik meg a kijelzőn, ellenőrizze újra a feszültségértékeket a mikrokontroller AIN0.AIN1 bemenetein. Az elsőnek nagyobbnak kell lennie, mint a másodiknak.





Ha a számláló sikeresen elindult, már csak a számlálás helyességét kell ellenőrizni oly módon, hogy a fototranzisztorokat váltakozva árnyékoljuk egy IR-sugarak számára átláthatatlan lemezzel. A nagyobb kontraszt érdekében célszerű az indikátorokat piros szerves üvegszűrővel letakarni.



Továbbá, ha valaki kvarc nélkül szerel össze egy mérőt az Atiny2313-on,
A biztosítékokat így programoztam



ASM forrás
Firmware

1. lehetőség: ATmega8 + Nokia 5110 LCD + 3V tápegység

Az áramkör Atmega8-8PU-t (külső kvarc 8 MHz-es frekvenciával), Nokia 5110 LCD-t és tranzisztort használ a reed-kapcsoló impulzusainak feldolgozásához. A 3,3 V-os feszültségszabályozó biztosítja az áramellátást a teljes áramkör számára.

Az összes alkatrészt a kenyérsütőtáblára szerelték, beleértve a csatlakozókat a következőkhöz: ISP programozó (USBAsp), 5110 Nokia LCD, táp (5 V a 3,3 V-os szabályozóhoz), reed kapcsoló, reset gomb és egy 2 tűs csatlakozó a tekercselés polaritásának olvasására. motort, hogy tudja, növelje vagy csökkentse a számlálót.

A csatlakozók célja:
J1: Erő. 5 V feszültséget kap a csatlakozó, majd az L7833 stabilizátor, hogy megkapja az ATmega8 és az LCD által használt 3,3 V feszültséget.
J2: LCD csatlakozó Nokia 5110 LCD-hez.
J3: Reed kapcsoló. Impulzus bemenet a mikrokontrollerrel történő számláláshoz.
J4: Polaritás csatlakozó. A motor tekercselésével párhuzamosan kell csatlakoztatni. A nyomkövető áramkört 12 voltos motorhoz tervezték, de az R3-R4 és R5-R6 által alkotott feszültségosztók értékeinek beállításával más motorfeszültségekre is alkalmazható. Ha a motor egyenes polaritással van csatlakoztatva, a PD0 naplózása magas lesz. szinten, ha a motor fordított polaritásra van csatlakoztatva, akkor a PD1 magas log-értékkel rendelkezik. szint. Ez az információ a kódban a számláló növelésére vagy csökkentésére szolgál.
J5: Számláló visszaállítása. A gomb megnyomásakor a számláló nullázódik.
ISP csatlakozó: Ez egy 10 tűs csatlakozó az USBAsp AVR programozóhoz.

Készülék diagram

Fotó a kész készülékről


2. lehetőség: ATmega8 + 2x16 HD44780 LCD + 5V tápegység

Néhány olvasóm olyan verziót kért a számlálóból, amely 2x16-os HD44780-as kijelzőt (vagy egy kisebb, 1x16-os változatot) használ. Ezek a kijelzők 5 V-os tápfeszültséget igényelnek, így a 3,3 V-os stabilizátor nem releváns.

Készülék diagram

Mikrokontroller konfigurációs bitjei mindkét opcióhoz: LOW - 0xFF, HIGH - 0xC9.

Archívum a "Tekercsszámláló tekercsgéphez" cikkhez
Leírás:

Forráskód (C), firmware fájlok a mikrokontrollerhez

Fájl méret: 111,35 KB Letöltések száma: 257

Történt, hogy kedvem támadt feltekerni a transzformátort, minden rendben lesz, de nem volt elég gépem - innen kezdődött minden! Egy internetes keresés talált néhány lehetőséget a szerszámgépgyártásra, de az zavart, hogy a fordulatok számlálása ismét egy sebességmérőből vagy egy régi magnóból vett mechanikus számlálóval, valamint számológépes reed kapcsolókkal történik. Hm…. Egyáltalán nem volt szükségem szerelőkre, egy métert tekintve, nincs szétszedhető sebességmérőm, és nincs plusz számológépem sem. Igen, és ahogy elvtárs mondta. Serega a RadioKat-től: " Jó elektronikai mérnökök, gyakran rossz szerelők! Lehet, hogy nem én vagyok a legjobb elektronikai mérnök, de az biztos, hogy egy tetves szerelő vagyok.

Ezért úgy döntöttem, hogy felkorbácsolok egy elektronikus mérőórát, és a készülék teljes mechanikai részének fejlesztését a családra bízom (szerencsére apám és bátyám ászok a mechanikában).


Miután felmértem az egyik helyet a másikra, úgy döntöttem, hogy 4 számjegyű mutató elég lesz nekem - ez nem sok - nem kevés, hanem 10 000 fordulat. Az egész zűrzavart egy kontroller fogja irányítani, de nekem úgy tűnt, hogy a kedvenc ATtiny2313-at és az ATmega8-at egyáltalán nem volt dolgom egy ilyen értéktelen készülékbe betolni, a feladat egyszerű és egyszerűen meg kell oldani. Ezért az ATtiny13-at fogjuk használni - talán a leg"halottabb" MK-t, ami ma kapható (PIC-et és MCS-51-et nem veszek fel - csak ezeket tudom programozni, de nem tudom, hogyan kell hozzájuk programokat írni) . Ennek a tinédzsernek nincs elég lába, így senki sem állít meg minket műszakregiszterek csavarja rá! Úgy döntöttem, hogy sebességérzékelőként Hall-érzékelőt használok.


Felvázoltam egy diagramot:


A gombokat nem említettem azonnal – de hol lennénk ezek nélkül? Akár 4 darab a visszaállításon (S1) kívül.

S2 - bekapcsolja a tekercselési módot (az üzemmód alapértelmezés szerint be van állítva) - a tekercses tengely minden egyes fordulatával 1-gyel növeli a fordulatok számát
S3 - tekercselési mód, ennek megfelelően minden fordulattal 1-gyel csökkenti az értéket. A maximumot "0"-ig tekerheti - nem mínuszra tekercsel :)
S4 - EEPROM-ban tárolt információk olvasása.
S5 - az aktuális érték + mód írása az EEPROM-ba.


Természetesen ne felejtsük el megnyomni a tekercselés gombot, ha tekercselni készülünk, különben ellapulnak. Lehetett 1 helyett 3 hall szenzort vagy valcodert beszerelni és a vezérlőprogramot úgy módosítani, hogy az maga választja meg a forgásirányt, de szerintem ez ebben az esetben felesleges.


Most nem sok a séma szerint:
Mint látható, nincs benne semmi természetfeletti. Mindezt a szégyent 5V táplálja, az áram 85mA körül fogyaszt valamit.


A TLE4905L hall szenzorból (meg lehet próbálni másikat bedugni, én az „ami olcsóbb és elérhető”) elve alapján választottam, a jel a vezérlőhöz kerül, megszakítás generálódik és az aktuális érték változik, attól függően, hogy a kiválasztott módot. A vezérlő információkat küld a váltási regisztereknek, ahonnan viszont a hétszegmenses jelzőkhöz vagy a billentyűzethez kerül. Hétszegmenses anódokat használtam közös katóddal, egyből kvartettem volt egy tokban, de senki nem zavarja azokat, akik 2 db dupla vagy 4 db párhuzamosan kapcsolt szimpla anódot akarnak felcsavarni. Az indikátorokon lévő pont nem használatos, ezért a H (dp) tű a levegőben lóg. A mutatók működnek dinamikus mód, ezért az R3-R9 ellenállása kisebb, mint a számított érték. Az indikátorok illesztőprogramjai a VT1-VT4 tranzisztorokra vannak felszerelve. Lehetett speciális mikroáramköröket használni, mint például az ULN2803, de a tranzisztorok mellett döntöttem, azon egyszerű oknál fogva, hogy felhalmoztam őket - „mint a kosz”, néhányuk idősebb nálam.


Gombok S2-S4 - a la mátrix billentyűzet. A gombok „kimenetei” ugyanazokon a vezetőkön lógnak, mint a regiszterbemenetek, tény, hogy a vezérlőtől a regiszterekbe való adatküldés után az SHcp és Ds bemeneteken bármilyen szintű jel lehet, és ez nem bármilyen módon befolyásolják a nyilvántartások tartalmát. A gombok „bemenetei” a regiszterek kimenetein lógnak, az információátadás megközelítőleg a következőképpen történik: először a vezérlő információkat küld a regisztereknek, hogy később továbbítsa a jelzőkhöz, majd információkat küld a gombok beolvasásához. Az R14-R15 ellenállások azért szükségesek, hogy megakadályozzák a regiszterek/vezérlők lábai közötti „küzdelmet”. Az információ küldése a kijelzőre és a billentyűzet pásztázása magas frekvencián történik (a Tini13 belső generátora 9,6 MHz-re van állítva), ennek megfelelően, akármilyen gyorsan próbáljuk megnyomni és felengedni a gombot, a megnyomás ideje alatt sok művelet lesz, és ennek megfelelően a gomb nullája a vezérlőtől a találkozóhoz fog futni. Nos, olyan kellemetlen dolog, mint a gombérintkezők ismételt zörgése.


Az R16-R17 ellenállások segítségével a + tápra húzzuk a billentyűzetünket, hogy üresjáratban 1 és ne Z állapot jöjjön a billentyűzet kimeneteiről a vezérlő bemeneteire, ami téves pozitív eredményhez vezet. Meg lehetett csinálni ezeket az ellenállásokat, elég sok belső felhúzó ellenállás van az MK-ban, de nem tudtam eltávolítani őket - Isten óvja az óvatosakat.


A séma szerint ez minden, az érdeklődők számára adok egy listát az alkatrészekről. Azonnal hadd tegyek egy fenntartást, hogy a felekezetek egyik vagy másik irányban eltérhetnek.

Az IC1 egy ATtiny13 mikrokontroller, V betűvel használható. A SOIC változat pinoutja megegyezik az ábrán láthatóval. Ha valakinek van kedve QFN/MLF használatára a tokban, az adatlap a kezében lesz.
IC2-IC3 - 8 bites shift regiszterek reteszeléssel a kimeneten - 74HC595, a kenyérlapon DIP csomagokban használtam a kész eszközben lévő kártyán SOIC-ban. A kivezetés ugyanaz.
Az IC4 egy digitális egypólusú Hall érzékelő, TLE4905L. A huzalozás az adatlap szerint R2 - 1k2, C2-C3 by 4n7. Amikor az érzékelőt a gépre szereli, ellenőrizze, hogy a mágnes melyik oldalára reagál.
A C1, C4 és C5 tápegység szűrőkondenzátorok, egyenként 100n-t szereltem be, a mikroáramkörök tápcsapjaihoz a lehető legközelebb kell elhelyezni.
R1 - egy ellenállással húzzuk a reset lábat a tápegységhez, 300 Ohm - és így tovább. 1k fogadok.
R3-R9 - áramkorlátozó ellenállások indikátorokhoz. 33 Ohm - 100 Ohm, minél nagyobb az ellenállás, annál halványabb lesz a fény.
R10-R13 - korlátozza az áramot a tranzisztor alapáramkörökben. A kenyérsütőtáblán 510 Ohm volt, a táblába pedig 430 Ohmot csavartam.
VT1-VT4 - KT315 bármilyen betűindexszel, helyettesíthető KT3102, KT503 és analógokkal.
Az R14-R15, ahogy fentebb is írták, a “verekedés” megelőzése érdekében szerintem 1k-tól és feljebb is lehet állítani, de 4k7 fölé ne emeljük. Az R16-R17 értéke 300 Ohm, a sorba kapcsolt ellenállások összellenállása nem haladhatja meg az 5k-t a kísérleteim során, 5k feletti ellenállásnál hamis gombválaszok jelentek meg.


Miután ellenőriztük a mérőműszer működését a kenyérsütőtáblán, itt az ideje, hogy a hardvert „komplett eszközzé” állítsuk össze.


SL-ben fektettem ki a táblát, és valószínűleg nem volt optimálisan elhelyezve - a meglévő alkatrészekhez igazítottam, lusta voltam a piacra másokat vásárolni. Általában kiterítettem, átlátszó egyoldalas Lomond fóliára nyomtattam fekete-fehérre lézernyomtatók. Nyomtatott negatívban, 2 példányban. Negatív - mert a PP-t filmes fotoreziszttel akartam elkészíteni, és az viszont NEGATÍV. És 2 példányban – így kombinálva a legátlátszatlanabb festékréteget kapja. Nekem sincs kedvem aeroszolos dobozhoz ÁTLÁTSZÓ 21 megvesz.


A fotómaszkokat kombináljuk, „fénynek” téve őket, hogy a lyukak tökéletesen illeszkedjenek, és rögzítsük őket egy szokásos tűzővel - ezt az eljárást felelősségteljesen kell megközelíteni, a jövőbeli tábla minősége nagymértékben függ tőle.


Most el kell készítenünk a fólia PCB-t. Vannak, akik finom csiszolópapírral, mások radírral dörzsölik át, de mostanában a következő lehetőségeket részesítem előnyben:
1. Ha a réz nem szennyeződik túl oxidokkal, egyszerűen törölje le ammóniába mártott tamponnal - ó, büdös szemét, mondom, nem szeretem ezt a tevékenységet, de gyors. Ideális esetben a réz nem fog fényleni ezután, hanem az alkohol lemossa az oxidokat, és a tábla maratott lesz.
2. Ha elég koszos a réz, akkor filckoronggal polírozom. Felakasztom a fúróra, és íme. Itt nem kell különösebben buzgónak lenni, a későbbi maratáshoz nem használok GOI pasztát, elég egy filckör. Gyors és hatékony.
Általában elkészítettük - nem tudok fotót feltenni, a fertőzés tükörként ragyog, és semmi sem látszik a képen, én is egy tetves fotós vagyok.


Nos, oké, akkor tekerjük a fotorezisztet.
Be kell vallanom, hogy a fotorezisztem lejárt a lejárati dátumán, és a kutya nem hajlandó ragaszkodni a táblához, ezért először fel kell melegítenem a táblát. Hajszárítóval melegítem, de lehet vasalót is használni. Természetesen jó lenne egy laminálógép erre a célra, de:
- a tésztát most sajnálom őt
- amikor nem bántam a tésztát, akkor ostobán lusta voltam :)


A fotorezisztet feltekerjük a forró deszkára, ne felejtsük el eltávolítani védőréteg. Igyekszünk ezt a lehető legkörültekintőbben megtenni, hogy ne legyenek légbuborékok a tábla és a fotoreziszt között. A velük való küzdelem később külön szamár. Ha buborékok jelennek meg, tűvel megszúrom.
Bármilyen világításban gurulhat, és nem keveredhet szarsággal, emlékezve az amatőr fotósokra, üzletünkben a legfontosabb a napfény és az ultraibolya sugárzás egyéb forrásainak hiánya.
A recézés után forró vasalóval átmelegítem a deszkát egy újságpapíron keresztül, ez meggyógyítja a kilyukadt buborékokat, a fotoreziszt pedig szorosan tapad.


Ezután a táblára tesszük a sablont, itt a tábla kétoldalas, így a sablon a tábla mindkét oldalán lesz. Ezt a „szendvicset” egy plexilapra helyezzük, és a második lappal rányomkodjuk. 2 lapra van szükség, hogy az egyik oldal exponálása után óvatosan megfordíthasd a táblát a fotómaszk mozgatása nélkül.
Világítsuk meg a másik oldalról. Én ezt a lámpát használom:

Kb. 150mm távolságból világítok 7 percig (a távolságot és az időt kísérletileg választjuk ki).



Ezután készítsen egy gyenge lúgos oldatot - egy teáskanál szódát fél liter vízre. A víz hőmérséklete nem fontos. Addig keverjük, amíg az összes szóda fel nem oldódik. Ez az oldat nem veszélyes a kezére, tapintásra olyan, mint a szappanos víz.


Távolítjuk el a védőfóliát a deszkánkról, és beledobjuk az oldatba, majd aktívan elkezdjük dörzsölni egy kefével - de ne nyomja meg túl erősen, hogy ne szakítsa le a nyomokat. Természetesen nem dörzsölheti, de akkor lehetőség van a fotoreziszt lemosására:
- hosszú ideje
- minden el lesz mosva
de nekünk sem az egyik, sem a másik nem illik, ezért három.
valami hasonlót kapunk:

Öblítsük le a táblát vízzel, ne öntsük ki az oldatot - később szükségünk lesz rá. Ha a tábla fejlesztése során néhány nyom levált, vagy légbuborékok rontották el a pályákat, akkor ezeket a helyeket tsapon lakkal vagy speciális jelölővel kell retusálni. Ezután maratjuk a táblát. Én vas-kloridot használok.


A maratást követően ismét leöblítjük vízzel a táblát és visszaöntjük a lúgos oldatba, hogy lemossuk a már nem szükséges fotorezisztet. Egy óra elég.


Ezután bolondozunk. Kis áramköri lapokhoz vagy nagyon ékszeresekhez én Rose ötvözetet használok az áramköri lapokhoz, egyszerűen bekenem a bádogot a lapos hegyű forrasztópákával; Ebben az esetben érdemes bevonni a táblát folyasztószerrel, hagyományos alkoholos gyantát használok.

Lehet, hogy egyeseknek úgy tűnhet, hogy az utak nem jöttek ki túl simán - a pályák simán jöttek ki :) ez a forrasztópákával végzett ónozás költsége, a bádog nem fekszik egyenletesen.

A kész verzióban nincs reset gomb - nos, nem volt hova ragasztani a táblára, így nincs elég hely, és ha az MK lefagy, akkor kikapcsolom és újra bekapcsolom. Egy dióda is megjelent az áramkörben - védelem a polaritás megfordítása ellen. Ami a többi alkatrészt illeti, csak azokat használtam, amelyek kéznél voltak, ezért van SMD és normál eset is.


Érzékelőt rögzítünk a gép álló részéhez, és mágnest szerelünk a forgástengelyre úgy, hogy forgáskor 3-5 mm-re elhaladjon az érzékelőtől. Na, használjuk :)


Most már ennyi, köszönöm mindenkinek a figyelmet, és elvtársak GP1És Avreal fejlesztésben való segítségért.



Betöltés...
Top