Sisällysluettelo:
- Vaihe 1: Korjaus, ensimmäinen vaihe
- Vaihe 2: Korjaa seuraava ongelma
- Vaihe 3: Korjaa viimeinen ongelma
- Vaihe 4: Arduino -luonnos
- Vaihe 5: ESP-03: n ohjelmointi ja johtopäätökset
Video: EI ENEMMÄN JOUSTA Eteenpäin: 5 vaihetta
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:00
Vaihtoehtoinen nimi: IP -aikakello, osa 3
Jos pidät siitä, osallistun tähän kellokilpailuun.
Oletko kyllästynyt joutumaan keväällä eteenpäin?
Oletko kyllästynyt joutumaan takaisin?
No minä olen. Minulla on tämä vanha herätyskello, joka korjasi tämän (hetkeksi) (Katso kuva) Se säätyy automaattisesti kesäaikaan ja (mielestäni) sillä on akun varmuuskopio, jos menetät virran. Valitettavasti useita vuosia sitten Yhdysvallat päätti muuttaa päiviä ajan vaihtamiseksi. Joten nyt tämä kello on vaihdettava manuaalisesti neljä kertaa vuodessa! Käytän tätä vain varmuuskopiona.
Joten tämä Lazy Old Geek (LOG) halusi täydellisen kellon. Jokainen on erilainen ja ajat muuttuvat (Ha! Ha!) Ja ihanteet muuttuvat. Tässä on ihanteellinen makuuhuoneeni kello.
Näkyy aina yöllä. CAVEAT: Ei vilkkuvia sekunteja yöllä, se on liian häiritsevää.
Automaattinen kesäaika (DST). Inhoan sitä, että joudun vaihtamaan kelloa kahdesti vuodessa.
Näyttää viikonpäivän. Koska olen vanha ja en muista.
Joten pidän sekunneista aamulla. Mainoksessa sanotaan kuristavan 30 sekuntia, joten pidän kellosta, joka näyttää sekunteja.
Ei sinistä valoa. Me kaikki tiedämme, että sininen valo on huono sinulle. Ei aina totta, katso tämä:
www.instructables.com/id/Blue-Light-Proje…
Okei, se on aika yksinkertaista. Monet kellot näkyvät yöllä ja monet eivät ole sinisiä. Jotkut ovat "atomikelloja", jotka mukautuvat DST: hen. Itse asiassa joidenkin”atomikellojeni” on pakko viipyä DST -vaihdon kanssa.
Nyt sekuntien tilanne on tarkempi. Suunnittelin itse omani tekemään sen tässä Instructable -ohjelmassa (vaikka huomasin, etten selittänyt sitä kovin hyvin):
www.instructables.com/id/IP-Time-Clock-Par…
Tämä kello kesti noin neljä vuotta, suhteellisen huoltovapaa kunnes pari kuukautta sitten, kun se lakkasi toimimasta.
Vaihe 1: Korjaus, ensimmäinen vaihe
Sininen kuoleman näyttö, IP -kello (itse asiassa se on musta).
Tekninen kupla:
Lyhyt kuvaus IP -kellosta. Se käyttää ESP-03-mikrokontrolleria, joka yhdistää Internetiin WiFi-yhteydellä. Juotin kaksi 2 mm: n urosliitintä ESP-03: een, joten se kytketään piirilevyn pistorasiaan.
Se käyttää kahta seitsemän segmentin 3-numeroista näyttöä, kuten:
En muista olivatko ne tavallisia katodeja vai anodeja.
Max7219 ohjaa näyttöjä ja yksittäisiä LED -valoja viikonpäivinä.
Katso lisätietoja IP -kelloni osasta 2 Instructable.
Ensimmäinen asia, jonka yritin, oli ohjelmoida ESP-03 (mikro) uudelleen, joten katsoin Instructablea ja yritin, mutta se ei antanut minun ohjelmoida sitä.
Epärelevantti historia: Okei, olen VANHA mies, joten mieleni vaeltaa. Yksi syy siihen, miksi tulin Instructables.comiin, oli se, että sillä oli upeat Instructables Arduinolla. Se oli yksi tärkeimmistä syistä, miksi tulin Arduinosiin ja opin käyttämään niitä. Ohjattavat kirjoittajat ovat kaikilla tasoilla ja taidoilla, mutta voin usein löytää joitain ymmärrettävällä tasolla. Joten kiitos Instructables, joka auttoi minua vuosien varrella.
Vastineeksi kirjoitan Instructables, joka toivottavasti auttaa muita.
Toinen syy, miksi kirjoitan Instructables -ohjelmaa, on auttaa minua muistamaan, miten tein projekteja. Kirjoittaessani opetusohjelmia yritän antaa kaikki yksityiskohdat tehdäkseni sen, mitä tein. Minusta ilmeisesti en aina tee hyvää työtä.
Okei, laitoin IP -kellon takapolttimelle.
Teoriani on, että enemmän sinistä valoa antoi minulle enemmän energiaa (katso edellä blueproject Instructable) ja keskittyä tarkastelemaan tätä ongelmaa uudelleen. Lopulta huomasin, että menetelmä, jota käytin ESP-03: n ohjelmointiin, ei enää toiminut. Kirjoitin tämän toiseen Instructable -ohjelmaan:
www.instructables.com/id/2020-ESP8266/
Ongelma 1 ratkaistu, voin nyt ohjelmoida ESP-03: t Arduinon luonnoksilla.
Vaihe 2: Korjaa seuraava ongelma
No, ohjelmoin ESP-03: n vanhalla Arduinon luonnoksellani, laitoin sen IP-kelloon, ei edelleenkään toiminut. Luonnoksen kirjoittamisen tapaan mitään ei näytetty, ennen kuin Internet -yhteys ja NTP -palvelin muodostivat onnistuneen yhteyden (antaa tarkan ajan Internetissä), joten minulla oli tyhjä näyttö.
Arduino -sarjamonitorin avulla huomasin, että se ei muodostanut yhteyttä NTP -palvelimeen.
HUOMAUTUS: ESP-03 käyttää ESP8266-mikro-ohjainta. Yksi ESP8266: n mukavista asioista on, että siinä on sisäänrakennettu WiFi. Teknisesti se voi muodostaa yhteyden Wi -Fi -hotspotiin tai WiFi -reitittimeen, joka on monilla kodeilla, myös omallani.
Tässä on melko teknistä, uusilla WiFi -reitittimillä on kaksi kaistanleveyttä, 2,4 GHz ja 5,0 GHz. (Katso kuva reitittimestäni) Pidän niistä mielestäni AM- ja FM -radion välisenä erona. (Muistatko ne?)
ESP8266: n rajoitus on, että ne käyttävät vain 2,4 GHz: n kaistanleveyttä.
Lisää teknisiä asioita, kun muodostat yhteyden WiFi -verkkoon, tarvitset SSID -tunnuksen. Se on kuin yksittäinen radioasema, K Earth 101. Ja turvallisuussyistä tarvitset myös salasanan.
Monet WiFi -kaksikaistaiset reitittimet (2,4 GHz ja 5 GHz) käyttävät samaa SSID -tunnusta molemmille kaistoille.
Joka tapauksessa jostain syystä en voinut yhdistää ESP-03: ta reitittimeen. Muistan muista ihmisistä, joilla on samanlaisia ongelmia.
Bottom line: Asensin toisen reitittimen, jolla oli erilliset SSID -tunnukset 2,4 ja 5 GHz: n taajuudelle, esim. "Mtslink24" ja "mtslink50" ja pystyin puhumaan Internetissä. (Katso kuva)
VAROITUS: Jos sinulla on kaksikaistainen reititin, jolla on samat SSID -tunnukset molemmilla kaistoilla, se ei ehkä toimi ESP8266 -laitteiden kanssa.
Vaihe 3: Korjaa viimeinen ongelma
Näen vain, että en edelleenkään voinut muodostaa yhteyttä NTP -palvelimeen. Löysin toisen luonnoksen nähdäkseni pystynkö käyttämään Internetiä ja se toimi, joten seuraava ongelma näytti olevan yhteyden muodostaminen NTP -palvelimeen.
Alkuperäisessä luonnoksessani käytin IP -osoitetta yhteyden muodostamiseen NTP -palvelimeen:
tf.nist.gov/tf-cgi/servers.cgi
Joten kokeilin useita Boulderin ja FT. Collinsin IP -osoitteita, jotka ovat melko lähempänä sitä, missä olen. Kukaan niistä ei toiminut. Pelasivatko jotkut ja saivat globaalin luonnoksen toimimaan, mutta se lukkiutui ehkä vain joka viides kerta. Tutki lisää ja löysi jotain nimeltä pool.ntp.org. Ilmeisesti se, mitä tämä tekee, pyörii joukon IP -osoitteita, joten yksittäistä osoitetta ei ylikuormiteta ja niiden kaikkien pitäisi olla aktiivisia.
No, en oikein ymmärrä tätä WiFi -ohjelmointia niin hyvin, mutta onnistuin löytämään esimerkin, jonka avulla voisin sopeutua luonnokseeni ja sain sen toimimaan. Jippii!
Vaihe 4: Arduino -luonnos
Liitteenä on työluonnokseni Special.ino
Tässä muutama kommentti aiheesta:
Tähän voit laittaa oman SSID -tunnuksesi ja salasanasi. (Tämän on oltava 2,4 GHz.)
char ssid = "YourSSID"; // verkon SSID (nimi)
char pass = "SSID -salasanasi"; // verkon salasana
Käytetään pool.ntp.org -palvelinluetteloa.
IPAddress timeServerIP; // time.nist.gov NTP -palvelimen osoite
const char* ntpServerName = "pool.ntp.org";
// hanki satunnainen palvelin poolista WiFi.hostByName (ntpServerName, timeServerIP);
Kaksi DST -toimintoa:
void findChangeDates (); // Etsi kevään/syksyn muutospäivät
bool IsDST (); // Tarkista onko DST
findChangeDates (); ottaa kuluvan vuoden ja laskee, mitkä maaliskuun ja marraskuun päivät ovat vaihtopäiviä
bool IsDST (); määrittää onko nykyinen päivä DST vai ei
mitätön digitalClockDisplay ()
Valitettavasti vanhat aivoni eivät enää ymmärrä tätä. Mielestäni se sammuttaa sekuntinäytön klo 21.00 jälkeen. ja kytkee ne takaisin noin klo 5 aamulla. Minusta on erittäin ärsyttävää katsoa kelloa sängyssä ja nähdä sekuntien kuluvan. Mutta kun nousen aamulla, haluan nähdä sekunteja, jotta voin "ajastaa" kurkkuani.
Vaihe 5: ESP-03: n ohjelmointi ja johtopäätökset
Käytän tällä hetkellä Arduinon versiota 1.8.12.
Helpoin tapa asentaa ESP8266 -tavarat on käyttää Board Manageria tällä menetelmällä:
github.com/esp8266/Arduino#installing-with…
Kun olen asentanut kortin, valitsen”Yleinen ESP8266 -moduuli”.
VAROITUS: Tietokoneessani on kaksi versiota "Generic ESP8266 -moduulista". ESP8266 -levyt -kategoriaan kuuluva toimii, Sparkfun -luokkaan kuuluva ei.
No, olen laiska. Itse asiassa otin ESP-03: n ja ohjelmoin sen muokattuun ESP-sovittimeen osoitteesta:
www.instructables.com/id/2020-ESP8266/
Mitä olisin voinut tehdä, olen muuttanut IP Clock 2 -piirilevyäni tämän kaavion mukaisesti lisäämällä vain pari hyppääjää.
Lisäksi muutin CP2102 -USB -sovitinta niin, että RTS on kytketty GND: n vieressä olevaan nastaan.
Näillä muutoksilla se on kuin tavallisen Arduino -luonnoksen lataamista ilman painikkeiden painamista.
PÄÄTELMÄT: No, pidän IP -kellostani. Se täyttää kaikki kriteerini. Kuvasta huolimatta LEDit ovat punaisia, eivät valkoisia, joten ei sinisiä.
Suositeltava:
FK (eteenpäin kinemaattinen) Excel, Arduino ja käsittely: 8 vaihetta
FK (Forward Kinematic) Excelillä, Arduino & Processing: Forward Kinematicia käytetään End Effector -arvojen (x, y, z) löytämiseen 3D -tilasta
Eteenpäin kinemaattinen Excel, Arduino ja käsittely: 8 vaihetta
Eteenpäin Kinematic Excel, Arduino & Processing: Forward Kinematicia käytetään End Effector -arvojen (x, y, z) löytämiseen 3D -tilasta
Lisää salaattia vähemmän tilaa tai Salaatin kasvattamista avaruudessa, (enemmän tai vähemmän): 10 vaihetta
Kasvava enemmän salaattia vähemmän tilaa tai … Kasvava salaatti avaruudessa, (enemmän tai vähemmän) .: Tämä on ammattimainen lähetys Growing Beyond Earth, Maker Contestille, joka lähetetään Instructablesin kautta. En voisi olla innostuneempi suunnittelemaan avaruuden viljelyä ja julkaisemaan ensimmäisen Instructable -tuotteen. Aluksi kilpailu pyysi meitä
Täyttä höyryä eteenpäin! Infinity & Beyond: 11 vaihetta
Täyttä höyryä eteenpäin! Infinity & Beyond: Alicia Blakeyn ja Vanessa Krausen välinen yhteistyö Kuka helvetti on Fibonacci? Alician suunnittelun (sisäkkäiset planeettapyörät) perusteella päätimme tehdä yhteistyötä ja luoda toimivan hammaspyöräjärjestelmän, joka voidaan näyttää pystyasennossa
Kuinka siirtää eteenpäin: 8 vaihetta
Portin välittäminen: Haluatko isännöidä pelipalvelinta tai yrität isännöidä verkkopalvelimen portin uudelleenohjausta, on välttämätön askel saadaksesi palvelimesi kommunikoimaan muun Internetin kanssa. , " mikä on portin edelleenlähetys?