
Inhaltsverzeichnis:
2025 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2025-01-23 12:52

Das Home System 3000 ist ein Gerät, das einen Arduino, einen Temperatursensor, einen Piezo-Summer, einen optischen Detektor/Fototransistor und einen Servo verwendet, um Möglichkeiten zur Verbesserung der Energieeffizienz zu Hause anzuzeigen.
Schritt 1: Temperatursensor

· Verlegen Sie Ihre Strom- und Erdungskabel von
der Mikrocontroller an der Seite des Brotbretts
· Setzen Sie den Temperatursensor in das Steckbrett ein und verlegen Sie die entsprechenden Strom- und Erdungskabel entsprechend
· Beachten Sie, dass der Temperatursensor drei Stifte hat und der mittlere Stift einen Draht hat, der vom Anschluss "A0" führt.
· Code für Temperatursensor:
answer = questdlg('Bitte Arduino und Servo-Startcode ausführen', 'Antwort', 'Ok', 'Ok')
Prompt = 'Drücken Sie eine beliebige Taste, um zu beginnen'
Pause
prompt1 = 'Mindesttemperatur einstellen'
x = Eingabe (Eingabeaufforderung1)
prompt2 = 'Maximaltemperatur einstellen'
y = Eingabe (Eingabeaufforderung2)
prompt3 = 'beliebige Taste drücken, um zu beginnen'
Pause
Abbildung
h = animierte Linie;
ax = gca;
ax. YGrid = 'an';
ax. YLim = [65 85];
halt = falsch;
startTime = datetime('jetzt');
während ~stop
% aktuellen Spannungswert lesen
v = readVoltage(a, 'A0');
% Temperatur aus Spannung berechnen (basierend auf Datenblatt)
TempC = (v - 0,5)*100;
TempF = 9/5*TempC + 32;
% Aktuelle Uhrzeit abrufen
t = datetime('now') - startTime;
% Punkte zur Animation hinzufügen
addpoints(h, datenum(t), TempF)
% Achsen aktualisieren
ax. XLim = Datenum([t-Sekunden(15) t]);
datetick('x', 'limits')
gezeichnet
% Stoppbedingung prüfen
stop = readDigitalPin(a, 'D12');
Schritt 2: Summer

· Draht im Summer, der verwendet wird, um einen extrem hohen oder extrem niedrigen Temperaturmesswert zu signalisieren
· Es wird kein Kabel von der Plus-Spalte zur Plus-Seite des Summers geführt
· Stattdessen wird ein Kabel von der positiven Seite des Summers zu einem Anschluss mit der Bezeichnung "11" geführt.
Dies wird später verwendet, um die Position des Summers im geschriebenen Code abzurufen.
· Code für Summer:
wenn TempF >= y
disp('Tür schließen, es ist heiß')
playTone(a, 'D11', 500, 1)
sonst TempF <= x
disp('Tür schließen, es ist kalt')
playTone(a, 'D11', 250, 1)
Ende
Ende
Schritt 3: Optischer Detektor / Fototransistor

· Dieser Sensor benötigt im Gegensatz zu den anderen Widerstände
· Stellen Sie sicher, dass alle vier Zinken des Sensors in der Schleife enthalten sind, nachdem Sie die Drähte eingesteckt haben
· Der Sensor erkennt eine Lichtänderung, die eine Bewegung darstellt, und zeichnet diese als Eingabe auf
· Code für optischen Detektor/Phototransistor:
klar a
a = arduino('/dev/tty.usbserial-DN01DVI2', 'Uno', 'Bibliotheken', 'Servo');
Prompt = 'Lichtschwellenschwelle einstellen'
z = Eingabe (Eingabeaufforderung)
Lichtpegel = 0
während lightLevel ~= -1
lightLevel = readVoltage (a, 'A1')
if lightLevel >= z
answer = questdlg('möchte AC ändern?', 'Ja', 'Nein')
Antwort wechseln
Fall 'Ja'
answer2 = questdlg('AC hoch oder runter drehen?', 'response', 'down', 'Up', 'Up')
Antwort wechseln2
Fall 'Unten'
s = Servo(a, 'D10');
für Winkel = 0:.1:.5
writePosition(s, Winkel);
aktuelle_position = readPosition(s);
aktuelle_position = aktuelle_position * 180;
% aktuelle Position des Servomotors drucken
fprintf('Aktuelle Position ist %d\n', current_position);
% kleine Verzögerung ist erforderlich, damit das Servo am positioniert werden kann
% Winkel, der ihm gesagt wurde.
Pause(2);
Ende
% Motor auf 0-Winkelposition zurückbringen
writePosition(s, 0);
klar
Prompt = 'Drücken Sie eine beliebige Taste, um fortzufahren'
questdlg('AC abgelehnt', 'Antwort', 'Ok', 'Ok')
Fall 'oben'
s = Servo(a, 'D10');
für Winkel =.5:.1:1
writePosition(s, Winkel);
aktuelle_position = readPosition(s);
aktuelle_position = aktuelle_position * 180;
% aktuelle Position des Servomotors drucken
fprintf('Aktuelle Position ist %d\n', current_position);
% kleine Verzögerung ist erforderlich, damit das Servo am positioniert werden kann
% Winkel, der ihm gesagt wurde.
Pause(2);
Ende
Schritt 4: Servo

