Sadržaj:
2025 Autor: John Day | [email protected]. Zadnja promjena: 2025-01-23 14:47
Oduvijek sam želio pristupačan način praćenja svega u svojoj smočnici, pa sam prije par mjeseci počeo raditi na projektu koji bi upravo to i učinio. Cilj je bio napraviti jednostavan, pristupačan sustav koji je bio vrlo jednostavan za korištenje, a istodobno je pohranio dovoljno podataka kako bi bio vrijedan dodatnog napora. Ono što sam na kraju izgradio je sustav za upravljanje inventarom koji može pohraniti i ažurirati podatke o bilo kojoj stavci koja ima crtični kod, kao i moje osnovne podatke o tim stavkama s interneta.
Ukratko, sustav radi ovako.
- Skenira se crtični kod.
- Python skripta čita podatke sa skenera.
- Zahtjev se šalje na REST API koji radi na node-red-u.
- API obrađuje zahtjev, minira dodatne podatke s interneta i prema tome uređuje bazu podataka.
Sve se to radi na jednom Raspberry Pi -u, što vam daje mogućnost ažuriranja i pohrane podataka o cijelom vašem inventaru u jednom malom, prijenosnom sustavu. Ovaj je projekt malo tehnički i osnovno razumijevanje baza podataka, HTTP -a i Pythona bit će od velike pomoći, ali potrudit ću se da početniku bude dovoljno lako razumjeti. Započnimo!
Korak 1: Što će vam trebati
Dijelovi koji će vam trebati za ovaj projekt su…
- Malina Pi
- USB skener bar koda (veza do onog koji koristim)
- WiFi adapter (ako vaš Pi nema ugrađen WiFi)
- Prekidač za uključivanje / isključivanje
- Žice za kratkospojnike
- Torbica za vaš Raspberry Pi (izborno)
Korak 2: Instalirajte i postavite bazu podataka
MySQL je sustav za upravljanje bazom podataka koji će čuvati sve podatke koje izvučemo iz skeniranja crtičnog koda. To je vrlo jednostavno za Pi, jednostavno pokrenite sljedeću naredbu na terminalu vašeg Pi.
sudo apt-get install mysql-server
Zatim ćete proći kroz postupak instalacije i od vas će se zatražiti da stvorite lozinku. To je to. S instaliranim MySQL -om, vaš Pi može djelovati kao vlastiti mali poslužitelj baze podataka. Sada moramo stvoriti tablice koje će držati naše podatke. Prvo se prijavite. Nakon instalacije jedini korisnik MySql -a je root (korisnik koji ima pristup svakoj tablici i sustavu). Možete se prijaviti kao root izvršavanjem sljedeće naredbe.
mysql -uroot -p
Uskoro ćemo postaviti drugog korisnika kojeg će naš sustav koristiti, ali prvo moramo stvoriti našu bazu podataka i tablice u toj bazi. Da biste to učinili, pokrenite sljedeće naredbe.
izraditi inventar baze podataka;
koristiti inventar; stvoriti tablicu upc_count (upc varchar (15) nije null, broj integer (3) nije null zadano 0, naziv varchar (255), veličina varchar (40), proizvođač varchar (80), primarni ključ (upc));
Sada imamo jednostavnu tablicu s pet stupaca upc (koji će biti primarni ključ), brojem, imenom, veličinom i proizvođačem. Napomena: Upc je broj koji jedinstveno identificira proizvod. Taj se broj očitava s naljepnice crtičnog koda prilikom skeniranja.
Konačno, postavit ćemo tog korisnika koji nam je potreban. Pozvat ću svoje, da biste to učinili, pokrenite sljedeće naredbe, koristeći bilo koje korisničko ime i lozinku koje želite:
dodijeli sve na popisu.* za ''@'localhost' identificirano od;
Sada kada imamo našu bazu podataka, možemo početi graditi sustav!
Korak 3: Dobijte OutPan API ključ
OutPan je API koji se može koristiti za dobivanje informacija o proizvodu pomoću njegova upc broja. Koristit ćemo ovo za pronalaženje više informacija o proizvodima koji se dodaju u bazu podataka. Ovo je javni api, ali da biste ga mogli koristiti, morate se prijaviti i nabaviti api ključ. Prijava je prilično jednostavna, jednostavno idite ovdje i slijedite korake za registraciju ključa.
Nakon što dobijete ključ, kopirajte ga. Trebat će vam u kasnijem koraku.
Korak 4: Instalirajte i postavite Node-Red
Node-Red dolazi unaprijed instaliran na svim verzijama OS-a Raspbian od kraja 2015. Da biste saznali imate li instaliran node-red, jednostavno pokrenite sljedeću naredbu u terminalu.
čvor-crven
Ako se prikaže poruka "naredba nije pronađena", morat ćete instalirati node-red. Da biste to učinili, pokrenite sljedeće naredbe.
sudo apt-get update sudo apt-get install nodered
Nakon pokretanja node-red, možete pristupiti node-red-u s adrese prikazane u izlazu.
Jedino preostalo podešavanje je instaliranje čvorova MySQL. To možete učiniti putem preglednika. Pritisnite simbol u gornjem desnom kutu stranice, a zatim kliknite opciju 'Upravljanje paletom'. Odatle jednostavno potražite 'mysql' i kliknite gumb za instalaciju.
Sada smo spremni za uvoz API -ja.
Korak 5: Postavite API
Ispod je cijeli API čvor koji sam napisao. Jednostavno kopirajte sve ispod, kliknite simbol u gornjem desnom kutu i idite na uvoz → iz međuspremnika.
[{"id": "ef09537e.8b96d", "type": "subflow", "name": "mineOpenPanData", "info": "", "in": [{"x": 64, "y": 57, "žice": [{"id": "b8b6d2e4.169e7"}]}], "van": [{"x": 755, "y": 58, "žice": [{"id": "8dc2d52b.6a6fd8", "port": 0}]}]}, {"id": "b8b6d2e4.169e7", "type": "http zahtjev", "z": "ef09537e.8b96d", "name ":" Out Pan Request "," method ":" GET "," ret ":" txt "," url ":" https://api.outpan.com/v2/products/{{{upc}}} ? apikey = "," tls ":" "," x ": 202," y ": 57," žice ":
Sada imate cijeli API koji ćemo koristiti za umetanje i ažuriranje podataka. Potrebno je napraviti samo par prilagodbi prije nego što ga budemo spremni koristiti.
- Prvo idite na sve čvorove baze podataka MySQL i promijenite korisničko ime i lozinku na one koje ste stvorili za bazu podataka u prethodnom koraku.
- Drugo, uredite podtok mineOutPanData tako da HTTP zahtjev koji se koristi za dobivanje podataka Open Pan koristi vaš vlastiti API ključ.
Sada ste spremni za korištenje API -ja. Ovaj tok stvara jednostavan REST API koji vam omogućuje slanje podataka s bilo kojeg uređaja spojenog na internet pomoću HTTP zahtjeva.
Korak 6: (Izborno) Razumijevanje API -ja
Posljednje što moramo učiniti je spojiti prekidač na GPIO kako bismo mogli skenirati u dva načina, dodavati i uklanjati.
Ovo je prilično jednostavno, jednostavno postavite prekidač za čitanje s GPIO pina 21 na Pi i spremni ste. Koristeći sklop na priloženoj slici (poznat kao sklop PUD DOWN) skripta će poslati zahtjev za dodavanjem kada je prekidač zatvoren i zahtjev za uklanjanje kada je prekidač otvoren.
Nakon toga jednostavno zalijepimo žice na unutrašnjost kućišta i spremni smo.
Korak 9: (Izborno) Izradite korisničko sučelje
Ovaj posljednji korak nije nužan, ali svakako koristan ako želite iskoristiti puni potencijal sustava. Sastavio sam vrlo jednostavno korisničko sučelje koje je prikazalo sve podatke koje imamo u bazi podataka u tablici za jednostavno kretanje. Tablica se može sortirati po stupcu i pretraživati, što olakšava pregled onoga što imate pri ruci.
Korisničko sučelje je prilično jednostavno; Ponovno sam namjerio neki primjer koda koji sam pronašao na internetu za rad s našim API-jem (ako vas zanima, taj primjer koda možete pronaći ovdje).
Da biste pokrenuli korisničko sučelje, učinite sljedeće …
- Spremite priloženu datoteku index.txt kao index.html (iz nekog razloga nisam mogao prenijeti datoteku kao HTML datoteku).
- Stavite dvije datoteke u isti direktorij na svom računalu.
- Pokrenite datoteku 'index.html' u svom omiljenom web pregledniku.
Sada možemo lako vidjeti i sortirati vaš inventar!
Korak 10: Započnite skeniranje
Sada ste spremni za početak skeniranja! Ako imate pitanja, ostavite ih u komentarima, a ja ću vam odgovoriti kad god mogu.
I na kraju, vaši glasovi na natjecanju bili bi iznimno zahvalni. Hvala na čitanju!
Preporučeni:
Sustav automatskog upravljanja vrućom pločom (HPACS): 3 koraka
Sustav za automatsko upravljanje vrućom pločom (HPACS): Ovaj projekt ima za cilj pružiti jednostavan intuitivan način razumijevanja kako napraviti automatsko podešavanje PID -a pomoću grijača. Ono što sam napravio temelji se na Åström-Hägglundovoj metodi za izvođenje parametara pomoću kontrole bang-bang za otkrivanje karakteristika sustava
Napravite sustav upravljanja pametnom kućom na STONE HMI dispu: 23 koraka
Napravite sustav za upravljanje pametnom kućom na STONE HMI Dispu: Uvod u projekt Sljedeći vodič će vam pokazati kako koristiti STONE STVC050WT-01 modul zaslona osjetljiv na dodir za izradu jednostavnog sustava upravljanja kućanskim aparatima
KORISTITE KAMENI HMI Napravite kućni sustav upravljanja: 9 koraka
UPORABA STONE HMI-a Napravite sustav za upravljanje kućom: Uvod u projekt Sljedeći vodič će vam pokazati kako koristiti STONE STVC050WT-01 modul zaslona osjetljiv na dodir za izradu jednostavnog sustava upravljanja kućanskim aparatima. STONE STVC050WT - 01 podržani modul zaslona osjetljiv na dodir je 5 inča, rezolucija 480 * 272 na
Upravitelj zadataka - sustav upravljanja kućanskim poslovima: 5 koraka (sa slikama)
Voditelj zadataka - sustav upravljanja kućanskim poslovima: htio sam pokušati riješiti stvarni problem s kojim se susrećemo u našem kućanstvu (i, pretpostavljam, problem mnogih drugih čitatelja), a to je kako dodijeliti, motivirati i nagraditi svoju djecu za pomoć s kućanskim poslovima. Do sada smo čuvali laminiranu ploču
Pametni sustav upravljanja za robotske automobile koji koristi koračni motor stare diskete/CD pogona: 8 koraka (sa slikama)
Pametni sustav upravljanja za robotske automobile pomoću koračnog motora stare diskete/CD pogona: Pametni sustav upravljanja za robotske automobile Jeste li zabrinuti oko toga da napravite dobar upravljački sustav za svoj robotski automobil? Evo izvrsnog rješenja samo pomoću starih disketnih/ CD/ DVD pogona. pazite i steknite ideju o tome Posjetite georgeraveen.blogspot.com