Beiträge anzeigen

Diese Sektion erlaubt es ihnen alle Beiträge dieses Mitglieds zu sehen. Beachten sie, dass sie nur solche Beiträge sehen können, zu denen sie auch Zugriffsrechte haben.


Nachrichten - peewit

Seiten: 1 ... 114 115 [116] 117 118 ... 122
1726
Modulentwicklung / Re:Dokumentation, Systemvoraussetzungen
« am: 18. März 2010, 10:04:10 »
sql-treiber

wenn wir einen sql-treiber machen, dann soll er auch alles unterstützten , und besser sein, als alles was es am markt gibt
und dann ist es leider eine grosse baustelle, das würde einige wochen in anspruch nehmen
und alleine die zeit was beim testen draufgeht ist riesig !

darum ist das für mich momentan von der verfügbaren zeit einfach nicht machbar

wir haben leider noch ein paar andere baustellen die wichtiger sind, wie z.b. network.lib für beckhoff
das schwierige und zeitraubende ist eben, das ich für pcworx,codesys (wago) und twincat beckhoff immer alles getrennt entwickeln und testen muss

was ich auch fertig habe und nur die doku fehlt ist eine grafische oberfläche auf basis telnet
(siehe anhang: bilder)


[gelöscht durch Administrator]

1727
Modulentwicklung / Re:Dokumentation, Systemvoraussetzungen
« am: 17. März 2010, 21:40:09 »
filesystem

release ?
zuerst muss ich doku schreiben
bausteine sind für alle system aber fertig

was bringts:
einheitliche schnittstelle für alle plattformen
vereinfachung des file-zugriffs
kein extra open/close notwendig

zusätzlich ein file_block baustein
damit kann ich mit beliebig kleinen filebuffer , beliebig grosse dateien verarbeiten (zauberei ?)

einen baustein der ini-dateien parsen kann
man kann eine enumeration machen bei unbekannten strukturen aber auch gezielt sektionen und keys auswerten
ist ideal um parametrierungen über file zu ermöglichen
man kann damit theoretisch auch eine ini-datei parsen die 10 megabyte hat
und das beste ist, das es sowas noch nicht gibt

habe die bausteine seit 1 jahr in diversen projekten problemlos am laufen

------------

Beispiel eine parameter.ini

[MOBILE]
PINCODE=5615
SMS_SERVICECENTER=+436610501
SMS_CALLNUMBER_1=+436618285812
SMS_CALLNUMBER_2=+436618285813

[ALARM_01]
ENABLE=1
LOW_HIGH=1
ON_TEXT=Kammer 1 - Stromausfall
ON_TIME=60000
OFF_TEXT=
OFF_TIME=

[ALARM_02]
ENABLE=1
LOW_HIGH=0
ON_TEXT=Kammer 1 - Temperatur min / max!
ON_TIME=60000
OFF_TEXT=
OFF_TIME=

-----------------------

dann werden wir auch datenlogger einplanen

aber das mit sql auf das brauchst nicht warten !
da kommt sicher vorher ein email baustein der beliebig viele und beliebig grosse files per email versenden kann
und dazu werden diverse authorisierungsarten unterstützt werden....

mein leben ist viel zu kurz , um dass alles zu machen....

1728
Modulentwicklung / Re:Dokumentation, Systemvoraussetzungen
« am: 17. März 2010, 20:04:31 »
naja, ich habe mir zumindest schon gedanken gemacht
so wie es aussieht werde ich in den nächsten wochen mehr zeit haben... dann werde ich sehen was geht...

so wie ich das sehe , gibt es ohne installation des "tcpipserver" paket keine möglichkeit an ethernet ran zu kommen.
erst dieses paket installiert eine art "kommunikationstreiber" zur sps

1. kennt jemand einen anderen weg ?
2. ist dieses "tcpipserver" paket kostenpflichtig, man benötigt zumindest einen freischaltcode

wer weiss dazu etwas ?


aber ich kann auch schon folgendes verkünden.

es wird auch eine oscat bibliothek für filesystem kommen, und bislang habe es geschafft es auf

pcworx
codesys (wago sps)
codesys (softplc)
beckhoff (twincat)

lauffähige versionen zu erstellen....

damit soll der filezugriff einheitlich und viel einfacher werden !!!

gruesse peewit

1729
Bestehende Module / Existing Modules / Re:Problem mit IRTRANS
« am: 13. März 2010, 19:59:04 »
hallo

es sollten eigentlich nur ascii-charakter empfangen werden inklusive zeilenendemarkierung
bei dir steht im empfangsbuffer nur "müll"
somit können die oscat-bausteine auch nichts auswerten

da musst klären warum bei dir nur müll ankommt !


1730
Bestehende Module / Existing Modules / Re:Problem mit IRTRANS
« am: 13. März 2010, 16:37:24 »
hallo

laut grafik sieht man das 47 byte empfangen worden sind, und im receivebuffer zur auswertung anstehen


was hast du beim irtrans_8 bei den setup-parameters eingestellt

DEV_CODE :
KEY_CODE_1 - 8

kannst du mal grafisch dokumentieren wie der inhalt der 47bytes im receivebuffer sind
dann wissen wir was eigentlich empfangen wird, und warum es zu keinem ergebniss kommt

1731
hallo
welche steuerung und welches bussystem verwendest du ?

1732
Modulentwicklung / Re:DMX über Ethernet (Art-Net-Node)
« am: 07. März 2010, 20:54:24 »
bei dem Wago->DMX Beispiel-Projekt fehlt die DMXStageProfi_01.lib


1733
Modulentwicklung / Re:DMX über Ethernet (Art-Net-Node)
« am: 07. März 2010, 18:47:52 »
hallo

inwieweit unterscheidet sich dein gewünschtes Art-Net-Protokoll von dem Wago-DMX Programm (Beispiel) ?



1734
Codesys 2 / Re:Beispiel zum Funktionsbaustein IP_Control
« am: 26. Februar 2010, 21:36:17 »
der ip_control arbeitet absichtlich ohne select, und betreibt die socket-schnittstelle auch im "non-block" mode , damit man halbwegs
vernünftige zykluszeiten zu bekommen.

die meisten code-sample die herum geistern, benutzen die syslibsocket im block-mode, das heisst das eine system-funktion aufgerufen wird, 
und abhängig des aktuellen status dauert es kurz bis ewig bis die ablaufkontrolle wieder an das anwenderprogramm zurückgegeben wird.
darum muss man solche programme als extra-task ausführen, da ansonsten das anwenderprogramm nicht konstant abgearbeitet wird.
(für eine sps eine katatrophe !!!)


was funktioniert bei dir den nun , wie gut oder schlecht ?
und wie gelöst


1735
Bestehende Module / Existing Modules / Re:Probleme mit TCP/IP
« am: 24. Februar 2010, 20:37:50 »
hallo

ein kleiner tip

wenn du die tcp-bausteine von 3s verwendest musst du drauf aufpassen, das diese bausteine in einem eigenständigen task ausgerufen werden.
dein anwenderprogramm (zyklisches programm) muss in einem anderen task aufgerufen werden.

die 3s-tcp-bausteine arbeiten im block-mode das heisst es werden bestimmten systemfunktionen aufgerufen, und das anwenderprogramm
kann dann unbestimmte zeit in diesem baustein hängen bleiben (das was man bei einer sps überhaupt nicht braucht !)

vielleicht ist das dein problem, wenn du die bausteine benutzt.

das ist momentan auch mein problem mit der network.lib auf der windows-plattform das ich das im "non-block" modus momentan nicht gebacken bekomme....
 

1736
Bestehende Module / Existing Modules / Re:Probleme mit TCP/IP
« am: 24. Februar 2010, 09:02:19 »
1. welches demoprogramm von 3S
2. was hat funktioniert ohne slaves ?
3. was hat die tcp-verbindung mit den profibus-slaves zu tun

ich verstehe noch nicht ganz, was du da machst .....

1737
Bestehende Module / Existing Modules / Re:Probleme mit TCP/IP
« am: 24. Februar 2010, 08:37:35 »
hallo

die network.lib für codesys ist auf einer wago 750-841 sps entwickelt und getestet worden, und verwendet die SysLibSockets.lib

bei deinem System "CoDeSys 2.3.9.13; RTE 2.3.7.6; WinXp Professional V2002 SP3" sind theoretisch alle vorraussetzungen gegeben,
jedoch gibt es von system zu system leider immer kleiner funktionelle abweichungen.

Soweit ich es bisher feststellen konnte:

TCP Client (geht nicht, problem beim verbindungdaufbau)
TCP Server (geht)
UDP Client (geht)
UDP Server (geht)

------------

mit dem parameter c_mode gibst du den verbindungsmodus vor

0 = TCP Client (Aktiv)
1 = UDP Client (Aktiv)
2 = TCP Server (Passiv)
3 = UDP Server (Passiv)
somit ist c_mode = 0 für deine Anwendung richtig

c_mode musst du nur einmal beschreiben.
die wertigkeiten im sendbuffer sind auch so richtig , so wie du es angenommen hast,

--------------

in der network_lib sind diverse demo-programme enthalten (zum testen)

problem ist, das es viele diverse ethernet-bibliotheken gibt , die aber immer nur für eine plattform funktionieren, und so muss
man für jedes system immer eine adaptierung machen.

so wie es aussieht liegt es primär bei unserer network.lib am tcp_client problem auf Windows-Plattformen



hast du irgendwelche Demoprogramme für dein system , wo eine tcp kommunikation benutzt wird, und dies auch eindeutig funktioniert
wenn ja, bitte mit schicken....


sowie es aussieht musst du dich leider noch gedulden, bis die gründe gefunden sind....

---------------
noch ein paar tips

du schreibst... du hast einen tcp_server und deine sps soll als tcp_client sich mit diesem verbinden
das heisst dein kommunikationspartner (server) hat die ip-adresse '192.168.001.11'
du hast beim ip_control die adresse des tcp_clients angeben ?
bitte überprüfen

du hast in deinem sps-programm zwei ip-adressen in verwendung ?
es ist nur die ip-adresse des kommunikationspartners relevant, nur die sollte angegeben werden

die portnummer und ip-adresse kannst du über die IP_CONTROL Datenstruktur vorgeben, als auch über den IP_CONTROL direkt.
ich würde es aber so machen....

weiters gibt es in deinem testprogramm kein auswertung auf Datenempfang , kann solltest du auch dies vorgeben
IP_C1.R_OBSERVE:= FALSE; (* Datenempfang überwachen *)

------
IPServer_Adr:=IP4_DECODE('192.168.001.11');
IPClient_Adr:=IP4_DECODE('192.168.001.10');

es reicht wenn du die adresse einmal vor dem senden/empfangen konvertierst und übergibst


(* Login an Server senden *)
IF send THEN
   IP_C1.C_MODE := 0; (* auf SPS den TCP-Client Modus verwenden *)
   IP_C1.C_IP := IP4_DECODE('192.168.001.11'); (* Adresse des kommunikationspartners , in dem fall die des TCP-Servers *)
   IP_C1.C_PORT := 1000;
   IP_C1.C_ENABLE:= TRUE; (* Verbindungsaufbau freigeben *)
   IP_C1.R_OBSERVE:= FALSE; (* Datenempfang überwachen *)
   IP_C1.TIME_RESET:= TRUE;
   S_BUF1.BUFFER[0] := BYTE#16#01;
   S_BUF1.BUFFER[1] := BYTE#16#00;
   S_BUF1.BUFFER[2] := BYTE#16#00;
   S_BUF1.SIZE :=3;
   send := FALSE;
END_IF;

