Inhaltsverzeichnis:

WebFoos - ein intelligenter Tischkicker - Gunook
WebFoos - ein intelligenter Tischkicker - Gunook

Video: WebFoos - ein intelligenter Tischkicker - Gunook

Video: WebFoos - ein intelligenter Tischkicker - Gunook
Video: Ник Бостром: Что произойдёт, когда компьютеры станут умнее нас? 2024, November
Anonim
WebFoos - ein intelligenter Tischkicker
WebFoos - ein intelligenter Tischkicker

Für mein Schulprojekt in meinem ersten Jahr bei Howest habe ich mich entschieden, einen intelligenten Tischkicker zu bauen. Die Tabelle registriert Tore und speichert gespielte Spiele, Spielstatistiken und Benutzer-/Teamstatistiken auf einer Online-Website.

Schritt 1: Die Teile

Um Ihren eigenen intelligenten Tischkicker zu bauen, benötigen Sie folgende (oder ähnliche) Teile:

1 x Ein Raspberry Pi 3 Modell B (€ 39,90)

  • 2 x HC-sr04 Ultraschallsensor (je 2,79 €)
  • 1 x RFID-Sensor RFC522 (11,90 €)
  • 1 x LCD-Bildschirm (€ 13,90)
  • 1 x PVC-Rohr 50mm (2, 49 €)
  • 8 x PVC-Rohre 50 mm Ecke (1, 59 € pro Stück)
  • 2 x PVC-Rohre 50 mm T (jeweils 3, 39 €)

Ein paar Anschlusskabel (4, 95 €)

Gesamtpreisschätzung: 123 €, 17

Die Preise können von Lieferant zu Lieferant variieren, aber dies sind die ungefähren Preise, zu denen ich meine Teile bekommen habe.

Schritt 2: Die Sensoren: Schaltung

Die Sensoren: Schaltung
Die Sensoren: Schaltung

Um die Sensoren mit dem Raspberry Pi zu verbinden, folgen Sie dem obigen Fritzing-Schema mit den Anschlusskabeln.

Der mit dem V0-Pin des LCD-Bildschirms verbundene Widerstand kann durch ein Potentiometer ersetzt werden, damit Sie den Kontrast auf dem LCD-Bildschirm einstellen können. Verbinden Sie einfach die beiden äußeren Pins des Potentiometers mit Masse und te 5V, dann verbinden Sie den mittleren Pin mit V0.

Stellen Sie sicher, dass alle Ihre Kabel lang genug sind, damit Sie alle Ihre Sensoren korrekt auf/in dem Tisch platzieren können (siehe folgenden Schritt).

Schritt 3: Die Sensoren: HC-RS04

Die Sensoren: HC-RS04
Die Sensoren: HC-RS04
Die Sensoren: HC-RS04
Die Sensoren: HC-RS04
Die Sensoren: HC-RS04
Die Sensoren: HC-RS04

Bevor wir den HC-SR04 an der richtigen Stelle platzieren können, müssen wir die PVC-Teile zu 2 ähnlichen Rohren zusammenfügen, um den Ball vom Tor am HC-SR04 vorbeizuführen:

  1. Verbinden Sie 2 der 45°-Eckbits mit 1 der T-förmigen PVC-Verbinder (1. Bild)
  2. Der HC-SR04 passt perfekt in den herausstehenden Teil (2. Bild)
  3. Verwenden Sie 2 weitere 45°-Anschlüsse, um den Ball weiter dorthin zu führen, wo er hingeführt werden soll (3. Bild)
  4. Bohren Sie ein Loch in den Boden des Tores, durch das der Ball nun in das Rohr fallen kann
  5. Schneiden Sie einen Teil des langen PVC-Rohrs ab. Sie können diesen Teil verwenden, um das von Ihnen gebaute Rohr zu stützen
  6. Kleben Sie das Rohr wie auf dem 3. Bild auf den Tisch (Vergessen Sie nicht, zuerst Ihren HC-SR04 mit dem Raspberry Pi zu verbinden!!!)

Wiederholen Sie die obigen Schritte für den zweiten HC-SR04

Schritt 4: Die Sensoren: RSC522

Die Sensoren: RSC522
Die Sensoren: RSC522

Der RFID-Sensor RSC522 kann an der Innenseite der Wand neben einem der Tore verklebt werden. Das Holz ist dünn genug, damit Sie Ihre Karte durch das Holz scannen können.

Schritt 5: Die Sensoren: LCD-Bildschirm

Die Sensoren: LCD-Bildschirm
Die Sensoren: LCD-Bildschirm

Um den LCD-Bildschirm auf dem Tisch zu montieren, bohrte ich nur einige Löcher für die Kabel, um durch die Tischplatte zu passen, und klebte dann das LCD an den Tisch selbst.

Schritt 6: Das Pi

Für dieses Projekt gehe ich davon aus, dass Sie bereits ein funktionierendes Debian-Image auf Ihrem Raspberry Pi installiert haben. Wenn nicht, finden Sie auf der offiziellen Raspberry Pi-Website ein einfaches Tutorial.

Wenn Sie Raspbian erfolgreich installiert haben, geben Sie die folgenden Befehle auf Ihrem Pi ein:

  1. Pakete installieren:

    1. sudo apt-Update
    2. sudo apt install -y python3-venv python3-pip python3-mysqldb mariadb-server uwsgi nginx uwsgi-plugin-python3
  2. Erstellen Sie eine virtuelle Umgebung:

    1. python3 -m pip install --upgrade pip setuptools rad virtualenv
    2. mkdir projekt1 && cd projekt1
    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. Erstellen der Datenbank:

    1. sudo mariadb
    2. BENUTZER ERSTELLEN 'project1-admin'@'localhost' IDENTIFIZIERT DURCH 'sdfgh'; BENUTZER 'project1-web'@'localhost' IDENTIFIZIERT DURCH 'sdfgh' ERSTELLEN; BENUTZER ERSTELLEN 'project1-sensor'@'localhost' IDENTIFIZIERT VON 'sdfgh';

      DATENBANK ERSTELLEN Projekt1;

      GEWÄHLE ALLE PRIVILEGIEN AUF project1.* an 'project1-admin'@'localhost' MIT GRANT OPTION; GRANT SELECT, INSERT, UPDATE, DELETE ON project1.* TO 'project1-web'@'localhost'; GRANT SELECT, INSERT, UPDATE, DELETE ON project1.* TO 'project1-sensor'@'localhost'; Flush-Privilegien;

    3. Führen Sie die SQL-Dateien in project1/sql aus
  4. Herunterladen des Codes:

    1. git-Klon
    2. sed -i s/pi/$USER/g conf/ (!ändert pi in den Konfigurationsdateien in Ihren eigenen Benutzernamen)
  5. nginx einrichten:

    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 Neustart nginx.service
  6. Führen Sie den Code aus:

    sudo systemctl enable project1-*

Empfohlen: