Obsah:

UCL - IIoT - Farmářský trh: 7 kroků
UCL - IIoT - Farmářský trh: 7 kroků

Video: UCL - IIoT - Farmářský trh: 7 kroků

Video: UCL - IIoT - Farmářský trh: 7 kroků
Video: A Show of Scrutiny | Critical Role: THE MIGHTY NEIN | Episode 2 2024, Červenec
Anonim
UCL - IIoT - Farmářský trh
UCL - IIoT - Farmářský trh

Peněženku Farmersmarket lze použít na veletrzích, farmářských trzích nebo jiných setkáních, kde se prodává zboží.

Peněženka Farmersmarket je stroj na počítání mincí, který umožňuje rychle zobrazit celkový obsah krabice s mincemi. Peněženka farmářského trhu také nahraje celkovou částku na server naprogramovaný prostřednictvím Node-red.

Je vyroben třemi studenty University College Lillebælt v Dánsku. Od našeho předchozího projektu Třídič mincí jsme se naučili mnoho nových věcí, které začleníme do sestavení. Rozhodli jsme se vzdát třídění mincí a místo toho je nechat stroj spočítat a uložit do společné schránky na mince.

Peněženka se skládá z pěti diapozitivů nebo slotů, pro každý typ mincí jeden. Když je mince vložena do správného slotu, spadne dolů kolem reflektoru, který vyšle arduino signál HIGH. Signál použijeme k přidání hodnoty mincí k počítanému součtu, zobrazení na externím displeji a odeslání nového součtu na server. Jakmile server obdrží součet, aktualizuje uživatelské rozhraní nalezené online a zobrazí nový součet.

Popis Krabice s pěti sloty na mince vedoucí k pěti jednotlivým vnitřním diapozitivům, jeden pro každý typ mincí: 1kr, 2kr, 5kr, 10kr, 20kr

LCD displej zobrazující celkovou hotovost diposited v horní části krabice.

Horní část krabice je zajištěna poklopy. Zvednutím horní části vyjmete arduino pouzdro spolu s horní částí obsahující LCD, sloty na mince, reflektory atd. Zůstane pouze krabice, do které jsou mince uloženy.

Součásti a materiály - Nástroje a vybavení pro výrobu krabice (může být lepenka nebo dřevo)

- Arduino Mega 2560

- 30 propojovacích drátů

- 5 x LDR "Světelný senzor"

- Rezistory 5 x 220 ohmů

- Rezistory 5 x 10 k ohmů

- 5 x bílá LED dioda

- Modul LCD 16x02

- Mince

Kód v Arduinu

