Funktion und Deklarierung YAHOO_WEATHER Baustein

Begonnen von Blauprinz, 29. Oktober 2015, 17:11:19

Vorheriges Thema - Nächstes Thema

0 Mitglieder und 2 Gäste betrachten dieses Thema.

Blauprinz

Hallo zusammen,
ich habe mich nun die letzten Tage hier im Forum belesen, konnte jedoch keine Lösung für mein Problem
finden... :-\
Ich benutze Codesys 2 mit einer XV1xx SPS von Eaton (Touchpanel mit integrierter PLC ).
Ich bin leider noch kein Profi auf diesem Gebiet und wollte daher wissen, wie die Ein bzw. Ausgänge deklariert werden müssen.
Hat vllt jemand ein voll funtionstüchtiges Beispiel das man mir zukommen lassen könnte?
Ich habe die Demo schon ausprobiert, heraus kam jedoch nur error_c = 16711680 und error_t = 1.  :(

Für Hilfe wäre ich sehr, sehr dankbar.... :) :)

shrimps

Hi,
hier mein Beispiel, welches läuft:
Umgebung: Twincat 2.x / PC mit install. TCP-Bib



FUNCTION_BLOCK _fbYAHOO_Weather
VAR_INPUT
END_VAR
VAR_OUTPUT
YW_DATA: YAHOO_WEATHER_DATA;
END_VAR
VAR
IP_C: IP_C;
S_BUF: NETWORK_BUFFER;
R_BUF: NETWORK_BUFFER;
IP_CONTROL_1: IP_CONTROL;
error_c: DWORD;
error_t: BYTE;
YAHOO_WEATHER: YAHOO_WEATHER;
(* YW_DATA: YAHOO_WEATHER_DATA;*)
Timer : TOF;
END_VAR
Timer(in:= NOT timer.Q, pt:= t#60s);

ip_control_1 (ip := IP4_DECODE('192.168.210.254'),
time_out := t#5s,
ip_c := ip_c,
s_buf := s_buf,
r_buf := r_buf);

yahoo_weather(
activate := timer.Q,
units := FALSE,
location := '672242',
(* location := '12834147',*)
ip_c := IP_C,
s_buf := s_buf,
r_buf := r_buf,
yw := yw_data
);

PROGRAM MAIN
VAR

fbYahoo_Weather :_fbYAHOO_Weather;
END_VAR
fbYahoo_Weather;



LG
Shrimps

Blauprinz

Hi,
vielen Dank! Das sieht doch schonmal sehr vielversprechend aus, werde es morgen direkt mal ausprobieren und eine Rückmeldung geben :D Noch eine Frage... Kann man das Ganze auch auf dem PC simulieren oder funktioniert der Baustein nur, wenn er auf die Steuerung übertagen wurde?
Gruß

shrimps

Das ist rein nur auf einer PC-Simulation entstanden !

Manche Klein-SPS von Beckhoff können das gar nicht (BC9000 z.Bsp.)

Viel Erfolg
Shrimps

Blauprinz

Also ich habe dein Beispiel jetzt so entnommen und simuliert, jedoch keinen Erfolg gehabt... :(
Es kamen die selben Fehlercodes wie letztes Mal (error_c = 16711680 und error_t = 1).
Welche IP-Adresse soll ich denn eingeben? Deine Location-ID habe ich erstmal so gelassen, habe lediglich sämtliche IP-Adressen meines Routers ausprobiert.

Gruß

shrimps

Hi,
welche Umgebung hast du ?
Hast du das Supplement TCP-Server installiert ?
Ohne diese baut die Simulation keine Verbindung auf !
Bin ich leider auch erst spät drau gekommen...

Viel Erfolg
Shrimps

Blauprinz

Ich nutze die Umgebung Codesys 2.xx...
Ich weiss jetzt aber ehrlich gesagt nicht wo da ein TCP-Server ist, vllt in der SysLibSockets.lib?
Da gibt es TCP spezifische Funktionen... mit denen ich aber leider durch Unwissen nicht viel anfangen kann :D
Fakt ist, ich bekomme in meiner Simulation ständig den selben Fehlercode ausgespuckt.

Gruß

shrimps

Schau mal bei Beckhoff nach:
http://www.beckhoff.de/default.asp?twincat/twincat_supplements.htm

Ohne das Proggy wird deine Simulation niemals eine Verbindung nach draussen aufbauen !

GGf. Details via PN

Viel Erfolg
Shrimps

Blauprinz

Ok das ist ja alles schön und gut, aber ich kann mit den TwinCat Lib'S ja nicht viel anfangen wenn ich Codesys benutze... :-\
Wenn ich den TwinCat TCP-Server installieren will meldet mir Windows dass sich kein TwinCat auf meinem System befindet.
Müsste mich vllt mal mit Codesys in Verbindung setzen und direkt nachfragen wie das funktioniert?!

Gruß

peewit

hi

wahrscheinlich funktioniert in deiner codesys 2.x simulation alles ausser kommunikation nach aussen
wie etwas file-zugriff und ethernet


es gibt auch noch eine CoDeSys SP PLCWinNT
bei der funktioniert kein tcp !

informiere dich mal bei deinen sps-dealer

shrimps

Hallo Blauprinz,
Sorry, hatte übersehen, das du Codesys und nicht Twincat nutzt !

Dann bin ich raus...

Viel Erfolg
Shrimps

Blauprinz

Hallo,
Habe mich mit Codesys in Verbindung gesetzt und herausgefunden dass eine TCP-Verbindung in der Simulation nicht möglich ist.
Habe jetzt alle Statusvariablen des Bausteins auf meinem HMI visualisiert und siehe da, es funktioniert. :D

Vielen Dank für eure Hilfe