· Das Servo repräsentiert
eine Klimaanlage und ist ein Ausgang des Bewegungserkennungseingangs
· Es erfordert ein positives Kabel, ein Erdungskabel und ein Kabel von Port "D9" zum Servo
· Code für Servo:
% Motor auf 0-Winkelposition zurückbringen
writePosition(s, 0);
klar
Prompt = 'Drücken Sie eine beliebige Taste, um fortzufahren'
questdlg('AC aufgetaucht', 'Antwort', 'Ok', 'Ok')
Ende
Ende
Pause
brechen
Ende
Ende
*Besonderer Hinweis: Ein Teil des Codes für das Servo ist mit dem Code für den optischen Detektor/Fototransistor integriert.
Empfohlen:
Drei Lautsprecherkreise -- Schritt-für-Schritt-Anleitung: 3 Schritte

Drei Lautsprecherkreise || Schritt-für-Schritt-Anleitung: Lautsprecherschaltung verstärkt die von der Umgebung empfangenen Audiosignale auf das MIC und sendet sie an den Lautsprecher, von dem aus verstärktes Audio erzeugt wird. Hier zeige ich Ihnen drei verschiedene Möglichkeiten, diese Lautsprecherschaltung zu erstellen:
Anleitung zur nutzlosen Maschine: 21 Schritte (mit Bildern)

Anleitung zur nutzlosen Maschine: Die nutzlose Maschine ist eine Variation von Marvin Minskys "Ultimate Machine", die im Grunde eine Maschine ist, deren ultimatives Ziel es ist, sich selbst auszuschalten. Nach dem Aufbau werden Sie erstaunt sein, wie eine Maschine aus zwei Schaltern und einem Motor besteht und nicht
Anleitung für Raspberry Pi Gaming Emulator: 7 Schritte

Raspberry Pi Gaming Emulator Anleitung: Jeder liebt es zu spielen. Auch wenn wir ernsthafte Arbeit leisten. Und das ist natürlich, denn jeder verdient Ruhe, Freizeit oder Freizeit. Und natürlich können wir uns kaum weigern, unser Lieblingsspiel gespielt zu haben. Ich erinnere mich an die Zeit, als ein Typ
Computer-Build-Anleitung: 8 Schritte

Computer Build Guide: Dies ist eine Anleitung zum Bau eines eigenen, benutzerdefinierten PCs. Obwohl einige denken, dass es einfach billiger und bequemer ist, einen vorgefertigten PC zu kaufen, würden die meisten Benutzer feststellen, dass es tatsächlich weniger teuer ist, ihn zusammenzustellen
So programmieren und veröffentlichen Sie Matlab 2016b in Word (Anleitung für Anfänger): 4 Schritte

So codieren und veröffentlichen Sie Matlab 2016b in Word (Einsteigerhandbuch): Matlab ist ein leistungsstarkes Sprachprogramm, das zum Berechnen technischer Ergebnisse verwendet wird. Es hat die Fähigkeit, Visualisierungen, Berechnungen und Programmierung auf benutzerfreundliche Weise zu integrieren. Mit diesem Programm kann der Benutzer Probleme und Lösungen veröffentlichen