Spisu treści:

Zapisz i przywróć wstępnie ustawione wartości za pomocą NFC (TfCD): 4 kroki
Zapisz i przywróć wstępnie ustawione wartości za pomocą NFC (TfCD): 4 kroki

Wideo: Zapisz i przywróć wstępnie ustawione wartości za pomocą NFC (TfCD): 4 kroki

Wideo: Zapisz i przywróć wstępnie ustawione wartości za pomocą NFC (TfCD): 4 kroki
Wideo: Wgrałem "BLINK" do kuchenki indukcyjnej - programowanie śmieci 4# 2024, Listopad
Anonim
Image
Image
Zbierz materiał
Zbierz materiał

Chcemy przetestować, jak to działa, aby dostosować określoną wartość lub ustawienie, a później przywołać to ustawienie. W tym eksperymencie użyliśmy tagu NFC do odczytania, a następnie zapisania na nim wartości. Później tag można ponownie zeskanować i odesłać wartość, aby przywrócić określone ustawienie. Do symulacji interakcji użyliśmy Arduino Uno jako kontrolera i pierścienia LED RGB jako regulowanej części. Za pomocą potencjometru można ustawić odcień RGB. Komunikacja między Arduino a tagiem NFC została ustawiona za pomocą nakładki NFC.

(Ten projekt był ćwiczeniem dla TU Delft, Integrated Product Design, kurs: TfCD)

Krok 1: Zbierz materiał

Do tego projektu wykorzystaliśmy następujący materiał:

- Arduino uno - osłona i tag NFC (https://www.elecrow.com/wiki/index.php?title=NFC_Shield) - Mokugi t-WS2812B-8LED - Potencjometr (10 3B 42 5V) - Przełącznik - rezystor 10K Ohm - (płyta chlebowa)

Krok 2: Użyj potencjometru do regulacji diody LED RGB

Użyj potencjometru do regulacji diody LED RGB
Użyj potencjometru do regulacji diody LED RGB
Użyj potencjometru do regulacji diody LED RGB
Użyj potencjometru do regulacji diody LED RGB

Najpierw upewnij się, że dioda LED pracuje z funkcjami, uruchamiając kolejny kod testowy. Następnie możesz podłączyć potencjometr, aby wyregulować RGB diody LED. W tym celu zbuduj obwód, jak pokazano na rysunku. Podłącz do zasilania (5V) i masy, a potencjometr podłącz do pinu A0.

Jeśli chcesz przeskalować model, a później zapisać kilka różnych wartości, na tym etapie możesz już użyć większej liczby potencjometrów.

Załączony jest również kod tego testu. Aby kod działał, musisz pobrać bibliotekę Adafruit_NeoPixel.h.

Mieszamy odcień diody RGB w następujący sposób: Zdecydowaliśmy się na ciągłe włączanie czerwonego i dostosowywanie go do fioletu przez domieszanie niebieskiego. Jeśli potencjometr jest wysoki, niebieski jest całkowicie włączony, gdy jest niski, niebieski jest wyłączony. W tym celu mapujemy odczyt z potencjometru:

void ReadPot(){ val = analogRead(Pot); val = mapa(val, 0, 1023, 0, 255);

Aby uniknąć dryftu wartości wejściowej potencjometru, nową wartość niebieskiej diody LED zmieniamy tylko wtedy, gdy różnica między aktualną a poprzednią wartością potencjometru jest wystarczająco duża:

int diff = abs(val-oldVal);

if (diff > TOLERANCJA) { ChangeLED();

Krok 3: Zintegruj NFC

Zintegruj NFC
Zintegruj NFC
Zintegruj NFC
Zintegruj NFC

Następnym krokiem jest integracja NFC. Najpierw podłącz nakładkę NFC do Arduino.

Dodaj również przełącznik, jak pokazano na zdjęciach. Przełącznik służy do przełączania między odczytem a zapisem do tagu NFC.

Pobierz bibliotekę PN532.h dla osłony NFC. Załączony kod jest adaptacją przykładowych kodów zawartych w bibliotece. Zmienia się to w ten sposób, że przenoszona jest wartość RGB diody LED.

Możesz również najpierw przetestować tylko odczyt lub pisanie za pomocą dwóch kodów, które są dołączone osobno.

Wyjaśnienie kod końcowy

Najpierw inicjowane są wszystkie używane zmienne.

Następnie w konfiguracji void konfigurowane jest połączenie nfc.

Pętla void zaczyna się od odczytania stanu przełącznika.

Przypadek 0 oznacza stan przycisku WYSOKI. W tym przypadku najpierw wywoływana jest funkcja Reading(). To odczytuje wartość RGB zapisaną w bloku 8 tagu NFC na pierwszym miejscu tablicy (niebieski = block[0];). Następnie wywoływana jest funkcja ChangeLEDRead(), która zmienia barwę diody na wartość, która została właśnie odczytana ze znacznika NFC.

Przypadek 1 ma miejsce, gdy stan przycisku jest NISKI. W tym przypadku najpierw wywoływana jest funkcja ReadPot(), co oznacza, że można teraz ręcznie regulować barwę diod za pomocą potencjometru. To wejście z potencjometru jest następnie mapowane na wartość pomiędzy 0 a 255. Funkcja ChangeLEDPot() następnie steruje kolorem diody LED za pomocą wejścia z potencjometru. W tym przypadku wywoływana jest również funkcja Writing(). Daje to pewność, że gdy tylko tag NFC zostanie umieszczony blisko tarczy, aktualna wartość koloru niebieskiego zostanie na nim zapisana w pierwszym miejscu bloku 8.

Krok 4: Możliwe adaptacje

Ta sama zasada może być również zastosowana w innych przypadkach i nie ogranicza się tylko do NFC. Istnieje wiele możliwych implementacji, w których chcesz dostosować określone wartości do swoich preferencji, zapisać je i przywrócić swoje osobiste ustawienia w późniejszym czasie.

Pomyśl na przykład o wspólnym miejscu pracy, gdzie dostosujesz wysokość swojego krzesła, kąt nachylenia oparcia i wysokość stołu do swoich preferencji. Zapisujesz swoje preferencje, szybko skanując za pomocą tagu NFC. Kiedy wrócisz następnego dnia, ponownie zeskanujesz swój tag, a miejsce pracy zmieni Twoje ustawienia.

Zamiast chipa NFC możesz również użyć smartfona. Jako interfejs można użyć specjalnej aplikacji lub strony internetowej.

Inną implementacją może być na przykład skanowanie odcisku palca zamiast skanowania tagu NFC. Odcisk palca można następnie powiązać z określonym profilem użytkownika, w którym zapisywane są preferencje.

Zalecana: