Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!
28.10.2014, 17:50 (Dieser Beitrag wurde zuletzt bearbeitet: 29.10.2014 00:00 von jg.)
im Rahmen meiner Studienarbeit soll ich eine Dish- Stirling Anlage mittels Labview zum Laufen bekommen. Das eigentlich Problem an der Sache ist das die Programme alles schon vorhanden und eigentlich auch funktionieren sollte. leider konnten die Programme damals nicht getestet werden, aufgrund eines Kurzschlusses in einer der Platinen. Dieser Fehler wurde dann behoben. Als Hardware nutzt die Anlage Zwei Trinamic TMCM 1110 Platinen und zwei Schrittmotoren. Ansteuerbar ist die ganze Sachen über TMCL IDE und über die TMCL IDDE Bibliothek in Labview. Bloß leider funktioniert das eigentliche Programm, welches die komplette Anlage der Sonne nachführen soll überhaupt nicht. Laut Professor und der Erstellerin des Programms sollte es eigentlich funktionieren. Ich beschäftige mich jetzt schon eine Woche damit und bin ein Labview Neuling. Alles was ich bisher geschafft habe ist wie oben schon erwähnt die zwei Motren anzusteuern das war es auch schon. Vielleicht wäre es möglich mal über das Programm einen Blick zu werfen. Im Anhang befindet sich das Programm der Anlage.
Eine Dish-Stirling Anlage (siehe Bild) bündelt Sonnenstrahlen in einem Punkt und wandelt diese dann in elektrische Energie um. Die Solaranlage soll der Sonne nachgeführt werden. das Programm für die Berechnung der Position der Sonne an dem Standort wo die Anlage eingesetzt werden soll ist fertig und funktioniert. Aber das Programm was jetzt die die Solaranlage der Sonne nachführen soll und die Daten der Sonnenposition für die Motoren übersetzt wurde auch schon geschrieben und mit dem Berechnungsprogramm verknüpft. Leider funktioniert dieses aber nicht. (Erklärung dazu in der Bachelorarbeit) Weder die Kalibrierung noch die Automatische Nachführfunktion. Das einzige was halbwegs funktioniert ist die manuelle ansteuerung der Motoren ( zu einem bestimmten Punkt fahren) und die Referenzpunktsuche funktioniert bis zu dem Punkt an dem sie den Schalter berührt und dann fährt sie wieder kurz in die andere Richtung bis sie sich vom Schalter entfernt und dann wieder zum Schalter hin usw.
Ich wäre sehr Dankbar für eure Hilfe. Jeder Tipp kann Helfen, auch ein Ansatz für ein mögliches neues Programm. Ich stehe leider zur Zeit komplett auf dem Schlauch und versuche durch Bücher und Internetrecherchen irgendwie einen Ansatz zu finden doch bis jetzt leider ohne Erfolg.
so wie ich das verstehe, stellst du hier eine fremde Bachlor-Arbeit einfach mal so ins Internet?!
Da wäre ich vorsichtig, es sei denn, es ist deine eigene - aber selbst da wäre ich vorsichtig, da Firmen / Hochschulen gelegentlich nicht möchten, dass bestimmte Dinge veröffentlicht werden.
Zu deinem eigentlichen Problem:
Du bist recht sparsam, was deine Fehlerbeschreibung angeht. Die Tatsache, dass das Programm nicht funktioniert ist doch etwas wenig zum debuggen. Vielleicht kannst du ja ein paar mehr Infos rausbekommen. Zudem steigt die Wahrscheinlichkeit, dass sich LVF-user mit deinem Programm beschäftigen können umgekehrt proportionel zur LV-Versionsnummer. Soll heißen: speicher mal runter (Datei-Menü für Vorgängerversion speichern).
Hey Marko, wie oben schon erwähnt sollten die Programme eigentlich laufen. Ich wäre auch schon mit einem Ansatz für ein neues Programm zufrieden. Meinen Professor ist es eigentlich egal ob ich die Programme Neu schreibe oder die alten verwende. Hauptproblem ist jedoch das ich bei den alten gar nicht durch sehe da ich mich jetzt 1 Woche mit Labview beschäftige.
(28.10.2014 18:20 )nflor911 schrieb: Hey Marko, wie oben schon erwähnt sollten die Programme eigentlich laufen. ...
... ja, das versteh ich schon. Aber die Aussage, dass das Programm eigentlich laufen soll hilft uns ja nun nicht weiter. Wenn es liefe, hättest du dich sicher nicht gemeldet. Die Frage ist: Was läuft da nicht. Was soll das Programm überhaupt machen?
Alles was wir wissen ist, dass es um eine Dish- Stirling Anlage geht, was immer das ist.
Wie soll denn da einer helfen außer mit Blah-blah-Antworten, die dir sicher nicht helfen.
Dein Projekt besteht ja aus mehreren Sub-VIs. Machen die denn, was sie sollen? Hilf uns, dir zu helfen!
Erst einmal Dane für deine Hilfe, ich hoffe der nachfolgende Text hilft dir weiter mein Problem zu verstehen.
Eine Dish-Stirling Anlage (siehe Bild) bündelt Sonnenstrahlen in einem Punkt und wandelt diese dann in elektrische Energie um. Die Solaranlage soll der Sonne nachgeführt werden. das Programm für die Berechnung der Position der Sonne an dem Standort wo die Anlage eingesetzt werden soll ist fertig und funktioniert. Aber das Programm was jetzt die die Solaranlage der Sonne nachführen soll und die Daten der Sonnenposition für die Motoren übersetzt wurde auch schon geschrieben und mit dem Berechnungsprogramm verknüpft. Leider funktioniert dieses aber nicht. (Erklärung dazu in der Bachelorarbeit) Weder die Kalibrierung noch die Automatische Nachführfunktion. Das einzige was halbwegs funktioniert ist die manuelle ansteuerung der Motoren ( zu einem bestimmten Punkt fahren) und die Referenzpunktsuche funktioniert bis zu dem Punkt an dem sie den Schalter berührt und dann fährt sie wieder kurz in die andere Richtung bis sie sich vom Schalter entfernt und dann wieder zum Schalter hin usw.
Ich habe diesen Text auch noch mal oben eingefügt.
28.10.2014, 18:44 (Dieser Beitrag wurde zuletzt bearbeitet: 28.10.2014 18:46 von jg.)
Wie soll man sich auch (vor allem als Anfänger) in einem solchem Monster-BD zu Recht finden. Da weigere sogar ich mich groß rumzusuchen...
Was hat da dein Vorgänger bloß angestellt.
Gruß, Jens
EDIT: Der helle Ausschnitt ist ein 1920x1200 Bildschirm...
Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)
!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!
Ich weiß, die Schelte trifft nicht dich, aber das ist schon echt gruselig, was da so abgeht. Es gibt so ein paar Grundregeln, die man schon beherzigen sollt. Dazu gehört, dass Leitungen nicht kreuz und quer verdrahtet werden und dass man nach 2 Quadratmetern Quellcode aufhören sollte zu scrollen, um die nächsten Strippen dranzulöten.
Mal abgesehen davon, dass bei dir soviel Platz ist, dass es gar nicht nötig wäre.
Aber zu den funktionalen Problemen.
- Dein Programm ist komplett auf polling ausgelegt --> da gehört eine Eventstruktur rein.
- Du hast mehrere Schleifen, die alle parallel laufen und nix miteinander zu tun haben, also unsynchronisiert laufen.
- Deine RS232-Schleife macht permanent den Port auf und wieder zu.
- Es gibt keine Programmschleife, die alles umfasst und durch Panel close abgebrochen wird.
- Dein config reader-VI steht mit dem Schreiben der lok. Var. in Wettlaufbedingung zum Auslesen des zugehörigen Controls (die Variable ist völlig unnötig und bei dir sogar gefährlich)
Du musst dir erst mal eine geeignete Struktur überlegen, könntest aber erstmal mit einer Eventstruktur und gut überlegten Eventcases hinkommen. So riesig ist dein VI ja nicht, wenn man mal von der Quellcodefläche absieht.
Danke, dass du dir die Zeit genommen hast und dir das Programm mal angeschaut hast.
Okay da werde ich mich erstmal erkundigen was Eventstruktur und Eventcases sind. Was meinst du denn mit einer geeigneten Struktur. Ich hab mich halt wirklich erst seit einer Woche mit Labview beschäftigt und hab so ein paar Grundlegende Sachen aus dem Buch "Einführung in Labview" beschäftigt.
(28.10.2014 19:18 )nflor911 schrieb: ... Was meinst du denn mit einer geeigneten Struktur. ...
Damit war deine Programmstruktur, also dein Programmaufbau gemeint. Die Tatsache, dass du alles mögliche parallel machst, wird dir immer Schwierigkeiten bereiten.
Erstell dir mel eine Eventstruktur und erzeuge Events wie z.B. Config-Datei lesen, Config-Datei schreiben. Daten über ser. SS senden usw.
Alles, was du permanent machen musst, kannst du im Timeout-Eventcase machen, wobei du dir den Timeout genau überlegen musst.