Willkommen auf unserer neuen Forenplattform für das Bus-Profi Forum

Neue Felder für die persönlichen Daten
Man kann jetzt seine öffentlich einsehbare Daten genau bestimmen. Details findet ihr in in diesem Beitrag.

Durch die neue Forensoftware und die Portierung der Daten konnten die Passwörter aus dem alten Forum nicht übernommen werden, bitte lassen Sie sich ein neues Passwort über die Passwort vergessen Funktion zusenden. Sollte es zu Problemen kommen kontaktieren Sie das Bus-Profi Team per E-Mail.

Rollläden an Relais über Domiq positionieren

Hard- und Softwarefragen rund Domiq-Module fürs LCN-System

koboldo
Fleißiges Mitglied
Fleißiges Mitglied
Beiträge: 324
Registriert: Do 16. Feb 2012, 15:50
Hat sich bedankt: 7 Mal

#11 RE: Rollläden an Relais über Domiq positionieren

Beitragvon koboldo » Di 23. Jul 2013, 09:07

Kein Problem :P

Und wie rufe ich das ganze nun in der Visu auf ?

Benutzeravatar

Themenersteller
Beleuchtfix
Administrator
Administrator
Beiträge: 5294
Registriert: Mi 10. Jan 2007, 18:49
Hat sich bedankt: 4 Mal
Danksagung erhalten: 16 Mal
Kontaktdaten:

#12 RE: Rollläden an Relais über Domiq positionieren

Beitragvon Beleuchtfix » Di 23. Jul 2013, 11:18

Wohin die Zeile gehört scheinst du inzwischen gefunden zu haben. :rolleyes:

Visu: das musst du selber probieren, ich habe es bis jetzt nur in Remote eingebaut. Ich würde es erst einmal mit Pushbuttons lösen und mit denen das Script in LOGIC auslösen.

Viel Erfolg
Florian


koboldo
Fleißiges Mitglied
Fleißiges Mitglied
Beiträge: 324
Registriert: Do 16. Feb 2012, 15:50
Hat sich bedankt: 7 Mal

#13 RE: Rollläden an Relais über Domiq positionieren

Beitragvon koboldo » Di 23. Jul 2013, 11:47

Zeile habe ich gefunden....:scared:

Remote kann ich nicht testen, habe hier kein Fallobst rumliegen....


koboldo
Fleißiges Mitglied
Fleißiges Mitglied
Beiträge: 324
Registriert: Do 16. Feb 2012, 15:50
Hat sich bedankt: 7 Mal

#14 RE: Rollläden an Relais über Domiq positionieren

Beitragvon koboldo » Mi 24. Jul 2013, 00:26

Moin Florian,
So, über Display scheint es auch zu laufen, dort muss man einen Switch nehmen und unter Befehl z.B, LOGIC=roll_rel_pos(21,3,10,0)
eintragen....

Allerdings hast du oben geschrieben, das [zitat]Eine Steuerung von Außen wird erkannt[/zitat], dies ist nicht der Fall oder ich habe das falsch verstanden...
Wenn ich jetzt meine normalen LCN Taster nehme, mit denen ich direkt das Relais ansteuere, bekommt das Base das nicht mit....:cry:
Oder habe ich das falsch verstanden ?

P.s: der schon nicht abwarten kann, das du in zwei Tagen wieder kommst :lol:

Benutzeravatar

Themenersteller
Beleuchtfix
Administrator
Administrator
Beiträge: 5294
Registriert: Mi 10. Jan 2007, 18:49
Hat sich bedankt: 4 Mal
Danksagung erhalten: 16 Mal
Kontaktdaten:

#15 RE: Rollläden an Relais über Domiq positionieren

Beitragvon Beleuchtfix » Mi 24. Jul 2013, 04:48

Moin Jörg,
Wenn du den Rollladen von außen steuerst, dann sollte bei der Position n/a stehen und anschließend eine neue Position über die Endlagen angesteuert werden. Falls es das nicht tut, dann habe ich einen Fehler im Programm. Auch sollte erkannt werden, wenn der Rollladen sich in eine der Endlagen befindet. Wichtig ist, dass das Motorrelais mit Zeitbegrenzung eingestellt ist.

