Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Manufacturing Technology >> Productieproces

Versie 2.0 Advanced Attendance System (zonder Ethernet)

Componenten en benodigdheden

Arduino UNO
× 1
Jumperdraden (algemeen)
× 1
RFID RC522-module
× 1

Apps en online services

http://www.parikshacrack.com/gadgetProgrammers/addrfidwin64 .zip
Alleen voor Windows-gebruikers
http://www.parikshacrack.com/gadgetProgrammers/markattendancewin64 .zip
Alleen voor Windows-gebruikers

Over dit project

De eerste versie van ons "Online RFID-aanwezigheidssysteem (zonder Ethernet)" lijkt misschien een beetje ingewikkeld voor die hobbyisten die geen programmeervaardigheden hebben. Met Online RFID-aanwezigheidssysteem versie 2 , we zijn een stap vooruit gekomen en hebben het codeergedeelte geëlimineerd. Met slechts enkele verbindingen kunt u uw eigen online aanwezigheidssysteem maken.

In deze versie van aanwezigheidssysteem gaan we een aanwezigheidssysteem lanceren met alle vereisten van een echt aanwezigheidssysteem. Het heeft een LCD-scherm.

Hoe het werkt?

Circuit:

Als u verwarring heeft over verbindingen, raadpleeg dan de sectie Schema's voor Pinverbindingen.

Het circuit voor LCD-SCHERM:

pin3 naar grd met 220 ohm weerstand

LCD RS-pin naar digitale pin A0

LCD Schakel pin naar digitale pin A1 in

LCD D4-pin naar digitale pin 5

LCD D5 pin naar digitale pin 4

LCD D6 pin naar digitale pin 3

LCD D7 pin naar digitale pin 2

LCD R/W pin naar aarde

LCD VSS pin naar aarde

LCD VCC-pin naar 5V

Programmeren:

Stap 1:Om ons online RFID-aanwezigheidssysteem te gebruiken, moet u onderstaande stappen uitvoeren:

  • · Aanwezigheidsgebruikersgroep maken
  • · Genereren Validatiesleutel

Om bovenstaande stappen uit te voeren, gaat u naar onderstaande URL en maakt u een aanwezigheidsgebruikersgroep aan en genereert u een gratis validatiesleutel.

Bewaar deze validatiesleutel.

URL: http://www.parikshack.com/gadgetProgrammers/user_group.html

Stap 2 :download bestanden van onderstaande URL die nodig is om Arduino en onze webapplicatie te synchroniseren.

http://www.parikshack.com/gadgetProgrammers/ addRFIDTagsProg.zip

http://www.parikshacrack.com/gadgetProgrammers/markattendancewin64.zip

Opmerking :Dit is alleen voor Windows OS. we werken hard voor andere OS.

Pak bestanden uit boven twee zip-mappen en sla deze bestanden op uw pc op en kies op basis van uw Windows-architectuur. (32 of 64 bit pc).

Stap 3 :Sluit Arduino en RFID-lezer aan op dezelfde pc.

Stap 4: Kopieer en plak de Arduino-code zoals aangegeven in de codesectie in de Arduino-editor. Voer nu de Arduino-code uit en upload deze naar het apparaat.

Stap 5: Voer nu de desktoptoepassing "addRFIDTagsProg . uit ” die u kunt vinden in de map “addRFIDTagsProg.zip ”.

Als alles perfect is aangesloten, dan Applicatie “addRFIDTagsProg” wordt geopend en het tekstvak wordt weergegeven zoals in onderstaande afbeelding, anders wordt een leeg scherm weergegeven.

Het onderstaande diagram vraagt ​​om een ​​poort die moet worden gekozen voor communicatie, kies alstublieft volgens uw beschikbaarheid.

hierna ziet u het onderstaande venster.

Voer nu de validatiesleutel in die u hebt gegenereerd in Stap 1 en Druk op de toets valideren.

Het valideert je.

