SwitchKing + EventGhost + Rasberry + OneWire

Andra typer av bidrag | Other contributions
Post Reply
krambriw
4 stars
4 stars
Posts: 336
Joined: Thu 19 Jul 2012, 19:41

Re: SwitchKing + EventGhost + Rasberry + OneWire

Post by krambriw » Mon 24 Jun 2013, 10:32

Korrekt, det är i ow_cron.py du kan lägga till de sensorer som du önskar.

För varje sensorvärde måste en ny rad enligt följande exempel läggas in som pekar ut det värde du vill ha

Code: Select all

file_name_temp=os.path.join("/","mnt","1wire","28.AC2A95040000","temperature")
file_name_volt_a=os.path.join("/","mnt","1wire","20.5FDC0C000000","volt.A")
file_name_volt_b=os.path.join("/","mnt","1wire","20.5FDC0C000000","volt.B")


Du måste även lägga in ett nytt liknande avsnitt enligt nedan

Code: Select all

for i in range(5):
    try:
        if i > 0:
            time.sleep(1.0) 
        file_object_2=open(file_name_volt_a,'r')  
        line_2=file_object_2.read()
        payload.append(float(str(line_2).strip()))
        file_object_2.close()
        del file_object_2
        break
    except IOError:
        if (i == 4):
            payload.append('IOError')
            time.sleep(1.0) 
            break
Alla dina mätvärden skickas sedan ut i ett enda paket på nätverket och i EventGhost landar då ett event som kan se ut så här (3 stycken mätvärden):

Code: Select all

ONE_WIRE.Measurements:  '[25.125, 0.0584384, 0.0578134]'
Dina mätvärden finns i den så kallade payloaden och måste extraheras därifrån och sedan skickas vidare till SK. Det gör man enkelt med ett pythonscript.

Det här exemplet kan du lägga in i ett makro tillsammans med eventet 'ONE_WIRE.Measurements:' (du måste bara se till att namnen på datakällorna stämmer med de du har definierat i SK)

Code: Select all


