Spisu treści:

UCL - IIoT - Rynek rolny: 7 kroków
UCL - IIoT - Rynek rolny: 7 kroków

Wideo: UCL - IIoT - Rynek rolny: 7 kroków

Wideo: UCL - IIoT - Rynek rolny: 7 kroków
Wideo: Jamie Carragher blew his big moment 💀 #ucl #championsleague 2024, Listopad
Anonim
UCL - IIoT - Rynek rolny
UCL - IIoT - Rynek rolny

Portfel Farmersmarket może być używany na targach, targach rolniczych lub innych spotkaniach, na których sprzedaje się towary.

Portfel Farmersmarket to maszyna do liczenia monet, stworzona, aby umożliwić szybkie sprawdzenie całkowitej zawartości pudełka z monetami. Portfel farmerów również prześle sumę na serwer zaprogramowany przez Node-red.

Jest tworzony przez trzech studentów University College Lillebælt w Danii. Od czasu naszego poprzedniego projektu Sortownik monet nauczyliśmy się wielu nowych rzeczy, które będziemy wprowadzać do buildu. Zdecydowaliśmy się zrezygnować z sortowania monet i zamiast tego sprawić, by maszyna je policzyła, umieszczając je w ogólnodostępnym pudełku na monety.

Portfel składa się z pięciu slajdów lub przegródek, po jednym na każdy rodzaj monety. Gdy moneta zostanie umieszczona w odpowiednim gnieździe, spadnie, mijając reflektor, który wysyła sygnał HIGH do arduino. Na podstawie tego sygnału dodamy wartość monet do zliczonej sumy, wyświetlimy ją na zewnętrznym wyświetlaczu i prześlemy nową sumę na serwer. Gdy serwer otrzyma sumę, zaktualizuje interfejs użytkownika znaleziony w Internecie, pokazując nową sumę.

OpisPudełko z pięcioma przegródkami na monety, które prowadzą do pięciu pojedynczych, wewnętrznych slajdów, po jednym na każdy rodzaj monety: 1 kr, 2 kr, 5 kr, 10 kr, 20 kr

Wyświetlacz LCD pokazujący całkowitą gotówkę umieszczoną na górze pudełka.

Górna część pudełka jest zabezpieczona włazami. Podniesienie góry spowoduje wyjęcie obudowy arduino wraz z górną częścią zawierającą wyświetlacz LCD, gniazda na monety, reflektory itp., pozostawiając tylko pudełko, w którym znajduje się moneta.

Komponenty i materiały - Narzędzia i sprzęt do wykonania pudełka (może to być karton lub drewno)

- Arduino Mega 2560

- 30 zworek

- 5 x LDR "Czujnik światła"

- Rezystory 5 x 220 omów

- Rezystory 5 x 10 kΩ

- 5 x białe diody LED

- Moduł LCD 16x02

- Monety

Kod w Arduino

