Turinys:

NĖRA PAVASARIO Į priekį: 5 žingsniai
NĖRA PAVASARIO Į priekį: 5 žingsniai

Video: NĖRA PAVASARIO Į priekį: 5 žingsniai

Video: NĖRA PAVASARIO Į priekį: 5 žingsniai
Video: Моя работа наблюдать за лесом и здесь происходит что-то странное 2024, Lapkritis
Anonim
NĖRA PAVASARIO IŠ priekio
NĖRA PAVASARIO IŠ priekio
NĖRA PAVASARIO IŠ priekio
NĖRA PAVASARIO IŠ priekio

Alternatyvus pavadinimas: IP laiko laikrodžio 3 dalis

Jei jums tai patinka, aš dalyvauju konkurse „Laikrodis“.

Ar pavargote nuo pavasario?

Ar pavargote nuo grįžimo?

Na, aš esu. Turiu šį seną žadintuvą, kuris kurį laiką tai ištaisė (žr. Paveikslėlį). Jis automatiškai prisitaiko prie vasaros laiko ir (manau) jis turi baterijos atsarginę kopiją, jei prarastumėte maitinimą. Deja, prieš keletą metų JAV nusprendė pakeisti laiko keitimo laiką. Taigi dabar šį laikrodį reikia rankiniu būdu keisti keturis kartus per metus! Aš naudoju tai tik kaip atsarginę kopiją.

Taigi šis Lazy Old Geek (LOG) norėjo tobulo laikrodžio. Visi skirtingi ir laikai keičiasi (Ha! Ha!), O idealai keičiasi. Štai mano idealus miegamojo laikrodis.

Visada matomas naktį. CAVEAT: Nieko nemirksi sekundžių naktį, tai per daug blaško dėmesį.

Automatinis vasaros laikas (DST). Nekenčiu du kartus per metus keisti laikrodžio laikus.

Rodo savaitės dieną. Kadangi aš sena ir neatsimenu.

Taigi man patinka sekundės ryte. Skelbime sakoma, kad skalauti 30 sekundžių, todėl man patinka laikrodis, rodantis sekundes.

Nėra mėlynos šviesos. Visi žinome, kad mėlyna šviesa jums yra bloga. Ne visada tiesa, pažiūrėkite:

www.instructables.com/id/Blue-Light-Proje…

Gerai, tai gana paprasta. Daugelis laikrodžių matomi naktį, o daugelis - ne mėlyni. Kai kurie yra „atominiai“laikrodžiai, kurie prisitaiko prie DST. Tiesą sakant, kai kuriems mano „atominiams“laikrodžiams tenka grumtis su DST keitimu.

Dabar sekundžių situacija yra konkretesnė. Aš iš tikrųjų suprojektavau tai padaryti šioje instrukcijoje (nors pastebėjau, kad ne taip gerai paaiškinau):

www.instructables.com/id/IP-Time-Clock-Par…

Šis laikrodis truko apie ketverius metus, palyginti nereikalavo priežiūros, kol prieš porą mėnesių nustojo veikti.

1 žingsnis: taisymas, pirmas žingsnis

Tvirtinimas, pirmas žingsnis
Tvirtinimas, pirmas žingsnis
Tvirtinimas, pirmas žingsnis
Tvirtinimas, pirmas žingsnis
Tvirtinimas, pirmas žingsnis
Tvirtinimas, pirmas žingsnis

Mėlynas mirties ekranas, IP laikrodis (iš tikrųjų jis yra juodas).

Technobabble:

Trumpas IP laikrodžio aprašymas. Jis naudoja ESP-03 mikrovaldiklį, kuris jungiasi prie interneto naudojant „WiFi“. Ant ESP-03 lituodavau dvi 2 mm vyriškas antraštines juosteles, kad jis būtų prijungtas prie PCB lizdo.

Jis naudoja du septynių segmentų 3 skaitmenų ekranus, tokius kaip:

Nepamenu, ar tai buvo įprastas katodas, ar anodas.

„Max7219“vairuoja ekranus ir atskirus šviesos diodus savaitės dienomis.

Norėdami gauti daugiau informacijos, žiūrėkite mano IP laikrodžio 2 dalį Instructable.

Na, pirmas dalykas, kurį bandžiau, buvo perprogramuoti ESP-03 (mikrovaldiklį), todėl pažvelgiau į savo „Instructable“ir pabandžiau, bet tai neleido man jo programuoti.

