Turinys:

Integruota atsargų valdymo sistema: 10 žingsnių (su paveikslėliais)
Integruota atsargų valdymo sistema: 10 žingsnių (su paveikslėliais)

Video: Integruota atsargų valdymo sistema: 10 žingsnių (su paveikslėliais)

Video: Integruota atsargų valdymo sistema: 10 žingsnių (su paveikslėliais)
Video: Išmanus namas su KNX sistema, 3 dalys. Pasakojam apie kabeliavimą. Eltis LT 2024, Liepa
Anonim
Integruota atsargų valdymo sistema
Integruota atsargų valdymo sistema

Aš visada norėjau įperkamo būdo viską sekti savo sandėliuke, todėl prieš porą mėnesių pradėjau dirbti su projektu, kuris tai padarytų. Tikslas buvo sukurti paprastą, prieinamą sistemą, kurią būtų labai paprasta naudoti, kartu ir pakankamai informacijos, kad būtų verta papildomų pastangų. Galiausiai sukūriau atsargų valdymo sistemą, kuri gali saugoti ir atnaujinti informaciją apie bet kurį elementą, turinčią brūkšninį kodą, taip pat gauti pagrindinius duomenis apie tuos elementus iš interneto.

Trumpai tariant, sistema veikia taip.

  1. Nuskaitymas brūkšninis kodas.
  2. „Python“scenarijus skaito duomenis iš skaitytuvo.
  3. Užklausa siunčiama į REST API, veikiančią raudoname mazge.
  4. API apdoroja užklausą, išgauna papildomus duomenis iš interneto ir atitinkamai redaguoja duomenų bazę.

Visa tai daroma naudojant vieną „Raspberry Pi“, suteikiant galimybę atnaujinti ir saugoti duomenis apie visą jūsų inventorių vienoje mažoje, nešiojamoje sistemoje. Šis projektas yra šiek tiek techninis, o pagrindinis duomenų bazių, HTTP ir „Python“supratimas bus labai naudingas, tačiau aš padarysiu viską, kad tai būtų pakankamai lengva pradedantiesiems suprasti. Pradėkime!

1 žingsnis: ko jums reikės

Ko jums reikės
Ko jums reikės

Šiam projektui reikalingos dalys yra…

  • Raspberry Pi
  • USB brūkšninių kodų skaitytuvas (nuoroda į naudojamą)
  • „WiFi“adapteris (jei „Pi“nėra įmontuoto „WiFi“)
  • Jungiklis
  • Trumpieji laidai
  • „Raspberry Pi“dėklas (neprivaloma)

2 veiksmas: įdiekite ir nustatykite duomenų bazę

Įdiekite ir nustatykite duomenų bazę
Įdiekite ir nustatykite duomenų bazę

„MySQL“yra duomenų bazių valdymo sistema, kurioje bus saugomi visi duomenys, kuriuos gauname iš brūkšninių kodų nuskaitymo. Tai labai lengva padaryti naudojant „Pi“, tiesiog paleiskite šią komandą „Pi“terminale.

sudo apt-get install mysql-server

Tada būsite paleisti diegimo procesą ir būsite paraginti sukurti slaptažodį. Viskas. Įdiegę „MySQL“, „Pi“gali veikti kaip mažas duomenų bazės serveris. Dabar turime sukurti lenteles, kuriose bus mūsų duomenys. Pirmiausia prisijunkite. Po įdiegimo vienintelis „MySql“vartotojas yra root (vartotojas, turintis prieigą prie kiekvienos lentelės ir sistemos). Galite prisijungti kaip root, vykdydami šią komandą.

mysql -uroot -p

Netrukus nustatysime kitą vartotoją, kurį naudos mūsų sistema, tačiau pirmiausia turime sukurti savo duomenų bazę ir josje esančias lenteles. Norėdami tai padaryti, paleiskite šias komandas.

sukurti duomenų bazės inventorių;

naudoti inventorių; sukurti lentelę upc_count (upc varchar (15) not null, count integer (3) not null default 0, name varchar (255), size varchar (40), gamintojas varchar (80), pirminis raktas (upc));

Dabar turime paprastą lentelę su penkiais stulpeliais upc (kuris bus pagrindinis raktas), skaičių, pavadinimą, dydį ir gamintoją. Pastaba: „upc“yra skaičius, unikaliai identifikuojantis produktą. Šis skaičius nuskaitomas iš brūkšninio kodo etiketės, kai jis nuskaitomas.

Galiausiai, mes nustatysime tą naudotoją, kurio mums reikia. Aš paskambinsiu savo, norėdamas tai padaryti, paleiskite šias komandas naudodami bet kokį norimą vartotojo vardą ir slaptažodį:

suteikti visas atsargas.* „@“localhost “, nurodytą;

Dabar, kai turime savo duomenų bazę, galime pradėti kurti sistemą!

3 žingsnis: Gaukite „OutPan“API raktą

„OutPan“yra API, kurią galima naudoti norint gauti informacijos apie produktą naudojant jo UPC numerį. Mes tai naudosime norėdami gauti daugiau informacijos apie produktus, kai jie pridedami prie duomenų bazės. Tai yra vieša API, tačiau norint ja naudotis reikia užsiregistruoti ir gauti API raktą. Prisiregistruoti yra gana paprasta, tiesiog eikite čia ir atlikite veiksmus, kad prisiregistruotumėte gauti raktą.

Gavę raktą, nukopijuokite jį. Jums to prireiks vėliau.