Na validatie kunt u gebruikers toevoegen. In hetzelfde venster hierboven wordt slechts één keer om een ​​validatiesleutel gevraagd.

Voor het toevoegen van een gebruiker, voer het bovenstaande programma uit na validatie, dan zal het u het onderstaande scherm tonen, kies opnieuw de beschikbare poort:

Na het kiezen van de juiste vrije poort zal het onderstaand scherm getoond worden.

Bovenstaand scherm wordt gebruikt om een ​​gebruiker toe te voegen. Hiervoor moet u uw kaart benaderen voor RFID RC522. Dan zal het u de TAG UID voor UID laten zien en dan hoeft u alleen de gebruikersnaam in te voeren die bij deze kaart hoort en op enter te drukken (knop verschijnt na benadering van de kaart).

Als een gebruiker wordt toegevoegd, wordt er een bericht van succes weergegeven en kunt u de gebruiker op het webpaneel bekijken.

URL:http://www.parikshack.com/gadgetProgrammers/index.php

Stap 6 :Nu kunt u gebruiker (medewerkers/studenten) toevoegen aan uw gebruikersgroep. Daarvoor moet u inloggen op onze webapplicatie. Ga naar onderstaande URL en login.

URL:http://www.parikshack.com/gadgetProgrammers/index.php

Ga naar Tab Gebruiker -> Gebruikerslijst in behandeling , vanaf hier kunt u RFID-tags toewijzen aan hun werknemer/studenten.

Stap 7 :Voer bureaubladtoepassing "markOnlineAttendance . uit ” die je kunt vinden in de map “markattendancewin64.zip”.

Er wordt een scherm geopend zoals weergegeven in de onderstaande afbeelding met Status:verbonden .

Bewaar RFID-tags . om de aanwezigheid te markeren dicht bij RFID-lezer gedurende enkele seconden en de aanwezigheid wordt gemarkeerd voor de persoon aan wie deze RFID-tags toebehoren.

Stap 8 :Volg de volgende stappen om de aanwezigheid van alle medewerkers/studenten in een maand of in een jaar te zien.

  • Ga naar Tabblad Aanwezigheidscontroles -> Aanwezigheid bekijken.
  • Selecteer maand en jaar.
  • Klik op de knop "toon".

Er zou een lijst moeten worden weergegeven zoals in onderstaande afbeelding.

Hoera !!! Het is gebeurd.

Als je wilt, geef dan respect.

Schreeuw alsjeblieft in het opmerkingenveld als je een vraag hebt.

Code

  • Arduino-code