def eventHandler(base, pload):
    try:
        if str(base).find('Measurements:') > -1 :
            m = pload
            m = m.strip('[]')
            m = m.replace(',', '')
            m = m.split()
            print m

            eg.plugins.SwitchkingTellStick.DSSet(u'', u'Lightsensor_TSL250R', str(m[2], 0)
            eg.plugins.SwitchkingTellStick.DSSet(u'', u'Lightsensor_TSL252R', str(m[1], 0)
            eg.plugins.SwitchkingTellStick.DSSet(u'', u'Temperature_indoor', str(float(m[0])), 0)

    except:
        pass

eg.event.suffix_copy = eg.event.suffix
eg.event.payload_copy = eg.event.payload

eventHandler(eg.event.suffix_copy, eg.event.payload_copy)

Beroende på hur du vill behandla ditt data, lägga ihop värden eller medelvärdesberäkna etc så är det något du bör göra i ovan script innan du skickar det bearbetade datat vidare till SK.

Jag har mer avancerade script och beräkningar vi kan återkomma till när du fått upp grunderna så att dom kör.

Som exempel från en av mina ljusmätare, se bilden nedan.

mvh
Image3.jpg
You do not have the required permissions to view the files attached to this post.

gus
3 stars
3 stars
Posts: 134
Joined: Fri 31 Aug 2012, 20:14

Re: Sv: SwitchKing + EventGhost + Rasberry + OneWire

Post by gus » Mon 24 Jun 2013, 11:33

Har satt upp en Linux Dist i Virtual Box nu, installerat OWFS och lyckats hämta data!

Detta vill jag kunna göra med systemet:

Hämta data från tempgivare och a/d med typ 5 min mellanrum (redan fungerande enligt dina script)


Skicka event på ett antal DS2406 när dess ingångar ändras. Detta skall helst pollas varje sekund. Men status på ingången skall skickas var 5.e minut

Sätta utgångar på DS2406

Mäta fukt mha DS2438


Vad tror du, låter detta orimligt att få till??



Skickat från min GT-I9100 via Tapatalk 2

krambriw
4 stars
4 stars
Posts: 336
Joined: Thu 19 Jul 2012, 19:41

Re: SwitchKing + EventGhost + Rasberry + OneWire

Post by krambriw » Mon 24 Jun 2013, 14:02

Skicka event på ett antal DS2406 när dess ingångar ändras. Detta skall helst pollas varje sekund. Men status på ingången skall skickas var 5.e minut
Statusuppdateringar var 5:e minut inga problem om du bara kan nå ingångarna i OWFS. Pollning varje sekund, vet inte hur ofta OWFS checkar och om det är inställbart någonstans...samtidigt, OWFS skriver resultatet till fil så det verkar lite svettigt att få till (en callback lösning vore att föredra)
Sätta utgångar på DS2406

Mäta fukt mha DS2438
Borde gå men jag vet inte, har inte dom prylarna

mvh

krambriw
4 stars
4 stars
Posts: 336
Joined: Thu 19 Jul 2012, 19:41

Re: SwitchKing + EventGhost + Rasberry + OneWire

Post by krambriw » Mon 24 Jun 2013, 14:20

Image till SD kort borttagen


mvh
Last edited by krambriw on Wed 09 Apr 2014, 13:49, edited 1 time in total.

gus
3 stars
3 stars
Posts: 134
Joined: Fri 31 Aug 2012, 20:14

Re: SwitchKing + EventGhost + Rasberry + OneWire

Post by gus » Mon 24 Jun 2013, 15:13

krambriw wrote:
Skicka event på ett antal DS2406 när dess ingångar ändras. Detta skall helst pollas varje sekund. Men status på ingången skall skickas var 5.e minut
Statusuppdateringar var 5:e minut inga problem om du bara kan nå ingångarna i OWFS. Pollning varje sekund, vet inte hur ofta OWFS checkar och om det är inställbart någonstans...samtidigt, OWFS skriver resultatet till fil så det verkar lite svettigt att få till (en callback lösning vore att föredra)
Sätta utgångar på DS2406

Mäta fukt mha DS2438
Borde gå men jag vet inte, har inte dom prylarna

mvh

Vad jag förstår så om man kollar i katalogen uncached så går OWFSut och läser kretsen. Nä, 1 sek är nog lite svettigt, jag kör på 2 sek idag med 1Wire pluginnet och det funkar bra.


Vad tror du om en bakåtvänd logik då, att låta EG skicka event till pajen? Kanske är bökigt att få till?

krambriw
4 stars
4 stars
Posts: 336
Joined: Thu 19 Jul 2012, 19:41

Re: SwitchKing + EventGhost + Rasberry + OneWire

Post by krambriw » Mon 24 Jun 2013, 17:31

Vad tror du om en bakåtvänd logik då, att låta EG skicka event till pajen? Kanske är bökigt att få till?
Nja, det borde ju funka på något sett...

1) Att få EG att skicka ut är jag kompetent att klara av (lite beroende på val av metod) tex att EG skulle kunna broadkasta ut kommando

2) I Pajen (LOL) behövs någon (python) kodsnutt som lyssnar och sedan dumpar eventen vidare till OWFS på något sätt (här är jag ute på djupt vatten...)

mvh

gus
3 stars
3 stars
Posts: 134
Joined: Fri 31 Aug 2012, 20:14

Re: Sv: SwitchKing + EventGhost + Rasberry + OneWire

Post by gus » Mon 24 Jun 2013, 19:51

Onekligen spännande detta :-)

Skickat från min GT-I9100 via Tapatalk 2

krambriw
4 stars
4 stars
Posts: 336
Joined: Thu 19 Jul 2012, 19:41

Re: SwitchKing + EventGhost + Rasberry + OneWire

Post by krambriw » Tue 25 Jun 2013, 07:33

Kollat lite...det finns ju flera vägar att gå men egentligen borde man nog göra en integration direkt med owserver (som ändå kör på Pajen). Har hittat lite python exempel (ownet) så man borde faktiskt kunna skriva en plugin till EG *ganska enkelt* som stöder kommunikation åt båda håll (read/write). Andra fördelar är uppenbara, man skulle kunna lista vilka enheter som finns på 1-wire nätet, man behöver inte pilla med filer och script i Pajen etc etc

Får se när tiden räcker till...


mvh

gus
3 stars
3 stars
Posts: 134
Joined: Fri 31 Aug 2012, 20:14

Re: Sv: SwitchKing + EventGhost + Rasberry + OneWire

Post by gus » Tue 25 Jun 2013, 13:09

Känns ju som rätt väg att gå! Ska läsa in mig lite på Owserver!

Skickat från min GT-I9100 via Tapatalk 2

gus
3 stars
3 stars
Posts: 134
Joined: Fri 31 Aug 2012, 20:14

Re: Sv: SwitchKing + EventGhost + Rasberry + OneWire

Post by gus » Tue 25 Jun 2013, 14:21

Känns ju som rätt väg att gå! Ska läsa in mig lite på Owserver!

Skickat från min GT-I9100 via Tapatalk 2

Post Reply

Who is online

Users browsing this forum: No registered users and 9 guests