Ich schreibe Daten von Sensoren in eine csv datei. zB wird ein Drucksensor von Freescale - Thanks to rei_vilo for guiding - alle 100 ms ausgelesen und appended.
Diese Datei möchte ich gerne real time in Excel auslesen und einen Graph zeichnen lassen. Mein Problem ist dass die csv Datei von RoboPro geöffnet ist und damit der Zugang blockiert ist. Auch ein copy paste der Datei hilft nicht. Hab das schreiben der Liste in ein Unterprogram gelegt und gehofft, so Zugang zu den Daten zu bekommen. Leider auch nicht...
Andere Ideen?
csv list in laufendem Program in Excel auslesen
Forumsregeln
Bitte beachte die Forumsregeln!
Bitte beachte die Forumsregeln!
- steffalk
- ft:pedia-Herausgeber
- Beiträge: 1809
- Registriert: 01 Nov 2010, 16:41
- Wohnort: Karlsruhe
- Kontaktdaten:
Re: csv list in laufendem Program in Excel auslesen
Tach auch!
Wenn RoboPro die Datei exklusiv zum Schreiben öffnet, hast Du da wenig Chancen. Und selbst wenn, ist ja nicht gesagt, das RoboPro auch immer ganze Datensätze schreibt - es könnte ja auch 4-KB-Blöcke puffern oder so.
Eine eher theoretische Alternative wäre, wenn Du das Privileg hast, Dateien zu sichern. Das hast Du als Mitglied der Administratoren oder als Mitglied der Sicherungsoperatoren, oder Du kannst Dir dieses Privileg in der lokalen Sicherheitsrichtlinie geben. Dann müsstest Du die Datei (im laufenden Betrieb, während RoboPro sie offen hat), sichern. Das könnte mit der Windows-eigenen Sicherung passieren, aber passender wäre wohl, Du schreibst ein Stück Software, welches die Datei explizit unter Ausnutzung des Sicherungs-Privilegs öffnet. Dann kommt sie nämlich auch an eine geöffnete Datei dran.
Allerdings ist diese Lösung a) nicht trivial und b) ist es nicht gesagt, dass sie Dir wirklich hilft, denn wie oben gesagt könnte die Datei ja gar nicht in echtzeit vollständig beschrieben werden - das könnte nur der RoboPro-Entwickler sagen.
Gruß,
Stefan
Wenn RoboPro die Datei exklusiv zum Schreiben öffnet, hast Du da wenig Chancen. Und selbst wenn, ist ja nicht gesagt, das RoboPro auch immer ganze Datensätze schreibt - es könnte ja auch 4-KB-Blöcke puffern oder so.
Eine eher theoretische Alternative wäre, wenn Du das Privileg hast, Dateien zu sichern. Das hast Du als Mitglied der Administratoren oder als Mitglied der Sicherungsoperatoren, oder Du kannst Dir dieses Privileg in der lokalen Sicherheitsrichtlinie geben. Dann müsstest Du die Datei (im laufenden Betrieb, während RoboPro sie offen hat), sichern. Das könnte mit der Windows-eigenen Sicherung passieren, aber passender wäre wohl, Du schreibst ein Stück Software, welches die Datei explizit unter Ausnutzung des Sicherungs-Privilegs öffnet. Dann kommt sie nämlich auch an eine geöffnete Datei dran.
Allerdings ist diese Lösung a) nicht trivial und b) ist es nicht gesagt, dass sie Dir wirklich hilft, denn wie oben gesagt könnte die Datei ja gar nicht in echtzeit vollständig beschrieben werden - das könnte nur der RoboPro-Entwickler sagen.
Gruß,
Stefan
Re: csv list in laufendem Program in Excel auslesen
Hallo zusammen,
ich kenne eigentlich nur die Variante, dass ich in RoboPro ein Listenelement mit Werten befuellen kann, die dann bei Programmende in ein CSV-File geschrieben werden. In dem Fall wird der Inhalt aber eben sowieso erst mit Beedigung des Programmes geschrieben. Oder habe ich da ein neues Feature nicht mitbekommen?
Gruesse
Alfred
ich kenne eigentlich nur die Variante, dass ich in RoboPro ein Listenelement mit Werten befuellen kann, die dann bei Programmende in ein CSV-File geschrieben werden. In dem Fall wird der Inhalt aber eben sowieso erst mit Beedigung des Programmes geschrieben. Oder habe ich da ein neues Feature nicht mitbekommen?
Gruesse
Alfred
Re: csv list in laufendem Program in Excel auslesen
[quote="alfred.s"]Hallo zusammen,
ich kenne eigentlich nur die Variante, dass ich in RoboPro ein Listenelement mit Werten befuellen kann, die dann bei Programmende in ein CSV-File geschrieben werden. In dem Fall wird der Inhalt aber eben sowieso erst mit Beedigung des Programmes geschrieben. Oder habe ich da ein neues Feature nicht mitbekommen?
na das ist genau das feature was ich brauche. dh die Daten liegen alle im Speicher und wenn das Programm ausserplanmæssig abbricht sind die Daten auch weg.
Gibt es die Möglichkeit bei MS-RDS?
ich kenne eigentlich nur die Variante, dass ich in RoboPro ein Listenelement mit Werten befuellen kann, die dann bei Programmende in ein CSV-File geschrieben werden. In dem Fall wird der Inhalt aber eben sowieso erst mit Beedigung des Programmes geschrieben. Oder habe ich da ein neues Feature nicht mitbekommen?
na das ist genau das feature was ich brauche. dh die Daten liegen alle im Speicher und wenn das Programm ausserplanmæssig abbricht sind die Daten auch weg.
Gibt es die Möglichkeit bei MS-RDS?
- steffalk
- ft:pedia-Herausgeber
- Beiträge: 1809
- Registriert: 01 Nov 2010, 16:41
- Wohnort: Karlsruhe
- Kontaktdaten:
Re: csv list in laufendem Program in Excel auslesen
Tach auch!
Beim Robotics Studio oder (praktisch egal welcher) Sprache, die Du auf dem PC laufen lässt, um das Interface online zu steuern, kannst Du "machen, was Du willst". Häng ne richtige Datenbank drunter und speichere da rein, dann kann das Programm ruhig crashen oder der Strom ausfallen. Schreib ab und zu oder bei jedem Satz in eine Datei. Schicks übers Netz zu einem Server. Ganz wie Du magst.
RoboPro kann sowas halt nicht, aber dafür ist es ja auch nicht gedacht.
Gruß,
Stefan
Beim Robotics Studio oder (praktisch egal welcher) Sprache, die Du auf dem PC laufen lässt, um das Interface online zu steuern, kannst Du "machen, was Du willst". Häng ne richtige Datenbank drunter und speichere da rein, dann kann das Programm ruhig crashen oder der Strom ausfallen. Schreib ab und zu oder bei jedem Satz in eine Datei. Schicks übers Netz zu einem Server. Ganz wie Du magst.
RoboPro kann sowas halt nicht, aber dafür ist es ja auch nicht gedacht.
Gruß,
Stefan
Re: csv list in laufendem Program in Excel auslesen
Danke Stefan
schade, denn das wäre ja super einfach und viele Daten lassen sich in Excel wesentlich schneller bearbeiten und dann auch wieder via csv einlesen.
Gibt es eine Möglichkeit über ftMscLib.dll in VBA bei Excel einzubinden und Werte auslesen?
Herzliche Grüsse, Gernot
schade, denn das wäre ja super einfach und viele Daten lassen sich in Excel wesentlich schneller bearbeiten und dann auch wieder via csv einlesen.
Gibt es eine Möglichkeit über ftMscLib.dll in VBA bei Excel einzubinden und Werte auslesen?
Herzliche Grüsse, Gernot