INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Steigung eines Signales ermitteln



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!

05.01.2010, 14:33 (Dieser Beitrag wurde zuletzt bearbeitet: 05.01.2010 21:33 von jg.)
Beitrag #1

Winnepooh Offline
LVF-Neueinsteiger


Beiträge: 4
Registriert seit: Jan 2010

8.6
2009
de

80939
Deutschland
Steigung eines Signales ermitteln
Bin ein absoluter LabVIEW Neuling und schlage mich gerade mit meinen ersten Gehversuchen durch.

Ich benötige für meine Semesterarbeit eine Temperaturregelung welche mir bestimmte Temperaturniveaus einregelt.

Hätte mir folgendes vorgestellt:
Temperatursensor --> PID-Regler--> Analoges Ausgangssignal 0-10V um die Heizstäbe zu regeln

(Oder ist ein anderer Regler sinnvoller? Problem ist dass das ganze System relativ träge ist)

Jetzt darf die Temperatur aber nur mit einer gewissen Geschwindigkeit ansteigen, zb 10°/min und kurz vor Solltemperatur zb 1°/min.

Nun hab ich ein paar Fragen wie ich am besten diese Geschwindigkeit berechne:

((Ist Temperatur)-(Temperatur vor 5s))/5s=Steigung
(200°-180°)/5s=4°/s

So hätte ich das gemacht, oder gib es da elegantere Möglichkeiten?

Aber nun zu meinem Hauptproblem:

Ich wollte zu Testzwecken einen Temperaturverlauf simulieren, indem ich einen Zähler hochlaufen lasse.
Woran es jetzt aber scheitert:
wenn ich die Schleife die den Zähler hochzählt (alle 200ms) schneller laufen lassen möchte wie die Schleife die mir die Steigung errechnet(alle 1000ms), funktioniert das natürlich nicht, da ja das Ganze dem Datenfluss unterlegen ist.
Habe es auch schon mit 2 einzelnen Schleifen probiert, habe es allerdings nicht geschafft den aktuellen Wert des Zählers in die andere Schleife zu übernehmen

Wie setzt man nun so etwas um?

Hab mal meinen Versuch angehängt, um es zu verdeutlichen.

Bin für jede Hilfe dankbar!

Hans

Welche guten Tutorials oder Bücher könnt ihr mir empfehlen?
Lv86_img


Angehängte Datei(en)
Sonstige .vi  Steigung.vi (Größe: 8,55 KB / Downloads: 282)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
05.01.2010, 18:01
Beitrag #2

BsaiboT Offline
LVF-Stammgast
***


Beiträge: 449
Registriert seit: Nov 2009

2010
2007
kA

22459
Deutschland
Steigung eines Signales ermitteln
Also ich würde Queues einsetzen und Du solltest dir angewöhnen mit Schieberegistern zu arbeiten, anstatt die Feedback-Teile (Wie auch immer die heissen mögen - kann die bei mir nichteinmal findenSmile) zu verwenden, dann wird der Code einfacher lesbar.

Hier mein Lösungsansatz:
Lv09_img2

Sonstige .vi  Steigung.vi (Größe: 15,03 KB / Downloads: 360)


Ich hatte nur wenig Zeit dafür, also seht mir bitte eine etwaige unsaubere Programmierung nach... ^_^

Tante Edit sagt, ich habe vergessen die Version anzugeben.

Leider habe ich gerade nur 2009 installiert, evtl ist jemand anderes so nett und kann das VI auf 8.6 herunterspeicher?!

Tobias Brüggemann
Dipl.-Ing.(FH) Nachrichtentechnik/Elektronik
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
05.01.2010, 21:56
Beitrag #3

Y-P Offline
☻ᴥᴥᴥ☻ᴥᴥᴥ☻
LVF-Team

Beiträge: 12.612
Registriert seit: Feb 2006

Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN

