30.01.2019, 12:54
Liebe Mitglieder!
Ich benötige Hilfe zu meiner Masterarbeit.
Ich habe vier schrittmotorisierte Staubstreuer welche jeweils auf einer Wägezelle sitzen. Mein Ziel ist es eine Staubförderrate [g/s] vorzugeben und jeder der Staubstreuer soll sich auf diesen Wert hinregeln. Das habe ich bereits erfolgreich für einen Staubstreuer alleine realisiert.
Möchte ich hingegen alle vier Streuer regeln funktioniert etwas nicht. Es scheint so als würde immer nur einer der vier regeln. Welcher genau das ist wechselt nach der Reihe ab und zwar dann wenn ich ihm einen kleinen Klaps gebe (kurze aber starke Veränderung der Regelgröße Masse).
Ich glaube es gibt irgend ein Problem mit der gemeinsamen Speicher-Nutzung. Da ich aber noch LabView Anfänger bin weiß ich gerade keinen anderen Weg mehr als es im LabVieW Forum nach Hilfe zu bitten.
Ich benutze die LabViewversion
Die Wägezelle und den Schrittmotor lese bzw. steure ich über einen Arduino Mega mit dem Makerhub Zusatzpaket LINX.
Angehängt habe ich das Hauptprogramm "main4" in dem in einer Schleife nacheinander die PID-Regelkreise aufgerufen werden (im SUB-VI "pid_control_loop")
Wie bereits erwähnt funktioniert es bereits für nur einen Streuer.
Ich habe bereits versucht das SUB-VI "pid_control_loop" unter den Ausführen-Eigenschaften von abflaufvariant auf ablaufinvariant umzustellen. Das hat aber leider nicht geholfen.
Welchen Fehler mache ich?
Vielen Dank im Vorhinein für eure wertvolle Hilfe!
Ich benötige Hilfe zu meiner Masterarbeit.
Ich habe vier schrittmotorisierte Staubstreuer welche jeweils auf einer Wägezelle sitzen. Mein Ziel ist es eine Staubförderrate [g/s] vorzugeben und jeder der Staubstreuer soll sich auf diesen Wert hinregeln. Das habe ich bereits erfolgreich für einen Staubstreuer alleine realisiert.
Möchte ich hingegen alle vier Streuer regeln funktioniert etwas nicht. Es scheint so als würde immer nur einer der vier regeln. Welcher genau das ist wechselt nach der Reihe ab und zwar dann wenn ich ihm einen kleinen Klaps gebe (kurze aber starke Veränderung der Regelgröße Masse).
Ich glaube es gibt irgend ein Problem mit der gemeinsamen Speicher-Nutzung. Da ich aber noch LabView Anfänger bin weiß ich gerade keinen anderen Weg mehr als es im LabVieW Forum nach Hilfe zu bitten.
Ich benutze die LabViewversion
Die Wägezelle und den Schrittmotor lese bzw. steure ich über einen Arduino Mega mit dem Makerhub Zusatzpaket LINX.
Angehängt habe ich das Hauptprogramm "main4" in dem in einer Schleife nacheinander die PID-Regelkreise aufgerufen werden (im SUB-VI "pid_control_loop")
Wie bereits erwähnt funktioniert es bereits für nur einen Streuer.
Ich habe bereits versucht das SUB-VI "pid_control_loop" unter den Ausführen-Eigenschaften von abflaufvariant auf ablaufinvariant umzustellen. Das hat aber leider nicht geholfen.
Welchen Fehler mache ich?
Vielen Dank im Vorhinein für eure wertvolle Hilfe!