Innholdsfortegnelse:
- Trinn 1: Hvordan fungerer det?
- Trinn 2: Lag en boks
- Trinn 3: Legge til Arduino
- Trinn 4: Arduino -kode
- Trinn 5: Node-RØD
- Trinn 6: Database
- Trinn 7: Evaluering
Video: UCL - IIoT - Farmers Market: 7 trinn
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:24
Farmersmarket -lommeboken kan brukes på messer, bondemarkeder eller andre sammenkomster der varer selges.
Farmersmarket -lommeboken er en myntteller, laget for å gjøre det mulig å raskt se det totale innholdet i en eske som inneholder mynter. Farmersmarket-lommeboken vil også laste opp summen til en server som er programmert via Node-red.
Den er laget av tre studenter ved University College Lillebælt i Danmark. Siden vårt forrige prosjekt, Myntsortereren, har vi lært mange nye ting som vi vil inkorporere i bygget. Vi har valgt å slippe sorteringen av myntene og i stedet få maskinen til å telle dem og sette dem i en felles myntboks.
Lommeboken består av fem lysbilder eller spor, en for hver mynttype. Når en mynt settes inn i den riktige sporet, vil den falle ned forbi en reflektor, som sender et HØYT signal til arduinoen. Vi vil bruke signalet til å legge til myntverdien til den tellede summen, vise den på den eksterne skjermen og sende den nye totalen til en server. Når serveren mottar totalen, oppdaterer den et brukergrensesnitt som er funnet på nettet og viser den nye totalen.
Beskrivelse En eske med fem myntspor som fører til fem individuelle, interne lysbilder, en for hver mynttype: 1kr, 2kr, 5kr, 10kr, 20kr
En LCD -skjerm som viser den totale kontantinnbetalingen på toppen av esken.
Toppen av boksen er festet med luker. Når du løfter toppen, fjernes arduinohuset sammen med toppen som inneholder LCD -skjermen, myntspor, reflektorer osv., Og det er bare boksen der mynten er plassert.
Komponenter og materialer - Verktøy og utstyr for å lage en eske (kan være papp eller tre)
- Arduino Mega 2560
- 30 jumperwires
- 5 x LDR "lyssensor"
- 5 x 220 ohm motstander
- 5 x 10k ohm motstander
- 5 x hvite lysdioder
- LCD 16x02 -modul
- Mynt
Kode i Arduino
Som nevnt tidligere stammer dette prosjektet fra et tidligere prosjekt vi laget for omtrent åtte måneder siden (https://www.instructables.com/id/Coin-Sorting-Machine/). På grunn av dette kan vi gjenbruke en stor del av koden i arduino, selv om det er noen mindre endringer i den. Som du vil se er koden ganske enkel, noe enhver person med litt erfaring med Arduino burde kunne forstå.
Node-RED Node-RED er verktøyet vi vil bruke for å hente dataene fra arduinoen og til datamaskinen din, og videre til internett, hvis det er i din interesse. En annen viktig grunn til å bruke Node-RED, er evnen til å presentere data fra Arduino på en måte som er lett å forstå, for folk som ikke har noen programmerings-/kodingserfaring med Arduino og Node-RED.
Database Ved hjelp av Wampserver kan vi lagre våre verdier fra Arduino i en database. Med Wampserver er det mulig å lage og veksle din egen database som du vil, ved å bruke phpMyAdmin for å administrere MySQL. I vårt tilfelle har vi seks verdier vi trenger å lagre (en for hver mynttype og en for resultatet), og derfor har vi opprettet seks kolonner der hver verdi kan lagres.
Trinn 1: Hvordan fungerer det?
I en mer detaljert herregård vil vi nå forklare hvordan systemet vårt fungerer.
Som du vil se på flytskjemaet, er det første som setter prosessen, når en mynt settes inn i den riktige sporet.
LDR -lyssensoren vil merke den reduserte lysmengden når mynten passerer sensoren, noe som vil utløse Arduino -programmet for å øke variabelen "Antal" (Antall) med en, siden det nå er en mynt i maskinen. Samtidig legges verdien av mynten til variabelen "resultat". "resultat" vises på LCD -skjermen med den nye verdien.
De nye verdiene "Antal" og "resultat" sendes til Node-RED, der dashbordet vil oppdatere seg selv med disse verdiene. Endelig sender Node-RED verdiene til databasen vår.
Og gjenta.
Trinn 2: Lag en boks
Denne gangen har vi brukt Illustrator til å designe boksen vår. Med en laserskærer har vi vært i stand til å lage denne boksen og funksjonene som kreves for prosjektet vårt. Til slutt er det opp til deg å bestemme hvordan du skal lage den perfekte esken for prosjektet ditt.
Trinn 3: Legge til Arduino
Det er på tide å implementere Arduino i esken. Dette kan være ganske vanskelig, da sensoren kan oppføre seg uforutsigbart. (Nytt) I dette trinnet har vi endret sensoren vi bruker på grunn av den tidligere nevnte upåliteligheten til disse sensorene (tcrt 5000). I stedet har vi valgt en mer enkel LDR-sensor (Lysavhengig motstand). Utgangen fra denne sensoren er en analog verdi, som endres avhengig av mengden lys som når sensoren selv.
Trinn 4: Arduino -kode
I dette trinnet legger vi fokus på programvaren. Arduino -koden ser slik ut:
const int sensorPin1 = 3; // TCRT-5000 sensor som er koblet til pin nr. 2 int sensorState1 = 0; // Inneholder verdien til sensoren (Høy/lav)
int Antal10 = 0; // Variabel som lagrer mengden mynter som er lagt inn i maskinen int
Resultat = 0; // Variabel som lagrer den samlede verdien av alle mynter som legges i maskinen
ugyldig oppsett () {Serial.begin (9600); }
void loop () {int sensorState1 = analogRead (sensorPin1); // Leser sensorens tilstand
if (540 <sensorState1 <620) {// Når sensorens utgangsverdi er mellom 540 og 620
Antal10 += 10; // - det er en mynt som passerer sensoren, som blokkerer noe lys
resultat += 10; // - og sensoren vil lese et lavere lysnivå}
Serial.print (Resultat);
Serial.print (","); // Skiller variablene med komma, noe som er nødvendig når du leser verdiene til variabler i Node-RED
Serial.println (Antal10); // - og også nødvendig når disse verdiene skal lagres i databasen
forsinkelse (100); }
Denne koden er kun skrevet for en sensor, for å gjøre den lettere å lese.
Komplett kode:
Trinn 5: Node-RØD
Når Arduino-koden kjører som den skal, kan du begynne å programmere Node-RED, som kommer til å fungere som midtlinjen mellom Arduino og databasen og som en visuell visning av hvordan maskinen fungerer. Programmeringen av Node-RED består av å bruke noder med forskjellige funksjoner, og sette inn de riktige parametrene for at disse nodene skal fungere skikkelig.
Når dataene våre kommer i Node-RED, blir de sendt til to forskjellige delingsfunksjoner. En av disse funksjonene sender dataene som nå er splittet videre til databasen. Den andre sender de forskjellige dataværdiene videre til hver av dashbordets noder, som nå skal være synlige på dashbordet.
Som nevnt ealier har vi seks verdier som skal behandles. Med dashbordets evner til Node-Red er vi i stand til å vise disse verdiene, som du ser på bildet til høyre øverst i trinn 3.
Node-RØD kode:
Trinn 6: Database
Nå skal vi bruke en database for å lagre verdiene. Med Wampserver er det mulig å bruke phpMyAdmin til å administrere MySQL og lage din egen database, ved å bruke en lokal server for å passe dine spesifikke behov.
Først når du lager en database (bønder_marked) fra bunnen av, må du lage en tabell (mont_tabel), der du lagrer verdiene dine. Avhengig av hvor mye data du har, og hvordan du trenger å bestille dem, kan du lage så mange bord du trenger. Fordi vi trenger å lagre seks forskjellige verdier, og vi trengte derfor seks kolonner, en for hver verdi, i tabellen vår. På bildet ovenfor kan du se databasen vår.
Når dataene våre kommer til Node-RED, blir de splittet av en delt funksjon, og dataene som nå sendes videre til databasen.
Trinn 7: Evaluering
Først vil vi nevne at det å gjøre esken av tre i stedet for papp gjør hele det fysiske oppsettet mye mer pålitelig, og vi anbefaler derfor å gjøre det.
Å bytte sensorene fra en TCRT-5000 og til en enkel LDR lyssensor ga mye mer stabilitet, når det gjelder sensorers evne til raskt å lese når en mynt går forbi den. Når du arbeider med en TCRT-5000 er det mange faktorer som må tas i betraktning, for at sensoren skal fungere som du vil.
Å koble systemet til en database og visuelt kunne presentere dataene dine på en måte som enhver person uten forhåndskunnskap om dette prosjektet er i stand til å forstå hva som skjer, ser ut til å gi prosjektet mer verdi.
Anbefalt:
UCL Embedded - B0B Linefollower: 9 trinn
UCL Embedded-B0B Linefollower: Dette er B0B.*B0B er en generisk radiostyrt bil, som midlertidig tjener grunnlaget for en robot som følger linjen. Som så mange linjefølgende roboter før ham, vil han gjøre sitt beste for å bli på en linje forårsaket av en overgang mellom gulvet og ac
UCL - Innebygd - Velg og sted: 4 trinn
UCL - Embedded - Pick and Place: Denne instruksen vil gå gjennom hvordan en 2D pick and place -enhet er laget og hvordan du koder den
UCL - Koble Node -rød til en Siemens PLC ved hjelp av KEPserver: 7 trinn
UCL-Koble Node-red til en Siemens PLC ved hjelp av KEPserver: RequirementsNode-red: https://nodered.org/docs/getting-started/installationKEPserver: https://www.kepware.com/en-us/kepserverex-6 -6-utgivelse
UCL - Industri 4.0: Candy Mixer 4.000: 9 trinn
UCL - Industry 4.0: Candy Mixer 4.000: For vårt prosjekt i Industry 4.0 har vi besluttet å lage en mikser for godteri. Ideen er at vi har et brukerpanel, laget i Node-Red, hvor kundene kan bestille godteriet sitt, så vil en arduino behandle bestillingen og blande godteriet i en bolle. Da vi
UCL-lloT-Utendørslys Utløst av soloppgang/solnedgang .: 6 trinn
UCL-lloT-Outdoor-light Utløst av soloppgang/solnedgang .: Hei alle sammen! Med litt arbeid, noen deler og kode har jeg satt sammen denne instruksen som viser deg fra start til slutt nøyaktig hvordan du skal produsere dette utendørs lyset. Ideen stammer fra min far, som i løpet av sommeren måtte gå ut manuelt