Indholdsfortegnelse:
- Trin 1: Opsætning af Arduino og RFID RC-522 (fysisk forbindelse)
- Trin 2: Arduino -kode.,
- Trin 3: Opsætning af MySQL
- Trin 4: Opsætning af Processing IDE
- Trin 5: Udførelse af programmet
- Trin 6: Konklusion
Video: Enkel supermarked-app ved hjælp af RFID RC-522 og Arduino Mega: 6 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:28
Det er godt at se jer igen her på min anden vejledning, her skal jeg hjælpe jer med at oprette en simpel supermarkedsprogram ved hjælp af RFID RC-522 og Arduino med Processing til at oprette enkel GUI.
Bemærk: Kør ikke Arduino seriel skærm, mens du kører behandlingskode, fordi der opstår portkonflikt, da begge skal bruge den samme port
Du mangler:
- Arduino Mega eller Arduino Uno (jeg brugte Mega)
- RFID-RC522
- 7 tråde fra han til hun
- Nogle ID -kort (valgfrit)
- RFID -bibliotek (skal, link nedenfor)
- Wamp server
- Behandler IDE 2.2.1 (brug ikke større end det)
- BezierSQLib-0.2.0 bibliotek til behandling (downloadlink herunder)
Download derefter nedenstående RFID-bibliotek og tilføj det til din Arduino IDE ved at klikke på Skitse-> Inkluder bibliotek-> Tilføj. Zip-bibliotek i filmenuen
Trin 1: Opsætning af Arduino og RFID RC-522 (fysisk forbindelse)
tilslut simpelthen arduinoen med RFID-RC522 som vist på billedet ovenfor. Advarsel: kun 3,3 V forsyning ellers brænder modulet ud
Pin Out for Uno/Nano og Mega
RC522 MODULE Uno/Nano MEGASDA D10 D9 SCK D13 D52 MOSI D11 D51 MISO D12 D50 IRQ N/A N/A GND GND GND RST D9 D8 3.3V 3.3V 3.3V
Trin 2: Arduino -kode.,
Kopiér nedenstående kode, og upload den derefter på din Arduino
/*PINOUT: RC522 MODULE Uno/Nano MEGA SDA D10 D9 SCK D13 D52 MOSI D11 D51 MISO D12 D50 IRQ N/AN/A GND GND GND RST D9 D8 3.3V 3.3V 3.3V*//*Inkluder standard Arduino SPI bibliotek */ #include/ *Inkluder RFID -biblioteket */ #include
/* Definer den DIO, der bruges til SDA (SS) og RST (reset) benene. */
#define SDA_DIO 9 #define RESET_DIO 8
/ * Opret en forekomst af RFID -biblioteket */
RFID RC522 (SDA_DIO, RESET_DIO); int læser = 0;
ugyldig opsætning ()
{Serial.begin (9600); / * Aktiver SPI -grænsefladen */ SPI.begin (); / * Initialiser RFID -læseren */ RC522.init (); }
hulrum ()
{ / * Midlertidig sløjfe tæller * / byte i;
/* Er der fundet et kort? */
if (RC522.isCard ()) { / * Hvis ja, så få sit serienummer * / RC522.readCardSerial ();
/ * Udfør serienummeret til UART */ for (i = 0; i <= 2; i ++) {Serial.print (RC522.serNum , DEC); //Serial.print(RC522.serNum , HEX); } Serial.print (","); Serial.print (læser ++); Serial.println (); } forsinkelse (1000); }
Trin 3: Opsætning af MySQL
- Installer Wamp -server til MySQL, og konfigurer den til at gemme data (
- Kør wamp serveropen MySQL -konsol
- vælg database
- Opret derefter tabellen til dine data
oprette tabel rfid (ID int (8), token int (1), Navn varchar (20), Beløb int (4));
Se nu dette link for at lære, hvordan du får din RFID -tagværdi, og brug derefter nedenstående kode til at indsætte data. Glem ikke at erstatte ID -værdi med din RFID -tagværdi
indsæt i rfid -værdier (3756178, 1, 'Pencil', 20);
brug tokenværdi som 1, så efter at have læst tagværdien for første gang, skifter den automatisk til 2, brug ikke 0 til tokenværdi, når læsekort, der ikke er indsat i DB, vil den tildele 0 og derefter vise den som Ukendt kort..
Trin 4: Opsætning af Processing IDE
- Download og installer Processing IDE 2.2.1
- Uddrag det ovenstående givne ZIP til MyDocuments/Processing/Libraries
- Åbn nu behandlings -IDE, og kontroller, at biblioteket er installeret korrekt eller ikke som i ovenstående billede
- Kopier derefter nedenstående kode til behandling og navngiv den selv
import de.bezier.data.sql.*; import processing.serial.*; // import java.math. BigInteger;
// oprettet 2005-05-10 af fjenett
// opdateret fjenett 20080605
MySQL db -forbindelse;
String s = ""; int Vægt = 700; int Bredde = 1200; langt ID; int token; int Beløb; int Total = 0;
String a = {"NULL", "NULL"};
int ende = 10; // tallet 10 er ASCII for linefeed (slut på serial.println), senere vil vi kigge efter dette for at opdele individuelle meddelelser String serial; // erklære en ny streng kaldet 'seriel'. En streng er en sekvens af tegn (datatype kendt som "char") Seriel port; String curr, prev, Name; PFont f;
ugyldig opsætning ()
{// størrelse (bredde, vægt); størrelse (700, 500); f = createFont ("Arial", 24, true); // dette eksempel antager, at du kører // mysql -serveren lokalt (på "localhost"). // // erstat --brugernavn--, --password-- med din mysql-konto. // String user = "root"; Stringpass = ""; // navn på den database, der skal bruges // String database = "IOT_Database"; // navn på tabellen, der vil blive oprettet String table = ""; // oprette forbindelse til database med serveren "localhost" dbconnection = ny MySQL (denne, "localhost", database, bruger, pass); port = ny Serial (denne, Serial.list () [0], 9600); // initialisere objektet ved at tildele en port og baudrate (skal matche Arduino) port.clear (); // funktion fra serielt bibliotek, der kaster den første læsning ud, hvis vi begyndte at læse midt i en streng fra Arduino serial = port.readStringUntil (ende); // funktion, der læser strengen fra seriel port indtil en println og derefter tildeler streng til vores strengvariabel (kaldet 'seriel') serial = null; } void draw () {baggrund (255); textFont (f, 24); fyld (0); tekst ("Samlet beløb Rs:", 400, 400); tekst (i alt, 585, 400); data(); mens (port.available ()> 0) {// så længe der kommer data fra seriel port, skal du læse den og gemme den serial = port.readStringUntil (end); } hvis (seriel! = null) {prev = curr; curr = a [1]; a = split (seriel, ','); // en ny matrix (kaldet 'a'), der gemmer værdier i separate celler (adskilt med kommaer angivet i dit Arduino -program) hvis ((curr).equals (prev)) {//} else {// println ("curr ", curr); // println ("Forrige", forrige); fungere(); }}}
void -funktion ()
{if (dbconnection.connect ()) {// læs det nu tilbage // dbconnection.query ("SELECT * fra rfid hvor ID ="+a [0]+""); mens (dbconnection.next ()) {ID = dbconnection.getInt ("ID"); token = dbconnection.getInt ("token"); Beløb = dbconnection.getInt ("Beløb"); } hvis (token == 0) {println ("Ok"); textFont (f, 54); fyld (255, 0, 0, 160); tekst ("Ukendt genstand opdaget", 50, 300); forsinkelse (2000); } ellers hvis (token == 1) {Total = Total+Beløb; dbconnection.query ("opdater rfid set token = 2 hvor ID ="+a [0]+""); println ("Ok"); textFont (f, 24); fyld (255, 0, 0, 160); // tekst ("Artikel tilføjet", 10, 30); forsinkelse (1000); } ellers hvis (token == 2) {Total = Total-Amount; dbconnection.query ("opdater rfid set token = 1 hvor ID ="+a [0]+""); println ("Ok"); textFont (f, 24); fyld (255, 0, 0, 160); // tekst ("Element fjernet", 10, 30); forsinkelse (1000); } andet {} dbconnection.close (); } andet {// forbindelsen mislykkedes! }}
ugyldige data ()
{int position = 100; if (dbconnection.connect ()) {dbconnection.query ("SELECT * fra rfid hvor token = 2"); mens (dbconnection.next ()) {Navn = dbconnection.getString ("Navn"); Beløb = dbconnection.getInt ("Beløb"); textFont (f, 24); fyld (0, 0, 255, 160); tekst (navn, 10, position); fyld (0, 0, 0, 160); tekst (Beløb, 215, position); position = position+30; }} dbconnection.close (); }
Trin 5: Udførelse af programmet
Kør programmet ved at klikke på kør -knappen, ikke luk popup -vinduet lukning stopper udførelsen og forespørgsel nedenfor for at se lagrede data i MySQL …
Trin 6: Konklusion
Jeg vil gerne takke dig, fordi du læste min tutorial. Jeg ville sætte pris på, hvis du syntes det var nyttigt og slippe et like (favorit) eller spørge mig om noget, da det holder mig motiveret til at lave disse instruktioner. stil gerne de spørgsmål, du har brug for at vide …
Glad kodning Arduino …
Anbefalede:
DIY -- Sådan laver du en edderkoprobot, der kan kontrolleres ved hjælp af smartphone ved hjælp af Arduino Uno: 6 trin
DIY || Sådan laver du en edderkoprobot, der kan styres ved hjælp af smartphone Brug af Arduino Uno: Mens du laver en edderkoprobot, kan man lære så mange ting om robotik. Ligesom at lave robotter er underholdende såvel som udfordrende. I denne video vil vi vise dig, hvordan du laver en Spider -robot, som vi kan betjene ved hjælp af vores smartphone (Androi
Kontrol ledt over hele verden ved hjælp af internet ved hjælp af Arduino: 4 trin
Kontrol ledt over hele verden ved hjælp af internet ved hjælp af Arduino: Hej, jeg er Rithik. Vi kommer til at lave en internetstyret LED ved hjælp af din telefon. Vi kommer til at bruge software som Arduino IDE og Blynk.Det er enkelt, og hvis det lykkedes dig, kan du styre så mange elektroniske komponenter, du ønskerTing We Need: Hardware:
Sådan laver du en drone ved hjælp af Arduino UNO - Lav en quadcopter ved hjælp af mikrokontroller: 8 trin (med billeder)
Sådan laver du en drone ved hjælp af Arduino UNO | Lav en Quadcopter ved hjælp af mikrokontroller: Introduktion Besøg min Youtube -kanal En Drone er en meget dyr gadget (produkt) at købe. I dette indlæg vil jeg diskutere, hvordan jeg gør det billigt ?? Og hvordan kan du lave din egen sådan til en billig pris … Nå i Indien alle materialer (motorer, ESC'er
RF 433MHZ radiostyring ved hjælp af HT12D HT12E - Lav en RF -fjernbetjening ved hjælp af HT12E & HT12D med 433mhz: 5 trin
RF 433MHZ radiostyring ved hjælp af HT12D HT12E | Oprettelse af en RF -fjernbetjening ved hjælp af HT12E & HT12D med 433mhz: I denne instruktør vil jeg vise dig, hvordan du laver en RADIO -fjernbetjening ved hjælp af 433mhz sendermodtagermodul med HT12E -kode & HT12D -dekoder IC.I denne instruktive kan du sende og modtage data ved hjælp af meget meget billige KOMPONENTER SOM: HT
Trådløs fjernbetjening ved hjælp af 2,4 GHz NRF24L01 -modul med Arduino - Nrf24l01 4 -kanals / 6 -kanals sender modtager til Quadcopter - Rc Helikopter - Rc -fly ved hjælp af Arduino: 5 trin (med billeder)
Trådløs fjernbetjening ved hjælp af 2,4 GHz NRF24L01 -modul med Arduino | Nrf24l01 4 -kanals / 6 -kanals sender modtager til Quadcopter | Rc Helikopter | Rc -fly ved hjælp af Arduino: At betjene en Rc -bil | Quadcopter | Drone | RC -fly | RC -båd, vi har altid brug for en modtager og sender, antag at vi til RC QUADCOPTER har brug for en 6 -kanals sender og modtager, og den type TX og RX er for dyr, så vi laver en på vores