IP_CONTROL1(IP:=0 ,PORT:=0 ,TIME_OUT:=T#10s,IP_C:= IP_C1,S_BUF:=S_BUF1, R_BUF:=R_BUF1 );

und in deinem demo-programm kann ich mit folgenden zeilen nichts anfangen

IP_C1.C_STATE;
IP_C1.C_ENABLE;
IP_C1.C_MODE;
IP_C1.ERROR;
IP_C1.FIFO;
IP_C1.R_OBSERVE;
IP_C1.TIME_RESET;


IP_CONTROL1(IP:=IPClient_Adr ,PORT:=1000 ,TIME_OUT:=T#10s,IP_C:= IP_C1,S_BUF:=S_BUF1, R_BUF:=R_BUF1 );
IP_CONTROL1.c_enable;

1738
hallo dtm

in deiner oscat_red3.lib bei der function DAY_OF_MONTH gibt es ein problem mit verschachtelten kommentaren
auch wenn man unter settings die verschachtelten kommentare aktiviert hat

du must einfach den rot markierten text rauslöschen

--------------------------------------------------------

(* calculate the day in the year *)
DAY_OF_MONTH := DAY_OF_YEAR(idate);
(* leap will be set to one for a leap year *)
leap := BOOL_TO_INT(LEAP_OF_DATE(idate));
(* if leap year deduct one from the days of the year *)
DAY_OF_MONTH := DAY_OF_MONTH - leap;
(* search if we are in month december to march ? *)
IF DAY_OF_MONTH > setup.MTH_OFS[9] THEN
   IF DAY_OF_MONTH > setup.MTH_OFS[11] THEN
      IF DAY_OF_MONTH > setup.mth_ofs[12] THEN
         DAY_OF_MONTH := DAY_OF_MONTH - setup.MTH_OFS[12];
      ELSE
         DAY_OF_MONTH := DAY_OF_MONTH - setup.MTH_OFS[11];
      END_IF;
   ELSE
      IF DAY_OF_MONTH > setup.mth_ofs[10] THEN
         DAY_OF_MONTH := DAY_OF_MONTH - setup.MTH_OFS[10];
      ELSE
         DAY_OF_MONTH := DAY_OF_MONTH - setup.MTH_OFS[9];
      END_IF;
   END_IF;
ELSIF DAY_OF_MONTH > setup.MTH_OFS[5] THEN
   IF DAY_OF_MONTH > setup.MTH_OFS[7] THEN
      IF DAY_OF_MONTH > setup.mth_ofs[8] THEN
         DAY_OF_MONTH := DAY_OF_MONTH - setup.MTH_OFS[8];
      ELSE
         DAY_OF_MONTH := DAY_OF_MONTH - setup.MTH_OFS[7];
      END_IF;
   ELSE
      IF DAY_OF_MONTH > setup.mth_ofs[6] THEN
         DAY_OF_MONTH := DAY_OF_MONTH - setup.MTH_OFS[6];
      ELSE
         DAY_OF_MONTH := DAY_OF_MONTH - setup.MTH_OFS[5];
      END_IF;
   END_IF;
ELSIF DAY_OF_MONTH > setup.MTH_OFS[3] THEN
   IF DAY_OF_MONTH > setup.MTH_OFS[4] THEN
      DAY_OF_MONTH := DAY_OF_MONTH - setup.MTH_OFS[4];
   ELSE
      DAY_OF_MONTH := DAY_OF_MONTH - setup.MTH_OFS[3];
   END_IF;
ELSE
   (* since now we must be in february or january we need to add leap again *)
   DAY_OF_MONTH := DAY_OF_MONTH + leap;
   IF DAY_OF_MONTH > setup.MTH_OFS[2] THEN DAY_OF_MONTH := DAY_OF_MONTH - setup.mth_ofs[2]; END_IF;
   (* since nothing was true before, day_of_month must already be good *)
END_IF;

(*
(* this was try number one but a loop is too slow *)
(* calculate the day in the year *)
DAY_OF_MONTH := DAY_OF_YEAR(idate);
(* leap will be set to one for a leap year *)
leap := BOOL_TO_INT(LEAP_OF_DATE(idate));
(* if leap year deduct one from the days of the year *)
DAY_OF_MONTH := DAY_OF_MONTH - leap;
(* search if we are in month december to march ? *)
FOR month := 12 TO 3 BY -1 DO
   IF DAY_OF_MONTH > setup.MTH_OFS[month] THEN
      DAY_OF_MONTH := DAY_OF_MONTH - setup.MTH_OFS[month];
      RETURN;
   END_IF;
END_FOR;
(* since now we must be in february or january we need to add leap again *)
DAY_OF_MONTH := DAY_OF_MONTH + leap;
IF DAY_OF_MONTH > setup.MTH_OFS[2] THEN DAY_OF_MONTH := DAY_OF_MONTH - setup.mth_ofs[2]; END_IF;
(* since nothing was true before, day_of_month must already be good *)
*)




(*
Revision history

hm 22.1.2007      rev 1.1
   deleted unused variable day_in_year and day_in_year_begin

hm   1. okt 2007      rev 1.2
   changed code to use day_of_year and leap_of_date
   added compatibility to STEP7

hm   8. oct 2007      rev 1.3
   deleted unused variable yr

hm   8. jan 2008      rev 1.4
   improved performance

hm   25. oct. 2008   rev 2.0
   new code using setup constants
*)

1739
mit der oscat_red3.lib gibts auch keine probleme

schicke mir dein projekte das sich nicht compilieren lässt als privat nachricht , oder stelle es einfach online...


1740
hallo

ich glaube das dir noch ein baustein fehlt !

kannst du dein reduziertes projekt online stellen ?

Seiten: 1 ... 114 115 [116] 117 118 ... 122