S7-200 -> Datalog -> CP 243-1IT -> Linux PC

Pegazus

Level-1
Beiträge
4
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Leute! Ich erstelle mit meiner S7-200 unregelmäßige DataLogs. Diese möchte ich regelmäßig von der S7 (CP 243-1IT) holen und in eine DB schreiben. Ich habe tutorial gelesen wie das mit einem windows pc realiesiert werden kann. Ich möchte das ganze aber ohne windows auf einem linux pc machen. Interessant wäre für mich nur wie bekomme ich sinnvolle daten von der s7. Der Rest sollte kein problem mehr sein. Geht das mit der libnodav? Mittels welchem protokoll unterhalten sicher der S7-200 Explorer und die s7? Hab die verbindung mal mitgesnifft, aber nix brauchbares erhalten. Lg
 
Hallo,
wenn Du den ITCP hast, kannst Du darauf via FTP zugreifen - das geht von jedem Betriebssystem aus. Der Rest ist ein wenig Code auf dem zugreifenden PC......

Gruß
Mario
 
Eigentlich wäre das ja GENAU das was ich brauchen würde ....
Ich hab das ganze filesystem von dem CP 243-1IT durchsucht,
aber wie kann ich auf das Speichermodul zugreifen?
lg

Hallo

wenn Du auf den der CPU angehängten IT-CP per FTP zugreifen möchtest, rufst Du im SPS-Anwenderprogramm, oder von da aus, die eigene IP-Adresse auf. Im Unterprogramm-FTP, bzw. dem MicroWin Assistenten, kannst Du dann wählen:
Datei löschen
Daten anhängen
oder Datei neu erstellen.
Bei hoher Schreibfrequenz müsste dabei die Halbwertszeit des Flashspeichers berücksichtigt werden, irgendwelche Maximalgrössen der zu erstellenden Dateien gab es glaube ich auch noch zu beachten.
Ansonsten kannst Du (unter Linux) die CPU-Daten wie 'handelsüblich' mit Libnodave auslesen - und entsprechend bearbeitete Dateien dann von Zeit zu Zeit zurück im CP-Flash ablegen. So lassen sich dann beispielsweise aus den CPU-Daten volle Webseiten generieren, die beim IT_CP im CP-Flash abgelegt mit jedem Browser über den HTTP-Server direkt vom CP243/ 343 aufgerufen werden können.
Applets und Java Binär 'cgi's' (e.g: __S7Sys.bin etc. ) gibts natürlich auch noch :ROFLMAO:
Gruss
tobias
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo tobias.
Die idee mit dem ftp auf "localhost" finde ich total super!
Da wäre ich im leben nie selber drauf gekommen.
Aber wie du schon gesagt hast, ist sie nicht unbedingt speicherschonend.

Das mit den java beans habe ich schon probiert.
Da schaffe ich es nicht die passworteingabe ohne gui zu machen.

Aber wenn ich dein post richtig verstanden habe, komme ich nicht darum rum,
alles vorher auf das CP 243 zu "kopieren", um mit ftp/http darauf zuzugreifen?
Es gibt keinen direkten weg?

Vielen danke für deine hilfreiche antwort. Lg
 
Hallo,
das mit dem draufkopieren macht das Programmiersystem doch über die Ethernetverbindung automatisch. Beim ersten Einrichten IP Adresse vergeben und dann alles nur noch über Ethernet. Ist außerdem viel schneller als mit Programmierkabel.....

Gruß
Mario
 
Aber wenn ich dein post richtig verstanden habe, komme ich nicht darum rum,
alles vorher auf das CP 243 zu "kopieren", um mit ftp/http darauf zuzugreifen?
Es gibt keinen direkten weg?

Hallo,
'Nee' - einen dokumentierten, direkten Weg - sozusagen über den Arbeitsspeicher des CP - gibt es anscheinend nicht :cry: Er muesste rein technisch betrachtet jedoch ebenfalls gangbar sein - das auf der Startseite des CP jeweils angezeigte Beispiel (Auslesen des Rackzustandes == ) baut nämlich die angezeigte Webseite (nachvollziehbar) im RAM auf. Wie die das machen, besser gesagt wie es wo zu "kompilieren" wäre, fand ich bisher leider nicht vollständig heraus - sozusagen 'coming soon' wird da wohl irgendwo mal was auftauchen :rolleyes:


