Page 3 of 5

Re: Neerslag monitor script

Posted: Sun Feb 05, 2012 10:54 am
by AshaiRey
In de config folder van HomeSeer staat eenbestand genaamd US.TXT.
Bijna onderaan dit bestand staan de (verkeerde) coordinaten van Amsterdam gegeven.
Je kan het daar permanent aanpassen.
TIP: Je kan natuurlijk hier ook je eigen locatie erbij zetten. :-)

Re: Neerslag monitor script

Posted: Thu Aug 09, 2012 11:00 pm
by dreambox
Hoi Alexander

Ik ben je script aan het proberen maar krijg de volgende fout:"

Code: Select all

Script compile error: Het argument is niet opgegeven voor de parameter data2 van Public Function Transmit(code As String, cmd As String, dimval As Integer, data2 As Integer, wait As Boolean, [raw As Boolean = False], [update As Boolean = True], [out_interface As Integer = 0]) As Integer.on line 133
als ik bij alle hs.transmit de waardes invul loopt het script wel door maar krijg ik "ERROR: De externe naam kan niet worden opgehaald: 'gps.buienradar.nl'"

Ik gebruik V1.02

dit is het event: Neerslag.vb("Main","|V20|no|yes")

Alex

Re: Neerslag monitor script

Posted: Tue Aug 14, 2012 6:56 pm
by keeslamper
Ha Alexander,

Ik heb het script draaien, werkt perfect! Alleen ben ik een complete nul op programmeergebied.

Kun jij mij uitleggen hoe ik nu kan zorgen in HSTouch dat alleen de waardes/tijden weergegeven worden als deze groter zijn dan 0?

Of iemand anders uiteraard!

Groet,
Kees

Re: Neerslag monitor script

Posted: Sun Aug 19, 2012 12:32 pm
by Akatar
weer.gif
weer.gif (37.15 KiB) Viewed 18511 times

hmm vandaag maar binnen blijven, wordt nogal wat regen voorspelt :(

Re: Neerslag monitor script

Posted: Sun Aug 19, 2012 12:57 pm
by keeslamper
Ik zou binnen blijven!

Weet jij hoe ik in hstouch weergeef als er regen komt ?

Groet,
Kees

Re: Neerslag monitor script

Posted: Sun Aug 19, 2012 4:46 pm
by Akatar
ik gebruik geen hstouch, weet niet eens waarom er regen werd voorspelt. nu weer droog gelukkig :)

Re: Neerslag monitor script

Posted: Sun Aug 19, 2012 6:02 pm
by Alexander
dreambox wrote:dit is het event: Neerslag.vb("Main","|V20|no|yes")
Het script split de parameter op ; Dus het zou dan Neerslag.vb("Main",";V20;no;yes") moeten zijn.
keeslamper wrote:Kun jij mij uitleggen hoe ik nu kan zorgen in HSTouch dat alleen de waardes/tijden weergegeven worden als deze groter zijn dan 0?
Ik heb helaas geen HS momenteel draaien en daarmee ook geen HSTouch. Script kan natuurlijk wel zo gedaan worden dat deze alleen het device update wanneer er regen voorspelt wordt.

Re: Neerslag monitor script

Posted: Tue Aug 21, 2012 6:21 am
by dreambox
Alexander wrote:
dreambox wrote:dit is het event: Neerslag.vb("Main","|V20|no|yes")
Alexander wrote:Het script split de parameter op ; Dus het zou dan Neerslag.vb("Main",";V20;no;yes") moeten zijn.
Ik dacht dat hij het niet wilde met ; en daarom heb ik de split aangepast. Ik zal het vandaag nog eens proberen en hou je op de hoogte.
Maar het probleem ontstaat bij hs.transmit , en de parameter worden goed gesplit, ik heb de source aangepast en met tenscript getest.

Alex

Re: Neerslag monitor script

Posted: Tue Aug 21, 2012 3:05 pm
by Alexander
log eens alle variabelen die voor hs.transmit als parameters worden meegegeven. Dan moet er een fout in een waarde zitten hiervan.

Re: Neerslag monitor script