NEREALI ISTORIJA: Gerai, aš esu SENAS žmogus, todėl mano protas klajoja. Viena iš priežasčių, kodėl patekau į „Instructables.com“, buvo ta, kad ji turėjo puikias „Instructables“„Arduino“. Tai buvo viena iš pagrindinių priežasčių, kodėl patekau į „Arduinos“ir išmokau jais naudotis. Instruktuojami rašytojai yra įvairaus lygio ir įgūdžių, tačiau dažnai galiu rasti tokių, kurie yra man suprantamo lygio. Taigi ačiū „Instructables“už pagalbą man daugelį metų.

Norėdami grąžinti paslaugą, rašau „Instructables“, kuri, tikiuosi, padės kitiems.

Antroji priežastis, dėl kurios rašau „Instructables“, yra padėti man prisiminti, kaip vykdžiau projektus. Rašydamas instrukcijas stengiuosi pateikti visą informaciją, kad galėčiau padaryti tai, ką padariau. Man akivaizdu, kad ne visada darau gerą darbą.

Gerai, aš uždėjau IP laikrodį ant galinio degiklio.

Mano teorija yra tokia, kad daugiau mėlynos šviesos suteikė man daugiau energijos (žr. Aukščiau „blueproject Instructable“) ir sutelkti dėmesį į šios problemos peržiūrą. Galiausiai supratau, kad metodas, kurį naudoju programuoti ESP-03, nebeveikia. Aš tai parašiau kitame „Instructable“:

www.instructables.com/id/2020-ESP8266/

1 problema išspręsta, dabar galiu programuoti ESP-03 su „Arduino“eskizais.

2 veiksmas: kitos problemos sprendimas

Kitas problemos sprendimas
Kitas problemos sprendimas
Kitas problemos sprendimas
Kitas problemos sprendimas
Kitas problemos sprendimas
Kitas problemos sprendimas

Na, aš užprogramavau ESP-03 su savo senu „Arduino“eskizu, įdėjau jį į savo IP laikrodį, vis tiek neveikiau. Beje, aš parašiau eskizą, niekas nebuvo rodomas, kol nebuvo sėkmingai prijungtas prie interneto ir NTP serverio (pateikiamas tikslus laikas internete), todėl turėjau tuščią ekraną.

Naudodamas „Arduino Serial“monitorių, mačiau, kad jis neprisijungia prie NTP serverio.

PASTABA: ESP-03 naudojamas ESP8266 mikrovaldiklis. Vienas iš malonių dalykų, susijusių su ESP8266, yra tai, kad jame yra įmontuotas „WiFi“. Techniniu požiūriu jis gali prisijungti prie „WiFi“viešosios interneto prieigos taško arba „WiFi“maršrutizatoriaus, kurį turi daugelis namų, įskaitant mano.

Čia gaunasi gana techniška, nauji „WiFi“maršrutizatoriai turi du pralaidumus - 2,4 GHz ir 5,0 GHz. (Žiūrėkite mano maršrutizatoriaus paveikslėlį) Man patinka galvoti apie juos kaip apie AM ir FM radijo skirtumą. (Prisimeni tuos?)

ESP8266 apribojimas yra tas, kad jie naudoja tik 2,4 GHz dažnių juostos plotį.

Daugiau techninių dalykų, kai prisijungiate prie „WiFi“, jums reikia identifikatoriaus, vadinamo SSID. Tai tarsi atskira radijo stotis, K Earth 101. Ir saugumo sumetimais jums taip pat reikia slaptažodžio.

Na, daugelis „WiFi“dviejų juostų maršrutizatorių (2,4 GHz ir 5 GHz) naudoja tą patį SSID abiem juostoms.

Bet kokiu atveju dėl tam tikrų priežasčių negalėjau prijungti ESP-03 prie maršrutizatoriaus. Atrodo, prisimenu kitus žmones, turinčius panašių problemų.

Esmė: Aš sukūriau kitą maršrutizatorių, kuris turėjo atskirus 2,4 ir 5 GHz dažnių juostos SSID, pvz., „Mtslink24“ir „mtslink50“, ir galėjo kalbėti internetu. (Žr. Paveikslėlį)

ĮSPĖJIMAS: Jei turite dviejų juostų maršrutizatorių, kurio abiejų juostų SSID yra vienodi, jis gali neveikti su ESP8266.

3 žingsnis: Paskutinės problemos sprendimas

Paskutinės problemos sprendimas
Paskutinės problemos sprendimas

