Jump to content

Stepper Brick "disabled" sporadisch


wiego

Recommended Posts

Hallo,

 

mein Stepper muss eine gewisse Last im Zustand "Enable" halten.

Laut Strommessung werden dafür aber nicht mehr als 250mA bei 24V benötigt, das allerdings über mehrere Minuten.

 

Jetzt ist es so, ziemlich oft so, dass in dieser Haltposition der Antrieb anscheinden auf "disabled" geht (so als ob die Lastspannung abgeschaltet wird). Von Seiten meines Programms wird definitv kein "disable" ausgeführt. Die Spannung (24V) am Netzteil bricht auch nicht zusammen.

 

Meine Frage: Unter welchen Bedingungen geht der Stepper Brick in "disable". Gibt es sowas wie Überhitzungsschutz? Wie kann ich besser debuggen?

 

Mein Aufbau: Step-Down, Master, Stepper1, Stepper2, Stepper3, 3 AnalogIn, IndustrialDigitalIn4, IndustrialDigitalOut4

 

Danke und Grüße

Link zu diesem Kommentar
Share on other sites

muss eine gewisse Last

Ja wie hoch ist die Last ? Entspricht sie der Leistung des Motors bei der genannten Stromstärke ? Was passiert wenn keine Last auf die Motorwelle im Betrieb wirkt ? Schaltet der Stepper Brick weiterhin ab ? Kann es sein das die 250 mA ev. zu niedrig kalkuliert sind bzw. der Motor zu leistungsschwach für diese Dauerlast ist ? U.U. dem Stepper Brick eine höhere Stromstärke spendieren als ursprünglich angenommen. Ev. Getriebe bzw. Motorbremse oder stärkeren Motor verwenden, dann klappt das auch mit sparsamen 250 mA  ;D

Link zu diesem Kommentar
Share on other sites

  • 2 weeks later...

Habe das mal selbst ausprobiert. Der Motor hat noch ein Planetengetriebe vorgeschaltet, und trägt im Haltezustand etwa 1kg im Abst. von 12cm zur Achse.

Den Strom von etwa 400mA musste ich so hoch einstellen, dass die Achse die Last gerade noch halten kann und nicht nachgibt. Nach etwa 1 Std. waren die Kühlrippen vom Stepper immer noch "Handwarm" und der Brick weiterhin enabled.

 

Allerdings habe ich im Stack nicht den gleichen Umfang an weiteren Bausteinen wie o.g.

 

 

 

Link zu diesem Kommentar
Share on other sites

Danke für den Test.

Beim Test mit der Hand find ich den Stepperbrick auch nicht besonders warm.

Dann liegt das Problem ggfs. woanders.

 

Im Windows Eventlogger habe ich das gefunden:

Destroying client (S: 520, T: plain, P: 127.0.0.1, A: disabled) while 1 request(s) are still pending

 

Kann das zu dem Verhalten führen? Was bedeutet es?

 

Link zu diesem Kommentar
Share on other sites

Beim Test mit der Hand find ich den Stepperbrick auch nicht besonders warm.

Ja, aber bei meinem Test bleibt der Stepper an seiner letzten Position stehen und er wird nicht abgeschaltet.

Hast Du mal geschaut was die Callbacks OnNewState, OnAllData etc. kurz vor dem Abschalten zurückgeben ?

Verstehe ich das richtig, dass du nur vermutest, es könne mit Überhitzung zu tun haben ?

 

Mit den Logs würde ich mich an Deiner Stelle an photron wenden, der hat mit sowas eine ganz gute Nase ;D Sieht mir danach aus dass die Verbindung des Bricks im Stack logisch wegbricht, bleiben die anderen Bricks/Bricklet weiterhin nach Ausfall des Steppers arbeitsfähig ?

 

Fällt dieser auch dann aus wenn du den Stack nur auf Step-Down, Master, Stepper reduzierst ? Oder die Reihenfolge vertauschen, ist es immer der 1.oder2.Stepper im Stack ? Systematisch vorgehen, ansonsten ist die Fehlersuche und Support unwahrscheinlich.

 

