Spisu treści:
- Krok 1: Co to jest zanieczyszczenie nocne i jak je mierzy?
- Krok 2: BOM
- Krok 3: Obwód
- Krok 4: Czujnik HTU21D
- Krok 5: TSL2591
- Krok 6: Kod
- Krok 7: Wewnątrz
Wideo: Przenośna stacja pogodowa dla obserwatorów nocnego nieba: 7 kroków (ze zdjęciami)
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:30
Zanieczyszczenie światłem to jeden z wielu problemów na świecie. Aby rozwiązać ten problem, musimy wiedzieć, jak bardzo nocne niebo jest zanieczyszczone sztucznym światłem. Wielu uczniów z nauczycielami na świecie próbuje mierzyć zanieczyszczenie światłem za pomocą drogich czujników. Zdecydowałem się zamienić swój przenośny luksomierz (więcej informacji w poprzednim projekcie instruktażowym Portable Luxmeter) na stację pogodową z czujnikiem TSL2591. Ten czujnik jest wystarczająco czuły, aby mierzyć zanieczyszczenie w nocy. Dodatkowo dodaję HTU21D do pomiaru temperatury i wilgotności.
Krok 1: Co to jest zanieczyszczenie nocne i jak je mierzy?
Zanieczyszczenie nocne to światło z lamp, samochodów, domów, ogromnych paneli LCD w mieście i każdego światła wykonanego przez człowieka. To światło nazywa się sztucznym. Dla obserwatorów głównym problemem w dostrzeżeniu gwiazd z miasta jest sztuczne światło, które muszą wyjść poza miasto. Dla człowieka duże zanieczyszczenie światłem jest szkodliwe. A także dla drzew, trawy i zwierząt.
Aby sprawdzić zanieczyszczenie światłem w swoim miejscu, możesz zobaczyć tutaj lightpollutionmap
To tylko model, a rzeczywiste wartości mogą się różnić. Dlatego stworzyłem ten luksomierz.
Do pomiaru zanieczyszczenia światłem mierzę tylko luksy i obliczam magnituda/arsec2.
Mogę obliczyć od luksów do kandeli na metry kwadratowe:
1 cd/m2 = 1 luks
Wielkość na sekundę kątową (mag/arcsec2) opisuje tło nocnego nieba (nazywa jasność powierzchniową).
Więcej na wiki: Jasność powierzchni
Do przeliczenia cd/m2 na mag/arcsec2 służy wzór:
[wartość w mag/arcsec2] = Log10([wartość w cd/m2]/108000)/-0,4
unihedron.com/projects/darksky/magconv.php
Krok 2: BOM
Do tego projektu potrzebujesz:
1. WEMOS D1 Mini lub dowolny mikrokontroler
(Używam wemos, bo jest najmniejszy, z portem usb można wypróbować Arduino Nano)
WEMOS D1 MINI (Yanwen Economic Air Mail)
WEMOS D1 MINI (standardowa wysyłka AliExpress)
WEMOS D1 MINI 10 sztuk (China Post Registered Air Mail-bezpłatna wysyłka)
kabel usb do programowania i wgrywania kodu do wemos
2. Czujnik TSL2591
TSL2591 (Yanwen Economic Air Mail)
TSL2591 (chińska poczta lotnicza zarejestrowana)
TSL2591 (chińska poczta lotnicza zarejestrowana)
3. Czujnik temperatury i wilgotności HTU21D
HTU21D (Cainiao Super Economy)
HTU21D (Yanwen Economic Air Mail - bezpłatna wysyłka)
4. Wyświetlacz OLED 0,96 (128 x 64)
Wyświetlacz OLED
Wyświetlacz OLED
Wyświetlacz OLED
5. 18650 bateria
18650 bateria litowo-jonowa
18650 bateria litowo-jonowa
uchwyt baterii 18650
6. Moduł ładujący TP4056
tp4056
tp4056
7. przełącznik przycisków lub zworka dip
swtich czerwony dip
przełączniki, wiele różnych
8. Kable do płytek stykowych i dupont
mała płytka do krojenia chleba
zestaw płytek do krojenia chleba
9. etui, tworzę z drewna + taśma
biurokracja
Drukarka 3D Prusa, mam nadzieję, że zrobię obudowę z plastiku:D
Krok 3: Obwód
Obwód jest dość prosty:
Podłącz wszystkie moduły i2c (TSL2591, OLED, HTU21D) do pinów SCL i SDA na wemos (SDA -> D2, SCL -> D1).
Zasil je 3,3 V z wemos.
Połącz biegun dodatni akumulatora z pinem 5V na wemos i pinem akumulatora na module ładującym tp4056 do bieguna dodatniego akumulatora.
Połącz wszystkie uziemienia razem.
Krok 4: Czujnik HTU21D
Kupię nowy czujnik temperatury, który mierzy z dokładnością 0,3°C !
Co powinieneś wiedzieć o tym czujniku (od sparkfun):
- Wykorzystuje interfejs I2C
- Typowa dokładność wilgotności ±2%
- Typowa dokładność temperatury ±0,3 °C
- Działa od 0 do 100% wilgotności, ale ten czujnik nie jest zalecany do trudnych warunków, w których może mieć kontakt z wodą (takich jak deszcz).
- Czujnik 3.3V - użyj wbudowanych konwerterów poziomów logicznych lub rezystorów 10k, aby ograniczyć sygnały 5V
- Na magistrali I2C może znajdować się jednocześnie tylko jeden czujnik HTU21D
Moje podsumowanie: to dobry czujnik, bo mierzy z dokładnością 0,3°C i zarówno temperaturę jak i wilgotność. Plusy to interferencja I2C, a minusy 3,3V, ale w moim przypadku to nie ma znaczenia.
Krok 5: TSL2591
Ten czujnik jest dobry do pomiaru zanieczyszczenia nocnego nieba ze względu na jego czułość (do 188 mikro luksów!).
1. to diody z możliwym ir i pełnym pomiarem. Nie używam tego.
2. regulator napięcia od 5V do 3,3V
Specyfikacje chipów (z adafruit):
- Przybliżona odpowiedź ludzkiego oka
- Niezwykle szeroki zakres dynamiki od 1 do 600 000 000 zliczeń
- Zakres luksów: czułość 188 uLux, do 88 000 pomiarów wejściowych luksów.
- Zakres temperatur: -30 do 80*C
- Zakres napięcia: 3,3-5 V do wbudowanego regulatora
- Interfejs: I2C
- Ta płyta/układ wykorzystuje 7-bitowy adres I2C 0x29 (stały)
- Wymiary: 19mm x 16mm x 1mm / 0,75" x 0,63" x.04"Waga: 1,1g
- 2 diody do pomiaru zarówno - IR, jak i pełnego widma
Streszczenie:
188 uLux jest idealny, również komunikacja I2C jest prosta. Może problem da się naprawić adres I2C (0x29). Również na pokładzie regulator jest dobry i można go używać w zimie (mrozie).
Krok 6: Kod
Potrzebujesz tych bibliotek (dodaję je do jednego pliku zip):
- Adafruit-GFX-Biblioteka-master
- adafruit_gfx_library_master
- Adafruit_HTU21DF_Library-master
- Adafruit_Sensor-master
- Adafruit_TSL2591_Library-master
Kod: możesz użyć mojego lub stworzyć własny. Nie zapomnij ustawić maksymalnego czasu integracji (600 MS) i wzmocnienia na maksimum (GAIN_MAX) dla pomiaru nocnego nieba.
Jeśli spróbujesz użyć mojego kodu, pobierz plik ino. Kiedy kopiuję z instructable mój kod, coś jest nie tak z bibliotekami
Używam ładującego się obrazu księżyca tylko dla zabawy. Możesz użyć dowolnego, po prostu użyj tej strony, aby uzyskać tablicę:
javl.github.io/image2cpp/
//https://lastminuteengineers.com/oled-display-arduino-tutorial///https://javl.github.io/image2cpp/ // mcd do wielkości https://unihedron.com/projects/darksky/magconv.php… // HD44780 to kontroler dla wyświetlaczy ciekłokrystalicznych (LCD) opartych na znakach. https://unihedron.com/projects/darksky/magconv.php… #include
#włączać
#include #include #include "Adafruit_HTU21DF.h" #include "Adafruit_TSL2591.h" licznik int; // wyświetlacz OLED adres TWI #define OLED_ADDR 0x3C Adafruit_SSD1306 display(-1); // - 1 dla wyświetlania restartu z przyciskiem restartu na płycie arduino Adafruit_HTU21DF htu = Adafruit_HTU21DF(); Adafruit_TSL2591 tsl = Adafruit_TSL2591(2591); // podaj liczbę dla identyfikatora czujnika (do późniejszego wykorzystania) uint32_t lum; uint16_t ir, pełny; int ulux; luks pływakowy; temp. pływaka; pływak rel_hum; pływak mag_arcsec2; // wizualne mags/sekunda łuku² [wartość w mag/arcsec2] = Log10([wartość w cd/m2]/108000)/-0,4 // symbole // stopień Celsjusza const unsigned char degree PROGMEM = { 0xe, 0x11, 0x11, 0x11, 0xe, 0x0, 0x0, 0x0 }; // wykładnik 2 const unsigned char wykładnik PROGMEM = { 0xe, 0x1b, 0x3, 0x6, 0xc, 0x18, 0x1f, 0x0 }; // 'moon_logo', 128x64px const unsigned char intro PROGMEM = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x0fff, 0xff 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x 0xff, 0xff, 0xff, 0xc0, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0xff, 0xfd, 0xff, 0x 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x03, 0xff, 0xc0, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x 0xfc, 0x07, 0xff, 0xe0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x07, 0xff, 0xf8, 0xff, 0xff, 0ff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x0f, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x0f, 0xff, 0x77, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x1f, 0xbe, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x1f, 0xcc, 0xff, 0xff, 0x8fxff, 0x, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x3f, 0xc0, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xc0, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x3f, 0xe0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0x, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x3f, 0x80, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x, 0x, 0x, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x00, 0x3f, 0xf1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x3f, 0xf9, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x ff, 0xff, 0xf0, 0x00, 0x3f, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x3f, 0xff, 0xff, 0xff 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x 0xe0, 0x18, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x60, 0xff, 0xff, 0xff, 0xff, 0xefff, 0x 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x00, 0xff, 0xff, 0xff, 0xff, 0xe7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x 0xff, 0xff, 0xff, 0xff, 0xe1, 0xe7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x00, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x07, 0xff, 0x 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x18, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0x, 0x38, 0x 0xff, 0xff, 0xe0, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x48, 0x7f, 0xff, 0xff, 0xff, 0xc0, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x80, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x1f, 0xff, 0xff, 0xff, 0ff, 0xff, 0xff, 0xff, 0xc0, 0xc4, 0x1f, 0xff, 0xff, 0xfc, 0x00, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x60, 0x0f, 0xff, 0x 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0xf0, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff 0xc0, 0x00, 0x00, 0xff, 0xff, 0xff, 0xf0, 0xe3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x01, 0xff, 0xff, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe 0x43, 0xff, 0xff, 0xff, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x00, 0x4f, 0xff, 0xff, 0xff, 0xfb, 0xff, 0xff, 0xff 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x00, 0x5f, 0xff, 0xff, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x3f, 0xff, 0xff, 0x87, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0x03,, 0xcf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x01, 0xff, 0xff, 0xb7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x00, 0x03, 0xff, 0xff, 0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0x0f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff 0ff, 0xff,, 0xfc, 0x01, 0xfe, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x3f, 0xff, 0xffx, 0xff,, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x, 0x00, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x 00, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x00, 0x01, 0xff, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x 0x7f, 0xff, 0xf3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x1f, 0xff, 0xc7, 0xff, 0xff, 0xff, 0xff, 0xff 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0xfc, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x 0xff, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x03, 0x 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff }; void setup() { // htu21d htu.begin(); // tsl2591 czujnik_t czujnik; tsl.getSensor(&czujnik); tsl.setGain(TSL2591_GAIN_MAX); // MAX, WYSOKA ŚREDNIA, NISKA, tsl.setTiming(TSL2591_INTEGRATIONTIME_600MS); // 100MS, 200 MS, 300MS, 400MS, 500MS, 600MS // konfiguracja wyświetlacza OLED display.begin(SSD1306_SWITCHCAPVCC, OLED_ADDR); display.clearDisplay(); display.display(); display.drawBitmap(0, 0, intro, 128, 64, BIAŁY); display.display(); opóźnienie (1000); display.setTextSize(1); display.setTextColor (BIAŁY); display.setFont(&FreeSerif9pt7b); display.clearDisplay(); } void loop() { luks = 0; ulux =0; mag_arcsec2=0; temp=0; rel_hum=0; opóźnienie (100); lum = tsl.getFullLuminosity(); ir = lum >> 16; pełny = lum & 0xFFFF; opóźnienie (100); luks = tsl.calculateLux(pełny, ir); // natężenie światła w mikroluxach ulux= luks*1000000; jeśli (ulux<0) { ulux=0; } mag_arcsec2 = log10(lux/108000)/-0,4; //(log((ulux/108000)) /(-0,4) temp = htu.readTemperature(); rel_hum = htu.readHumidity(); display_values(); } void display_values() { //display.drawPixel(120, 50, BIAŁY); display.clearDisplay(); display.setCursor (1, 15); display.print(temp); display.drawBitmap(42, 2, degree, 8, 5, WHITE); display.setCursor (50, 15); display.print("C"); display.setCursor(70, 15); display.print(rel_hum); display.setCursor(114, 15); display.print("%"); display.drawLine(1, 20, 127, 20, WHITE); display.drawLine(67, 1, 67, 20, WHITE); display.setCursor(1, 35); display.print("ulux ="); display.setCursor (50, 35); display.print(ulux); display.setCursor(1, 55); display.print("mag/arsec"); display.drawBitmap(70, 45, wykładnik, 8, 8, WHITE); display. setCursor(83, 55); display.print(mag_arcsec2); display.display();}
Krok 7: Wewnątrz
Tworzę własną obudowę i używam płytki stykowej z kablami dupontowymi jak widać.
Używam TP4056 do ładowania akumulatora kablem USB (potrzebuję zworki swtich dip).
Do włączania/wyłączania używam zworki.
Dla światła dziennego TSL2591 pokazuje 0, a mag/arcsec2 to nan.
W przypadku nocnego nieba TSL2591 powinien pokazywać od 0 do 1000000 mikroluxów (ulux) i odpowiadające im mag/arcsec2
(ok. 14 do 22 mag/arsec2).
Dla fullMoon zmierzyłem 50k ulux, czyli 0,05 luksa.
Zalecana:
Przenośna stacja lutownicza z materiału pochodzącego z recyklingu. / Estación De Soldadura Portátil Hecha Con Material Reciclado.: 8 kroków (ze zdjęciami)
Przenośna stacja lutownicza z materiału pochodzącego z recyklingu. / Estación De Soldadura Portátil Hecha Con Material Reciclado.: Tata był wielkim artystą i poszukiwaczem przygód, tak samo jak wielkim fanem kultury DIY. On sam dokonał wielu modyfikacji w domu, w tym ulepszeń mebli i szaf, upcyklingu antycznych lamp, a nawet zmodyfikował swojego VW kombi van do podróży
Stacja pogodowa NaTaLia: stacja pogodowa zasilana energią słoneczną Arduino Wykonana we właściwy sposób: 8 kroków (ze zdjęciami)
Stacja pogodowa NaTaLia: Stacja pogodowa zasilana energią słoneczną Arduino Wykonana we właściwy sposób: po roku udanej pracy w 2 różnych lokalizacjach dzielę się planami projektu stacji pogodowej zasilanej energią słoneczną i wyjaśniam, jak ewoluował w system, który może naprawdę przetrwać przez długi czas okresy z energii słonecznej. Jeśli obserwujesz
Stacja pogodowa DIY i stacja czujników WiFi: 7 kroków (ze zdjęciami)
DIY Stacja pogodowa i stacja z czujnikami WiFi: W tym projekcie pokażę Ci, jak stworzyć stację pogodową wraz ze stacją czujników WiFi. Stacja czujnikowa mierzy lokalne dane dotyczące temperatury i wilgotności i przesyła je przez Wi-Fi do stacji pogodowej. Stacja pogodowa wyświetla następnie t
Fotometr jasności nocnego nieba TESS-W: 8 kroków (ze zdjęciami)
Fotometr jasności nocnego nieba TESS-W: TESS-W to fotometr przeznaczony do pomiaru i ciągłego monitorowania jasności nocnego nieba w celu badania zanieczyszczenia światłem. Powstał w ramach projektu europejskiego STARS4ALL H2020 z otwartą konstrukcją (sprzęt i oprogramowanie). Fotometr TESS-W
Zewnętrzna stacja pogodowa dla deski La COOL: 3 kroki (ze zdjęciami)
Zewnętrzna stacja pogodowa dla płyty La COOL: Witam, dzisiaj pokażę Ci jak wykonać niedrogą obudowę dla płyty La COOL, która wytrzyma ekstremalne warunki pogodowe, zawiera panel słoneczny, który może zasilać stację bez kłopotów z ładowaniem ( jeśli mieszkasz w okolicy z wystarczającą ilością