Pomoduino napravi pomodro tajmer s pogonom na Arduinu

  • Brian Curtis
  • 0
  • 1024
  • 191
Oglas

Pomodoro tehnika izrezana kroz odugovlačenje s ovim Pomodoro tehnikama Aplikacije i softveri prorezani odlaganju s ovim Pomodoro tehnikom Aplikacije i softver Prokrastinacija je bolest koja prožima studente i radnike u svim dijelovima svijeta i podjednako zarazuje amatere i profesionalce. Kao pisac, svakodnevno patim od odugovlačenja. Neki ljudi je popularan sustav upravljanja vremenom koji uključuje razbijanje posla u 25 minuta, uz 5 minuta odmora. Postoji razni softver koji vam pomaže u tome, ali što ako želite koristiti sustav pomodoro dok radite izvan računala ili dok radite na svom radnom stolu? Izrada pomodro tajmera na Arduinovom sjajnom je uvodnom projektu 15 sjajnih Arduino projekata za početnike 15 sjajnih Arduino projekata za početnike Zanimaju se Arduino projekti, ali nisu sigurni gdje započeti? Ovi početnički projekti naučit će vas kako započeti. koji će vam pomoći da naučite svoj put oko Arduina i zapravo će rezultirati nečim korisnim.

Cilj

U slučaju da želite pokušati smisliti kako ovo postaviti prije nego što pogledate naprijed, evo što pokušavamo učiniti. Imat ćemo tri svjetla; jedan za “raditi,” jedan za “pauza,” i svjetlo upozorenja. Radno svjetlo će svijetliti 25 minuta, a lampica upozorenja također će se upaliti u posljednje dvije minute tog intervala. Nakon 25 minuta radna i upozoravajuća svjetla ugasit će se, a prekidačko svjetlo upalit će se 5 minuta (svjetlo upozorenja ponovo će biti upaljeno posljednje dvije minute).

Također će biti uključen gumb koji će odgoditi promjenu svjetla na dvije minute kako bi vam pružio malo dodatnog radnog vremena ili vremena pauze.

Što trebaš

Za ovaj projekt koristit ćemo sljedeće dijelove - sve što biste trebali imati u svom početnom kompletu.

  • Arduino mikrokontroler (koristili smo Mega, ali Uno bi također dobro funkcionirao)
  • daska za kruh
  • USB kabl
  • 6 žica
  • Otpornici 3 x 330 Ohm
  • 3 x LED (koristili smo zelenu, žutu i plavu)
  • 1 tipka

1. korak: Postavljanje svega gore

Svaku od LED dioda stavite u drugi stupac na ploči (najlakše je ako su malo udaljeni) i gumb odložite malo dolje. Provjerite je li gumb okrenut u pravom smjeru - postoje dva seta od dvije pinove na jednoj strani gumba, a te igle moraju biti u istom redu.

Vodite žice sa igle 5, 7 i 13 do stupca koji sadrži negativnu podlogu plave, žute i zelene LED (negativna noga je kraća od dvije). Zatim stavite otpornik u isti stupac kao i svaku pozitivnu nogu i povežite ih s negativnom šinom sa strane ploče (plava, iako boja zapravo i nije bitna, samo je konvencija koristiti plavu boju radi jasnoće).

Također vodite žicu od plave šine na ploči do jedne od nogu na gumbu, a drugu žicu s druge noge (na istoj strani) da zakačite 2 na arduinu. Zatim uzemljite plavu šinu u GND pin na Arduinu.

Evo dijagrama koji bi trebao ukloniti svaku zbrku:

To je to! Sada na programiranje.

Programiranje vašeg Arduina