Alternativ einen 12V Akku als Stromquelle f. den StepDown ausprobieren.

Und beschreibe mal genauer und detaillierter den Aufbau des Stacks und seiner unbekannten Bestandteile wie Netzteil (max.Strom/Leistung), Schrittmotoren (Typ)... Welche Stromstärke ist bei den anderen beiden Steppern, die anscheinend weiter funktionieren oder nicht ? Du schreibst "mein Stepper", aber in der Fußzeile nennst du aber weitere 2 Stepper, wie verhalten die sich ?

Link zu diesem Kommentar
Share on other sites

Im Windows Eventlogger habe ich das gefunden:

Destroying client (S: 520, T: plain, P: 127.0.0.1, A: disabled) while 1 request(s) are still pending

 

brickd führt intern eine Liste darüber welche IPConnection noch auf Antworten (Response) von Brick(let)s warten. Dafür merkt er er sich die Anfragen (Request). Die Meldung besagt jetzt, dass eine IPConnection geschlossen wurde, obwohl sie aus der Sicht von brickd noch auf eine Antwort wartet. Das kann passieren wenn z.B. ein Getter-Aufruf einen Timeout erzeugt, also keine Antwort kommt. So direkt sehe ich da keinen Zusammenhang mit deinem Problem.

 

und dann auch relativ häufig:

 

Handled only 0 of 1 ready USB event source(s)

 

Das sollte normaler weise nicht passieren. Das besagt, das es einen USB Event gegeben hat (z.B. Antwort ist eingegangen) dieser aber in diesem Durchgang nicht behandelt wurde (werden konnte) von brickd. Das sollte nicht kritisch sein. Und auch hier sehe ich gerade keinen direkten Zusammenhang mit deinem eigentlichen Problem.

Link zu diesem Kommentar
Share on other sites

  • 2 weeks later...

Ich kam leider erste heute wieder dazu etwas weiter nachzuforschen.

Danke für den Support bis hierhin.

Leider komm ich einfach nicht drauf, was es sein könnte.

 

Erstmal möchte ich auf deine Fragen eingehen, Nic:

 

Hast Du mal geschaut was die Callbacks OnNewState, OnAllData etc. kurz vor dem Abschalten zurückgeben ?

OnNewState gibt keinen neuen Wert vor dem Absturz. Was davor passiert, spiegelt das Verhalten vom Programm wieder (Acc/Dec/Stop) und lässt kein wiederholendes Muster erkennen.

 

Verstehe ich das richtig, dass du nur vermutest, es könne mit Überhitzung zu tun haben ?

Ja, ich vermute nur, dass es mit Überhitzung zu tun hat. Toll wäre ein Callback der die Temperatur des Steppers herausgibt, bzw. die Fehler des Steppers verfügbar macht.

 

Mit den Logs würde ich mich an Deiner Stelle an photron wenden, der hat mit sowas eine ganz gute Nase ;D

@photron: Danke für deine Einschätzung.

 

bleiben die anderen Bricks/Bricklet weiterhin nach Ausfall des Steppers arbeitsfähig ?

Sobald, der Stepper disabled, scheint auch der MasterBrick neu zu starten (die LED Lauflichtleiste fängt an zu laufen).

 

Fällt dieser auch dann aus wenn du den Stack nur auf Step-Down, Master, Stepper reduzierst ?

Das fehlerhafte Verhalten  tritt auch bei Reduzierung auf die von dir genannten 3 Bricks auf.

 

Und beschreibe mal genauer und detaillierter den Aufbau des Stacks und seiner unbekannten Bestandteile wie Netzteil (max.Strom/Leistung), Schrittmotoren (Typ)...

Ist ein gutes Netzteil: Agilent E36345A (0-35V/2,2A)

Schrittmotor: Nanotec SC4118 (max. 1.8A bei 24V)

 

Zu den anderen Steppern kam ich wg. dem genannten Problem noch nicht, die werden gerade noch nicht mal 'enabled' und sollten daher keinen Einfluss haben (bzw. tritt das Problem ja auch ohne die Bricks der weiteren Stepper auf)

 

