ich habe noch ein Problem mit den Wetterdaten:
Für die Sichtweite lese ich auf http://weather.yahoo.com… für meine Location derzeit “Unlimited”.
Als Daten werden per RSS übertragen “1607,69 km”.
Na ja. Unbegrenz bzw. 1600 km das ist ja wohl Quatsch.
Entweder “unbekannt” oder vielleicht “sehr weit”. Wobei bei der aktuellen Wetterlage (Regen, grauer Himmel) es wohl besser “unwichtig” heissen müsste…
Wie sind Eure Erfahrungen zur Sichtweite?
Vielleicht sollte man hier noch was programmieren…
Grüße Martin
leider müssen wir uns mit den daten begnügen, die wir über yahoo (indirekt von weather.com) beziehen
sollte jemand konkrete ideen haben, wie wir die daten besser aufbereiten können…bitte her damit
noch ein kleiner tip !
wetter-datenstruktur
forcast_today_code
cur_conditions_code
hier wird die wetterlage als zahl 0-47 dargestellt
so mancher fragt sich was soll ich damit machen
ich habe zu diesen codes die passenden Wetter-Grafiken (sonne, nebel usw…)
wer interesse hat an den grafiken für eine visualisierung, soll mir bitte eine private nachricht schicken
man müsste mal wissen was mit wirklich mit Unlimited gemeint ist. Dann könnte man vielleicht sagen IF Visibility > 500km THEN STRING unbekannt oder “nicht verfügbar”…
Das mit den Grafiken ist so eine Sache… meine waren für die Steuerung zu viel Volumen. Da habe ich einfach ein paar rausgenommen. Nun sieht es wie folgt aus:
FUNCTION_BLOCK wcc_de (* Weather Condition Code als Text und Icons*) VAR_INPUT CCode : INT; END_VAR VAR_OUTPUT text_out : STRING(20); icon:STRING(6); END_VAR
IF CCode = 0 THEN text_out := 'Tornado'; ELSIF CCode = 1 THEN text_out := 'Tropensturm'; icon:='5.JPG'; ELSIF CCode = 2 THEN text_out := 'Hurrican'; icon:='5.JPG'; ELSIF CCode = 3 THEN text_out := 'schwere Gewitter'; icon:='5.JPG'; ELSIF CCode = 4 THEN text_out := 'Gewitter'; icon:='5.JPG'; ELSIF CCode = 5 THEN text_out := 'Schneeregen'; icon:='5.JPG'; ELSIF CCode = 6 THEN text_out := 'Graupelschauer'; icon:='6.JPG'; ELSIF CCode = 7 THEN text_out := 'Schnee-Graupel'; icon:='7.JPG'; ELSIF CCode = 8 THEN text_out := 'gefrierender Nebel'; icon:='8.JPG'; ELSIF CCode = 9 THEN text_out := 'Niesel'; icon:='9.JPG'; ELSIF CCode = 10 THEN text_out := 'gefrierender Nebel'; icon:='10.JPG'; ELSIF CCode = 11 THEN text_out := 'Schauer'; icon:='12.JPG'; ELSIF CCode = 12 THEN text_out := 'Schauer'; icon:='12.JPG'; ELSIF CCode = 13 THEN text_out := 'Schneegestöber'; icon:='13.JPG'; ELSIF CCode = 14 THEN text_out := 'leichter Schneefall'; icon:='14.JPG'; ELSIF CCode = 15 THEN text_out := 'Schneesturm'; icon:='16.JPG'; ELSIF CCode = 16 THEN text_out := 'Schneefall'; icon:='16.JPG'; ELSIF CCode = 17 THEN text_out := 'Hagel'; icon:='18.JPG'; ELSIF CCode = 18 THEN text_out := 'Graupel'; icon:='18.JPG'; ELSIF CCode = 19 THEN text_out := 'Dunst'; icon:='19.JPG'; ELSIF CCode = 20 THEN text_out := 'Nebel'; icon:='20.JPG'; ELSIF CCode = 21 THEN text_out := 'trübe'; icon:='21.JPG'; ELSIF CCode = 22 THEN text_out := 'rauchig'; icon:='21.JPG'; ELSIF CCode = 23 THEN text_out := 'stürmisch'; icon:='23.JPG'; ELSIF CCode = 24 THEN text_out := 'windig'; icon:='23.JPG'; ELSIF CCode = 25 THEN text_out := 'kalt'; icon:='26.JPG'; ELSIF CCode = 26 THEN text_out := 'wolkig'; icon:='26.JPG'; ELSIF CCode = 27 THEN text_out := 'bewölkt (Nacht)'; icon:='27.JPG'; ELSIF CCode = 28 THEN text_out := 'bewölkt (Tag)'; icon:='28.JPG'; ELSIF CCode = 29 THEN text_out := 'teilweise bewölkt (Nacht)'; icon:='29.JPG'; ELSIF CCode = 30 THEN text_out := 'teilweise bewölkt (Tag)'; icon:='30.JPG'; ELSIF CCode = 31 THEN text_out := 'klar (Nacht)'; icon:='31.JPG'; ELSIF CCode = 32 THEN text_out := 'sonnig'; icon:='32.JPG'; ELSIF CCode = 33 THEN text_out := 'heiter (Nacht)'; icon:='33.JPG'; ELSIF CCode = 34 THEN text_out := 'heiter (Tag)'; icon:='34.JPG'; ELSIF CCode = 35 THEN text_out := 'Regen und Hagel'; icon:='35.JPG'; ELSIF CCode = 36 THEN text_out := 'heiß'; icon:='36.JPG'; ELSIF CCode = 37 THEN text_out := 'gelegentliche Gewitter'; icon:='37.JPG'; ELSIF CCode = 38 THEN text_out := 'einzelne Gewitter'; icon:='39.JPG'; ELSIF CCode = 39 THEN text_out := 'einzelne Gewitter'; icon:='39.JPG'; ELSIF CCode = 40 THEN text_out := 'teilweise Regen'; icon:='40.JPG'; ELSIF CCode = 41 THEN text_out := 'starker Schneefall'; icon:='41.JPG'; ELSIF CCode = 42 THEN text_out := 'einzelne Schneeschauer'; icon:='42.JPG'; ELSIF CCode = 43 THEN text_out := 'starker Schneefall'; icon:='43.JPG'; ELSIF CCode = 44 THEN text_out := 'teilweise wolkig'; icon:='26.JPG'; ELSIF CCode = 45 THEN text_out := 'Gewitter'; icon:='45.JPG'; ELSIF CCode = 46 THEN text_out := 'Schneeschauer'; icon:='46.JPG'; ELSIF CCode = 47 THEN text_out := 'gelegentliche Gewitter'; icon:='47.JPG'; ELSIF CCode = 3200 THEN text_out := 'FEHLER'; END_IF
Ich habe mir die Icons von Yahoo runtergeladen.
In der Visu wird in Abhängigkeit der Variable ICON dann das entsprechende File aus der definierten Bitmapliste angezeigt.
Ich versuche jetzt einige Bausteine zu nutzen. Leider schaffe ich es nicht den YAHOO_WEATHER Baustein zum laufen zu bringen. Habe mir das DEMO Beispiel angesehen und die Änderungen für die URL durchgeführt.
Leider habe ich anscheinend Problem mit der Namensauflösung.
Ich habe eine Beckhoff Steuerung CX1020 mit Windows CE.
Kann das ganze mit der Hardware und Windows CE Problem bereiten?
Oder gibt es eventuell ander Probleme, vielleicht verwende ich den DEMO Baustein auch falsch.
Ich habe ein internes Netzwerk und über eine Router gelange ich ins Internet.
Mein Router ist der, der bei der Netzwerkkarte die DNS beim CX eingetragen ist.
Ich habe beim CX den IE geöffnet und den Request http:… eingetragen. Dort funktioniert es.
Ich probiere mich auch gerade an dem Wetterbaustein, habe allerdings noch Probleme.
Bei Einsatz des Demoaufbaus und anschließendem ändern der DNS Server Adresse erhalte ich zwei Fehlermeldungen, die ich auch nach studieren der Anleitungen nicht ganz zuordnen kann.
error_c: 4278190080
error_t: 2
Ich bin etwas ratlos und es wäre schön, wenn mir eventuell jemand einen Hinweis geben könnte.
du musst error_c als hex-zahl betrachten dann ergibt dies 0xFF000000 und das bedeutet das der connect über timeout fehlgeschlagen ist
(kein verbindungsaufbau möglich)
diese fehlercode stammt vom IP_CONTROL (siehe baustein doku vom ip_control)
und error_t = 2 bedeutet das die HTTP_GET Funktion dieses problem hatte.
siehe dokumenation des baustein “yahoo_weather”
so wie es aussieht kann deine applikation sich nicht mit dem yahoo_weather server verbinden.
das kann eine falsche oder fehlerhafte gateway-adresse an deiner sps sein !
oder irgendwelche firewall/router probleme…
welche plattform verwendest du den ?
solltest du nicht weiterkommen , dann stelle dein projekt online und ich schau es mir an !
schreibe bitte aber auch dazu
welche ip hat deine sps
welche ip hat dein internetrouter
was hast du bei der gateway-adresse eingestellt !
vielen Dank für deine Rückmeldung!
Ich habe alles nochmal ausgiebig getestet, doch leider bleibt die Meldung. Vielleicht findest du ja meinen Fehler. Das Programm habe ich angehängt und hier sind meine Daten:
WAGO I/O IPC G2 758-870/000-111
IP der SPS: 172.31.37.47
IP DNS Server: 193.174.90.66
IP Gateway: 172.31.37.1
die networb.lib 1.00 ist aus jedenfall auf deinem system nicht getestet, somit ist es leicht möglich das halt nicht läuft
im anhang findest du eine neue version des ip_control bausteins
du musst die networt.lib direkt als projekt öffnen und dann den ip_control importieren
dann nochmals testen
die neue version des bausteins ist speziell für pc basierenden plattformen die einen tcp_client nutzen
danke erstmal für die Hilfe. Leider funktioniert der Baustein immernoch nicht.
Ich werde es weiter probieren. Falls allerdings jemand eine Idee hat oder es bereits auf einem anderen IPC funktionieren sollte, so würde ich mich über eine Meldung freuen.
leider kann ich dir so nicht weiterhelfen, da ich von der ferne nicht erkennen kann, was denn überhaupt bei dir nicht funktioniert
laut fehlermeldung ist das grundproblem ist das keine aktive TCP-Verbindung zu einen Teilnehmer im Internet hergestellt werden kann.
hast du irgendein projekt oder eine bibliothek die eine funktionierende Ethernet-Kommunikation nutzt ?
denn dann könnte ich dort nachsehen, was hier anders gemacht wird, bzw. kannst du feststellen ob vielleicht ganz andere ursachen zu den problem führen ?
hast du die möglichkeit den ethernet-datenverkehr aufzuzeichnen ?
switch mit port-mirroring oder einen einfachen hub nach dem IPC anschliessen
und dann mittels eines anderen pc (notebook) mit wireshark bzw. etherreal den datenverkehr aufzeichnen