4 žingsnis: Įdiekite ir nustatykite raudoną mazgą

Įdiekite ir nustatykite raudoną mazgą
Įdiekite ir nustatykite raudoną mazgą
Įdiekite ir nustatykite raudoną mazgą
Įdiekite ir nustatykite raudoną mazgą

„Node-Red“yra iš anksto įdiegta visose „Raspbian“OS versijose nuo 2015 m.

mazgas raudonas

Jei rodomas pranešimas „komanda nerasta“, turėsite įdiegti raudoną mazgą. Norėdami tai padaryti, paleiskite šias komandas.

sudo apt-get update sudo apt-get install nodered

Pradėję mazgą raudona, galite pasiekti mazgą raudona iš išvestyje rodomo adreso.

Liko tik sąranka - įdiegti „MySQL“mazgus. Tai galite padaryti per naršyklę. Spustelėkite simbolį viršutiniame dešiniajame puslapio kampe, tada spustelėkite parinktį „Tvarkyti paletę“. Iš ten tiesiog ieškokite „mysql“ir spustelėkite diegimo mygtuką.

Dabar esame pasirengę importuoti API.

5 veiksmas: nustatykite API

Nustatykite API
Nustatykite API
Nustatykite API
Nustatykite API
Nustatykite API
Nustatykite API

Žemiau yra visa mano parašyta mazgo raudona API. Tiesiog nukopijuokite viską žemiau, spustelėkite simbolį viršutiniame dešiniajame kampe ir eikite į importavimą → iš mainų srities.

[{"id": "ef09537e.8b96d", "type": "subflow", "name": "mineOpenPanData", "info": "", "in": [{"x": 64, "y": 57, "laidai": [{"id": "b8b6d2e4.169e7"}]}], "out": [{"x": 755, "y": 58, "laidai": [{"id": "8dc2d52b.6a6fd8", "port": 0}]}]}, {"id": "b8b6d2e4.169e7", "type": "http request", "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," laidai ":

Dabar turite visą API, kurią naudosime duomenims įterpti ir atnaujinti. Prieš pradėdami naudoti, reikia atlikti tik keletą pakeitimų.

  1. Pirmiausia eikite į visus „MySQL“duomenų bazės mazgus ir pakeiskite vartotojo vardą ir slaptažodį į tuos, kuriuos sukūrėte duomenų bazei atlikdami ankstesnį veiksmą.
  2. Antra, redaguokite „mineOutPanData“posūkį taip, kad HTTP užklausa, naudojama norint gauti „Open Pan“duomenis, naudotų jūsų API raktą.

Dabar esate pasiruošę naudoti API. Šis srautas sukuria paprastą REST API, leidžiančią siųsti duomenis iš bet kurio prie interneto prijungto įrenginio naudojant HTTP užklausas.

6 veiksmas: (neprivaloma) API supratimas

Prijunkite perjungimo jungiklį
Prijunkite perjungimo jungiklį

Paskutinis dalykas, kurį turime padaryti, yra prijungti jungiklį prie GPIO, kad galėtume nuskaityti dviem režimais, pridėti ir pašalinti.

Tai gana paprasta, tiesiog nustatykite perjungimo jungiklį, kad galėtumėte skaityti iš „GP“kaiščio 21 „Pi“, ir jūs galite eiti. Naudojant pridėto vaizdo grandinę (vadinamą PUD DOWN grandine) scenarijus atsiųs pridėjimo užklausą, kai perjungimo jungiklis bus uždarytas, ir pašalinimo užklausą, kai perjungimo jungiklis bus atidarytas.

Po to mes tiesiog priklijuojame laidus prie korpuso vidinės pusės ir mes galime eiti.

9 veiksmas: (neprivaloma) Sukurkite vartotojo sąsają

(Neprivaloma) Sukurkite vartotojo sąsają
(Neprivaloma) Sukurkite vartotojo sąsają

Šis paskutinis žingsnis nėra būtinas, bet tikrai naudingas, jei norite išnaudoti visą sistemos potencialą. Sukūriau labai paprastą vartotojo sąsają, kurioje lengvai naršomoje lentelėje buvo pateikti visi mūsų duomenų bazėje esantys duomenys. Lentelę galima rūšiuoti pagal stulpelį ir taip pat ieškoti, kad būtų lengviau pamatyti, ką turite po ranka.

UI yra gana paprasta; Aš iš naujo sukūriau tam tikrą internete rastą kodo pavyzdį, kad jis veiktų su mūsų API (jei jus domina, tą pavyzdinį kodą rasite čia).

Norėdami paleisti vartotojo sąsają, atlikite šiuos veiksmus …

  1. Išsaugokite pridėtą failą index.txt kaip index.html (dėl tam tikrų priežasčių negalėjau įkelti failo kaip HTML failo).
  2. Įdėkite du failus į tą patį kompiuterio katalogą.
  3. Paleiskite „index.html“failą savo mėgstamoje žiniatinklio naršyklėje.

Dabar mes galime lengvai pamatyti ir rūšiuoti jūsų inventorių!

10 veiksmas: pradėkite nuskaityti

Pradėkite nuskaityti!
Pradėkite nuskaityti!

Dabar esate pasiruošę pradėti nuskaitymą! Jei turite klausimų, palikite juos komentaruose ir būtinai atsakysiu, kai galėsiu.

Galiausiai, jūsų balsai konkurse būtų labai dėkingi. Ačiū, kad skaitote!

Rekomenduojamas: