Sadržaj:
- Korak 1: Uklonite brojčanik s telefona
- Korak 2: Identificirajte prekidač
- Korak 3: Napravite krug
- Korak 4: Razvijte Kodeks
- Korak 5: Provjerite radi li
- Korak 6: Uključite ga u nešto korisno
Video: Povežite rotacijski brojčanik s Arduinom: 6 koraka (sa slikama)
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:38
Stari rotacijski telefon može se koristiti u brojne svrhe u vašim Arduino projektima - koristite ga kao novi ulazni uređaj ili upotrijebite Arduino za povezivanje rotacijskog telefona s vašim računalom. Ovo je vrlo osnovni vodič koji opisuje kako spojiti brojčanik na Arduino i birani broj proslijedite računalu preko Arduinove serijske veze.
Korak 1: Uklonite brojčanik s telefona
Prvi korak je ukloniti jedinicu za biranje broja s telefona. Koristim GPO telefon iz 1970 -ih. Na ovom telefonu brojčanik je iskočio - samo sam ga trebao povući. Ako se to ne dogodi, možda ćete morati otvoriti telefon i smisliti kako ga skinuti. Bilo je pet kabela spojenih na stražnju stranu brojčanika. Na mom telefonu to su bile obične veze lopatica, pa sam olabavio vijke i izvukao ih. Ako želite ponovno sastaviti telefon, ne zaboravite zabilježiti koja žica u boji ide na koju vezu.
Korak 2: Identificirajte prekidač
Nakon što je brojčanik van, trebalo bi biti relativno lako vidjeti kako brojčanik pretvara rotacijsko kretanje u impulse. Pokušajte okretati brojčanik ručno i promatrati kretanje na stražnjoj strani. Trebali biste vidjeti kako prekidač brzo stvara i prekida krug - pa ako birate '9', prekidač bi se trebao aktivirati devet puta. Za one od vas koji možda nikada prije niste koristili okretni brojčanik - imajte na umu da se biranje događa samo kad dopustite idite na broj i pustite ga da se spool vrati. Dokumentirao sam kako radi za moj telefon u bilješkama na fotografiji ispod. Tu je i mutni video o mehanizmu koji radi.
Korak 3: Napravite krug
Nakon što pronađete prekidač koji je napravljen i slomljen, trebali biste moći identificirati veze slijedeći žice natrag do priključaka za povezivanje. U mom slučaju, dvije strane prekidača spojene su na dva krajnja lijeva terminala. Priključite ove terminale na neke kratkospojne žice i nabavite prototipove! Prekidač na brojčaniku je uvijek uključen i prekida se za svaki impuls pri biranju, pa sam upotrijebio vrlo jednostavan krug u nastavku. Pin 2 će ići visoko za svaki impuls kako se brojčanik okreće. Kada se telefon ne bira, prekidač u jedinici za biranje je zatvoren (tzv. NORMALNO ZATVOREN prekidač, iz očiglednih razloga) pa krug spaja pin 2 na masu (što je za Arduino NISKO). To je zato što otpor ima otpornik od 470 ohma nego otpornik od 10 K. Puno je manji otpor. Dok se telefon bira, prekidač se brzo otvara i zatvara (za 9 će se otvoriti i zatvoriti devet puta, zapamtite). Kad je sklopka otvorena, pin 2 nije spojen na masu - umjesto toga, spojen je na 5V napajanje kroz otpor od 10470 ohma. Arduino to tumači kao VISOKO. Ako vaš brojčanik ima prekidač NORMALNO OPEN, tada zamjena položaja 10K otpornika i brojčanik bi trebali uspjeti.
Korak 4: Razvijte Kodeks
Sada nam je potreban neki kôd za Arduino da broji impulse i šalje ukupan broj po biranom broju nazad kroz serijski port. Moj kôd je ispod. Kako ovdje imamo posla s mehanikom, vaši se mogu razlikovati. Pokušajte se poigrati konstantom debounce i konstantom 'koliko dugo čekamo prije nego što pretpostavimo da je brojčanik završio rotiranje'. Pokušao sam to komentirati što je moguće urednije. Nadajmo se da je to prilično jednostavno.int needToPrint = 0; int count; int in = 2; int lastState = LOW; int trueState = LOW; long lastStateChangeTime = 0; int cleared = 0; // constantsint dialHasFinishedRotatingAfterMs = 100; int debounceDelay = 10; void setup () {Serial.begin (9600); pinMode (in, INPUT);} void loop () {int čitanje = digitalRead (in); if ((millis () - lastStateChangeTime)> dialHasFinishedRotatingAfterMs) {// brojčanik nije biran ili je upravo završen. if (needToPrint) {// ako je biranje tek završeno, moramo poslati broj niz serijski // redak i resetirati broj. Modificirali smo brojanje za 10 jer će '0' poslati 10 impulsa. Serijski ispis (broj % 10, DEC); needToPrint = 0; count = 0; očišćeno = 0; }} if (čitanje! = lastState) {lastStateChangeTime = millis (); } if ((millis () - lastStateChangeTime)> debounceDelay) {// debounce - to se događa nakon što se stabilizira ako (čitanje! = trueState) {// to znači da je prekidač upravo izašao iz zatvoreno-> otvoreno ili obrnuto. trueState = čitanje; if (trueState == HIGH) {// povećati broj impulsa ako se povećao. count ++; needToPrint = 1; // trebat ćemo ispisati ovaj broj (nakon što se brojčanik zavrti okretati)}}} lastState = čitanje;}
Korak 5: Provjerite radi li
Provjerite radi li otvaranjem serijskog prozora (ja koristim zaslon na unix stroju, možda biste htjeli koristiti Hyperterm ili slično u sustavu Windows) i pokušajte birati neke brojeve. Provjerite je li serijski program postavljen za čitanje s USB-a > serijski adapter u vašem Arduinu (provjerite izbornik Alati-> Serijski port u softveru Arduino ako ste zaboravili što je to) i brzinu prijenosa od 9600 bps. Trebali biste vidjeti točan broj koji se pojavljuje prilikom biranja.
Korak 6: Uključite ga u nešto korisno
Smislio sam datoteku Quartz Composer na svom Macu kako bih uneo unos i lijepo ga prikazao na ekranu. Nakon što se u stroju unese kao serijski podatak, možete učiniti sve s njim. Čekajući vaše ideje! Donijet ću video zapis "na djelu" i ispisati brojeve na ekran čim dobijem nekoga da mi drži kameru - volio bih da imam tri ruke.
Preporučeni:
Kućni alarmni internetski brojčanik za Aritech s Arduinom: 6 koraka
Kućni alarmni internetski brojčanik za Aritech s Arduinom: Vrlo uobičajen kućni i poslovni alarm koji se koristi u mnogim europskim zemljama je serija alarmnih ploča Aritech. One su bile instalirane do početka 2000. u stotinama tisuća, a mnoge postoje i danas u kućama - obično ih ponovno označavaju
Vintage rotacijski brojčanik za telefonski brojčanik, kontrola glasnoće: 7 koraka (sa slikama)
Kontrola glasnoće na računaru s rotacijskim rotacijskim telefonskim biranjem: Ako ste išta poput mene, često mijenjate glasnoću na računalu. Neki su videozapisi glasniji od drugih, ponekad želite da zvuk na vašem računalu bude utišan dok slušate podcaste ili glazbu, pa ćete možda morati prestati
Rotacijski koder: Kako radi i kako se koristi s Arduinom: 7 koraka
Rotacijski koder: Kako funkcionira i kako se koristi s Arduinom: Ovaj i druge nevjerojatne vodiče možete pročitati na službenoj web stranici ElectroPeak -aPregled U ovom ćete vodiču naučiti kako se koristi rotacijski koder. Prvo ćete vidjeti neke podatke o rotacijskom koderu, a zatim ćete naučiti kako
Brojčanik na motociklu sa solarnim pogonom: 5 koraka (sa slikama)
Sat za biranje motocikla na solarni pogon: Ostao mi je tacho brojčanik koji je ostao od mog starog motocikla, kada sam zamijenio mehanički brojač okretaja elektroničkom pločom (to je drugi projekt!) I nisam ga želio baciti. Ove su stvari dizajnirane za pozadinsko osvjetljenje kada su svjetla za bicikl isključena
Vodič za rotacijski koder s Arduinom: 6 koraka
Vodič za rotacijski davač s Arduinom: Rotacijski koder je elektronička komponenta sposobna nadzirati kretanje i položaj pri rotiranju. Rotacijski davač koristi optičke senzore koji mogu generirati impulse kada se rotacijski davač okreće. Primjena rotacijskog davača obično kao računalo