Ispod je kôd za Pomoduino timer - pročitajte unutarnje komentare, jer oni objašnjavaju što svaki korak koda radi.

 int zelena = 13; int žuta = 7; int plava = 5; int ledStateGreen = NISKO; int ledStateBlue = NISKO; duga prethodnaMillis = 0; dugi interval; int buttonPin = 2; int buttonState = 1; bool prešan = 0; dugo pritisniteTime = 0; int faza = 0; void setup () pinMode (zelena, OUTPUT); pinMode (žuto, OUTPUT); pinMode (plava, OUTPUT); pinMode (gumbPin, INPUT_PULLUP); digitalWrite (tipkaPin, HIGH);  void loop () // ažuriraj trenutačno vrijeme i stanje gumba bez potpisa, trenutnaMillis = millis (); int buttonState = digitalno čitanje (buttonPin); // mjeri vrijeme od zadnjeg pritiska na gumb dug napredak = trenutniMillis - prethodniMillis; // provjerite je li tipka pritisnuta // više od 2 sekunde od zadnjeg pritiska // (da se spriječi registracija višestrukih pritiska) ako ((pritisniteTime - trenutniMillis)> 2000) if (gumbState == 0) pritisnuto = 1; pressTime = currentMillis; else pritiskano = 0; // faza 0 je faza "rad" // ako je pritisnuto tipku, dodajte 2 minute u tajmer rada ako (faza == 0) ako (pritisnuto == 1 ) interval = 1620000; // ako je interval prekoračen, zabilježite trenutnu // vrijeme za mjerenje sljedećeg intervala ako (trenutniMillis - prethodniMillis> interval) previousMillis = trenutniMillis; // postavite zeleno i plavo LED stanje ako (ledStateGreen == LOW) ledStateGreen = HIGH; ledStateBlue = LOW; else ledStateGreen = LOW; // primijeniti stanja LED-a na LED-ove // ​​interval resetiranja i prebaciti se na "break" fazu digitalWrite (zelena, ledStateGreen); digitalWrite (plava, ledStateBlue); interval = 1500000; buttonState = 1; faza = 1;  else // ako je pritisnuta tipka, dodajte 2 minute za prekid tajmera ako je (pritisnuto == 1) interval = 420000; // ako je interval završen, zabilježite trenutno // vrijeme mjerenja sljedećeg intervala ako (currentMillis - prethodniMillis> interval) prethodniMillis = trenutniMillis; // postavite plava i zelena stanja LED ako je (ledStateBlue == HIGH) ; ledStateBlue = NISKO;  else ledStateBlue = HIGH; ledStateGreen = LOW; // primijeni stanja LED-a na LED-ove // ​​interval resetiranja i postavite na "work" fazu digitalWrite (zelena, ledStateGreen); digitalWrite (plava, ledStateBlue); interval = 300000; buttonState = 1; faza = 0;  // izračunati preostalo vrijeme u intervalu bez potpisa dugo vremenaLeft = (interval - napredak); // ako su preostale manje od dvije minute, upalite žutu LED ako (vrijeme preostalo) < 120000)  digitalWrite(yellow, HIGH);  else  digitalWrite(yellow, LOW);  // reset pressed variable pressed = 0; 

Napomena: kada ovo testirate, vjerojatno ne želite čekati 25 minuta da biste vidjeli radi li. U videozapisu ispod, intervali su postavljeni na 5 sekundi za zelenu, 2 sekunde za plavu i 1 sekundu za žutu. Koristite kraći interval da biste bili sigurni da sve ispravno radi prije nego što ga upotrebljavate za praćenje vremena!

Nakon što sve povežete i unesete kod u IDE, spremni ste za rad! Prenesite skicu i imat ćete radni pomodro timer s gumbom odgode od 2 minute. Ako lampica upozorenja svijetli i treba vam više vremena, samo pritisnite gumb.

Možda ćete primijetiti da je gumb spojen izravno na ulazni pin Arduino. Korištenjem jednog otpornika ugrađenog u Arduino, ne trebate voditi žicu od 5V ulaza do gumba ili koristiti otpornik u skladu s njim. Možete dobiti više informacija o Arduino referenci za digitalne igle.

Napredniji izazovi

Ako ste napravili svoj Pomoduino i želite preuzeti nešto malo naprednije, možete isprobati nešto od sljedećeg:

  • Dodajte niz LED-ova koji svijetle i služe kao brojač broja završenih radnih sesija
  • Neka tipka doda dvije minute u tajmer za svaki put kada ga pritisnete
  • Dodajte zvučnik i reproducirajte zvuk kad dođe vrijeme da se vratite na posao
  • Za prijenos je koristite 9V bateriju
  • Umjesto da upotrijebite lampicu upozorenja, trepnite zeleno ili plavo svjetlo nekoliko minuta prije prebacivanja
  • Prikažite odbrojavanje na LED zaslonu

Ostali veliki početnički projekti

Ako ste novi u Arduinu, za vas imamo puno zabavnih tutorijala. Isprobajte Arduino programiranje semafora za početnike: Vodič za projekt kontrolera semafora Arduino programiranje za početnike: Vodič za upravljanje semaforima za semafore Izgradnja regulatora za semafor Arduino pomaže vam razviti osnovne vještine kodiranja! Počeli smo. , futuristička LED kocka Kako napraviti pulsirajuću Arduino LED kocku koja izgleda kao da je došla iz budućnosti Kako napraviti pulsirajuću Arduino LED kocku koja izgleda kao da je došla iz budućnosti Ako ste se pozabavili nekim početničkim Arduino projektima, ali jesu tražite nešto malo trajno i na nekoj drugoj strašnoj razini, tada skromna LED kocka 4 x 4 x 4 je…, alarm za izlazak Arduino noćno svjetlo i Projekt alarma za izlazak sunca Arduino noćno svjetlo i Projekt alarma izlaska Sunrise Danas ćemo pravite budilicu za izlazak sunca, koja će vas lagano i polako probuditi bez pribjegavanja uvredljivom stroju za buku. ili alarmni sustav Kako napraviti jednostavan Arduino Alarm System Kako napraviti jednostavan Arduino Alarm System Detect pokret, a zatim uplašiti hektar od uljeza s visokim zvukovima alarma i treperavim svjetlima. Zvuči li to zabavno? Naravno da ima. To je cilj današnjeg Arduino projekta, pogodan…. Ako se odlučite za jedan od gore naprednih naprednih izazova, javite nam kako to ide!




Još ne komentari

O modernoj tehnologiji, jednostavnoj i pristupačnoj.
Vaš vodič u svijetu moderne tehnologije. Naučite kako koristiti tehnologije i uređaje koji nas okružuju svaki dan i naučite kako otkriti zanimljivosti na Internetu.