PWM über Raspberry-GPOI

Begonnen von Forstling, 26 Januar 2020, 20:09:52

Vorheriges Thema - Nächstes Thema

Forstling

Hallo

Ich möchte die Temperatur in meinem Terrarium regeln.
Einfach bei einer bestimmten Temperatur Heizung ein bzw. ausschalten ist ungünstig da ich die Temperatur nur über die Beleuchtung beeinflussen kann.
Daher dachte ich mir schließen wir die Lampe über ein Halbleiterrelais an und dimmen die Lampe über PWM.
Das Relais habe ich an einen steuere ich über einen GPIO-Pin.
An und ausschalten ist kein Problem nur wie dimme ich das über FHEM?

Ich habe auch schon einiges in die Suche investiert habe aber noch nichts passendes gefunden.
Bei FRM_PWM bekomme ich eine Fehlermeldung das der Pin nicht initialisiert werden kann.

Und bei ESP EASY habe ich kein define für einen GPIO-Port gefunden.

Daher meine Frage läuft bei jemanden PWM über einen GPIO-Port und wenn ja wie???
Oder hat jemand eine andere Lösung??

Klaus0815

Nicht per FHEM, aber als Bash-Script kann ich sehr einfach PWM-Kommandos an ESPEasy schicken
Kenne mich mit Perl nicht aus, deshalb so
Und wenn es dann bei mir unbedingt per FHEM sein muss, starte ich halt das Bash-Script per FHEM

Wenn Du aber eh ESPEasy einsetzen willst, warum den Umweg über FHEM und nicht alles direkt auf dem ESP?
Erstellst paar Regeln, die steuern dann die Lampe

Grüße
Klaus

Wernieman

Eigentlich kann esp Easy von sich aus PWM ...

Was mir nur auffällt:
Du willst eine 230VLampe per Halbleiterrelais schalten? Also Quasi eine Phasenanschnittsteuerung?

- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

Forstling

nun ja gut also gibt es keine schnelle Lösung wie FHEM ein PWM Signal an einen GPIO ausgeben kann.

@ Werneman: im Prinzip ja ich will das Halbleiterrelais mehrfach pro Sekunde an und Ausschalten welchen Teil der Phase es da gerade nicht Durchlässt ist dem Zufall überlassen ich denke aber wenn ich das ganze mit 100Hz betreibe sollte das recht egal sein und der Glühbirne dürfte das auch nicht weiter ausmachen

Als Aufbau habe ich gedacht ich gehe vom GPIO  über einen Widerstand auf einen Transistor und der schaltet mir das Relais.
(einfaches ein und Ausschalten klappt schon mal)
Der Rest wäre dann Testen was das Relais mitmacht.

Was ich als Lösung bevorzugen würde wäre ein Python Script welchen von FHEM einen Sollwert bekommt und denn dann einstellt.

Dann könnte ich auch für das Tierchen Sonnenauf- und Untergang Simulieren.

das einfachst wäre wahrscheinlich eine Dimmer direkt über FHEM anzusteuern aber dafür fehlt mir die Hardware.

Es ist doch schwiriger als ich dachte so ein Terraium mit FHEM zu steuern.

Wernieman

Also Nochmals:
EspEasy kann von Sich aus PWM. Gibt einen "Befehl" dazu ... schaue mal in die Doku von EspEasy

Allerdings würde ich bei 230V Basteieien immer seeehr vorsichtig sein, vorallem wenn Tiere/Menschen mit dabei sind. Gibt es wirkloich keine Steuerbare Lösung für Dich?

Was hast Du denn außer espeasy noch in der Ansteuerung, als IO?
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

Forstling

Hallo

230V Basteleien werden nur mit entsprechenden Fachwissen durchgeführt.

Mein Fehler war anzunehmen das dass esp "nur" ein Modul von FHEM ist und keine Hardware benötigt.

Nochmal zu Hardware: derzeit habe ich:
Raspberry Pi 4
4fach Relaisboard
2x Halbleiter Relais
Diverse Widerstände und Transitoren

Nicht für diese Zwecke habe ich noch eine Heizungsteurung mit dem V-bus Modul gekoppelt aber das ist ein anderes Thema / Problem

Mein Fazit bisher
Zusätzliche Hardware kaufen oder die pwm über ein externes Script laufen lassen.

Wernieman

Also NIX espeasy ... was ein Modul für esp8266 mit EspEasy-Software ist.

Was Du brauchst ist ein PWM über Raspberry-GPIO ....

ABER ... Pi 4 und GPIO, ist das aktuell stabil?
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

Forstling

