3 Kanal Dimmer

Da ich keinen Dimmer, der über Taster, IR-Fernbedienung und RS-485 gesteuert wird finden konnte, hab ich mir gedacht ich bau mir halt selber einen.

Funktionen:
1 Taster pro Kanal zum Ein/Ausschalten und Dimmen
2 Fernbedienungsbefehle pro Kanal zum Ein/Ausschalten und Dimmen
IP-Symcon Ansteuerung über RS-485 Bus (max. 31 Dimmer Adressierbar)

Realisiert wurde das Ganze mit einem ATMEGA8 und Bascom.

RS485 Dimmer.rar (136 KB)

Ist dein Dimmer vergleichbar mit diesem hier?

http://www.elv-downloads.de/service/manuals/HS485D/62605-HS485D_km.pdf

Hab nämlich auch genau sowas für mein IPS-Radiowecker-Projekt gesucht und war mittelprächtig frustriert am Ende.

Toni

ja, nur die Fernbedienung fehlt bei ELV.
wo lag dein Problem bei dem ELV Dimmer?

Mein Radiowecker hatte keine RS485 Schnittstelle vorgesehen und RS232 gibts quasi nicht. Und Microcontroller zu programmieren hab ich immer noch nicht geschafft mir beizubringen. Und den Wecker auf Win32-Basis wär obendrein auch ganz oben auf meiner Wunschliste gewesen.

Ich habe ja auch schon Merkwürdiges gemacht, aber einen Radiowecker auf RS485 oder RS232…

Ich könnte meine Nixie-Röhren-Uhrenprojekt in IPSymcon integrieren…

@1kBit_Toni
Da bin ich noch nicht drauf gekommen, brauchst du wirklich soetwas?

@thka
Zurück zum 3 Kanal Dimmer, hast du den für die Hutschiene gemacht?
Hast du es auf ELV-HS485-Protokoll-Basis?

Gruß Helmut

Dimmer ist für eine 100x100mm UP Dose, da ich in meinem Verteiler keinen Platz habe.
Protokoll habe ich ein eigenes geschrieben.

Ich benötige ein wenig Hilfe
Ich möchte möchte im Webfront einen Schieberegler haben bei dem ich die Helligkeit einstellen kann.
Wenn ich eine Variable vom Typ Integer hinzufüge kann ich diese nicht verändern!
Ich denke es hat was mit den Profilen zu tun

Du könntest z.B. das Profil ~Intensity.FS20 nehmen. 0-100%

wo finde ich dieses Profil? wird bei mir nicht angezeigt!

Edit
musste erst ein FS20 Gerät anlegen, dann war auch das Profil da.

Profil.jpg

Das war auch nur als Beispiel gedacht. Es gibt ja noch mehr fertige Profile, ansonsten selbst anlegen. An den fertigen kannst Du aber sehen wie sie eingestellt sind.

Erst FS20? Glaube ich nicht:
Variable neu anlegen, Integer auswählen, Profil ~Intensity.100

Gruß Helmut

…doch Helmut, bei dir fehlt .FS20 :wink:

Watt, hab’ ich doch bezahlt :wink:

Darum geht es ihm doch gar nicht, er wollte doch nur 100%

Gruß Helmut

das bezog sich darauf, das es nur angezeigt wird, wenn die Instanzen auch vorhanden sind.

Deswegen, „dein glaub ich nicht“!

Wenn ich ein FS20 Gerät einbinde kann ich die Intensität im WebFront einstellen,
nur bei meiner eigenen Variable funktioniert das nicht.
Kann mir bitte jemand ein Beispiel geben wie ich die Werte setzen kann?
Ich hätte gerne so 10% Schritte die ich dann an den Dimmer sende.

zb:
if ($intensitaet == 10)
{
CSCK_SendText($id_Geraet,chr(0x02).„091001010“.chr(0x03));
}

if ($IPS_VALUE == 10)
{
CSCK_SendText($id_Geraet,chr(0x02)."091001010".chr  (0x03));
} 	

das Script hast Du dem Profil zugewiesen, eigene Aktion.

ja das Problem ist nicht der Script sondern der Schieberegler, wenn ich da reinclicke ändert sich der Wert nicht.
Es sollte wenn ich in der mitte Clicke 50% stehen, diesen Wert übernehme ich dann mit $intensitaet = GetValue($id_WZ_Licht_Intesitaet)

Ich kann zwar mit SetValue Werte setzen aber nicht im WebFront!

//Variable setzen
SetValue($IPS_VARIABLE, $IPS_VALUE);

Ich glaube ich drücke mich falsch aus!

Ich habe eine Variable vom Typ Integer mit dem Profil ~Humidity hinzugefügt.
Unter Eigene Aktion habe ich dann den Dimmen Script eingefügt

<?
$id_Geraet = 29025 /*[COM-Server]*/;
$id_WZ_Licht_Intesitaet = 32264 /*[Wohnzimmer\Licht TV\Intensität]*/;

$intensitaet = GetValue($id_WZ_Licht_Intesitaet);


switch($intensitaet)                                // select
{
    case 10:                                
		CSCK_SendText($id_Geraet,chr(0x02)."091001140".chr(0x03));
      break;
	 case 20:
		CSCK_SendText($id_Geraet,chr(0x02)."091001130".chr(0x03));
    	break;
	 case 30:
		CSCK_SendText($id_Geraet,chr(0x02)."091001120".chr(0x03));
    	break;
	 case 40:
		CSCK_SendText($id_Geraet,chr(0x02)."091001110".chr(0x03));
    	break;
	 case 50:
		CSCK_SendText($id_Geraet,chr(0x02)."091001100".chr(0x03));
    	break;
	 case 60:
		CSCK_SendText($id_Geraet,chr(0x02)."091001080".chr(0x03));
    	break;
	 case 70:
		CSCK_SendText($id_Geraet,chr(0x02)."091001060".chr(0x03));
    	break;
	 case 80:
		CSCK_SendText($id_Geraet,chr(0x02)."091001040".chr(0x03));
    	break;
	 case 90:
		CSCK_SendText($id_Geraet,chr(0x02)."091001020".chr(0x03));
    	break;
	 case 100:
		CSCK_SendText($id_Geraet,chr(0x02)."091001001".chr(0x03));
    	break;
}

?>

Der Script müsste so eigentlich Funktionieren, wenn ich in den Schieberegler Clicke erhalte ich jedoch immer den Wert 0

Also das Problem ist das ich keine Werte im WebFront ändern kann!

Du musst schon, wie von RWN geschrieben, auch den Variablenwert in IPS setzen. Woher soll IPS sonst wissen, ob Dein Befehl auch erfolgreich durchgegangen ist?

ich kapier das irgendwie nicht, kannst mir da nicht ein beispiel geben?