Sommario:

WebFoos - un biliardino intelligente: 6 passaggi
WebFoos - un biliardino intelligente: 6 passaggi

Video: WebFoos - un biliardino intelligente: 6 passaggi

Video: WebFoos - un biliardino intelligente: 6 passaggi
Video: Inside the MOST EXPENSIVE Hotel Room in the WORLD! 2024, Novembre
Anonim
WebFoos - un biliardino intelligente
WebFoos - un biliardino intelligente

Per il mio progetto scolastico nel mio primo anno a Howest, ho deciso di creare un biliardino intelligente. La tabella registra i goal e salva le partite giocate, le statistiche delle partite e le statistiche degli utenti/squadra su un sito web online.

Passaggio 1: le parti

Per costruire il tuo biliardino intelligente, avrai bisogno delle seguenti parti (o simili):

1 x A Raspberry Pi 3 Modello B (€ 39, 90)

  • 2 sensori a ultrasuoni HC-sr04 (€2, 79 ciascuno)
  • 1 x sensore RFID RFC522 (€ 11, 90)
  • 1 x Schermo LCD (€13, 90)
  • 1 x tubo in PVC da 50 mm (€2, 49)
  • 8 x profili in PVC angolari da 50 mm (€ 1, 59 ciascuno)
  • 2 tubi in PVC da 50 mm T (€ 3, 39 ciascuno)

Un paio di cavi di connessione (€4, 95)

Stima del prezzo totale: € 123, 17

I prezzi possono variare da fornitore a fornitore, ma questi sono i prezzi approssimativi per i quali ho ricevuto le mie parti.

Passaggio 2: i sensori: circuiti

I sensori: circuiti
I sensori: circuiti

Per collegare i sensori al Raspberry Pi, segui lo schema fritzing sopra usando i cavi del connettore.

La resistenza collegata al pin V0 sullo schermo LCD può essere sostituita da un potenziometro in modo da poter regolare il contrasto sullo schermo LCD. Basta collegare i due pin esterni del potenziometro a massa e te 5V, quindi collegare il pin centrale al V0.

Assicurati che tutti i cavi siano sufficientemente lunghi da poter posizionare correttamente tutti i sensori sul/all'interno del tavolo (vedi il passaggio successivo).

Passaggio 3: i sensori: HC-RS04

I sensori: HC-RS04
I sensori: HC-RS04
I sensori: HC-RS04
I sensori: HC-RS04
I sensori: HC-RS04
I sensori: HC-RS04

Prima di poter posizionare l'HC-SR04 nella sua posizione corretta, dobbiamo unire le parti in PVC per creare 2 tubi simili per condurre la palla dalla porta oltre l'HC-SR04:

  1. Collegare 2 delle punte angolari a 45° a 1 dei connettori in PVC a forma di T (1a foto)
  2. L'HC-SR04 si adatta perfettamente alla parte che sporge (2a foto)
  3. Usa altri 2 connettori a 45° per condurre ulteriormente la palla dove vuoi che conduca (terza immagine)
  4. Praticare un foro nella parte inferiore della porta, attraverso il quale la palla può ora cadere nel tubo
  5. Taglia una parte del lungo tubo in PVC, puoi usare questa parte per sostenere il tubo che hai costruito
  6. Incolla il tubo sul tavolo come nella terza immagine (assicurati di non dimenticare di collegare prima il tuo HC-SR04 al Raspberry Pi!!!)

Ripetere i passaggi precedenti per il secondo HC-SR04

Passaggio 4: i sensori: RSC522

I sensori: RSC522
I sensori: RSC522

Il sensore RFID RSC522 può essere incollato all'interno della parete accanto a una delle porte. Il legno è abbastanza sottile da poter scansionare la tua carta attraverso il legno.

Passaggio 5: i sensori: schermo LCD

I sensori: schermo LCD
I sensori: schermo LCD

Per montare lo schermo LCD sopra il tavolo, ho semplicemente praticato dei fori per far passare i cavi attraverso la parte superiore del tavolo, quindi ho incollato lo schermo LCD al tavolo stesso.

Passaggio 6: il Pi

Per questo progetto, presumo che tu abbia già un'immagine Debian funzionante installata sul tuo Raspberry Pi. In caso contrario, puoi trovare un semplice tutorial sul sito Web ufficiale di raspberry pi.

Se hai installato con successo Raspbian, inserisci i seguenti comandi sul tuo Pi:

  1. Installa i pacchetti:

    1. sudo apt update
    2. sudo apt install -y python3-venv python3-pip python3-mysqldb mariadb-server uwsgi nginx uwsgi-plugin-python3
  2. Crea un ambiente virtuale:

    1. python3 -m pip install --upgrade pip setuptools wheel virtualenv
    2. mkdir progetto1 && cd progetto1
    3. python3 -m venv --system-site-packages env
    4. source env/bin/activate
    5. python -m pip install mysql-connector-python argon2-cffi Flask Flask-HTTPAuth Flask-MySQL mysql-connector-python passlib
  3. Fare il database:

    1. sudo mariadb
    2. CREA L'UTENTE 'project1-admin'@'localhost' IDENTIFICATO DA 'sdfgh';CREA L'UTENTE 'project1-web'@'localhost' IDENTIFICATO DA 'sdfgh'; CREA UTENTE 'project1-sensor'@'localhost' IDENTIFICATO DA 'sdfgh';

      progetto CREA DATABASE1;

      CONCEDERE TUTTI I PRIVILEGI SU project1.* a 'project1-admin'@'localhost' CON L'OPZIONE DI CONCESSIONE; GRANT SELECT, INSERT, UPDATE, DELETE ON project1.* TO 'project1-web'@'localhost'; GRANT SELECT, INSERT, UPDATE, DELETE ON project1.* TO 'project1-sensor'@'localhost'; PRIVILEGI DI SCARICO;

    3. Esegui i file sql in project1/sql
  4. Scaricando il codice:

    1. git clone
    2. sed -i s/pi/$USER/g conf/ (!cambia pi nei file di configurazione con il tuo nome utente)
  5. Configurazione nginx:

    1. sudo cp conf/nginx /etc/nginx/sites-available/project1
    2. sudo rm /etc/nginx/sites-enabled/default
    3. sudo ln -s /etc/nginx/sites-available/project1 /etc/nginx/sites-enabled/project1
    4. sudo systemctl riavvia nginx.service
  6. Esegui il codice:

    sudo systemctl abilita progetto1-*

Consigliato: