Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 16

Thema: Wetterdaten aus iCal-Datei auslesen

  1. #1
    Registriert seit
    14.05.2007
    Ort
    M nähe Sbg in AUT
    Beiträge
    159
    Danke
    35
    Erhielt 1 Danke für 1 Beitrag

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo zusammen... wieder einmal.


    Da die FH gerade pausiert, das Wetter zu wünschen lässt und ich neben dem Hören alter Scorpionsscheiben noch etwas Zeit zum Herumprobieren aufbringen kann, erlaube ich mir die Community mit meinen Fragen zu löchern.

    Geplant wäre:
    aus einer von einem Internetanbieter bereitgestellten iCal (*.ics*)-Datei die aktuellen Wetterdaten aus dem Internet in meine 750-841 von Wago zu saugen. Dort suche ich nach entsprechenden Stringfolgen und kann mir so die Wetterdaten der nächsten 5 Tage in ein Array kopieren.

    woran's nun im Ansatz bereits scheitert:
    versuche ich die Datei am Server per SysFileOpen lesend (!) zu öffnen, erhalte ich immer eine 0 als Rückgabewert, also Fehler.
    Es besteht jedoch voller Schreib- und Lesezugriff.
    Meine Frage daher, kann ich das so einfach wie beschrieben überhaupt umsetzen? Und wäre zum bloßen Auslesen der Daten SysFileStreamFOpen nicht einfacher anzuwenden?

    Das Helpfile von Codesys ist hier ja leider etwas dürftig.
    Gibt's vielleicht irgendwo Beispiele in welche man sich einlesen könnte?

    mfg,
    Andy
    >> Gefährlich wird es für Andere erst dann, wenn die Dummen fleißig werden! <<
    Zitieren Zitieren Wetterdaten aus iCal-Datei auslesen  

  2. #2
    Avatar von Andy082
    Andy082 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    14.05.2007
    Ort
    M nähe Sbg in AUT
    Beiträge
    159
    Danke
    35
    Erhielt 1 Danke für 1 Beitrag

    Standard

    Abend.

    Bin doch auf der Herstellerseite von Codesys sogleich mal fündig geworden und muss zugeben, dass dieses Programm ja fast wie maßgeschneidert ist für mich. Nur den Speicher werde ich dann noch dynamisch allokieren, damit's tatsächlich nach was aussieht.

    Mein Problem, dass sich die Datei per SysFileOpen scheinbar nicht öffnen lässt bleibt aber unverändert. Zumindest stehen in meinem Textarray keinerlei Daten, egal was ich ein lese und von wo.

    Code:
    FilePath:= '38.102.136.104/auto/ical/global/stations/11152.ics';
    
    IF bRead THEN
     tStartTime:= TIME();
     hFile:= SysFileOpen(FileName:= FilePath, Mode:= 'r'); (*open file*)
     IF hFile = 16#FFFFFFFF THEN (*error - invalid handle*)
      bError := TRUE;
      bRead := FALSE;
      RETURN;
     END_IF
     (*initialisation*)
     pText:= ADR(aTexts);
     dwTextPos:= 0;
     (*read data block by block*)
     WHILE TRUE DO
      iBytesRead:= DWORD_TO_INT(SysFileRead(File:= hFile, Buffer:= ADR(aBuffer), Size:= 500)); (*read data into buffer*)
      IF iBytesRead = 0 THEN
       EXIT;
      END_IF
      (*copy data to string array*)
      FOR iBytePos:= 0 TO iBytesRead - 1 DO
       IF aBuffer[iBytePos] <> 16#0A THEN
        SysMemCpy(dwDest:= pText + dwTextPos, dwSrc:= ADR(aBuffer[iBytePos]), dwCount:= 1); (*copy single character*)
        dwTextPos:= dwTextPos + 1;
       ELSE
        SysMemSet(dwDest:= pText + dwTextPos, bCharacter:= 0, dwCount:= 1); (*set string end*)
        dwTextPos:= 0;
        pText:= pText + SIZEOF(aTexts[0]); (*next string*)
       END_IF
      END_FOR
     END_WHILE
     (*finished*)
     SysFileClose(File:= hFile); (*close file*)
     bRead:= FALSE; (*reading finished*)
     tUsedTime:= TIME() - tStartTime;
    END_IF
    Hätte eventuell jemand noch einen Ansatzpunkt für mich?
    Wäre über jede Hilfe dankbar!


    mfg,
    Andy
    >> Gefährlich wird es für Andere erst dann, wenn die Dummen fleißig werden! <<

  3. #3
    Registriert seit
    11.07.2004
    Beiträge
    1.597
    Danke
    10
    Erhielt 213 Danke für 183 Beiträge

    Standard

    sysfileopen ist da der falsche Ansatz. Für's Laden aus'm Netz benötigst Du das http oder ftp Protokoll. Sysfileopen ist für Zugriffe auf das Dateisystem. Falls ftp geht gibt's eine Lib von Wago, ansonsten mal bei Oscat schauen.

  4. Folgender Benutzer sagt Danke zu Oberchefe für den nützlichen Beitrag:

    Andy082 (24.07.2011)

  5. #4
    Avatar von Andy082
    Andy082 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    14.05.2007
    Ort
    M nähe Sbg in AUT
    Beiträge
    159
    Danke
    35
    Erhielt 1 Danke für 1 Beitrag

    Standard

    Besten Dank für den Tip.

    Hatte zwar bereits in der Oscat herumgeblättert (klein ist die ja nimma... ) und dabei ganz vergessen, dass diese je bereits in einzelne "Teile" aufgesplittet wurde.

    Im Network-Part wurde ich dann fündig....
    Neben einer Funktion zum Datenempfang mittels http hab ich auch gleich noch eine Funktion entdeckt, welche bereits das macht, was ich gerne programmieren würde.
    Hier wird der RSS-Feed von Yahoo-Weather angezapft und die Daten in einem fertigen Array abgelegt.
    Ist für mich ja nahezu perfekt.....
    >> Gefährlich wird es für Andere erst dann, wenn die Dummen fleißig werden! <<

  6. #5
    Avatar von Andy082
    Andy082 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    14.05.2007
    Ort
    M nähe Sbg in AUT
    Beiträge
    159
    Danke
    35
    Erhielt 1 Danke für 1 Beitrag

    Standard

    Abend.

    Ich muss den Threat nochmals zum Leben erwecken.

    Hat eventuell schon jemand die Funktion Yahoo_Weather inkl. allen weiteren benötigten Funktionen aus der OSCAT_Network-Lib extrahiert?

    Ich hab's nun mehrfach versucht und seh da irgendwie kein Ende.

    Es wird auf viele Funktionsblöcke der OSCAT_basic zugegriffen.
    Kopiere ich diese in eine eigene "abgespeckte" Lib dann braucht's zum ausführen dieser Funktion noch weitere Funktionen und dann noch welche, und noch welche, und noch ein paar und am Ende blick ich nicht mehr ganz durch und hab eine Kombination aus den beiden Libs im beinahe vollen Umfang erstellt.

    Vielleicht könnte mir hier jemand kurz unter die Arme greifen.


    lg,
    Andy
    >> Gefährlich wird es für Andere erst dann, wenn die Dummen fleißig werden! <<

  7. #6
    Registriert seit
    17.07.2009
    Ort
    Am Rande der Ostalb
    Beiträge
    5.493
    Danke
    1.142
    Erhielt 1.243 Danke für 974 Beiträge

    Standard

    Du kannst bei den Optionen fürs Übersetzen angeben, dass nur benutze Bausteine übersetzt werden. Damit landen nur die benötigten Baustein aus den OSCAT-Libs in deinem Projekt.

    Gruß
    Dieter

  8. #7
    Avatar von Andy082
    Andy082 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    14.05.2007
    Ort
    M nähe Sbg in AUT
    Beiträge
    159
    Danke
    35
    Erhielt 1 Danke für 1 Beitrag

    Standard

    Danke für den Tip, aber ich habe dies bereits versucht und der Button ist und bleibt ausgegraut....

    Keine Chance bestimmte Libs, Funktionen, etc auszuschliessen.


    Ich verwende den von Wago mitgelieferten CodesysCompiler 2.3.9.7.

    lg
    >> Gefährlich wird es für Andere erst dann, wenn die Dummen fleißig werden! <<

  9. #8
    Registriert seit
    10.05.2005
    Beiträge
    1.996
    Danke
    220
    Erhielt 233 Danke für 204 Beiträge

    Standard

    Hi


    Vorab:
    Aktuelle Firmware installieren --> FW17
    (Auf aktuelle Targets achten Target "841 FW 12..." )

    Aktuellen Compiler installieren --> 2.3.9.30

    Oder die Wago 2.3.9.25 mit aktuellen Wago-Targets


    Gruß Karl
    Karl

  10. Folgender Benutzer sagt Danke zu gravieren für den nützlichen Beitrag:

    Andy082 (01.08.2011)

  11. #9
    Avatar von Andy082
    Andy082 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    14.05.2007
    Ort
    M nähe Sbg in AUT
    Beiträge
    159
    Danke
    35
    Erhielt 1 Danke für 1 Beitrag

    Standard

    Wie komm ich zu der aktuellen Software?

    Bekomm ich die direkt bei 3S?

    Ich könnte ja meinen Wago-Vertreter mal an den Beinen greifen, schütteln und kucken was rausfällt, denn auf die CD mit den aktuellen Targets warte ich nach seinem letzten Besuch vor einem Jahr bis heute.

    Aber zumindest hab ich die Wago/Beckhoff-Geschichte mit dem "wer-hats-erfunden-Effekt" erzählt bekommen...

    FW wird's wohl bei Wago geben, oder?
    Wenn ich die Beschriftung meines Controllers richtig interpretiere: FW-Stand 02 (lt. WebOberfläche "Firmware revision 02.07.01 (00)"), was wohl die WebVisu im "DiaDesign" erklärt.

    lg,
    Andy
    Geändert von Andy082 (31.07.2011 um 23:27 Uhr)
    >> Gefährlich wird es für Andere erst dann, wenn die Dummen fleißig werden! <<

  12. #10
    Registriert seit
    10.05.2005
    Beiträge
    1.996
    Danke
    220
    Erhielt 233 Danke für 204 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hi

    Wie komm ich zu der aktuellen Software?
    Bekomm ich die direkt bei 3S?
    Ja, kostenlos hier registrieren
    http://www.3s-software.com/index.shtml?de_contact



    Ich könnte ja meinen Wago-Vertreter mal an den Beinen greifen, schütteln und kucken was rausfällt, denn auf die CD mit den aktuellen Targets warte ich nach seinem letzten Besuch vor einem Jahr bis heute.
    Ja, das geht auch.

    Aber zumindest hab ich die Wago/Beckhoff-Geschichte mit dem "wer->hats-erfunden-Effekt" erzählt bekommen...
    Kenn ich nicht.
    Er zähl mal.

    FW wird's wohl bei Wago geben, oder?
    Ja, einfach mal eine nette E-Mail an den Wago-Service senden.
    Bitte die Daten/Aufschrift deine Controllers mit senden.
    (Ob der Hardware-Stand ausreichend ist zum hochrüsten)


    Wenn ich die Beschriftung meines Controllers richtig interpretiere: FW-Stand 02 (lt. WebOberfläche "Firmware revision 02.07.01 (00)"), was wohl die WebVisu im "DiaDesign" erklärt.
    Kann sein.


    Tip:
    Den Wago-Service nach der aktuellen Software und Firmware fragen.
    (Ich denke, dass du nachweisen kannst, die Software gekauft zu haben)
    (Ich denke, einfach "versichern/überzeugen" kein Problem)


    Somit hast du die Version 2.3.9.35 mit der FW 17

    Das geht meist innerhalb eines Tages.

    Gruß Karl
    Karl

Ähnliche Themen

  1. CAD- step datei auslesen - Schneider
    Von jones1978 im Forum CODESYS und IEC61131
    Antworten: 1
    Letzter Beitrag: 21.07.2011, 21:37
  2. S7 DB in datei von mmc 103 auslesen
    Von thomasK im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 15.02.2011, 20:28
  3. CSV Datei von MP377 USB Stick auslesen
    Von DJMetro im Forum HMI
    Antworten: 11
    Letzter Beitrag: 23.08.2010, 16:51
  4. Antworten: 4
    Letzter Beitrag: 12.10.2009, 11:27
  5. Datei aus TP270 auslesen
    Von Anonymous im Forum HMI
    Antworten: 6
    Letzter Beitrag: 31.01.2006, 12:15

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •