Inhaltsverzeichnis:
- Schritt 1: GitHub-Link
- Schritt 2: Live-Demonstration auf YouTube
- Schritt 3: Erforderliche Komponenten
- Schritt 4: So implementieren Sie Code und Verbindungen
- Schritt 5: Installation
- Schritt 6: PCB-Design
- Schritt 7: Detailliertes Kontrollflussdiagramm des Systems
- Schritt 8: Code
Video: Anti-Icing-System - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:20
Ziel dieses Projekts ist es, durch den Einsatz von Sole als Vereisungsschutzmittel die Bildung von Eis oder Schnee zu verhindern. Mithilfe des Feuchtigkeits- und Temperatursensors zur Erfassung der Umgebungsbedingungen verteilt der Sprinkler das vom Raspberry Pi gesteuerte Solewasser. IR-Sensor wird verwendet, um Menschen und Tiere zu erkennen. Wenn er Personen erkennt, schaltet sich der Sprinkler aus.
Die gesamten Anweisungen zum Erstellen und Verwenden des Projekts finden Sie auf meiner GitHub-Seite.
GitHub:Anti-Icing-System
Schritt 1: GitHub-Link
Bitte besuchen Sie unsere GitHub-Seite, um die verschiedenen Komponenten, Tools und Pakete zu verstehen, die zum Aufbau des Systems verwendet werden.
Anti-Icing-System
Beziehen Sie sich auf den obigen Link, um mehr über das Projekt zu erfahren, da es verschiedene Seiten enthält, einschließlich Readme und Wiki, die Ihnen beim Aufbau Ihres eigenen Anti-Icing-Systems helfen.
Ich werde die Schritt-für-Schritt-Anleitung ab dem dritten Schritt zur Verfügung stellen, um es RPi-Enthusiasten zu erleichtern, sie aus den Instructables zu bauen:)
Schritt 2: Live-Demonstration auf YouTube
Eine Live-Demonstration finden Sie auf unserer YouTube-Seite. unten angegebener Link:
YouTube-Demo für das Anti-Icing-System
Schritt 3: Erforderliche Komponenten
Hardware:
1. IR-Sensor: HC-SR501 PIR-Bewegungsmelder Spannung: 5V – 20VLeistungsaufnahme: 65mATTL-Ausgang: 3,3V, 0VSperrzeit: 0,2 Sek. Triggermethoden: L – Wiederholungstrigger deaktivieren, H Wiederholungstrigger aktivieren Erfassungsbereich: weniger als 120 Grad, innerhalb von 7 MeterTemperatur: – 15 ~ +70Dimension: 32*24 mm, Abstand zwischen Schraube 28mm, M2, Linsenabmessung im Durchmesser: 23mm
2. Feuchtigkeits- und Temperatursensor: DHT22 (AM2302)
Niedrige Kosten3 bis 5 V Strom und I/O 2,5 mA maximaler Stromverbrauch während der Konvertierung (während der Datenabfrage)Gut für 0-100% Feuchtigkeitsmessungen mit 2-5% GenauigkeitGut für -40 bis 80°C Temperaturmessungen ±0,5°C GenauigkeitNicht mehr als 0,5 Hz Abtastrate (einmal alle 2 Sekunden) Single-Bus-Daten werden für die Kommunikation zwischen MCU und DHT22 verwendet, es kostet 5 ms für die einmalige Kommunikation.
3. Bürstenloser DC-Motorpumpen-Decoder QR50E
Kostengünstige und vielseitige 12V 5W Nennleistung280l/H Pumpenmenge kann verschiedene Arten von Lösungen verarbeiten, einschließlich Salzwasser (Sole) und Öl bei verschiedenen Temperaturen
4. DC 12V Batterie/Stromversorgung
Schritt 4: So implementieren Sie Code und Verbindungen
Code:
- Klonen Sie das Repository.
- Kopieren Sie den Code/html nach /var/www/html
- Im Code-Ordner kann die Hauptdatei ausgeführt werden.
- Wenn Sie die Eingangs-/Ausgangs-Pin-Nummer geändert haben, können Sie CMake verwenden, um die Hauptdatei neu zu erstellen.
- Öffnen Sie den Browser und geben Sie die Adresse von RaspberryPi ein, um auf die Benutzeroberfläche zuzugreifen.
Anschlüsse:
Wir verwenden die WiringPi-Nummerierung in unserem Code, daher:
Strom-GPIO: 4.
Motor-GPIO: 3.
PIR-Sensor GPIO: 0.
DHT22-Sensor-GPIO: 7.
Schritt 5: Installation
Da unser Projekt Mysql, PHP, Webserver umfasste, gibt es mehrere Befehle, um die Arbeitsumgebung wie folgt einzurichten:
Die Überprüfung des Raspberry Pi-Systems ist auf dem neuesten Stand
sudo apt-get update
sudo apt-get upgrade
Installation von Apache2, PHP, MySQL unterstützt
sudo apt-get install apache2 -y
sudo apt-get install php7.0
sudo apt-get install mysql-server
sudo apt-get install mysql-client
sudo apt-get default-libmysqlclient-dev
Nach der Installation von Unterstützungen für die Umgebung sollten eine Datenbank und eine entsprechende Tabelle erstellt werden, um Daten zu lesen und zu schreiben.
Wenn Sie ein bestimmtes Login-Konto erstellen möchten, anstatt das 'root' zu verwenden, können Sie einfach die folgenden Befehle ausführen:
Erstellen eines neuen Benutzers namens 'pi'
sudo mysql -u root zum Aufrufen der MySQL-Datenbank.
mysql> USE mysql;
mysql> BENUTZER ERSTELLEN 'pi'@'localhost' IDENTIFIZIERT DURCH '';
mysql> GEWÄHLE ALLE PRIVILEGIEN AUF *.* TO 'pi'@'localhost';
mysql> UPDATE user SET plugin='mysql_native_password' WHERE User='pi';
mysql> FLUSH PRIVILEGIEN;
mysql> beenden;
service mysql neustart
Erstellen einer Datenbank für Himbeer-Pi
mysql>Datenbanksensor erstellen;
mysql>Sensor verwenden;
mysql>Tabelle erstellen th_sensor(name char(20) nicht null Primärschlüssel, Wert float(10, 2) nicht null, value2 float(10, 2);
mysql>beenden;
Jetzt können Sie den Ordner /Code/html als /var/www/html in das Standardverzeichnis localhost kopieren.
Erstellen eines Boot-Skripts zum Starten des Systems nach dem Öffnen des Pi.
Erstellen Sie beispielsweise eine Datei namens boot.desktop unter dem Verzeichnis:.config/autostart/
Der Inhalt der Datei lautet wie folgt:
[Desktop-Eintrag]
Typ=Anwendung
Name=Testboot
NoDisplay=true
Exec= xxx/xxx/xx./main
"xxx/xxx/xx" ist das Verzeichnis Ihrer Hauptdatei.
Schließlich können Sie nach dem Neustart Ihres Pi Ihren Webbrowser öffnen, um die Benutzeroberfläche anzuzeigen.
Schritt 6: PCB-Design
Schaltplan und PCB Wir haben Orcad Capture und PCB Editor ausgewählt, um die PCB zu zeichnen.
Sensorschaltung:
Die Originaldatei des Schaltplans. Bitte öffnen Sie diese Datei von Orcad Capture.
Die Originaldatei der Platine. Bitte öffnen Sie diese Datei mit dem PCB Editor.
Der Schaltplan der Sensorschaltung wird oben zusammen mit den PCB-Dateien bereitgestellt. 16 Pins reichen für unser Projekt aus, daher haben wir nur einen Header mit 16 Pins verwendet.
J2 ist für PIR-Sensor
J3 ist für Feuchtigkeits- und Temperatursensor
J4 ist für GPIO
R1 und R2 sind die Pull-Up-Widerstände
D1 LED ist für den Motortest. Dieses Signal wird verwendet, um den Motor zu steuern.
D2 LED dient zur Beobachtung. Es wird angezeigt, ob die Schaltung funktioniert.
Motorsteuerkreis:
Die Originaldatei des Schaltplans. Bitte öffnen Sie diese Datei von Orcad Capture.
Die Originaldatei der Platine. Bitte öffnen Sie diese Datei mit dem PCB Editor.
Schaltplan und Platine für Motorantrieb
Der Schaltplan der Motortreiberschaltung wird oben zusammen mit den PCB-Dateien bereitgestellt
J1 ist für Stromquelle.
J2 ist für Motor.
J3 ist für das Steuersignal, das vom GPIO kommt.
J4 ist für Schalter.
Q1 soll den Motor steuern.
Die D2-LED soll überprüfen, ob die Schaltung ordnungsgemäß funktioniert.
Schritt 7: Detailliertes Kontrollflussdiagramm des Systems
Eine detaillierte Beschreibung des Signalflusses im gesamten System zusammen mit den Zeitverzögerungen, Abtast- und Aktualisierungsraten und den verwendeten Busprotokollen wird oben zum weiteren Verständnis des Systems bereitgestellt.
wie immer sind weitere Verbesserungsvorschläge und Modifikationen gerne willkommen:)
Schritt 8: Code
Das Codepaket wurde in einer ZIP-Datei hochgeladen, die Sie zum Extrahieren und Kompilieren in Ihrem Himbeer-Pi verwenden können.
Wir verwenden GitHub als unsere Versionskontrollsoftware, da es kostenlos und einfach zu warten ist und neuere Versionen veröffentlicht, die alle am Programm vorgenommenen Änderungen protokollieren.
Das Klonen des Pakets und das Kompilieren mit dem Befehl 'make' sollte einfacher sein als das Codieren jeder Zeile (es ist schwierig, verschiedene Arten von Code für verschiedene Komponenten und Aufgaben in verschiedenen Sprachen in verschiedenen Dateien zu schreiben).
Haftungsausschluss: Dies sollte in keiner Weise als Werbung oder Demotivation für eine andere Website verstanden werden, da ich glaube, dass wir eine aufgeschlossene und reife Gemeinschaft sind, die zusammenarbeiten, um Stück für Stück eine bessere Zukunft aufzubauen:)
Ich hoffe, Sie haben genauso viel Spaß beim Bauen dieses Projekts wie wir:)
Danke schön!
Empfohlen:
Der Plan von Anti-Vervuiling: 3 Schritte
Anti-Vervuiling-Plan: Om vervuiling tegen te gaan in openbare ruimtes, hebben we iets bedacht waardoor mensen hopelijk hun eigen rommel zullen gaan opruimen.Op veel bezochte openbare plekken, bijvoorbeeld treinstations of, stadkesplein