71083
Deutschland
Steigung eines Signales ermitteln
Das kannst Du auch selber:
"File"->"Save for previous version". Da kannst Du bis LabVIEW 8.0 zurückspeichern, außer Du verwendest eine Event-Struktur, dann geht's nur bis LabVIEW 8.6, weil LabVIEW 2009 einen Bug hat.

Hab's mal für Dich erledigt:

Sonstige .vi  Steigung.vi (Größe: 17,74 KB / Downloads: 314)

Lv80_img

Gruß Markus

' schrieb:Leider habe ich gerade nur 2009 installiert, evtl ist jemand anderes so nett und kann das VI auf 8.6 herunterspeicher?!

--------------------------------------------------------------------------
Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
06.01.2010, 15:39
Beitrag #4

Winnepooh Offline
LVF-Neueinsteiger


Beiträge: 4
Registriert seit: Jan 2010

8.6
2009
de

80939
Deutschland
Steigung eines Signales ermitteln
Danke,

Habe mir soeben mal das VI angesehen.
Zuerst hat mir in der mittleren Schleife das Element gefehlt welches die Wert in die Queue einreiht, denke es müsste das "Enqueue Element" sein, zumindest funkionierte es damit.

Aber jetzt zu einem Problem das mir aufgefallen ist

Wenn ich die Zeit für Temperaturerhöhung auf 500ms stelle und die Temp.erhöhung auf 1°
wären es ja 2° pro Sekunde

Das Ergebnis was ausgegeben wird beträgt auch 2° pro Sekunde, aber meiner Meinung nach nur weil die 500ms einrechnet, die er aber eigentlich nicht kennt, also falls es reale Werte wären.

Ebenso wird die Temperaturerhöhung wieder auf 1° pro Sekunde quasi die Taktfrequenz der 3. Schleife 1000ms abgebremst.

Müsste nicht in der unteren Schleife nur durch die Durchschnittszeit für die Messung geteilt werden und mit 1000 multipliziert werden und vom Millisekunden auf Sekunden zu kommen?

Schon mal vielen Dank für die Hilfe

hab mal meine Modifikation angehängt

Lv86_img


Angehängte Datei(en) Thumbnail(s)
   

Sonstige .vi  Steigung_2.vi (Größe: 13,39 KB / Downloads: 255)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.01.2010, 10:09
Beitrag #5

BsaiboT Offline
LVF-Stammgast
***


Beiträge: 449
Registriert seit: Nov 2009

2010
2007
kA

22459
Deutschland
Steigung eines Signales ermitteln
Hallo Freund von Tigger und Ferkel! Lol

Du hast natürlich recht mit deiner Annahme. In deinem Beispiel funktioniert es richtig.

Entschuldige, falls ich Dich verwirrt habe, aber es wurde wie gesagt nur schnell zusammengeschuhstert, da ich nicht viel Zeit hatte... Smile

Grüsse,
Tobias
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.01.2010, 11:46
Beitrag #6

Winnepooh Offline
LVF-Neueinsteiger


Beiträge: 4
Registriert seit: Jan 2010

8.6
2009
de

80939
Deutschland
Steigung eines Signales ermitteln
Ja kein Problem, bin ja für jede Hilfe dankbar.

Aber denke werde noch ein paar mal auf euch zukommen, wenn ich nächste Woche den Datenlogger (34970a agilent) bekomme, und sich dann weitere Fragen auftun.

Aber danke bis dahin.

Es hat keiner zufällig Vorschläge für ein Temperaturregelungs Beispiel VI das ich verwenden könnte?

MFG Hans
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
30
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Triggerung eines Counter-Output-Signales pwgt90 7 7.417 21.03.2012 16:57
Letzter Beitrag: pwgt90
  Aus Signal Steigung berechnen 4037 11 17.075 19.11.2010 11:17
Letzter Beitrag: Andora
  Aufnahme eines TTL Signales und Umwandlung in eine Frequenz besste 1 4.017 14.06.2010 22:20
Letzter Beitrag: jg
  Impulse eines Signales zählen djblake12 10 15.923 12.08.2008 12:56
Letzter Beitrag: djblake12

Gehe zu: