- Labornetzteil AliExpress         
Ergebnis 1 bis 10 von 20

Thema: Servomesstester (Servotester und –messaufbau)

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    8.652

    Servomesstester (Servotester und –messaufbau)

    Ein Servotesterquellprogramm
    das ist kein Spaß, mein lieber Mann,
    das bringt viel Murx und Leid und Weh,
    zeigt soo viel Tücken an mein´m C,
    Und wenns dann läuft und man was bessert
    ist das Ergebnis ganz verwässert,
    mit gänzlich andern Resultaten
    wo wir die richtigen schon hatten
    da denkt man doch den Teufel auch
    ich steh bald to-tal auf dem Schlauch.

    Mein Servo-Messtester. Der Servotester mit Messfunktion. Nun ist er in einem Stadium, dass erste Messungen durchgeführt wurden.

    ......

    Welche Messungen sollen durchführbar sein?
    o Drehmoment
    o Stromaufnahme als Funktion des Drehmomentes
    o (Stromaufnahme dynamisch über den Verfahrweg ist geplant)
    o Positionsabweichung als Funktion des Drehmomentes
    o Drehgeschwindigkeit
    o Drehbeschleunigung bei Start und Positionseinlauf ohne Last
    o Positioniergenauigkeit (auch bei zwei, drei ausgesuchten Winkeln, z.B. links, mitte, rechts)
    o Wiederholgenauigkeit der Position ohne Last
    o Verhalten bei geänderten Pulslängen bei üblicher Periodenlänge
    o Verhalten bei geänderter Periodenlänge bei gleichen Pulslängen
    o Verhalten bei geänderter Periodenlänge bei verschiedenen Pulslängen
    o Evtl. Messpunkte/-reihen bei 6V statt der meist durchgeführten 5,0 V
    o Interessierende Messungen werden teilweise auch mit Last gefahren, vermutlich 0,5 Nennmoment, evtl. auch 0,2 und 0,8 oder 1,0

    Warum diese Messungen?
    o Einige technische Angaben sind bei Servos selten oder gar nicht zu finden. Manche Angaben sind nicht glaubhaft und sollen überprüft werden
    o Positionsabweichung und Stromaufnahme als Funktion des Drehmomentes sind vorrangig interessant für Roboterbauer. Hier hatte ich beim ArchieKopf manche Fragen die von Datenblättern nicht gelöst wurden
    o Etliche Messungen werden einfach nur zur Befriedigung der eigenen Neugier dienen, manche zum Überprüfen der Streuung von Eigenschaften baugleicher und bauunterschiedlicher Typen
    o Viele interessierende Messungen werden vermutlich nicht durchgeführt werden; Aufbau, Durchführung und Auswertung sind doch etwas zeitaufwendig

    Technische Daten:
    o Messvorrichtung mit Support zur Aufnahme verschieden(st)er Servotypen und –größen
    o Ansteuerung über vorhandene 10-Servo-Platine
    o Servotester mit Ausgabe über LCD und UART, Eingabe über drei Tasten und UART. Ein- und Ausgabemethoden sind abhängig von der jeweiligen Aufgabe (z.B. keine Listenausgabe übers LCD)
    o Servoversorgung über 70S05
    o Ansteuerungsstandard: Periode 20 ms, Puls 0,5 ms bis 2,5 ms
    o Drehmomentauflösung 0,2 Ncm (0,1962 Ncm, Waage 1 g/div, 20 cm Hebelarm)
    o Genaue Hebellänge durch Kontaktwalze zwischen Hebelarm und Waage
    o Drehwinkelmessung durch Potentiometer ca. 10 Bit mit 1,0 ms Auflösung (bei SlowMotion evtl. längere Messabstände), Potentiometer im Messkopf eingebaut
    o Positionsmessung mit Präzisionsmessuhr
    o Messung von drei Werten (signed short – uint16_t) mit je 990 oder 1590 Messpunkten
    o Anzeige der laufenden Messwertaufnahme durch LED
    o Einfach- oder Mehrfachfahrt zu vorgegebenen Winkeln und/oder Geschwindigkeiten
    o Menue mit derzeit folgenden Wahlmöglichkeiten
    ........ 2 UART conn Start der UART-Kommandozeile
    ........ 4 rote LED schalten 0/1
    ........ 6 Servo ± Servoposition verstellen ±
    ........ 7 Srv± Po1 Servoposition ± einstellen für Position 1
    ........ 8 Srv± Po2 Servoposition ± einstellen für Position 2
    ........ 9 Test Inc Stellen von Test Increment, max = 190, 190 äquival. full speed
    ........12 Tst Strt Testlauf Starten von Pos 1 nach Pos 2, SFgt-mal, Inc ...
    ........13 Default Defaultwerte (akt. Pos 1 = 3000, Pos 2 = 5000, 4mal, Inc 30)
    ........17 Listenausgabe der Messwerte
    ........18 Timeoutflag setzen off/on


    Danke an alle, die mitgeholfen haben, danke besonders Sternthaler für Mitdenken, Mit-(Korrektur-)lesen, und mehr.
    Geändert von oberallgeier (05.09.2013 um 12:43 Uhr) Grund: !! Dieser Tester zeigt keine Rechtschreibfehler an !!
    Ciao sagt der JoeamBerg

  2. #2
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    29.05.2005
    Beiträge
    1.018
    Da ist er ja endlich.

    Hallo oberallgeier,

    wie ich sehe, ist dein 'erster Schuß' natürlich nicht in den Ofen, sondern eher in die Oberliga gegangen. Ich bin gespannt, wann die nächsten Messreihen hier erscheinen.
    Auf das dir die Ideen für deine Messwertaufnahmeliste nie zu Ende gehen.

    Gruß vom Sternthaler
    Geändert von Sternthaler (06.09.2013 um 00:14 Uhr)
    Lieber Asuro programieren als arbeiten gehen.

  3. #3
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    8.652
    Zitat Zitat von Sternthaler Beitrag anzeigen
    ... Ich bin gespannt, wann die nächsten Messreihen hier erscheinen ...
    ine spätabendliche Messfahrt (5,0V, lastfrei, full speed) mit meinem High-Torque Servo 1501MG (siehe dieses Posting) läßt vermuten, dass der langsamer ist als spezifiziert. Jedenfalls brachte er es bei meiner aktuellen 5V-Versorgung grad mal auf 0,25sec/60° bei einer 90°-Messfahrt. Mal sehen, was er bei 6,0 V schafft; bei diese Spannung sind als no load running Speed 0.14sec/60° spezifiziert . . . (und auch hier ist, wie üblich, kein Stromverbrauch genannt).

    ......Klicke auf die Grafik für eine größere Ansicht

Name:	HT-full-bei-5Volt.jpg
Hits:	46
Größe:	29,1 KB
ID:	26327

    Seine Regelabweichung bei Last ist dafür wie erhofft/erwartet sehr gering. Und deswegen hatte ich den ja gekauft.

    Zitat Zitat von Sternthaler Beitrag anzeigen
    ... Auf das dir die Ideen für deine Messwertaufnahmeliste nie zu Ende gehen ...
    Mal so : die Idee wie ich von der RS232 ohne Umweg über Terminal, guttenbergisches past´n´copy ins Exceldiagramm komme, die fehlt mir noch. Denn diese Listenwerte muss ich derzeit noch mit Handarbeit reinpopeln, zwar in Blöcken zu je 200 Daten (a 3 Werten), aber immer noch einiger Aufwand.
    Ciao sagt der JoeamBerg

  4. #4
    Erfahrener Benutzer Robotik Einstein Avatar von Searcher
    Registriert seit
    07.06.2009
    Ort
    NRW
    Beiträge
    1.703
    Blog-Einträge
    133
    Alle Daumen hoch d(^_^)b Sowas hab ich mir immer gewünscht

    ... ohne Umweg über Terminal, guttenbergisches past´n´copy ins Exceldiagramm komme, die fehlt mir noch ...
    Bei so etwas versuche ich es über Textdateien mit .csv Endung. Wenn die Daten darin durch Semikolon (Spalten) und Carrige Return, Line Feed (Zeilen) getrennt sind genügt bei zB. EXCEL 2003 ein Doppeklick darauf und die Daten sind im Spreadsheet. Daten werden bei mir in dem Format an Hyperterminal geschickt. Dort kann man einstellen, daß die Daten in einem Textfile (eben die .csv Datei) mitprotokolliert werden.

    Involviert immer noch ein Terminal und vielleicht machst Du das auch schon so, sonst fällt mir nur noch ein, eine eigene PC oder sogar EXCEL Applikation zu schreiben.

    Gruß
    Searcher
    Geändert von Searcher (06.09.2013 um 21:27 Uhr)
    Hoffentlich liegt das Ziel auch am Weg
    ..................................................................Der Weg zu einigen meiner Konstruktionen

  5. #5
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    07.03.2011
    Beiträge
    1.899
    @Oberallgeier

    mir erschließt sich dein Diagramm nicht so ganz. Da ich die Legende zu den Kurven nicht richtig lesen kann (insbesondere zur zweiten und dritten Kurve), weiß ich nicht wirklich, was sie anzeigen.

    Da ich unter Linux arbeite, ist meine Lösung Daten auf dem PC anzuzeigen für dich (EXCEL klingt nach Windows) möglicherweise nicht machbar. Ich habe ein kleines C Programm, das an der seriellen lauscht und auf die Startmeldung wartet, die ich am Anfang eines Datensatzes schicke. Es liest dann zeilenweise die Daten und schreibt sie passend für das Anzeigeprogramm (z.B. gnuplot) in eine Datei. Wenn die Endemeldung kommt, beendet es sich. Ich starte dann das Plotprogramm mit dieser Datei. Mit einem passenden printf() könnte dabei auch ein Format für EXCEL erzeugt werden. Dazu bräuchtest du aber einen C Compiler für Windows.

    MfG Klebwax
    Strom fließt auch durch krumme Drähte !

  6. #6
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    8.652
    Hi Klebwax, danke für die offene Kritik. Du hast Recht - es war mein erster Versuch auch Texte und Kurven in einem YuTV-Video anzuzeigen. Klappt wirklich nur mit sehr bescheidener Qualität. Tut mir leid, dass das so schlecht rauskommt - und mit den bescheidenen Beschreibungen auch eher für die Katz ist.
    Zitat Zitat von Klebwax Beitrag anzeigen
    ... mir erschließt sich dein Diagramm nicht so ganz ... Kurven nicht richtig lesen kann ...
    Dann versuch ich´s mal hier ausführlich, die Diagramme kann man hoffentlich mit der folgenden Erklärung trotzdem lesen.

    Zur Servoansteuerung:
    Es werden aktuell 8 Servos angesteuert, Servo 1 bis 8. Gemessen wird stets Servo 7. Der entsprechende Servopointer wird vom Timer1A alle 2,56 ms weitergeschaltet - bei 8 Servos kommt also jeder Servo alle 20,48 ms dran. Mit der Weiterschaltung wird Timer1B gestartet mit der jeweils gewünschten Pulsvorgabe und es wird der entsprechende Servopin eingeschaltet. Mit Ablauf von Timer1B wird der Servopin ausgeschaltet.

    Aufbau der Messung
    - Während der Messdauer werden im Abstand von je 1 Millisekunde Werte erfasst, eine höhere Auflösung ist theoretisch möglich, praktisch aber wohl nicht nötig und wegen des deutlich höheren Datenaufkommens mit dem vorhandenen Controller auch schwierig.
    - Die Werte werden in drei Wertefelder eingetragen und nach Ablauf der Messung als Liste ausgegeben (siehe Liste).
    - Erfasst werden 999 (oder bis zu 1599) Gruppen von je 3 int16-Werten. Das sind in den vorgelegten Diagrammen die Werte für Servopointer, ADC-Wert und Boardzeit in 50µs-Zeitschritten. Das Format int16 für den Servopointer hat programmtechnische Gründe, die anderen Werte benötigen das Format für ihre Größe.
    - Die Messung wird nach Startfreigabe erst gestartet, wenn Servo 2 aktiv ist - damit ist ein Vorlauf der Datenerfassung von rund 10 ms (von Servo2 bis Servo7) gewährleistet, BEVOR der erste, neue Positionswert für die Messfahrt an Servo7 abgegeben wird. De fakto startet der protokollierte Servolauf also rund 10 ms nach Beginn der Aufzeichnung und dokumentiert den Zustand in dieser Zeit VOR dem Start der Messung. Damit kann man sicher die Verzögerungszeit der Bewegung ab Eingabe eines Positionswertes erfassen.
    - Die Messung erfolgt nach zwei Verfahren. Einmal ist "full speed" möglich. Dabei wird lediglich der Zielpunkt des Servos ausgegeben, der Servo fährt mit der vollen Geschwindigkeit entsprechend seiner Auslegung. Zweitens ist die "SlowMotion" möglich. Dabei wird bei JEDER neuen Servoperiode ein neues Ziel gesetzt, das zwischen 1 und 189 ticks von der aktuellen VORGABE (nicht dem aktuell erreichten Punkt!) entfernt ist. Hier sind Werte unter 10 kaum sinnvoll, aber praktisch möglich. Die (bisher getesteten) Servos reagieren (erst) auf Fortschrittswerte zwischen 10 und 15 Incremente. Bei Vorgabe von Increment 190 ticks wird full speed gefahren, also eine Zielvorgabe - egal wieviel Perioden die Fahrt bis dahin dauert.
    - Die Messung wird mit Eintrag des letzen Datentripels beendet.
    - Zur optischen Anzeige der Datenerfassung wird während der Messung eine Signal-LED eingeschaltet.
    - Nach Ende der Messung können in einem gesonderten Menuepunkt die aufgezeichneten Daten vom Terminalfenster in die Tabellenkalkulation übertragen werden, siehe Tabellenspalten C, D, E und F.

    Auswertung:
    - Die interne Boardzeit Izeit_1 läuft bis 20000 (entsprechend 1 Sekunde), daher muss für eine saubere Diagrammdarstellung der Wert bei mehreren Izeit_1-Perioden - je nach Datenumfang in Schritten von 20000 erhöht werden, siehe Tabelle Zeile 10 ab Spalte I.
    - Mit der korrigierten Boardzeit (zeit/tupsi) wird die Laufzeit der MEssung in Millisekunden (Faktor 0,05) errechnet, Spalte K. Die Drehgeschwindigkeit des Servos in ΔADC/Δms wird errechnet. Für die bessere Sichtbarkeit wird dieser Wert mit dem Geschwindigkeitsfaktor N8 multipliziert und mit dem Faktor N9 im Nullpunkt verschoben.
    Die Darstellung des ADC-Wertes des Messpotentiometers über die Messzeit im Diagramm ist die blaue, etwas aufgedickte Linie.
    - Die schrecklichrosa Linienflut ist die Geschwindigkeit. Wegen der sehr geringen Unterschiede im ADC-Wert und des kleinen Zeitschrittes ist das nur ein mickriges Hin-und-Her das sehr wenig Aussagekraft hat. Daher die Trendlinie als gleitender Durchschnitt der letzten zehn Perioden. Erst daraus kann sinnvoll auf den >momentanen< GEschwindigkeitsverlauf des Servos geschlossen werden.
    - Die Laufzeit von Position 1 (Abfahrt, im Tabellenblatt SrvZat) nach Position 2 (Ziel, im Tabellenblatt SrvZbt) ist durch Ablesen des Diagramms oder aus der Tabelle zu erfassen. Hier bietet das Diagramm eine eindeutige Hilfe wegen des sichtbaren Kurvenverlaufes ACD und gleitender Durchschnitte.

    Die Tabelle (Excel) mit Diagramm 04-Sep13-15h00_inc-30.xls habe ich im Original beigelegt, als Beispiel - Übersicht zum Erklären - ist ein Dump einer weiteren Messauswertung für meinen High-Torque beigelegt.

    Hoffentlich nutzt diese Beschreibung für ein besseres Verständnis der Messwerte.
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken List_out.jpg  
    Angehängte Dateien Angehängte Dateien
    Geändert von oberallgeier (07.09.2013 um 22:49 Uhr) Grund: Liste nachgereicht
    Ciao sagt der JoeamBerg

Ähnliche Themen

  1. Und schon wieder ein Servotester, aber ein erweiterter
    Von Searcher im Forum Vorstellung+Bilder+Ideen zu geplanten eigenen Projekten/Bots
    Antworten: 35
    Letzter Beitrag: 06.09.2013, 20:16
  2. Servotester mit Dual Rate- und Expofunktion
    Von dingeldongel im Forum Elektronik
    Antworten: 0
    Letzter Beitrag: 09.10.2012, 08:52
  3. Servotester für VB und Bascom
    Von kalletronic im Forum Open Source Software Projekte
    Antworten: 15
    Letzter Beitrag: 31.07.2011, 10:58
  4. Servotester
    Von avus17 im Forum Elektronik
    Antworten: 36
    Letzter Beitrag: 06.02.2011, 21:11
  5. Servotester
    Von vohopri im Forum Eigene fertige Schaltungen und Bauanleitungen
    Antworten: 13
    Letzter Beitrag: 27.07.2009, 03:24

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

fchao-Sinus-Wechselrichter AliExpress