Kann es sein, dass mein Programm hier zuviel Resourcen beim MasterBrick braucht und dieser dann "resettet"? Ich hab zwei Callbacks, einen der über ein AnalogIn-Bricklet Spannung (im 1ms Abstand) misst und diese Spannung innerhalb des Callbacks als Eingangsgröße für einen Regler nimmt, der dann als Stellgröße die Schritte (stepper.set_steps) des Schrittmotors regelt.

Außerdem läuft immer noch ein Callback Interrupt mit der über ein IndustrialDigtalIn4-Bricklet den Motor stoppt, falls ein daran angeschlossener digitaler Sensor ausglöst wird.

 

Link zu diesem Kommentar
Share on other sites

Das fehlerhafte Verhalten  tritt auch bei Reduzierung auf die von dir genannten 3 Bricks auf.

Gut, dann würde ich hier weitermachen und erstmal die Bricklets und Deine App. weglassen. Der gesamte Stack macht einen Reset, das ist ungewöhnlich und kann u.U. mit deiner Vermutung nicht zusammenhängen.

 

Den Stepper mal ohne Last an der Motorwelle betreiben und in Halteposition einstellen. Schaltet er trotzdem ab ?

Welche Spannung ist am Netzteil eingestellt ?

Bei 12V die 3 Bricks betreiben. Schaltet der Stepper weiterhin ab?

Master rausnehmen und nur PowerSupply+Stepper. Schaltet der Stepper weiterhin ab?

Dann externe Stromversorgung nicht über den PowerSupply sondern über den DC-IN vom Stepper-Brick anschließen, PowerSupply raus. Schaltet der Stepper weiterhin ab?

Nach welcher Zeit tritt das ein, abstoppen und auf Reproduzierbarkeit prüfen.

 

Dann (!) statt Netzteil mal einen 12V Akku verwenden, der Schrittmotor lässt sich auch bei 9 bzw 12V fahren. Ein 9V Blockbatterie hat hier aber zu wenig Kapazität. Alternativ Batteriepack.

Wenn bis dahin alles prima läuft, die Bricklets dazustecken, aber nicht wenn der Stack bestromt ist.

UND (!) alle Tests machst du ausschl. mit dem Brick Viewer.

Erst zum Schluß würde ich mit Deiner App. prüfen.

Link zu diesem Kommentar
Share on other sites

 

 

Den Stepper mal ohne Last an der Motorwelle betreiben und in Halteposition einstellen. Schaltet er trotzdem ab ?

Ja. Damit es einfacher wird, alle Aussagen in diesem Post beziehen sich auf Tests ohne Last am Motor, ohne Bricklet und nur mit brickv aufgenommen.

 

Welche Spannung ist am Netzteil eingestellt ?

In der finalen Anwendung, betreibe ich die Stepper/Stack mit 24V.

24V habe ich vorallem gewählt, weil ich noch Sensoren, Motorbremse, etc. habe, die mit 24V betrieben werden.

 

Bei 12V die 3 Bricks betreiben. Schaltet der Stepper weiterhin ab?

Ja schaltet weiterhin ab, auch im gleichen Zeitrahmen, wie mit 24V.

 

Master rausnehmen und nur PowerSupply+Stepper. Schaltet der Stepper weiterhin ab?

Dann externe Stromversorgung nicht über den PowerSupply sondern über den DC-IN vom Stepper-Brick anschließen, PowerSupply raus. Schaltet der Stepper weiterhin ab?

Aha, ohne Master-Brick (egal,ob mit oder ohne Power Supply), bleibt der Stepper aktiv und wird nicht mehr resettet! Scheint eine heiße Spur zu sein und deutet tatsächlich darauf hin, dass es nicht mit der Temperatur zu tun hat. Gibt's denn interne Events vom Stepper, der den Master zu einem RESET zwingen kann? 

 

Nach welcher Zeit tritt das ein, abstoppen und auf Reproduzierbarkeit prüfen.

Mit Master dauert es ca. 50 Sekunden bis 2 Minuten bis ein reset stattfindet. Ohne Master gibt es, wie gesagt kein Reset!! 12V und 24V machen keinen erkennbaren Unterschied. Auch wenn es unwahrscheinlich klingt, hab ich dennoch das Gefühl, dass es nach einer "Abkühlpause" tendenziell länger dauert, bis ein Reset kommt (aber es gibt da einzelne Ausnahmen.

 

Dann (!) statt Netzteil mal einen 12V Akku verwenden, der Schrittmotor lässt sich auch bei 9 bzw 12V fahren. Ein 9V Blockbatterie hat hier aber zu wenig Kapazität. Alternativ Batteriepack.

Ich muss erst Batterien besorgen, das ist gerade nicht einfach. Was bringen denn Batterien für einen Vorteil? Ich vertrau meinem  Netzteil (Agilent E3645A), da ziemlich: Die Spannung (24V) bricht nicht zusammen und die Stromaufnahme (600-800mA) liegt im unteren Drittel der Grenzen (2,2A). Außerdem ist es frisch kalibriert und funktionsgeprüft.

Wenn du sagst, dass wir ohne Batterien nicht weiterkommen, krieg ich die aber schon besorgt.

 

Was mir noch aufgefallen ist und ich auch nicht deuten kann:

Sobald das fehlerhafte Verhalten auftritt (Disabled), verschwindet der Master und der Stepper aus der Liste der enumerierten Geräte in brickv. Der Master resettet dann (blaues Lauflicht) und danach taucht aber nur der Master wieder auf, der Stepper kommt erst wieder in die Liste, wenn die Spannungsversorgung resettet wird.

 

 

Link zu diesem Kommentar
Share on other sites

Es gibt kein spezielles Signal zw. Bricks zum Reset. Es scheint mir aber das die Stackspannung kurzweilig ausfällt und damit einen Reset erzwingt. Hast du das mit allen 3 Stepper beobachtet ? Hast Du alternativ die Stromquelle am DC-IN des Steppers angeschlossen, der hat noch einen extra Anschluss.

Hast Du noch einen 2.Master zum Testen ?

 

Die einfache Teststellung aus Power/Master/Stepper/ohne Last/ bei xyz mA führt bei mir zu keinem Ausfall oder Reset auch nach 1Std. mit oder ohne Last, allerdings benutze ich immer Akkus. Netzteil ist mir nicht mobil genug :)

Wenn Dir das mit den Akkus zu umständlich ist, würde ich bei den TFlern nachfragen das Verhalten des Stack schildern. Ev. müsstest du das dann einschicken.

 

PS: Erzähl hier mal wozu das ganze gut sein soll, Projekt usw.

Link zu diesem Kommentar
Share on other sites

Also kurz zusammengefasst: Im Stapel verwendet starten die Stepper Bricks alle Nase lang neu, alleine funktionieren sie, richtig?

 

Ich nehme an die Firmware auf dem Stepper Brick ist aktuell?

 

Es klingt fast so als wären es wieder Probleme mit der USB-Hotplug-Erkennung (d.h. der Stepper Brick denkt es wird eine USB Kabel eingesteckt). Eigentlich sollte sowas mit der neuesten Firmware nicht passieren.

 

Ich hab mal eine Testfirmware angehängt in der ich das Hotplug-Feature komplett deaktiviere. Kannst du die einmal testen?

stepper-brick-2-0-4-test.bin

Link zu diesem Kommentar
Share on other sites

Also kurz zusammengefasst: Im Stapel verwendet starten die Stepper Bricks alle Nase lang neu, alleine funktionieren sie, richtig?

ja

 

Ich nehme an die Firmware auf dem Stepper Brick ist aktuell?

ja, Master 2.2.1, Stepper 2.0.4

 

Ich hab mal eine Testfirmware angehängt in der ich das Hotplug-Feature komplett deaktiviere. Kannst du die einmal testen?

Getestet und für gut befunden!! Läuft so wie es aussieht stabil und der Stepper bleibt enabled!! Ein Lichtblick, das freut mich sehr.

 

Was für eine Auswirkung hat die fehlende Hotplug-Funktionalität für mich? Sonst würde ich sagen, ich lass die Firmwareversion zunächst drauf!?!

Link zu diesem Kommentar
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Gast
Reply to this topic...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Clear editor

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...