Viel Erfolg
Florian


koboldo
Fleißiges Mitglied
Fleißiges Mitglied
Beiträge: 324
Registriert: Do 16. Feb 2012, 15:50
Hat sich bedankt: 7 Mal

#16 RE: Rollläden an Relais über Domiq positionieren

Beitragvon koboldo » Mi 24. Jul 2013, 18:18

Hallo Florian,
so ganz läuft es irgendwie noch nicht :huh:
Manchmal kommt der Fehler

Code: Alles auswählen

Fehler Startzeit


Bei einem Rolladen von 4 getesteten wird auch erkannt, wenn von außen gesteuert wird, nähmlich auf dem der auf dem ersten Relais liegt....
Entweder hier ist etwas in der Verkabelung falsch oder ich habe das mit den Nummern noch nicht kapiert oder du hast noch einen Fehler eingebaut....

Hier mal ein Bild von meiner Verkabelung und mein aktueller Code (Achtung hier ist erst mal nur das Modul 21 relevant, die anderen habe ich noch nicht richtig eingetragen), vielleicht kannst du ja noch mal schauen...:-/

Code: Alles auswählen

-- *******************
-- * Rolladen Anfang *
-- *******************

-- ************************************************************

startzeit = {} -- Startzeit bei Rollladenstart

-- Laufzeiten der Rollläden
set ('t_auf.rel.19.1',17700) -- Gäste WC
set ('t_ab.rel.19.1',16800)

set ('t_auf.rel.19.2',18600) -- Bad
set ('t_ab.rel.19.2',17700)

set ('t_auf.rel.19.3',17700) -- EG Küche
set ('t_ab.rel.19.3',16800)

set ('t_auf.rel.19.4',18600) -- Schlafzimmer
set ('t_ab.rel.19.4',17700)
 
set ('t_auf.rel.20.1',25800) -- Kind2
set ('t_ab.rel.20.1',23200)

set ('t_auf.rel.20.2',25800) -- Lotte
set ('t_ab.rel.20.2',23200)

set ('t_auf.rel.21.1',27000) --Wozi Sofa
set ('t_ab.rel.21.1',24500)

set ('t_auf.rel.21.2',18800) -- Wozi klein
set ('t_ab.rel.21.2',17800)

set ('t_auf.rel.21.3',27000) -- Wozi Terrasse
set ('t_ab.rel.21.3',24500)

set ('t_auf.rel.21.4',11000) -- HWR
set ('t_ab.rel.21.4',10000)

--**********************************************************
-- Hiermit wird das Netzrelais überwacht. Die Bezeichnung links ist Modul_Motor rechts Modul.Relais. Diese Funktion wird für jeden Rollladen einmal benötigt.
roll_rel_19_1_flag = use 'LCN.relay.0.19.1'
roll_rel_19_2_flag = use 'LCN.relay.0.19.2'
roll_rel_19_3_flag = use 'LCN.relay.0.19.3'
roll_rel_19_4_flag = use 'LCN.relay.0.19.4'
 
function roll_rel_19_1_flag:onchange(new) -- Relais 1
   roll_rel_na(19,1,1,new) --Modul, Motor, Relais, Relaisstatus
end
 
function roll_rel_19_2_flag:onchange(new) -- Relais 2
   roll_rel_na(19,2,2,new) --Modul, Motor, Relais, Relaisstatus
end

function roll_rel_19_3_flag:onchange(new) -- Relais 3
   roll_rel_na(19,3,3,new) --Modul, Motor, Relais, Relaisstatus
end
 
 function roll_rel_19_4_flag:onchange(new) -- Relais 4
   roll_rel_na(19,4,4,new) --Modul, Motor, Relais, Relaisstatus
end

roll_rel_20_1_flag = use 'LCN.relay.0.20.1'
roll_rel_20_2_flag = use 'LCN.relay.0.20.2'
 
function roll_rel_20_1_flag:onchange(new) -- Relais 1
   roll_rel_na(20,1,1,new) --Modul, Motor, Relais, Relaisstatus
end
 
function roll_rel_20_2_flag:onchange(new) -- Relais 2
   roll_rel_na(20,2,2,new) --Modul, Motor, Relais, Relaisstatus
end

roll_rel_21_1_flag = use 'LCN.relay.0.21.1'
roll_rel_21_2_flag = use 'LCN.relay.0.21.2'
roll_rel_21_3_flag = use 'LCN.relay.0.21.3'
roll_rel_21_4_flag = use 'LCN.relay.0.21.4'
 
function roll_rel_21_1_flag:onchange(new) -- Relais 1
   roll_rel_na(21,1,1,new) --Modul, Motor, Relais, Relaisstatus
end
 
function roll_rel_21_2_flag:onchange(new) -- Relais 2
   roll_rel_na(21,1,2,new) --Modul, Motor, Relais, Relaisstatus
end

function roll_rel_21_3_flag:onchange(new) -- Relais 3
   roll_rel_na(21,1,3,new) --Modul, Motor, Relais, Relaisstatus
end
 
function roll_rel_21_4_flag:onchange(new) -- Relais 4
   roll_rel_na(21,1,4,new) --Modul, Motor, Relais, Relaisstatus
end



--*********************************************************
--Hier sind die Strings untergebracht, nach denen die Relais gesteuert werden. Ist z.B. das Richtungsrelais anders angeschlossen, kann man hier die Änderung eintragen.
-- Rollläden Relais String
 
down = {'11------';'--11----';'----11--';'------11'}
up = {'10------';'--10----';'----10--';'------10'}
stop = {'00------';'--00----';'----00--';'------00'} -- Richtungsrelais wird aus stromspargründen abgeschaltet


--**********************************************************
--Und die Bearbeitung, wenn sich das Relais ändert:
function roll_rel_na(mod,motor,relay, new)  -- Bei Änderung des Power Relais
-- On, Zeit starten und n/a setzen
   local t_auf = get('t_auf.rel.'..mod..'.'..motor)
   local t_ab = get('t_auf.rel.'..mod..'.'..motor)
   local position = get ('VAR.roll_position_rel.'..mod..'.'..motor)
   local position_alt = position
 
   if (new == 1) then
      richtung = get('LCN.relay.0.'..mod..'.'..(relay + 1))

      startzeit[mod .. '.' .. motor] = systime()
--      print(startzeit[mod][motor])
      set ('VAR.roll_position_rel.'..mod..'.'..motor,"n/a")
      set ('VAR.roll_start_rel.'..mod..'.'..motor,"n/a")
      set ('VAR.roll_position_rel.text.'..mod..'.'..motor,"n/a")
   elseif (new ==0) then
      local stopzeit = systime()
      if startzeit[mod .. '.' .. motor] then
         laufzeit = math.floor((stopzeit - startzeit[mod .. '.' .. motor])*1000) -- ms
         startzeit[mod .. '.' .. motor] = null
      else print('Fehler Startzeit')
      end
      -- Endlage?
      if richtung == 1 then -- ab
         if laufzeit > (t_ab + 2000)then
             set ('VAR.roll_position_rel.'..mod..'.'..motor,100)
             set ('VAR.roll_position_rel.text.'..mod..'.'..motor,"unten")
             --Richtungsrelais ausschalten
            value = stop[motor]
            command ('C.LCN.relays.0.'..mod..'='..value)
         else  -- Zwischenposition
--                      -- Off Zeit messen und Position berechnen.
         end
      else -- auf 
         if laufzeit > (t_auf + 2000)then
              set ('VAR.roll_position_rel.'..mod..'.'..motor,0)
              set ('VAR.roll_position_rel.text.'..mod..'.'..motor,"oben")
             --Richtungsrelais ausschalten
            value = stop[motor]
            command ('C.LCN.relays.0.'..mod..'='..value)
         else  -- Zwischenposition