Mačiau tai, kad vis dar negalėjau prisijungti prie NTP serverio. Radau kitą eskizą, norėdamas sužinoti, ar galiu naudotis internetu, ir tai veikė, todėl kita problema atrodė kaip prisijungimas prie NTP serverio.

Na, savo pradiniame eskize, norėdamas prisijungti prie NTP serverio, naudoju IP adresą:

tf.nist.gov/tf-cgi/servers.cgi

Taigi aš išbandžiau kelis „Boulder“ir „FT. Collins“IP adresus, kurie yra gana arti to, kur esu. Nė vienas iš jų neveikė. Ar kai kurie žaidė ir iš tikrųjų gavo visuotinį eskizą, tačiau jis užrakintų tik vieną iš penkių kartų. Atliko daugiau tyrimų ir rado kažką, vadinamą pool.ntp.org. Matyt, tai, ką tai daro, sukasi per daugybę IP adresų, todėl nė vienas adresas nėra perkrautas ir visi jie turėtų būti aktyvūs.

Na, aš nelabai suprantu šio „WiFi“programavimo, bet pavyko rasti pavyzdį, kurį galėčiau pritaikyti savo eskizui, ir priversti jį veikti. Yippee!

4 žingsnis: „Arduino“eskizas

Arduino eskizas
Arduino eskizas

Pridedamas mano darbo eskizas Special.ino

Štai keletas komentarų apie tai:

Čia įvedate savo SSID ir slaptažodį. (Tai turi būti 2,4 GHz.)

char ssid = "YourSSID"; // tinklo SSID (pavadinimas)

char pass = "Jūsų SSID slaptažodis"; // tinklo slaptažodis

Naudojant pool.ntp.org serverių sąrašą.

IPAddress timeServerIP; // time.nist.gov NTP serverio adresas

const char* ntpServerName = "pool.ntp.org";

// gauti atsitiktinį serverį iš baseino WiFi.hostByName (ntpServerName, timeServerIP);

Dvi DST funkcijos:

void findChangeDates (); // Raskite pavasario/rudens keitimo datas

bool IsDST (); // Patikrinkite, ar tai DST

findChangeDates (); paima einamuosius metus ir nustato, kurios kovo ir lapkričio dienos yra euro įvedimo datos

bool IsDST (); nustato, ar dabartinė diena yra DST, ar ne

void digitalClockDisplay ()

Deja, mano senosios smegenys to nebegali suprasti. Manau, kad tai išjungia sekundžių rodymą po 21 val. ir vėl juos įjungia apie 5 val. Mane labai erzina žiūrėti į laikrodį, kai guliu lovoje, ir matyti, kaip eina sekundės. Bet kai atsikeliu ryte, man patinka matyti sekundes, kad galėčiau „laiko“skalauti.

5 žingsnis: ESP-03 programavimas ir išvados

ESP-03 programavimas ir išvados
ESP-03 programavimas ir išvados

Šiuo metu naudoju „Arduino“1.8.1 versiją.

Lengviausias būdas įdiegti ESP8266 medžiagą yra naudojant „Board Manager“naudojant šį metodą:

github.com/esp8266/Arduino#installing-with…

Įdiegę, pasirinkdami „Board“, pasirenku „Generic ESP8266 module“.

ĮSPĖJIMAS: Mano kompiuteryje yra dvi „Bendrojo ESP8266 modulio“versijos. Tas, kuris priklauso kategorijai „ESP8266 plokštės“, veikia, o „Sparkfun“- ne.

Na, aš tingiu. Aš iš tikrųjų padariau ESP-03 ir užprogramavau jį savo pakeistame ESP adapteryje iš:

www.instructables.com/id/2020-ESP8266/

Ką galėjau padaryti, tai modifikuoti savo IP laikrodžio 2 PCB pagal šią schemą, tiesiog pridėdamas porą trumpiklių.

Be to, pakeičiau CP2102 USB adapterį, kad RTS būtų prijungtas prie kaiščio šalia GND.

Naudojant šias modifikacijas, tai yra tarsi įkelti įprastą „Arduino“eskizą, nespaudžiant jokių mygtukų.

IŠVADOS: Na, man patinka mano IP laikrodis. Tai atitinka visus mano kriterijus. Nepaisant to, kas parodyta paveikslėlyje, šviesos diodai yra raudoni, o ne balti, todėl nėra mėlyni.

Rekomenduojamas: