Obsah:
- Krok 1: Věci použité v tomto projektu
- Krok 2: Příběh
- Krok 3: Stáhněte si potřebné soubory
- Krok 4: Sestavte
- Krok 5: Program
- Krok 6: Zajistěte, aby byl přenosný
- Krok 7: Závěr
- Krok 8: Kód
Video: Zobrazení data, času a teploty pomocí XinaBoxu: 8 kroků
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:21
Skvělý OLED displej zobrazující datum, čas a teplotu ve stupních Celsia a Fahrenheita pomocí Xinabox xChips na základě ESP8266.
Krok 1: Věci použité v tomto projektu
Hardwarové komponenty
- XinaBox IP01 x 1 xChip USB programátor založený na FT232R od FTDI Limited
- XinaBox CW01 x 1 xChip Wi-Fi Core založené na modulu Wi-Fi ESP8266
- XinaBox SW01 x 1 xChip Snímač teploty, vlhkosti a atmosférického tlaku podle BME280 od společnosti Bosch.
- XinaBox OD01 x 1 xChip 128x64 Pixel OLED displej
- Napájení XinaBox PU01 x 1 xChip USB (typ A)
- Konektory sběrnice XinaBox XC10 x 1 xChip
- Napájení 5V USB x 1
Softwarové aplikace a online služby
Arduino IDE
Krok 2: Příběh
Úvod
Vytvořil jsem tento projekt pro zobrazení data, času UCT a teploty pomocí XinaBox xChips, který používá protokol sběrnice I2C. Čas byl načten ze serveru Google NTP. Okolní teplota byla měřena pomocí SW01 xChip a byla zobrazena na OLED displeji OD01 xChip v stupních Celsia a Fahrenheita. Na následujícím obrázku je OLED displej.
OLED zobrazující datum, čas a teplotu
Krok 3: Stáhněte si potřebné soubory
Pro tento projekt budete potřebovat následující knihovny a software.
- Arduino IDE - vývojový software, ve kterém budete kódovat
- xSW01 - knihovna teplotních senzorů
- xCore - základní knihovna pro XinaBox xChips
- xOD01 - OLED knihovna zobrazení.
- Časové pásmo - knihovna pro výběr časového pásma
- Čas - Chcete -li používat časové funkce
- NTPClient - Umožňuje vám získat čas ze serveru
- Abyste mohli desku nainstalovat, budete si také muset stáhnout desku ESP8266 a řídit se pokyny, které jsou k ní připojeny
Po stažení nainstalujete IDE a knihovny. Pokud budete postupovat podle pokynů, je to docela jednoduché.
Krok 4: Sestavte
Váš hlavní xChip, který spustí a zpracuje program, je CW01. Je založen na WiFi modulu ESP8266 a používá sběrnicový protokol I2C. K programování na CW01 budete potřebovat programovací xChip. IP01 nám umožňuje naprogramovat CW01 přes USB port na našem počítači jednoduše kliknutím na dva xChipy pomocí konektorů sběrnice XC10 a vložením do USB portu. Není vyžadováno žádné zapojení ani pájení. Jedna věc, kterou je třeba vzít na vědomí, je orientace identifikačních jmen xChip. Všechny by měly být orientovány stejným směrem. Nyní byste měli mít následující nastavení.
Klikněte dohromady na CW01 a IP01 a vložte jej do USB portu na vašem počítači
Pokud jste obeznámeni s xChips, můžete připojit každý xChip dohromady pomocí konektorů sběrnice XC10, které chcete použít pro svůj projekt, a poté jej vložit do portu USB. Použijeme teplotní čidlo SW01 a OLED displej OD01.
Můžete připojit všechny své čipy dohromady a poté je vložit do portu USB
Krok 5: Program
Stáhněte nebo zkopírujte a vložte níže uvedený kód do svého Arduino IDE. Pokud neprovádíte žádné změny v kódu, jednoduše zadejte údaje o WiFi do příslušných polí, jak je uvedeno níže. Zadejte také spolehlivý časový server NTP. Pro tento projekt jsem použil časový server Google.
Podrobnosti o WiFi a časový server NTP
Nyní zkompilovat a nahrát. Ujistěte se, že jste vybrali správný COM port a desku v nabídce nástrojů v Arduino IDE. Po nahrání by se čas, datum a teplota měly zobrazovat níže.
Po nahrání byste měli vidět následující
Krok 6: Zajistěte, aby byl přenosný
Nyní můžete jednotku vyjmout z USB portu a oddělit každý xChip pouhým vytažením. Protože je programování dokončeno, IP01 již není zapotřebí. Nyní můžete svůj projekt připojit libovolným způsobem, pokud jsou všechny identifikační názvy orientovány stejným směrem. K napájení naší jednotky použijeme PU01. To nám umožňuje napájet jej z běžné napájecí banky nebo jakéhokoli napájecího zdroje 5V USB. Připojil jsem svůj, jak je uvedeno níže.
Konečná montáž. xChips lze připojit jakýmkoli způsobem, který si přejete.
Krok 7: Závěr
Dokončení tohoto projektu bude trvat 20 minut. Pokud chcete čas ve svém místě, zvažte nahlédnutí do ukázkového kódu v knihovně časových pásem nebo proveďte nějakou aritmetiku s časem UTC. Nebyly použity žádné dráty a nebylo vyžadováno pájení.
Krok 8: Kód
Date_Time_Temp.ino Arduino Jednoduše zadejte údaje o WiFi do příslušných polí a nahrajte je na tabuli.
#include // zahrnout základní knihovnu pro XinaBox xCHIPS
#include // zahrnout OLED zobrazovací knihovnu #include // zahrnout knihovnu teplotních senzorů #include // zahrnout funkci ESP8266WiFi #include // zahrnout časové knihovny #include #include #include #include #include xSW01 SW01; // definujte vlastnosti NTP #define ntpOffset 60 * 60 // v sekundách #define ntpInterval 60 * 1000 // v milisekundách // mezi dvojité uvozovky vložte spolehlivý časový server ntp // zde jsem použil časový server Google ntp # definovat ntpAddress "time1.google.com" // nastavit NTP UDP klienta WiFiUDP ntpUDP; NTPClient timeClient (ntpUDP, ntpAddress, ntpOffset, ntpInterval); // teplotní proměnná float tempC; // celsius float tempF; // fahrenheit // vaše údaje o wifi const char* wifi_ssid = "XinaBox"; // vaše wifi ssid const char* wifi_pass = "RapidIoT"; // vaše heslo k wifi // proměnná data a času Řetězec datum; Řetězec clktime; // proměnné obsahující dny a měsíce konst char * days = {"neděle", "pondělí", "úterý", "středa", "čtvrtek", "pátek", "sobota"}; konstantní * měsíce = {"leden", "únor", "březen", "duben", "květen", "červen", "červenec", "srpen", "září", "říjen", "listopad" "," Prosinec "}; const char * ampm = {"AM", "PM"}; neplatné nastavení () {tempC = tempF = 0; // inicializace teploty na nulu timeClient.begin (); // spuštění klienta NTP UDP // zahájení sériové komunikace Serial.begin (115200); // spusťte komunikaci i2c a nastavte piny Wire.begin (2, 14); // spuštění teplotního čidla SW01.begin (); // spuštění OLED displeje OLED.begin (); // vymazat OLED displej OD01.clear (); // navázat wifi připojení wifi_connect (); zpoždění (1000); } void loop () {// spustit, pokud je navázáno připojení wifi if (WiFi.status () == WL_CONNECTED) {SW01.poll (); // číst teplotu tempC = SW01.getTempC (); // uložení teploty v celcius tempF = SW01.getTempF (); // uložení teploty ve fahrenheit date = ""; // vymazat proměnnou data clktime = ""; // vymazat proměnnou času // aktualizovat klienta ntp a získat časové razítko unix utc timeClient.update (); unsigned long epochTime = timeClient.getEpochTime (); // převod přijatého časového razítka na objekt time_t time_t utc; utc = epochTime; // utc time TimeChangeRule utcRule = {"UTC", Last, Sun, Mar, 1, 0}; Časové pásmo UTC (utcRule, utcRule); // formát časové proměnné date += days [den v týdnu (utc) - 1]; datum += ","; datum += měsíce [měsíc (utc) - 1]; datum += ""; datum += den (utc); datum += ","; datum += rok (utc); // formátování času na 12hodinový formát s AM/PM a bez sekund clktime += hourFormat12 (utc); clktime += ":"; if (minuta (utc)
Doporučuje:
Měření teploty pomocí XinaBoxu a termistoru: 8 kroků
Měření teploty pomocí XinaBoxu a termistoru: Změřte teplotu kapaliny pomocí analogového vstupu xChip od XinaBoxu a sondy termistoru
DIY zobrazení teploty na LCD obrazovce pomocí Arduina: 10 kroků
DIY zobrazení teploty na LCD obrazovce pomocí Arduina: V tomto projektu vytvoříme obvod s použitím některých komponent, jako je Arduino, teplotní senzor atd. V tomto obvodu bude stupeň zobrazován nepřetržitě na LCD, je zde zpoždění 100 milisekund mezi pohledem na nový stupeň na
Internetové hodiny: Zobrazení data a času pomocí OLED pomocí ESP8266 NodeMCU s protokolem NTP: 6 kroků
Internetové hodiny: Zobrazení data a času pomocí OLED pomocí ESP8266 NodeMCU s protokolem NTP: Ahoj kluci v tomto návodu, postavíme internetové hodiny, které získají čas z internetu, takže tento projekt ke spuštění nebude potřebovat žádný RTC, bude k tomu potřebovat pouze funkční připojení k internetu A pro tento projekt potřebujete esp8266, který bude mít
Roztomilá jednotka zobrazení data, času a teploty: 3 kroky
Roztomilá jednotka zobrazení data, času a teploty: Ahoj přátelé, v tomto návodu vysvětlím postup pro vytvoření jednotky data, času a aktuální teploty pomocí Arduino pro mini, RTC a osmimístného sedmisegmentového displeje ve velmi kompaktní jednotce, která je užitečným vývojovým
Zobrazení teploty a vlhkosti a sběr dat pomocí Arduina a zpracování: 13 kroků (s obrázky)
Zobrazení teploty a vlhkosti a sběr dat pomocí Arduina a zpracování: Úvod: Jedná se o projekt, který k zobrazení dat o teplotě, vlhkosti a digitálním a digitálním sloupcový graf, zobrazení času a data a spuštění odpočítávání času