![]() |
Analysieren eines AC-Signals auf der WinForm
Hey Leute,
ich bin Schüler an einer Fachschule für Elektrotechniker, habe eine Projektarbeit bekommen! Dafür muss ich unter anderem mit Delphi for the Microsoft .NET Framework ein analoges Signal aufnehmen, es in Echtzeit Zeichnen und die verschiedenen Oberschwingungen analysieren. Jedoch habe ich bis jetzt nur die Grundkenntnisse der Sprache. Was ich benötige sind ein paar Starthilfen, z.B. Wie kann man mit Delphi ein externes Signal aufnehmen, wie kann man Zeichnen, wie kann man eine Zeichnung auswerten! Wenn ihr mir ein paar Tips geben könntet oder mir links geben könntet, wo ich mich rein lesen kann, wäre mir wirklich sehr geholfen! Mit freundlichen Grüßen Frank |
Re: Analysieren eines AC-Signals auf der WinForm
Muss es denn .NET sein? Der WinForms-Unterstützung ist ab Delphi 2007 gestorben.
Was kannst du denn schon? Bist du halbwegs mit GUI-Desing und Implementierung vertraut (Mitgelieferte Beispielprojekte verstanden?). Für die analogen Signale: Ein PC kann von sich aus nix mit analogen Signalen Anfangen. Du benötigst also entweder einen fertigen A/D-Wandler-Baugruppe die du per USB/Serieller-Schnittstelle anschließen kannst oder ist dies auch Aufgabe der Projektarbeit? Falls ja: Wieviel Personen sind an dieser Projektarbeit beteiligt? |
Re: Analysieren eines AC-Signals auf der WinForm
Also wenn du dich von .NET enfernen könntest ist die Ausgabe nicht sooo schwer.
- Die Kurven kannst du über die normalen Sinus und Cosinussätze berechnen nachdem du deine Eingangswerte eingelesen hast. - Zeichen der Grafiken über Canvas oder ähnlich - Berechnen der Oberwellen würde ich mit den Eingangsdaten machen nicht über ein Auslesen der Grafiken Das Einlesen der Anlaogwerte sollte das größte Problem darstellen. |
Re: Analysieren eines AC-Signals auf der WinForm
Zitat:
|
Re: Analysieren eines AC-Signals auf der WinForm
Danke schon mal für eure Antworten!!!
1. Also an der Projektarbeit sind 7Leute beteiligt! Aufgabenstellung: Vom PC Daten an einen Controller zu senden, von da aus per funk an ein Endgerät welches gesteuert werden soll! Das Endgerät liefe momentan Daten, welche wieder zurück geschickt werden! 2. Meine Aufgabe ist es diese Daten die über ein analoges Signal geschickt werden im Controller über eine RS232 auszulesen! In erster Linie ist es zur Darstellung gedacht. Aber es soll auch als Kontrolle genutzt werden darum muss ich die Oberwellen aufschlüsseln und die Informationen in Borland wiedergeben! 3. Ich habe dazu nur das Programm "Delphi for the Microsoft .NET Framework" wie ich es benutze ist egal, aber ich muss es benutzen! 4. Bis jetzt habe ich nur mit buttons, pannels, textboxen und labels gearbeitet. ich kann proceduren, funktionen, klassen und arreys erstellen, aber dann hört es schon ziehmlich auf! 5. Ich weis nicht was ein GUI-Desing ist, Implementierung ja begrenzt soweit ich mich halt mit dem programm auskenne! Ich habe keine beispiel Projekte! Das Signal kommt ja von einem Controller, es wird hoffentlich schon in digitaler Form ankommen! hoffe ich!! Es gehört auch zur Projekt arbeit, aber das ist nicht mein part. 6. nein Canvas sagt mir nichts. 7. Ich habe bis jetzt nur bei delphi über die WinForm gearbeitet,kenne keinen anderen Weg mit dem Programm zu arbeiten! Hoffe ich bin kein hoffnungsloser Fall! LG Frank |
Re: Analysieren eines AC-Signals auf der WinForm
Und was davon ist Pflicht und wo können wir dich umstimmen?
Und vor allem, warum nicht alles in LabView? |
Re: Analysieren eines AC-Signals auf der WinForm
ja, das war auch erst meine idee, es in labview zu realisieren. Jedoch entspricht das nicht der Vorgabe!
Ich habe keine Ahnung wie ich es mit borland realisieren soll! Das wichtigste für mich ist erstmal wie ich etwas graphisch darstellen, bzw zeichnen kann! Dann wäre mir schon sehr geholfen!!! |
Re: Analysieren eines AC-Signals auf der WinForm
Ist vielleicht anstatt Delphi für .Net auch Delphi für Win32 erlaubt.
Ich müsste jetzt an den anderen Rechner um zu schauen wie ähnlich das Zeichnen bei WinForms ist (wie gesagt, die wenigsten machen Delphi für .Net) |
Re: Analysieren eines AC-Signals auf der WinForm
dazu kann ich nur das sagen, meine Ausbildung basiert auf .NET!
Ich hab zwar das Win32 Paket auch an board, habe es aber gerade zum ersten mal angeklickt! Ich kann ehrlich gesagt nicht sagen ob ich das auch verwenden darf, aber eher nicht! Werde es am Dienstag in Erfahrung bringen! Wenn es von der Anwendung ähnlich ist, könnte mir vielleicht auch eine Lösung für Win32 helfen, werde es dann umgehen ausprobieren! |
Re: Analysieren eines AC-Signals auf der WinForm
Wenn es .Net sein muss laut Angabe, muss es dann Delphi sein? Denn soweit ich das mitbekommen hab, funktionieren Delphi und .Net nicht so gut miteinander. C# z.B. wäre da wesentlich einfacher ;)
|
Re: Analysieren eines AC-Signals auf der WinForm
Wir haben bis jetzt immer mit delphi gearbeitet!
Denke nicht das ich davon abweichen darf/soll! Werde es am Dienstag in Erfahrung bringen! |
Re: Analysieren eines AC-Signals auf der WinForm
Nur für einen Anstoß:
Es gibt bei den WinForms die Klasse "Graphics". Wenn du z.B. auf der Form zeichnen willst, dann holst du dir das zugehörige Graphics-Objekt mittels "Forms.creategraphics" und kannst dann darauf zeichnen:
Delphi-Quellcode:
Diese Linie wird allerdings nur einmal gemalt und nicht bei jedem Paint-Aufruf.
var g:graphics; //System.Imaging
p:pen; begin g:=self.creategraphics; p:=pen.create(color.red); g.drawLine(p,0,0,100,100); //sollte eine Linie ergeben p.dispose; g.dispose; end; |
Re: Analysieren eines AC-Signals auf der WinForm
Ich würde nicht Control.CreateGraphics() verwenden, da das Graphics-Objekt einmal erstellt wird und sich so z.B. nicht auf Verändern der Größe des Forumulars anpasst. Implementiere besser das Paint-Ereignis und nimm das dort übergebene Graphics-Objekt.
|
Re: Analysieren eines AC-Signals auf der WinForm
@sirius
Wow, das genau einer dieser Anstöße, die ich erhofft habe! Vielen dank!!! Damit lässt sich auf jedenfall jetzt was anfangen! Ich sitzte schon dran! Könntest du mir bitte den Befehlt noch erklären und wo zu er dient:
Delphi-Quellcode:
g.dispose;
@idontwantaname Dein Argument hört sich nicht verkehrt an, könntest du mir bitte auch einen Code-Ausschnitt zur Verfügung stellen? |
Re: Analysieren eines AC-Signals auf der WinForm
Was er meint ist das:
Delphi-Quellcode:
Ist schon besser, als meins (ich kenn mich in .Net nicht aus). Da aber so eine Paint-Methode kurz gehalten werden soll, ist es am günstigsten das Bild offline (vielleicht als Image o.ä. zu erstellen und dann mit drawimage auf die Form zu kopieren.
procedure TWinForm.TWinForm_Paint(sender: System.Object; e: System.Windows.Forms.PaintEventArgs);
var p:pen; begin p:=pen.Create(color.blue,2); e.Graphics.DrawLine(p,0,0,100,100); p.Dispose; end; Dispose habe ich verwendet, da ich annahm mit creategraphics eine neu Instanz der Klasse graphics zu erzeugen, die ich nachher wieder löschen muss. |
Re: Analysieren eines AC-Signals auf der WinForm
@sirius: .NET besitzt Garbage Collection. ;)
Das mit den Oberwellen müsste mit einer Fouriertransformation gehen, dazu habe ich was in der Code Library geschrieben. (Allerdings unter Delphi für Win32, aber es könnte trotzdem interessant für dich sein.) ![]() |
Re: Analysieren eines AC-Signals auf der WinForm
Zitat:
Zu den Oberwellen: Da er ja Elektrotechniker ist, hat er Fourier von oben, unten, hinten und vorne durchgenommen und wird das, denke ich, recht schnell so hinbekommen :zwinker: Ausserdem war ja noch irgendein Teil in Labview... |
Re: Analysieren eines AC-Signals auf der WinForm
Gut, das kann ich nicht wissen, ich hab mich noch nie so genau informiert, was man in ElTech so alles macht. Aber schaden kann das ja nicht, vor allem weil es manchmal doch ein unerwartet großer Schritt ist von einer mathematischen, abstrakten Beschreibung zu einer funktionierenden, effizienten Implementierung in einer Programmiersprache - vor allem wenn man noch nicht all zu lange mit dieser Sprache gearbeitet hat.
|
Re: Analysieren eines AC-Signals auf der WinForm
hey Leute, vorweg mal vielen danke für alle eure Bemühungen!!
Trotz all meiner Verhandlungen, ist es jetzt fakt! Labview darf ich nicht verwenden! Ich darf auch keine Images auslagern!! Nein Ich hab Nur die die .NET Version von Borland zur Verfügung!! @sirius & @3_of_8 Wir stecken im Unterricht gerade mitten in dem Thema Fourier!! Das dürfte das kleinste Problem sein! Ich muss mich da ab dem Wochenende dann so richtig da reinhängen! Werde mit den Informationen, die ihr mir dankbarerweise zukommend habt lassen schon was auf die Beine stellen können!!! Vielen Danke! MfG Frank |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:45 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz