pixel

Domoticz Geo-Fence

2
(1)

Graag wilde ik dat mijn huis slim was, het is dan leuk dat we alles vanuit onze browser kunnen bedienen. En zelf misschien al vanaf onze telefoon of tablet. Maar je moet nog steeds handmatig alles zelf schakelen. Ik wilde daarom net dat stapje verder gaan en uitzoeken hoe ik dit proces kon automatiseren. Dit wil ik dan ook met jullie delen.

Ik ga dan ook nu proberen jullie wat tips te geven en jullie mijn oplossing te geven voor het slimme huis.

Om te beginnen heb ik een Lux sensor in mijn woonkamer liggen, hierdoor was het al de bedoeling dat de lampen tussen een bepaald tijdstip aangingen als de sterkte ervan onder 1 bepaalde waarde kwam, dit heb ik dus verder opgepakt en de geolocatie er aan toegevoegd.

Aller eerst benadruk ik dat tijdens van schrijven deze tutorial ik een Iphone heb. Ik heb daarop de app Pilot geinstalleerd. Deze app had mijn voorkeur omdat de betaalde versie goede reviews bood over Locatiedeling.
Na het installeren van de app heb ik dan ook mijn locatie gedeeld met Domoticz. Dit was even zoeken want ik moest Domoticz open zetten via de router (alles staat goed beschreven in de app)

Domoticz Geo-Fence 1

Na het installeren van de app heb ik in Domoticz een dummy aangemaakt met de telefoonnaam genaamd ‘Lars foon’ met idx ‘150’ en ‘Dees foon’ met idx ‘151’en deze worden nu getriggerd als we thuis zijn, en gaan uit als we dus weg zijn door de ingestelde zone op de iphone.

Via onderstaand script heb ik nu de lampen geschakeld. Deze staan bij mij in een groep genaamd ‘woonkamer’

return 
{
    on = 
    {   
        timer =   
        { 
            "every 3 minutes on mon, tue, wed, thu, fri between 06:50 and 21:00", 
        }, 
    },
    
    logging =
    {
        level = domoticz.LOG_DEBUG,
        marker = 'lux',
    },
    
    execute = function(dz)
        local lowerLux          = 11 -- Onder welke niveau moet het script starten.
        local upperLux          = 45 -- Boven de waarde gaan de lampen automatisch uit. 
        local currentLux        = dz.devices(46).lux       --lux sensor
        local woonkamerlampen   = dz.groups("Woonkamer")   --Dummy switch day/night.
        local phoneLarsOn       = dz.devices(150).state == 'On'
        local phoneDesireeOn    = dz.devices(151).state == 'On'
        
        if ( currentLux < lowerLux ) and ( phoneLarsOn or phoneDesireeOn ) then
            woonkamerlampen.switchOn().checkFirst()
        elseif currentLux > upperLux then
            woonkamerlampen.switchOff().checkFirst()
        end
    end
}
Domoticz Geo-Fence 2

Nu kun je dit er ook een extra script bij maken die de groepen weer triggerd als je weg bent, en dan de lampen automatisch uit maakt. Deze hoeft dan ook niet naar de lux te kijken, want je bent er niet. Je moet dan eerst een dummy aanmaken met de naam ‘is er iemand thuis?’ want je wilt natuurlijk niet dat als er 1 persoon het huis verlaat terwijl de ander wel thuis is de lampen uit gaan.. dit ziet er dan als volgt uit.

return 
{
    on = 
    {   
        timer =   
        { 
            "every 3 minutes on mon, tue, wed, thu, fri between 06:50 and 21:00", 
        }, 
    },
    
    logging =
    {
        level = domoticz.LOG_DEBUG,
        marker = 'geo',
    },
    
    execute = function(dz)
        local woonkamerlampen   = dz.groups("Woonkamer")   --Dummy switch day/night.
        local dummyiemandthuis  = dz.devices(158).state == 'Off' --Dummy Device Is er iemand thuis?
        
        if dummyiemandthuis then
            woonkamerlampen.switchOff().checkFirst()
        end
    end
}



Spelfouten, taalfouten of inhoudelijke fouten ontdekt?
Stuur dan een mailtje naar de auteur van dit artikel!

Tevreden met deze website?

Wat vond je van deze post?

Klik op een ster om deze te beoordelen!

Gemiddelde score 2 / 5. Aantal stemmen: 1

Tot nu toe geen stemmen! Wees de eerste die dit bericht beoordeelt.

Geef een reactie...

Deze site gebruikt Akismet om spam te verminderen. Bekijk hoe je reactie-gegevens worden verwerkt.

4 gedachten over “Domoticz Geo-Fence”

  1. Shoebeloe9000

    Heb een vraag hierover:

    “Na het installeren van de app heb ik dan ook mijn locatie gedeeld met Domoticz. Dit was even zoeken want ik moest Domoticz open zetten via de router (alles staat goed beschreven in de app)”

    In de Pilot app heb ik de location services aangezet en bij Switch heb ik de IDX van de dummy erin geplaatst. Klopt dit?

    Verder: je heeft aan dat je Domoticz hebt opengezet via de router. Je bedoelt: je hebt een port forwarding vanuit buiten gedaan naar de Domoticz server?

    1. Inderdaad. In de pilot app koppel je de dummy switch. Die kies je in de app.

      En klopt ik heb port forwarding gedaan in de router.

      Excuus voor de zeer late reactie.

  2. Wijnand Mes

    Beste ” ” Bruin,
    Op je site komt ik een recenter Script “Iemand thuis Domoticz tegen”
    Wat is de reden dat je een nieuwe editie hebt gemaakt?
    Groet Wijnand

Winkelwagen
Scroll naar boven