naja bisher habe ich keine Probleme bemerkt
aber das Teil  liegt aktuell auf dem Schreibtisch und ist nur im Testbetrieb.

Ich wollte erst mal FHEM kennen lernen bevor ich etwas damit steuere

und genau ich brauche PWM über Raspberry-GPIO

Edit: Titel geändert

Wernieman

Sorry aber da bin ich draußen ...... würde Dir aber trotzdem einen esp8266 (oder Wemos o.Ä.) empfehlen. Sind billliger, wenn man etwas zerschießt als ein Pi ...
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

Forstling

klingt interessant wenn das Teil noch die 5 Temperatursensoren (5-wire) und 3 DHT22 Sensoren auswerten könnte wäre es optimal.
+ 4 Relais für Regen Sonne Licht und Reserve

naja: ich werde wohl vorerst mal weiter probieren und die Heizung ohne runter Regeln laufen lassen aktuell scheint es Frau Gecko auch so nicht zu warm zu sein.  Mal sehen was im Sommer ist.

Wernieman

3 DHT22 Sensoren

5 Temperatursensoren (5-wire) .. 5-wire??? Kenne ich nicht .. wie heißen denn die Sensoren?

Aber der esp8266 ist relativ klein. Würde dann eher mehrere POarralkel als ein Großes System wählen. Dann den PI als Steuerzentrale ...
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

Forstling

Habe heute etwas dazu in einem anderen Forum zu dem Thema gelesen.
Die Steuern einen Lüfter für einen Heizkessel mit FHEM über ein Python- Script mit PWM.
Klingt also als hätte jemand mein Problem schon einmal gelöst.

Da schaffe ich das auch noch.

Wernieman

Das ist der Vorteil solcher Systeme .. es gibt nicht "die" Lösung ;o)
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

Forstling

Habe gerade FHEM Bibliothek für Python gefunden.
Und schon funktioniert das mit dem PWM recht einfach.

Jetzt nur noch ein kleines Python-script schreiben und fertig.

Wernieman

Wenn Du die Libary für andere4 "Suchende" bennennen würdest, wäre es super!

Ansonsten danke für die Rückmeldung
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

Forstling

das ist das aus dieses Forenbeitrag
https://forum.fhem.de/index.php?topic=63816.0

Allerdings ist das Projekt erst mal bei mir gestorben. Mein SSR ist für diese Zwecke zu Langsam.
Jetzt suche ich erst mal einen passenden Dimmer den ich über FHEM steuern kann. und dann kann es weiter gehen

Hier noch der die von mir verwendeten Codes:
Einfach einen Dummy erstellen
define Leistung_Heizung dummy

Und das Python-Script das schaltet den Ausgang 2x mit dem Status das Dummy an und aus
um es zu nutzen muss man noch eine Schleife einbauen

import fhem
import time
import RPi.GPIO as GPIO
GPIO.setmode(GPIO.BCM)
GPIO.setwarnings(False)
GPIO.setup(17, GPIO.OUT)
fh = fhem.Fhem("192.168.178.94")
l = fh.get_device_reading("Leistung_Heizung","state")
print (l)
lei = l['Value']
print (lei)

#ab hier weiter
p = GPIO.PWM(17, 50)  # frequency=50Hz
t = 3
p.start(0)
time.sleep(t)
p.start(lei)
time.sleep(t)
p.start(0)
time.sleep(t)
p.start(lei)
time.sleep(t)
p.start(0)
time.sleep(t)




Wernieman

Wie schon gesagt, der ESP8266 kann es ;o)
Wenn Du "basteln" willst ...
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

jbraeu

man könnte:
1 x 0-10V PWM Digital Analog Wandler Modul
1 x TasmotaDevice z.B. sonoff basic
1 x LED mit Netzteil das PWM Kann

Wernieman

Zitat1 x TasmotaDevice z.B. sonoff basic
Sei bitte vorsichtig beim Basteln. Viele solche Stecker haben keine Ordnetliche Trennung wischen 220V (Phase) und esp.
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

jbraeu

Hab mittlerweile über 20 solcher Dinger für verschiedenste Sachen vergewaltigt u.a. auf 5V direct output Aber nur einmal eine gewischt bekommen und da war ich selber schuld.
Man fasst halt keine Platine direkt an wenn Strom drauf ist  ;D

Wernieman

Du magst Dich mit Netzspannung und der passenden Isolierung auskennen, aber solche Tipps werden eben auch von "Normalbürgern" gelesen, die unbedarft solche Tipps verwenden. Genau für diese war eigentlich mein Hinweis.

Mit Netzspannung spielt man nicht.
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html