--                -- Off Zeit messen und Position berechnen.
         end
      end   
   end
 
end
 
-- *****************************************************************
-- Jetzt kommt die eigentliche Steuerung
-- Rollläden an Relais
function roll_rel_pos(mod,motor,pos,force) -- motor 1-4, position 100 = geschlossen, 0 = offen, modul , Zwangssteuerung über Endlage
   local t_auf = get('t_auf.rel.'..mod..'.'..motor)
   local t_ab = get('t_ab.rel.'..mod..'.'..motor)
   local position = get ('VAR.roll_position_rel.'..mod..'.'..motor)
   local position_alt = position
   local b = type(position_alt)
   if (b ~= 'number' or force > 0) then
      position_alt = 'n/a'
   end
 
   if pos == 0 then  -- Bei Endlage immer bis zum Anschlag volle LAufzeit fahren
      position_alt = 100
      roll_rel_pos_absolut(mod,motor,pos)
      set ('VAR.roll_position_rel.'..mod..'.'..motor,pos)
   elseif pos == 100 then
      position_alt = 0
      roll_rel_pos_absolut(mod,motor,pos)
      set ('VAR.roll_position_rel.'..mod..'.'..motor,pos)
   elseif position_alt == "n/a" then
      roll_rel_pos_absolut(mod,motor,pos)
   else -- Zwischenposition direkt anfahren
      relpos = pos - position_alt
      if relpos >0 then
         delay_ab = ((t_ab/100)*(relpos))   
         roll_rel_run(mod,motor,'down',pos)
--          command('DELAY.'..delay_ab..'ms.C.LOGIC=roll_rel_run('..mod..','..motor..',"stop",..'pos')')   
          command('DELAY.'..delay_ab..'ms.C.LOGIC=roll_rel_run('..mod..','..motor..',"stop",'..pos..')')
      elseif relpos = 96 then -- unten
      roll_rel_run(mod,motor,'down',100)
      command('DELAY.'..delay_ab..'ms.C.LOGIC=roll_rel_run('..mod..','..motor..',"stop",100)')   
   elseif pos =40 then
      roll_rel_run(mod,motor,'down',100)
      command('DELAY.'..(t_ab+1000)..'ms.C.LOGIC=roll_rel_run('..mod..','..motor..',"up",'..pos..')')    -- unten
      command('DELAY.'..(t_ab+1000+delay_auf)..'ms.C.LOGIC=roll_rel_run('..mod..','..motor..',"stop",'..pos..')')    -- Position
   else -- über oberen Stop
      roll_rel_run(mod,motor,'up',0)
      command('DELAY.'..(t_auf+1000)..'ms.C.LOGIC=roll_rel_run('..mod..','..motor..',"down",'..pos..')')    -- unten
      command('DELAY.'..(t_auf+1000+delay_ab)..'ms.C.LOGIC=roll_rel_run('..mod..','..motor..',"stop",'..pos..')')    -- Position
   end
end


--************************************************************************
-- Das Schalten der Relais und Abspeichern der Werte
function roll_rel_run(mod,motor,_task,pos) --
   local position_text
   if _task == 'up' then
      value = up[motor]
   elseif _task == 'down' then
      value = down[motor]
   elseif _task == 'stop'  then -- stop
      value = stop[motor]
   end
 
   if value then
      command ('C.LCN.relays.0.'..mod..'='..value)
       if _task == 'stop' then
--          command('DELAY.2000ms.C.set('VAR.roll_position_rel.'..mod..'.'..motor,pos)') --Wert abspeichern
         set('VAR.roll_position_rel.'..mod..'.'..motor,pos) --Wert abspeichern
            if pos == 0 then
               position_text = 'oben'
                set ('VAR.roll_position_rel.text.'..mod..'.'..motor,"n/a")
         elseif pos == 100 then
            position_text = 'unten'
         else
            position_text = pos
         end
         set ('VAR.roll_position_rel.text.'..mod..'.'..motor,position_text)         
      else
--          set ('VAR.roll_position_rel.'..mod..'.'..motor,"n/a") --Wert abspeichern
       end
   end