Arduino-codeArduino
Deze code werd gebruikt om de 8-cijferige UID (ID-KAART) van de gebruiker te lezen en af ​​te drukken op een seriële printer en om deze naar de verwerking te sturen.
/* -------------------- -------------------------------------------------- ---------------------------------------------- Voorbeeld schets/programma laat zien hoe u nieuwe NUID van een PICC naar serieel kunt lezen. -------------------------------------------------- -------------------------------------------------- ---------------- Dit is een voorbeeld van een MFRC522-bibliotheek; zie voor meer details en andere voorbeelden:https://github.com/miguelbalboa/rfid Voorbeeldschets/programma dat laat zien hoe gegevens van een PICC (dat wil zeggen:een RFID-tag of kaart) kunnen worden gelezen met behulp van een op MFRC522 gebaseerde RFID-lezer op de Arduino SPI-interface. Wanneer de Arduino en de MFRC522-module zijn aangesloten (zie de pinlay-out hieronder), laadt u deze schets in Arduino IDE en verifieert/compileert u deze en uploadt u deze. Om de output te zien:gebruik Tools, Serial Monitor van de IDE (druk op Ctrl+Shft+M). Wanneer u een PICC (dat wil zeggen:een RFID-tag of kaart) op leesafstand van de MFRC522 Reader/PCD presenteert, toont de seriële uitgang het type en de NUID als er een nieuwe kaart is gedetecteerd. Opmerking:mogelijk ziet u "Time-out in communicatie"-berichten wanneer u de PICC te vroeg van de leesafstand verwijdert. @license Vrijgegeven in het publieke domein. Het circuit voor LCD-SCHERM:pin3 naar grd met 220 ohm weerstand LCD RS pin naar digitale pin A0 LCD Schakel pin naar digitale pin A1 LCD D4 pin naar digitale pin 5 LCD D5 pin naar digitale pin 4 LCD D6 pin naar digitale pin 3 LCD D7 pin naar digitale pin 2 LCD R/W pin naar aarde LCD VSS pin naar aarde LCD VCC pin naar 5V 10K weerstand:eindigt op +5V en aarde wiper naar LCD VO pin (pin 3) RFID Circuit:Typische pin-layout gebruikt:-- -------------------------------------------------- ------------------------------------- MFRC522 Arduino Arduino Arduino Arduino Arduino Reader/PCD Uno/101 Mega Nano v3 Leonardo/Micro Pro Micro Signaal Pin Pin Pin Pin Pin Pin ------------------------------------ -------------------------------------------------- --- RST/Reset RST 9 5 D9 RESET/ICSP-5 RST SPI SS SDA(SS) 10 53 D10 10 10 SPI MOSI MOSI 11 / ICSP-4 51 D11 ICSP-4 16 SPI MISO MISO 12 / ICSP-1 50 D12 ICSP-1 14 SPI SCK SCK 13 / ICSP-3 52 D13 ICSP-3 15*/#include #include // include the library code:#include // initialiseer de bibliotheek door de benodigde LCD-interface-pin// te koppelen aan het Arduino-pinnummer waarmee deze is verbonden int rs =A0, en =A1, d4 =5, d5 =4, d6 =3, d7 =2;LiquidCrystal lcd(rs, en, d4, d5, d6, d7);#define SS_PIN 10#define RST_PIN 9int writeVal;int greenLedPin =A2;int redLedPin =A3;int orangeLedPin =6;int buzzerPin =A4;Connboolean chkk =false; MFRC522 rfid (SS_PIN, RST_PIN); // Instance van de classMFRC522::MIFARE_Key key;// Init-array die nieuwe NUIDbyte nuidPICC[4] zal opslaan; boolean isValidating =false; ongeldige setup() {Serial.begin(9600); SPI.begin(); // Init SPI-bus rfid.PCD_Init(); // Init MFRC522 pinMode (greenLedPin, OUTPUT); pinMode (redLedPin, UITGANG); digitalWrite(buzzerPin, OUTPUT); voor (byte i =0; ik <6; i++) { key.keyByte[i] =0xFF; } lcd.begin (16, 2); lcd.setCursor(0, 0);// lcd.print("Welkom bij GadgetProgrammer");// for (int i =0; i <26; i++) {// lcd.scrollDisplayRight();// delay( 100);// } lcd.begin (16, 2); lcd.setCursor(0, 0); lcd.print("GadgetProgrammer"); vertraging (100); lcd.setCursor(0, 1); lcd.print("Niet verbonden! "); establishmentConnection();}void loop() { lcd.setCursor(0, 1); char retOutput; if (Serial.available()> 0) { retOutput =Serial.read(); lcd.blink(); if (retOutput =='A') { chkConn =waar; analoogWrite(oranjeLedPin,0); lcd.print("Veeg je kaart!"); } if(retOutput =='V'){ analogWrite(orangeLedPin,1000); lcd.print("Bevestigingsgroep"); isValiderend =waar; vertraging (1000); } if(retOutput =='S'){ lcd.print("Validatie voltooid!"); glowGreenLed(1000); isValiderend =onwaar; vertraging (1000); } } if (chkConn &&!retOutput !="") { if (retOutput =='1') { lcd.print("Aanwezigheid gedaan!"); glowGreenLed(1000); vertraging (4000); } else if (retOutput =='0') { lcd.print("Netwerkfout!"); glowRedLed(1000); vertraging (4000); } else if (retOutput =='2') { lcd.print("Gebruiker niet gevonden!"); glowRedLed(1000); vertraging (4000); } else if (retOutput =='5') { lcd.print("Netwerkfout!"); glowRedLed(1000); vertraging (4000); } //indien niet in het validatieproces, veeg dan met uw kaart if(isValidating ==false){ lcd.setCursor(0, 1); analoogWrite(oranjeLedPin,0); lcd.print("Veeg je kaart!"); } //lcd.clear(); // Zoek naar nieuwe kaarten } if (! rfid.PICC_IsNewCardPresent()) return; // Controleer of de NUID is gelezen als (! rfid.PICC_ReadCardSerial()) terugkeer; //Serial.print(F("PICC-type:")); MFRC522::PICC_Type piccType =rfid.PICC_GetType(rfid.uid.sak); //Serial.println(rfid.PICC_GetTypeName(piccType));//Afdruktype van kaart // Controle is de PICC van het klassieke MIFARE-type if (piccType !=MFRC522::PICC_TYPE_MIFARE_MINI &&piccType !=MFRC522::PICC_TYPE &! =MFRC522::PICC_TYPE_MIFARE_4K) { //Serial.println(F("Uw tag is niet van het type MIFARE Classic.")); opbrengst; } String s; for (byte i =0; i <4; i++) { nuidPICC[i] =rfid.uid.uidByte[i]; } //Serial.println(F("De NUID-tag is:")); //Serial.print(F("In hex:")); printHex(rfid.uid.uidByte, rfid.uid.grootte); Serieel.println(); lcd.setCursor(0,1); lcd.print("Leeskaart...!"); // Stop PICC rfid.PICC_HaltA(); // Stop codering op PCD rfid.PCD_StopCrypto1(); delay(1000);}/** Helperroutine om een ​​bytearray als hex-waarden te dumpen naar Serial.*/void printHex(byte *buffer, byte bufferSize) { for (byte i =0; i  0) { vertraging (vertragingstijd); digitalWrite (groeneLedPin, LAAG); noTone (zoemerPin); }} ongeldig glowRedLed (int vertragingstijd) { digitalWrite (oranjeLedPin, LOW); digitalWrite (groeneLedPin, LAAG); digitalWrite (redLedPin, HOOG); digitalWrite(buzzerPin, HOOG); vertraging (1000); toon (buzzerPin, 5000); //noTone (zoemerPin); if (vertragingstijd> 0) { vertraging (vertragingstijd); digitalWrite (redLedPin, LAAG); noTone (zoemerPin); }}void glowOrangeLed(){ analogWrite(orangeLedPin,100); vertraging (100); }//contact met verwerking verzenden van A naar Serial Portvoid establishmentConnection() { while (Serial.available() <=0 &&!chkConn) { Serial.println("A"); glowOrangeLed(); vertraging (200); }}void printLcdMsg(String msg, int col, int rij) { if (msg.equals("") || rij <0 || col <0) { rij =0; col =1; } lcd.setCursor(kolom, rij); lcd.print(msg);}

Schema's

pin_connections_of_arduino_and_lcd_yD9G43NUd9.tiff pin_connections_of_arduion_and_rfid_7DFKgigFOA.tiff

Productieproces

  1. Deegrol
  2. Bowlingspeld
  3. Zonne-verwarmingssysteem
  4. Veiligheidsspeld
  5. Expositie:The Primal Display
  6. Materialen:geavanceerd LSR-systeem met uitharding bij lage temperatuur
  7. Een geavanceerd koelsysteem voor computers en batterijen
  8. Aanwezigheidssysteem met Arduino en RFID met Python
  9. Aanwezigheidssysteem op basis van Arduino en Google Spreadsheet
  10. Transportsysteem begrijpen
  11. Ophangsysteem begrijpen