Jak wspomniano wcześniej, ten projekt pochodzi z wcześniejszego projektu, który wykonaliśmy około osiem miesięcy temu (https://www.instructables.com/id/Coin-Sorting-Machine/). Dzięki temu jesteśmy w stanie ponownie wykorzystać dużą część kodu w arduino, choć są w nim pewne mniejsze zmiany. Jak zobaczysz, kod jest dość prosty, co każda osoba z odrobiną doświadczenia z Arduino powinna być w stanie zrozumieć.

Node-RED Node-RED to narzędzie, którego użyjemy do pobrania danych z arduino i do twojego komputera, a dalej do internetu, jeśli jest to w twoim interesie. Innym ważnym powodem korzystania z Node-RED jest możliwość prezentacji danych z Arduino w sposób łatwy do zrozumienia dla osób, które nie mają żadnego doświadczenia w programowaniu/kodowaniu Arduino i Node-RED.

Baza danych Za pomocą Wampservera możemy przechowywać nasze wartości z Arduino w bazie danych. Dzięki Wampserver możesz tworzyć i zmieniać własną bazę danych, jak chcesz, używając phpMyAdmin do administrowania MySQL. W naszym przypadku mamy sześć wartości, które musimy przechowywać (jedna dla każdego rodzaju monety i jedna dla wyniku), dlatego stworzyliśmy sześć kolumn, w których można przechowywać każdą wartość.

Krok 1: Jak to działa?

Jak to działa?
Jak to działa?

W bardziej szczegółowym dworku wyjaśnimy teraz, jak działa nasz system.

Jak zobaczysz na schemacie blokowym, pierwszą rzeczą, która uruchamia proces, jest umieszczenie monety w odpowiednim gnieździe.

Czujnik światła LDR zauważy zmniejszoną ilość światła, gdy moneta przejdzie obok czujnika, co spowoduje, że program Arduino zwiększy zmienną „Antal” (liczba) o jeden, ponieważ w maszynie znajduje się teraz jedna moneta. Jednocześnie wartość monety jest dodawana do zmiennej „wynik”. "wynik" zostanie wyświetlony na LCD z nową wartością.

Nowe wartości „Antal” i „result” są wysyłane do Node-RED, w którym dashboard zaktualizuje się o te wartości. W końcu Node-RED wysyła wartości do naszej bazy danych.

I powtórz.

Krok 2: Tworzenie pudełka

Tym razem do zaprojektowania naszego pudełka wykorzystaliśmy program Illustrator. Za pomocą wycinarki laserowej musimy precyzyjnie wykonać to pudełko i funkcje, które są wymagane w naszym projekcie. Ostatecznie to Ty decydujesz, jak zrobić idealne pudełko do swojego projektu.

Krok 3: Dodanie Arduino

Dodawanie Arduino
Dodawanie Arduino

Czas zaimplementować Arduino do pudełka. Może to być dość trudne, ponieważ czujnik może zachowywać się nieprzewidywalnie. (Nowość) W tym kroku zmieniliśmy czujnik, którego używamy, ze względu na wspomnianą wcześniej zawodność tych czujników (tcrt 5000). Zamiast tego wybraliśmy prostszy czujnik LDR (rezystor zależny od światła). Wyjście z tego czujnika jest wartością analogową, która zmienia się w zależności od ilości światła docierającego do samego czujnika.

Krok 4: Kod Arduino

W tym kroku skupiamy się na oprogramowaniu. Kod Arduino wygląda tak:

const int czujnikPin1 = 3; //Czujnik TCRT-5000 podłączony do pinu nr. 2 wewn.stan_czujnika1 = 0; //Zawiera wartość czujnika (wysoka/niska)

int Antal10 = 0; //Zmienna przechowująca ilość monet, które zostały włożone do automatu int

Wynik = 0; //Zmienna przechowująca łączną wartość wszystkich monet włożonych do maszyny

void setup() { Serial.begin(9600); }

void loop() { int stan_czujnika1 = analogRead(Pin_czujnika1); //Odczytuje stan czujnika

if (540 < sensorState1 < 620) { //Kiedy wartość wyjściowa czujnika wynosi od 540 do 620

Antal10 += 10; // - przez czujnik przechodzi moneta, która blokuje trochę światła

wynik += 10; // - a czujnik odczyta niższy poziom światła }

Serial.print(Wynik);

Serial.print(", "); //Oddziela zmienne przecinkiem, który jest niezbędny podczas odczytywania wartości zmiennych w Node-RED

Serial.println(Antal10); // - a także potrzebne, gdy te wartości mają być przechowywane w bazie danych

opóźnienie (100); }

Ten kod jest napisany tylko dla jednego czujnika, aby był łatwiejszy do odczytania.

Pełny kod:

Krok 5: Węzeł-CZERWONY

Węzeł-CZERWONY
Węzeł-CZERWONY
Węzeł-CZERWONY
Węzeł-CZERWONY

Kiedy kod Arduino działa tak, jak powinien, możesz rozpocząć programowanie Node-RED, który będzie działał jako pośrednie łącze między Arduino a bazą danych i jako wizualny wyświetlacz, jak działa maszyna. Programowanie Node-RED polega na wykorzystaniu węzłów o różnych funkcjach i ustawieniu odpowiednich parametrów, aby te węzły działały poprawnie.

Kiedy nasze dane docierają do węzła Node-RED, są wysyłane do dwóch różnych funkcji podziału. Jedna z tych funkcji wysyła teraz dane splittetu do bazy danych. Drugi wysyła różne wartości danych do każdego z węzłów pulpitu nawigacyjnego, które teraz powinny być widoczne na pulpicie nawigacyjnym.

Jak wspomnieliśmy wcześniej, mamy do czynienia z sześcioma wartościami. Dzięki możliwościom pulpitu nawigacyjnego Node-Red jesteśmy w stanie wyświetlić te wartości, jak widać na obrazku po prawej stronie u góry kroku 3.

Kod węzła-CZERWONY:

Krok 6: Baza danych

Baza danych
Baza danych

Teraz użyjemy bazy danych do przechowywania wartości. Dzięki Wampserver możliwe jest użycie phpMyAdmin do administrowania MySQL i tworzenia własnej bazy danych, używając lokalnego serwera, aby dopasować się do Twoich potrzeb.

Najpierw tworząc od podstaw bazę danych (farmers_market) musisz stworzyć tabelę (mont_tabel), w której przechowujesz swoje wartości. W zależności od tego, ile masz danych i jak je zamówić, możesz utworzyć tyle tabel, ile potrzebujesz. Ponieważ musimy przechowywać sześć różnych wartości i dlatego potrzebowaliśmy sześciu kolumn, po jednej dla każdej wartości, w naszej tabeli. Na powyższym obrazku możesz zobaczyć naszą bazę danych.

Kiedy nasze dane docierają do Node-RED, są dzielone przez funkcję split, a teraz dane są przesyłane do bazy danych.

Krok 7: Ocena

Po pierwsze, chcemy wspomnieć, że wykonanie pudełka z drewna zamiast z tektury sprawia, że cała fizyczna konfiguracja jest znacznie bardziej niezawodna i dlatego zalecamy to zrobić.

Zmiana czujników z TCRT-5000 na prosty czujnik światła LDR dała o wiele większą stabilność, jeśli chodzi o zdolność czujników do szybkiego odczytu monety. Podczas pracy z TCRT-5000 należy wziąć pod uwagę wiele czynników, aby czujnik działał tak, jak chcesz.

Podpięcie systemu do bazy danych i możliwość wizualnego przedstawienia swoich danych w taki sposób, aby każda osoba bez wcześniejszej wiedzy o tym projekcie była w stanie zrozumieć, co się dzieje, wydaje się nadać projektowi większą wartość.

Zalecana: