Innholdsfortegnelse:
2025 Forfatter: John Day | [email protected]. Sist endret: 2025-01-13 06:58
Fingerprint Voting Online System lar velgerne avgi sine stemmer på en fullstendig digitalisert måte ved å samle inn og bekrefte informasjonen hans ved å skanne fingeravtrykket gjennom enheten og lagre dataene til en server. Den har brukervennlig GUI (grafisk brukergrensesnitt) for å avgi sine stemmer. Fingeravtrykksavstemning på nettet hjelper til med å identifisere personer som allerede ga sin stemme. Den lagrer data både på serveren og inne i stemmeapparatet. Slik at dobbeltsjekk av stemmer kan gjøres. Enheten er fullt kontrollert fra serveren, inkludert passordet, festnavnet. Enheten er lett å bære og lett også. Resultatet blir også umiddelbart beregnet.
Trinn 1: BRUKTE MATERIALER
1. Raspberry Pi 3 Model B+
2. LCD -berøringsskjerm 7 tommer
3. USB til serieomformer
4. Sensormodul for optisk fingeravtrykksleser R307
5. Kartong og fjærform
6. USB -adapter 5V 3A og kabel
7. HDMI-HDMI-kabel
8. Trådløst tastatur
Trinn 2: KOBLE TIL MASKINEN
Koble HDMI-HDMI-kabelen fra Raspberry HDMI-port til berøringsskjerm HDMI-port. Ta USB -kabelen og koble den fra berøringsskjermen til USB -pinnen til Raspberry for berøring. Koble deretter USB Serial Converter -pinnene til fingeravtrykkssensormodulen. Koble seriekonvertereren til USB -porten på Raspberry. Lag esken som kreves i henhold til størrelsen ved hjelp av papp og fjærform. Plasser fingeravtrykkssensoren på en slik måte at fingeren kan plasseres riktig på fingeravtrykkssensoren. Derfor er maskinvare klar
Trinn 3: OPPSETT AV GUI
GUI er utviklet i python 3 ved hjelp av Tkinter -biblioteket. FVOS.py er programmet som skal kjøres. Før du kjører programmet må nødvendige pakker installeres:
Tkinter -pakke (stort sett der i python)
PIL -pakke (for bakgrunnsbilde)
urllib -pakken
gspread -pakke
oauth2client -pakke
Etter at alle pakkene er lagt til, er programmet klart til å kjøres. Før det må fingeravtrykk lagres i sensoren. For det er fingerprint.py -fil for å laste opp fingeravtrykk. Utfør og lagre fingeravtrykkadressering fra 9. Her utviklet jeg GUI på en slik måte at 9 fingeravtrykk kan legges til for en enkelt person. Lagre adressen i multipler av 9 (9-17, 18-26, ……). Her lagrer jeg fingeravtrykket i selve sensoren. Serveren min har ikke nok plass til å laste opp en fingeravtrykksmal. Men jeg er dataoverføring helt fra serveren. Etter å ha lagret fingeravtrykksmalen, kjør programmet FVOS.py. Et vindu vises. Endre passordet fra serveren. Når du blir stemt, vil en tekstfil også bli lagret i selve mappen med dataene til folk de stemte.
Trinn 4: OPPSETT AV SERVER
Her har jeg brukt Google Spreadsheet som min server.
Oppsett av Google Regneark og API
1. Gå til Google API -konsollen.
2. Lag et nytt prosjekt.
3. Klikk på Aktiver API.
4. Søk etter og aktiver Google Drive API.
5. Opprett legitimasjon for en webserver for å få tilgang til applikasjonsdata.
6. Gi tjenestekontoen et navn, og gi den en prosjektrolle som redaktør.
7. Last ned JSON -filen.
8. Kopier JSON -filen til kodekatalogen og gi den nytt navn til FVOS.json
Det er et siste nødvendige trinn for å godkjenne python -applikasjonen, og det er lett å gå glipp av
Finn client_email inne i client_FVOS.json. Tilbake i regnearket klikker du på Del -knappen øverst til høyre, og limer inn klient -e -posten i feltet Personer for å gi den redigeringsrettigheter. Trykk Send.
Hvis du hopper over dette trinnet, får du en gspread.exceptions. SpreadsheetNotFound -feil når du prøver å få tilgang til regnearket fra Python.
For mer informasjon, se:
www.twilio.com/blog/2017/02/an-easy-way-to-read-and-write-to-a-google-spreadsheet-in-python.html
Deretter legger du til feltene som vist i figuren, og deretter legger du til personens navn og detaljer.
Trinn 5: SLUTT OPP
Etter å ha lastet opp dataene. Serveren er klar. Ikke endre raden eller kolonnen med feltnavn. Siden de er forhåndsdefinerte i koder. Ikke glem å laste ned JSON -filen og koble e -post -ID -en til regnearket.
For å laste ned fullstendig fil her: https://drive.google.com/drive/folders/1_4LlJjrKN3FDjVMM9p92M9W3ud_h4hIa? Usp = sharing