Posted: Tue Sep 11, 2012 12:16 pm
by keeslamper
Alexander,

Is het mogelijk dat ik 1 knop in mijn scherm weergeef die afhankelijk van alle statussen van de Neerslag Monitors rood/groen is? Dus dat ik in 1 oogopslag kan zien of ik de komende twee uur droog naar buiten kan?

Ik zat te denken om allemaal virtual devices te maken en dan 1 script die alle waardes checkt. Maar volgens mij is dat heel erg omslachtig! Heb jij daar een idee over?

Groet,
Kees

Re: Neerslag monitor script

Posted: Mon Nov 05, 2012 11:14 pm
by florisi
Alexander,

ik krijg dezelfde fout als Alex:

Script compile error: Argument not specified for parameter 'data2' of 'Public Function Transmit(code As String, cmd As String, dimval As Integer, data2 As Integer, wait As Boolean, [raw As Boolean = False], [update As Boolean = True], [out_interface As Integer = 0]) As Integer'.on line 133

Ik draai ook versie 1.02.
Had jij daar nog een verklaring voor?

Run script: neerslagmonitor.vb("Main",";V1;no;yes")
En zo gebruik ik hem.

Groet, Floris

Re: Neerslag monitor script

Posted: Thu Nov 29, 2012 11:38 pm
by florisi
Ik had een vraag aan Digit:

het binnenhalen van de data werkt,.
Ik wil graag weten hoe je de grafiek maakt.
Kan je hier wat over vertellen?

Groet, Floris

Re: Neerslag monitor script

Posted: Fri Nov 30, 2012 12:37 am
by Digit
Ja hoor.
Dat grafiekje heb ik ooit gemaakt als onderdeel van mijn VB.Net touchscreen applicatie die in de woonkamer draait en wordt veelvuldig gebruikt.
BBQ-tje? Regenpak aan naar school? Wordt het nog droog voor de winkels sluiten? enz...

De grafiek zelf wordt gemaakt met de Microsoft Chart Controls for Microsoft .NET en de code waarmee ik die control voed is als volgt:

Code: Select all

  Private Sub GetNeerslag()

    Chart1.Series("Series1").Points.Clear()
    Dim NeerslagSource As String
    Try

      Dim NeerslagURL As String = "http://gps.buienradar.nl/getrr.php?lat=" & GPSLat.ToString.Replace(",", ".") & "&lon=" & GPSLong.ToString.Replace(",", ".")      
      NeerslagSource = GetURL(NeerslagURL)

    Catch ex As Exception

      'better luck next time
      Exit Sub

    End Try

    Dim NeerslagLines() As String
    NeerslagLines = NeerslagSource.Split(Chr(13) & Chr(10))
    Dim NeerslagLine As String
    Dim ValueTime() As String
    Dim XValues(NeerslagLines.Count) As String
    Dim YValues(NeerslagLines.Count) As Double
    Dim YVal, mmpu As Double   
    Try
      For i = 0 To NeerslagLines.Count - 1
        NeerslagLine = NeerslagLines(i)
        If NeerslagLine.Trim <> "" Then
          ValueTime = NeerslagLine.Split(Chr(124))
          YVal = CDbl(ValueTime(0))
          XValues(i) = ValueTime(1)
          mmpu = Math.Round(Math.Pow(10, (YVal - 109) / 32), 1)
          YValues(i) = mmpu
        End If
      Next

    Catch ex As Exception

      'handle it

    End Try
    Chart1.Series("Series1").Points.DataBindXY(XValues, YValues)
  End Sub
Deze code roep ik aan zodra de control in beeld verschijnt en daarna (zolang visible) middels een timer om de 5 minuten.

Re: Neerslag monitor script

Posted: Fri Nov 30, 2012 9:08 pm
by florisi
Dank je wel.
Kan je dit in een device zetten?
Dan kan je hem gewoon gebruiken namelijk.

Re: Neerslag monitor script

Posted: Sat Dec 01, 2012 1:08 am
by Digit
Geen idee, daarvoor doe ik te weinig met Homeseer.
Misschien dat anderen je verder kunnen helpen ?