Hallo,
Ich möchte mit einem Shelly Plus 1 PM, einem Add-on und einem 0-10 Volt Windmesser einen einfachen Windmesser bauen.
Shelly erhält Strom über 230-Volt-L- und N-Kabel. Windmeter erhält 24-Volt-DC-Strom von einem AC/DC-Netzteil und ist an den GND- und Analogeingang des Add-ons angeschlossen. Der Windmesser ist in der Shelly-App als Voltmeter eingerichtet. Der Windmesser hat Stufen von 0,1 V für die Ausgabe - dies ist auch in der Shelly-App konfiguriert.
Wenn ich den Windmesser mit allen eingeschalteten Netzteilen drehe, zeigt die Shelly-App eine positive Änderung des Volt-Ausgangs.
ABER das Voltmeter zeigt keine Historie für den Spannungsausgang an und ein Skript, das ich mit Hilfe von ChatGPT4 erstellt habe, um Spannung in m/s (Meter/Sekunde) umzuwandeln, das in der App angezeigt werden sollte, tut überhaupt nichts.
Skript
-- Shelly Plus Add-on Script für die Windgeschwindigkeit
-- 0 Volt entspricht 0 m/s und 10 Volt entspricht 30 m/s
-- Die Auflösung beträgt 0,1 m/s
-- Definiere eine Funktion, die die Spannung in m/s umrechnet
function volt_to_ms(volt)
-- Die Umrechnungsformel lautet: m/s = 3 * volt
return 3 * volt
end
-- Definiere eine Funktion, die die Windgeschwindigkeit ausgibt
function print_wind_speed()
-- Lese die Spannung vom Analogeingang des Add-ons
local volt = shelly.get_analog_input()
-- Berechne die Windgeschwindigkeit in m/s
local ms = volt_to_ms(volt)
-- Runde die Windgeschwindigkeit auf eine Nachkommastelle
ms = math.floor(ms * 10 + 0.5) / 10
-- Gib die Windgeschwindigkeit aus
print("Die Windgeschwindigkeit beträgt " .. ms .. " m/s")
end
-- Rufe die Funktion alle 10 Sekunden auf
shelly.run_every(print_wind_speed, 10)
Meine Fragen:
Was muss es tun, um eine Historie für den Spannungsausgang zu erhalten?
Wie kann ich die gewünschten Ergebnisse aus dem Skript in der Shelly-App erhalten?
Muss ich die "- - Call the ... "-Kommentare aus dem Skript weglassen?
Danke für eure Hilfe