end

-- *****************
-- * Rolladen Ende *
-- *****************


[img]1[/img]
Dateianhänge
524801IMG_20130724_171336.jpg
524801IMG_20130724_171336.jpg (10.01 KiB) 2738 mal betrachtet

Benutzeravatar

Themenersteller
Beleuchtfix
Administrator
Administrator
Beiträge: 5294
Registriert: Mi 10. Jan 2007, 18:49
Hat sich bedankt: 4 Mal
Danksagung erhalten: 16 Mal
Kontaktdaten:

#17 RE: Rollläden an Relais über Domiq positionieren

Beitragvon Beleuchtfix » Mi 24. Jul 2013, 18:46

Hallo Jörg,
Momentan sehe ich nicht, dass du irgendwo Richtungsrelais verwendest. Am Relais 1 sollte das Netzrelais hängen, der Ausgang geht dasn auf das Relais 2, das entweder die rauf oder die Runterrichtung (oder ist es ein R4M2H?).
Es müssen in jedem Fall die "normalen" LCN Befehle ohne Tricks gehen (rauf runter stop).
[code=cpp-qt]roll_rel_19_2_flag = use 'LCN.relay.0.19.3'
roll_rel_19_3_flag = use 'LCN.relay.0.19.5'
roll_rel_19_4_flag = use 'LCN.relay.0.19.7' [/code]
Ersetze die obigen Zeilen, dass sollte auch der Rest gehen.

Viel Erfolg
Florian
Mail mir mal deine Email Adresse, dann schicke ich dir morgen, wenn ich Zeit finde, mein Original-Script, da sind viele Print Befehle enthalten, die die Fehlersuche erleichtern.


koboldo
Fleißiges Mitglied
Fleißiges Mitglied
Beiträge: 324
Registriert: Do 16. Feb 2012, 15:50
Hat sich bedankt: 7 Mal

#18 RE: Rollläden an Relais über Domiq positionieren

Beitragvon koboldo » Mi 24. Jul 2013, 22:50

Hallo Florian,
es ist übrigens ein R4M2H....ist es dann richtig angeschlossen ?
Ist das vielleicht das Problem ? Ist dein Code für ein R8H ?

Benutzeravatar

Thomas
Alleswisser
Alleswisser
Beiträge: 5742
Registriert: Mo 21. Apr 2008, 20:03
Hat sich bedankt: 20 Mal
Danksagung erhalten: 13 Mal

#19 RE: Rollläden an Relais über Domiq positionieren

Beitragvon Thomas » Do 25. Jul 2013, 00:07

Hallo Jörg,

das R4M2H kann man auf dem Bild erkennen..
Obe es richtig angeschlossen ist, nicht...
Das kannst du aber locker per PRO selber prüfen, per HOCHFAHREN oder RUNTERFAHREN .
Wenn es da "andersrum" fährt, musst du die Drähte tauschen.

Gruss Thomas - alles geht noch nicht, aus der Ferne.....
lg Thomas


koboldo
Fleißiges Mitglied
Fleißiges Mitglied
Beiträge: 324
Registriert: Do 16. Feb 2012, 15:50
Hat sich bedankt: 7 Mal

#20 RE: Rollläden an Relais über Domiq positionieren

Beitragvon koboldo » Do 25. Jul 2013, 05:59

Hallo Thomas,
dann ist es richtig angeschlossen:lol:
Hoch- und runter ging schon die ganze Zeit....auch in der Pro, es hat mich nur dieses ganze Relais und Motor durcheinander gebracht....

Welche Motoren oder Relais sind denn dann bei mir belegt ?
Ist das jetzt Relais 1,2,3,4 oder 1,3,5,7 ?
In der Pro werden die Rolläden ja z.B. der erste mit dem Relais 1+2 gesteuert....
Und was soll die Motorbezeichnung ? Auch hier die Frage, welche Motoren wären es denn dann ?


Zurück zu „Domiq-Module - DOMIQ Sp. z o.o.“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 4 Gäste