Zum Speichern im Dateisystem noch mal zur 'Schreibfrequenz': Das Problem ist ja, dass der Flash einigermassen schnell kaputtzuschreiben ist. Lt. Handbuch sind 10.000 Schreibzyklen garantiert; erfahrungstechnisch werden 100.000 wohl auch möglich sein. Irgendwann danach ist Flashbaustein jedoch platt - das Ding also im Eimer.
Folglich muss da genau drauf geachtet werden dass der Schreibzyklus nicht etwa jeden zweiten Zyklus (oder auch sekündlich) neu gestartet wird !!!! Das Ding zerlegt sich sonst in wenigen Stunden
Ein-zweimal am Tag Daten zu loggen und im Dateisystem abzulegen ist hingegen unproblematisch. :!: :!:
Als Alternative - die dann auch mit Verwendung des CP243-1 (ohne IT == 1EX..)
Direkt auszulesen (z.Bsp. auf Werte im Datenbaustein der CPU vom PC zuzugreifen) geht nur über Zubehör wie Libnodave oder ähnliche Bibliotheken. Sich da einzuarbeiten ist etwas aufwändiger - gibt aber Demos, welche das vom Prinzip her über Ethernet aufzeigen. Auf jedenfall ist dazu ein externer 'Webserver' (Client) als weitere Hardware erforderlich - jedoch geht immer nur eines zur Zeit: Entweder die Programmierschnittstelle über den CP243 oder eben Zugriff auf die Daten via Bibliothek. Beim Auslesen über den HTTP-Server und das CP-Dateisystem behindert sich das nicht, da kann 'gleichzeitig' programmiert und auf die Webseiten im CP zugegriffen werden.
Wie der Zugriff auf permanent aktualisierte Daten funktioniert könntest Du dir bei mir auf einem 243-1IT mal angucken. Allerdings habe ich das für meine Displays mit Windows2000 und IE6 plus Adobe SVG-Viewer6.0 eingestellt. Da alles in SVG lässt es nur bei dieser Kombination visualisieren - Für IE7++ im 'natve Mode' habe ich das zwar auch, aber nicht geladen - um dem ewigen Versionsmismatch ein Schnippchen zu schlagen
Dummerweise ging das SVG bisher auch in der von mir gewählten Form nur mit MS-Browsern. Im Opera-Firefox-Sa_dings_bums zerlegt sich die Grafik komplett. Das ist immer stark browserspezifisch, wenns aber funktioniert dann allerdings in 'harter Echtzeit'. Also sozusagen: Geht gut
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo.

An Mario:
Ich glaube wir zwei reden hier TOTAL an einander vorbei.
Ich schreibe mit meiner S7-200 unregelmäßig data logs auf das Speichermodul.
(Mit hilfe des data-log-assistenten)
Nun möchte ich regelmäßig dieses "log file" auf einen PC kopieren.
Ich habe dazu das Internetmodul CP243-1 IT in verwendung.
Folglich läuft das ganze über Ethernet ab.
Ich suche nun einen (Flash schonenden) weg, dies mittels Linux zu realisieren.
Wie ich das mache ist mir ziemlich egal.
Dass es leider nicht so geht wie ich mir das vorgestellt hätte, dabei hat mir tobias schon sehr geholfen.

An Tobias:
Speicherbereiche der S7 auf eine Datei des CP243 gemaped wäre natürlich
sehr fein gewesen. So weit ich weiß sollte das bei dem CP343 und CP443
funktionieren. Danke dass du mich hier an deinem wissen teilhaben läßt. :)
In sachen Flash: Der kleinste abstand zwischen zwei "Log-aktivitäten" ist bei mir 1 Zyklus.
Der größte Abstand 5 Minuten. Also eher ein Flash killer. :)
Zweimal pro Stunde oder so hätte ich das dann gerne auf meinem Linux PC.
Ich fürchte es wird mir nichts anderes übrig bleiben als das ganze über die libnodave zu machen.
Wenn du mir einen einblick in dein projekt geben würdest, wäre das sehr nett.
(Ich erstelle meine SVG mittels Inkscape und hatte mit Firefox noch nie probleme)

Lg
 
Aaaaach soooooo,
das ändert natürlich alles, sorry. Ist eine Betrachtung, die ich so nicht gesehen habe(so hatte ich das nie gebraucht). Stand im übrigen ja auch in einem Post von Dir - im Vorteil ist wer lesen kann:p.

Gruß
Mario
 
Hallo Pegazus
Zweimal pro Stunde oder so hätte ich das dann gerne auf meinem Linux PC.
Auf dem Linux-PC ist das kein Problem - im Dateisystem CP wären die Standzeit (bei 2Std.) immerhin mindestens ca. 20.000h - auch ja schon was:D
(Ich erstelle meine SVG mittels Inkscape und hatte mit Firefox noch nie probleme)
Nehme ich normal auch oft (Inkscape) - Firefox allerdings seltener. Grund ist beschriebener: Aus den Anfangstagen meiner SVG's in 2003/4 gabs nur Adobe-Viewer 3.x plus IE6. Ausserdem lavierte ich zuerst gerne um die Beispiele auf Datenverdrahten.de herum. Die dienten vielfach als Einstieg und Vorlage - und da ist der Viewer3.x /6.0 oft Grundlage.
Rein statische SVG's ist auch eher nicht so das ganz grosse Problem, hakelig wirds z.Bsp. im HTTPXMLRequest - also dynamisch aufgebaute SVG's. Oder neudeutscher 'Ajax' - andere nennen es Web2.0
Ich meine der Ajax-Ansatz ist mittlerweile der beste. Meine Meinung ist allerdings da recht einseitig - einfach weil ich nach dreijähriger Fehlversuchsphase herausfand wie es geht und es dann anwenden wollte:rolleyes:
Jetzt sind das 6 Themen -
1.) CP243 + Datenübertragung
2.) SVG
3.) Linux + entsprechende Kompilierung zum Prozessor und verwendeter Distri
4.) Der Aufbau des Loggings (ich mache das z.Bsp. jetzt immer in der Visualisierung mit
5.) Die Art der Darstellung ob/wie/wo man das Zwischenspeichert - oder wie im 'Ajax' tatsächlich aus dem RAM generiert. Oder beides kombiniert.
6.) Verwendete Browser
Wir sollten da irgendwo den kleinsten gemeinsamen Nenner suchen - deswegen schreibe ich hier mal mein zumeist benutztes Standardsystem auf.
Normal nehme ich als Ausgang einen DilNetPC - Linux (SuSE80) Prozessor ARM oder x86. Die beiden immer um das zu vergleichen und im x86 auch für jeden Normalpc lauffähig zu bekommen.
Neuerdings bastel ich zudem (aus Kostengründen) gerne mit dem NGW1000 oder Grashoppern da rum. Mit weniger Erfolg, da das kompilieren oft klemmt.
Seit 3 Monaten habe ich zudem es per Foxboard G20 probiert. Weiss noch nicht genau wie/was im Gentoo-Linux anders ist, aber der Anschluss über Libno zum CP243-1IT lief eigentlich sofort. Das Foxboard ist für mich vorteilhaft da ich von dort per Bluetooth die Visualisierung aufs Display beame. Das geht mit den DilNets leider nicht - jedenfalls nicht so einfach wie im Foxboard Kernel :D
Seit drei Jahren mache ich fast alle neuen Sachen mit dem HTTPXMLRequest - wäre sicherlich mal interessant jemanden zu finden der das in Firefoxxisch testet und anwendet. Mit Opera 9.5 lief es bei mir - allerdings flog der Opera dann raus, weil mit dem bestückt plötzlich alle unsere Displays ein merkwürdiges Eigenleben entwickelten und sich fortlaufend ins Internet einloggten. Kurzum meine ich seitdem, der Opera ist eher Virus als Browser :rolleyes:

Meine z.Zeit auf den CP's abrufbaren Muster (und mein Testaufbau) sind definitiv nur per W2k und IE6+Adobe6.0 zu sehen - andere Browser stürzen entweder ab, oder ist nichts zu sehen. Das sind aber jeweils nur 1-2 Codezeilen die ausgewechselt werden müssen.

Nicht testen kann ich das mit Linux und modernem Browser. Wir haben nur unsere Linux-Programmiersysteme, seit 2000 so möglichst unverändert zur Prozessorarchitektur durchlaufen lassen und ich mich dort mit Browserinstallationen/Updates nie befasst. Mit Konquerror (KDE3.x) oder den üblichen Testmedien wie (Knoppix) LiveCD's etc. gings eigentlich nie darzustellen. Beim neuen Gentoo dafür auf Anhieb :rolleyes:
Der Browser ist zweifelsohne immer der Knackpunkt, aber da bin ich weniger animiert Spezialist drin zu werden.
Hier müssten jetzt noch 200 Details folgen mit denen ich zumindest auch immer rumkämpfe bevor das funzt. Cross-Site-Scripting wäre ein Begriff - bei Gentoo mit FireFox ging das kurz probiert (freizuschalten) - im IE natürlich nicht. Das ist bei verteilt gelagerten Anwendungen dann der Hammer - Inkscape-Gemälde bspw. animiert - das sind wirklich klasse Dinger, wo es sich lohnt - wenn man es in SVG macht - die Arbeit reinzustecken. Ich meine Libno, CP243 und der entsprechende Linux-Webserver ist da die Kombination, die alles an Visualisierung/Datenloggen schlägt was z.Zt. so auf dem Markt ist.
Ist etwas Zeitaufwand es vorzubereiten es sich via Internet anzugucken - sind alles nur kleine Beispiele, um es nachvollziehbar zu behalten. Etwas (manchmal auch viel) EcmaScript spielt immer mit - das sehe ich zwar als Nachteil, doch Besseres den Ablauf flüssig zu gestalten fiel mir bisher nicht ein. Aber der CP in Original-Ansicht braucht ja auch freigeschaltetes Java&(Script) - sonst bleibt der auch unsichtbar.
Da müssten wir einen Weg finden die Beispiele hier für Dich sichtbar zu machen. Dann ist das ganz einfach ! Ich kann Dir auch nicht schicken, zumindest nützt das nichts. Da ja die Daten im SPS-Programm, alle IP-Adressen und die Abstimmung mit Libnodave zusammenpassen müssen. Das läuft nur wenn es passend programmiert ist. Und das passt woanders schon nicht, weil ja alle Pfade eben auf jedem Zielsystem anders sind. Bleibt also nur entweder hier (Raum Bremen) vorbeizukommen oder per Netz solange zu probieren bis der Zugriff übers i-Net klappt.
Gruss
tobias
 
Zurück
Oben