Jak již bylo zmíněno dříve, tento projekt pochází z dřívějšího projektu, který jsme vytvořili přibližně před osmi měsíci (https://www.instructables.com/id/Coin-Sorting-Machine/). Z tohoto důvodu jsme schopni znovu použít velkou část kódu v arduinu, i když v něm došlo k několika menším změnám. Jak uvidíte, kód je poměrně jednoduchý, což by měl pochopit každý, kdo má trochu zkušeností s Arduinem.

Node-RED Node-RED je nástroj, který použijeme k získání dat z arduina a do vašeho počítače a dále na internet, pokud je to ve vašem zájmu. Dalším důležitým důvodem pro použití Node-RED je schopnost prezentovat data z Arduina snadno srozumitelným způsobem pro lidi, kteří nemají žádné zkušenosti s programováním/kódováním s Arduino a Node-RED.

Databáze Pomocí Wampserveru můžeme uložit naše hodnoty z Arduina do databáze. S Wampserverem je možné vytvářet a střídat vlastní databázi, jak chcete, pomocí phpMyAdmin pro správu MySQL. V našem případě máme šest hodnot, které potřebujeme uložit (jednu pro každý druh mince a jednu pro výsledek), a proto jsme vytvořili šest sloupců, do kterých lze uložit každou hodnotu.

Krok 1: Jak to funguje?

Jak to funguje?
Jak to funguje?

Na podrobnějším panství si nyní vysvětlíme, jak náš systém funguje.

Jak uvidíte na vývojovém diagramu, první věcí, která nastaví proces, je, když je mince vložena do správného slotu.

Světelný senzor LDR si všimne sníženého množství světla, když mince projde senzorem, což spustí program Arduino, aby zvýšil proměnnou „Antal“(Počet) o jednu, protože v automatu je nyní jedna mince. Současně je hodnota mince přidána k proměnné „výsledek“. „výsledek“se zobrazí na LCD s novou hodnotou.

Nové hodnoty „Antal“a „result“jsou odeslány do Node-RED, ve kterém se řídicí panel s těmito hodnotami sám aktualizuje. Nakonec Node-RED odešle hodnoty do naší databáze.

A opakujte.

Krok 2: Výroba krabice

Tentokrát jsme k návrhu naší krabice použili Illustrator. Pomocí laserové řezačky jsme přesně vyrobili tento box a funkce, které jsou pro náš projekt vyžadovány. Nakonec je na vás, abyste se rozhodli, jak vytvořit perfektní krabici pro svůj projekt.

Krok 3: Přidání Arduina

Přidání Arduina
Přidání Arduina

Je čas implementovat Arduino do krabice. To může být docela obtížné, protože senzor se může chovat nepředvídatelně. (Novinka) V tomto kroku jsme změnili senzor, který používáme, kvůli výše zmíněné nespolehlivosti těchto senzorů (tcrt 5000). Místo toho jsme zvolili jednodušší snímač LDR (odpor závislý na světle). Výstup z tohoto senzoru je analogová hodnota, která se mění v závislosti na množství světla dopadajícího na samotný senzor.

Krok 4: Arduino kód

V tomto kroku se zaměřujeme na software. Kód Arduino vypadá takto:

const int senzorPin1 = 3; // Senzor TCRT-5000, který je připojen k pinu č. 2 int senzorState1 = 0; // Obsahuje hodnotu senzoru (High/low)

int Antal10 = 0; // Proměnná, která ukládá množství mincí, které byly vloženy do stroje int

Výsledek = 0; // Proměnná, která ukládá kombinovanou hodnotu všech mincí vložených do stroje

neplatné nastavení () {Serial.begin (9600); }

void loop () {int sensorState1 = analogRead (sensorPin1); // Přečte stav senzoru

if (540 <sensorState1 <620) {// Když je výstupní hodnota čidel mezi 540 a 620

Antal10 += 10; // - kolem senzoru prochází mince, která blokuje určité světlo

resultat += 10; // - a senzor načte nižší úroveň světla}

Serial.print (Výsledek);

Serial.print (","); // Odděluje proměnné čárkou, což je nutné při čtení hodnot proměnných v Node-RED

Serial.println (Antal10); // - a také potřebné, když mají být tyto hodnoty uloženy v databázi

zpoždění (100); }

Tento kód je napsán pouze pro jeden senzor, aby byl snáze čitelný.

Kompletní kód:

Krok 5: Node-RED

Uzel-ČERVENÝ
Uzel-ČERVENÝ
Uzel-ČERVENÝ
Uzel-ČERVENÝ

Když kód Arduino běží tak, jak by měl, můžete začít programovat Node-RED, který bude fungovat jako prostřední odkaz mezi Arduinem a databází a jako vizuální zobrazení toho, jak si stroj vede. Programování Node-RED spočívá v použití uzlů s různými funkcemi a vložení správných parametrů, aby tyto uzly fungovaly správně.

Když naše data přijdou do Node-RED, jsou odeslána do dvou různých funkcí rozdělení. Jedna z těchto funkcí odesílá nyní rozdělená data do databáze. Druhý odesílá různé datové hodnoty na každý ze svých uzlů řídicího panelu, který by nyní měl být viditelný na řídicím panelu.

Jak již bylo zmíněno dříve, máme šest hodnot, se kterými je třeba zacházet. Díky schopnostem ovládacího panelu Node-Red jsme schopni tyto hodnoty zobrazit, jak uvidíte na obrázku vpravo v horní části kroku 3.

ČERVENÝ kód uzlu:

Krok 6: Databáze

Databáze
Databáze

Nyní použijeme databázi k uložení hodnot. S Wampserverem je možné použít phpMyAdmin ke správě MySQL a vytváření vlastní databáze pomocí místního serveru, který vyhovuje vašim konkrétním potřebám.

Nejprve při vytváření databáze (farm_market) od nuly musíte vytvořit tabulku (mont_tabel), do které ukládáte své hodnoty. V závislosti na tom, kolik dat máte a jak je potřebujete objednat, můžete vytvořit tolik tabulek, kolik potřebujete. Protože do naší tabulky potřebujeme uložit šest různých hodnot, a proto jsme potřebovali šest kolonek, jednu pro každou hodnotu. Na výše uvedeném obrázku vidíte naši databázi.

Když naše data přijdou do Node-RED, jsou rozdělena pomocí funkce rozdělení a data nyní jsou odeslána do databáze.

Krok 7: Hodnocení

Nejprve chceme zmínit, že výroba krabice ze dřeva namísto lepenky, činí celé fyzické nastavení mnohem spolehlivějším, a proto to doporučujeme.

Výměna senzorů z TCRT-5000 na jednoduchý světelný senzor LDR poskytla mnohem větší stabilitu, pokud jde o schopnost senzorů rychle číst, když kolem něj mincí mincí. Při práci s TCRT-5000 je třeba vzít v úvahu mnoho faktorů, aby senzor fungoval tak, jak byste chtěli.

Zapojení systému do databáze a schopnost vizuálně prezentovat vaše data takovým způsobem, že jakákoli osoba bez jakýchkoli známých znalostí o tomto projektu, je schopna porozumět tomu, co se děje, dává projektu větší hodnotu.

Doporučuje: