Kleine selbstbau Wuchtmaschiene?

Hallo,

habe heute den Link zu diesem Projekt bekommen. Ich finde es sieht sehr intressant aus. Wird das noch verfolgt ?

Gruss Hasturo
 

Scotch

User
Hallo Felix,
auch ich bin über ein anderes Forum auf Dein Projekt aufmerksam geworden.
Da ich meinen Quadrocopter gerade auf ein anderen Sensor (MPU 6050) umgebaut habe,
sucht mein WMP Sensor noch eine neue Aufgabe ;-)
Deine ID ist auch für Laien wie mich noch gut nachzuvollziehen.
Zu Deinem Aufbau habe ich dann noch mal eine Frage.
Wenn Du die 7 Löcher überklebst und nur eins frei lässt, hast Du doch schon von
Haus aus eine Unwucht. Was für Material hast Du für die Aufhängung benutzt?
Es gibt im PC Bereich Lüfter Entkoppeler,
z.B. diese hier http://www.pcsilent.de/de-pd-Luefte...koppler-Luefter-Gummi-Luefter-Slicks-228.html
Wenn man die Motorhalterung aus eine 1mm - 1,5mm Epoxyplatt erstellen würde und damit lagern,
dann wäre die Höhe annähend gleich.
Wie Sieht es mit der Schräglage der Messapparatur aus? Würde dies das Ergebnis verfälschen?
Wenn ja sollten evtl. Schraubfüße drunter. Diese dann wegen den Vibrationen mit Gummi oder Filz
beschichten. Zur Ausrichtung könnte man dann noch eine Dosenlibelle aufkleben.
https://www.mikrocontroller.com/ind...id=263&zenid=eaaef6ca45cc4539e137dfe3ab2e6d2e

Gruß Ingo
 

BOcnc

User
Hallo Ingo,

das mit der Lüfteraufhängung ist eine gute Idee.

Der Sensor zeigt eine Beschleunigung an. Deshalb kann das auch schief stehen. Nach dem Einschalten muss man erst die Werte ohne Bewegung lesen. Das ist dann Null. Wenn man dann an einer bestimmten Stelle der Drehung die Werte für die Beschleunigung für x und y Richtung hat kann man den maximalen Beschleunigungsvektor berechnen und man kennt in welcher Richting mit welcher Kraft der Motor ausgelenkt wird.

gruß
Werner
 

ronco

User
Hi,

habe das erstmal ruhen lassen.. hab erstmal an der MultiWii soft geübt ;) werde das aber demnächst nochmal in angriff nehmen! aber so zimmlich alles neu machen.


software:
- dieses mal von grund auf nur dafür geschrieben (das andere war ne geänderte MWC 1.0)
- interrupt gesteuert => der punkt an dem gemessen werden soll wirt auf gar keinen fall verpasst


hardware:
- ein ITG 3200 gyro statt der WMP => kann halt mit 400KHz i2c laufen eine WMP wird aber auch noch gehen
- ein ruhigerer motor .. dachte da vllt an einen orginalen CDR .. vorteil der sitzt in nem messing schleif lager und der hat 3 hall sensoren drumrum ..
davon könnte man einen zur positions messung nehmen.

eure idee mit der CDR lagerung ist auch gut ;) so könnte man ja quasi einfach ein CDR LW nehmen und muss nur noch den arduino anlöten :D


gruß

felix
 

Scotch

User
Ich arbeite mich gerade ein wenig in Prcessing ein.
Die ersten erfolge habe ich schon.
Morgen oder Übermorgen bekomme ich noch ein Buch zu Processing.
Habe jetzt ein einfache 1Kanal Graphen (Plotter) für die Mausbewegung.
Zum Testen hab ich mir den WMP am Arduino Uno geklemmt und werde mal versuchen
die I2C Werte vom Gyro in Processing darzustellen.
Aber dazu muss ich erst mal die Serielle Schnittstelle zum laufen bekommen.

Wie sollte eine GUI aussehen bzw was sollte sie Beinhalten?

Gruß Ingo
 

ronco

User
Hi Ingo,

ist eigentlich nicht viel.. denke ich .. also die gyro x und y daten (z brauchts da net) und die eigentlich auch nur um zu checken ob alles richtig geht.

dann irgentwie 3 texte wie messung leuft, messung beendet und gefunden bei xxx° .. zur einfacheren ansicht wäre vllt. ein großer kreis der halt die richtung der unwucht anzeigen kann ganz gut.

gruß

Felix
 
Bilder.

Bilder.

Hallo,

hat ev. jemand ein paar Bilder von einem Aufgebautem Wuchtii.

Ich habe mir jetzt ein wii motion plus bestellt und einen Arduino Uno.

Werde das mit dem machen. Hätte zwar noch einen Atmega zuhause, von einem Arducopter aber da hab ich schon was andres dran das ich jetzt nicht auseinander bauen kann.

Wie sieht das den eigentlich mit anderen Gyro Sensoren aus sind die ev. besser auflösend?

Gibt es auch einen kompletten code (pde). Würde mir das auch mal gerne anschauen. Zusätzlich wäre das Gui tool noch schön, so das man das kompilieren kann und selbst etwas rumprogrammieren kann. Muss ja dann eh meine Anschlüsse an mein Board anpassen.

Gruß Michi
 
Hallo, so mittlerweile hab ich von ronco das Programm bekommen. Erstmal danke dafür.

Ich werde allerdings alles neu Programmieren.

Das Prinzip wird aber gleich bzw. ähnlich bleiben.


Ich hab auf meinen Motor einen "weißen" Strich gemacht (ist noch sehr dick werde ich noch dünner testen). Das ist mein 0 Punkt. (da muss ich noch schauen wie das bei anderen Farben des Motors ist)

Dann lass ich einen Kalibierungslauf machen. Dabei dreht sich der Motor und der optische Sensor (aktuell noch ohne diode, ich werde es auch noch mit Diode testen) misst die Werte die durch den Motor und dem Strich darauf zurückgegeben werden.

Aus diesen Werten lese ich das Maximum aus und das Minimum das der Sensor zurück gibt aus und berechne den Mittelwert. Dieser Wert ist mein Schwellenwert.
Wird dieser erreicht zählt er 1 RPM hoch.
Aktuell ist der WM+ zwar schon angeschlossen, aber ich Steuer ihn noch nicht an. Bis jetzt habe ich erstmal geschaut das ich die Position des Motors messen kann.

Das geht aber jetzt so wie es aussieht ganz gut. Leider hat es mir beim 3. Lauf meinen Motor zerlegt, weil er nicht angelaufen ist (Regler war nicht richtig eingestellt), jetzt muss ich erst einen neuen Regler besorgen, sonst zerlege ich noch mehr Motoren.

Deswegen drehe ich auf dem Video den Motor per Hand. Es ging aber auch über den Arduino angesteuerten Motor.

Als nächstes werde ich wenn das Programm den Strich erkennt, die Werte aus dem WM+ auslesen und dann wie schon in dem "original Programm" somit umrechnen wo die Unwucht ist.
Ich denke ich werde es aber direkt am PC ohne LED´s machen, da man einen Motor ja nicht so oft wuchtet und dies auch nicht am Platz draußen macht.

Im Anhang seht ihr ein erstes Video dazu.

Leider muss ich noch auf die Diode mit IR Sensor warten einen Hallsensor hab ich auch bestellt, aber der glaub ich bringt nicht viel, da wenn man die Magneten des Motors ausliest nicht weiß wie der Motor steht.

Aktuell hab ich als Arduinoboard das Ardupilot Mega 1280, ich habe mir aber schon ein Arduino uno und ein Atmega 2580 bestellt. Ich weiß noch nicht welches ich nehmen werde wahrscheinlich das kleine das wird von Code her bei weitem reichen.


Eine Frage hätte ich noch vielleicht hat jemand ein Idee, eigentlich wäre ein Beschleunigungssensor sinvoller oder? Weil der WM+ gibt ja ein deg/sec zurück was ja eine Winkelgeschwindigkeit ist.

Gruß druckgott
 
So mittlerweile hab ich einen BMA180 Beschleunigungssensor bestellt, da der WM+ der falsche Sensor dafür ist, damit misst man ja Gyrosbeschleunidungen, somit könnte man ev. damit noch die Z Position wenn der Motor senkrecht steht herausfinden. Daraus dann ableiten wo das Gewicht in Z hin muss.

Aber erstmal braucht man ein Beschleunigungssensor um die Position, in dem Moment wo der Strich überlaufen wird, herauszufinden, an der die Unwucht ist.

Somit wird dann über den tan und die Beschleuigung in X und Y (Drehachse des Motors in Z Richtung) die Position der Unwucht ermittelt.

Das wird das erste sein was ich Einbau, wenn ich den Sensor habe. Zudem werde ich den optischen Sensor gegen einem mit integrierter IR LED austauschen und unabhängig vom "externen" Licht zu sein.

Aktuell bin ich noch am überlegen wie ich herausfinde welcher sensor die geringste Abfragefrequenz hat. Ich denke das werde ich über einen Timer machen, wenn die delta Zeitabweichung zur vorherigen Messung (Umdrehung des Motors) deutlich größer ist als die vorherige dann misst ein sensor "misst ;-))"

gruß druckgott
 

BOcnc

User
Ich glaube das die WM+ genau richtig ist.
Du willst doch wissen in welche Richtung die Auslenkung ist und wie schnell. Genau was die WM+ macht.
 
Das WM+ misst Gyrokräfte also wenn man das WM+ um seine Achsen dreht ändern sich die Werte.
Ich will aber die Beschleunigungen in X und Z Richtung des Motors um diesen erstmals statisch zu wuchten. Die frage ist ob ich vorher statisch oder erst dynamisch wuchten muss.

Da hast du recht eigentlich brauchen wir beide Module meiner Meinung nach. Damit kann man dann statische als auch dynamische wuchten:

http://de.wikipedia.org/w/index.php?title=Datei:Unwuchtschwingungen.png&filetimestamp=20070324023059

Was meint ihr?

Die Frage ist nur wie man die dynamische Unwucht auf eine Masse umrechnet die man an einer stellen abringen will, da diese ja in deg/sec ausgegeben wird.
Oder man versucht per Try and error.

Hier ist ein ganz interessant er Beitrag:
http://www.google.de/imgres?num=10&...ndsp=19&ved=1t:429,r:10,s:0,i:101&tx=25&ty=52
dort wird auch über die Beschleunigung gewuchtet.
Ich denke das sollte auch für das erste mal reichen wenn wir über die Beschleunigungen wuchten.
 
Also den z Wert der WM+ können wir nicht gebrauchen. Nur x und Y.

Ah ich meinte beim Beschleunigungssensor Axial in X und Y wenn die Motorachse in Z ist
Beim WM+ ebenfalls dir Rotation um X und Y.

Somit würde man vorerst Statisch über die Beschleunigungen wuchten und wenn das ok ist weiter auf das dynamische umsteigen.

Prinzipien könnte man auch gleich nur dynamisch mit dem WM+ wuchten aber ich denke das Dynamische wuchten ist weit aus schwerer, da dort ja
die Masse entlang der Z Achse angebracht oder entfernt werden muss.

Wenn man z.B. ein Propeller wuchten will, wird das wohl ziemlich schwer.
Zudem ist denke ich die Aufhängung für den Motor dann auch nicht ganz so einfach.

Aber wenn ich alles habe werde ich einfach mal versuchen was wie weit geht.
 

BOcnc

User
Bei einer Unwucht bewegt sich die Z Achse des Motors auf einer Kreisbahn bezogen auf den Äusseren Tisch.
Man muss genau an einer Stelle der Drehung messen (an Strich) um da die Position der Auslenkung zu messen (X und Y).
Genau das geht mit der WM+.

Mit dem BA180 würde das nur gehen wenn der Tisch genau horizontal steht weil der zum Mittelpunkt der Erde misst.

Oder liegte ich jetzt falsch.
 
Ja da hast du recht so sehe ich das auch, aber wenn man jetzt nur die statische umwucht messen will reicht ein Beschleunigungssensor aus.

Dann hast du recht, kann theoretisch die Achse noch schief stehen. Es sollten dann aber schon keine Kräfte mehr auf den Anschraubpunkt des Motors wirken (in X und Y), sondern nur ein Kippmoment um X und Y das kann man dann mit dem WM+ heraus filtern und eliminieren.

Allerdings ist mir nicht ganz klar wie ronco mit dieser Formel hier:
PHP:
#define GYROMIX(X,Y) axisPID[ROLL]*X + axisPID[PITCH]*Y

              gyroMaxValues[0] = GYROMIX(0,-1); //0° 
              gyroMaxValues[1] = GYROMIX(-.25,-.75)*1.35; //22,5°
              gyroMaxValues[2] = GYROMIX(-.5,-.5)*1.7; //45°
              gyroMaxValues[3] = GYROMIX(-.75,-.25)*1.35; //67,5°
              gyroMaxValues[4] = GYROMIX(-1,0); //90°
              gyroMaxValues[5] = GYROMIX(-.75,.25)*1.35; //112,5°
              gyroMaxValues[6] = GYROMIX(-.5,.5)*1.7; //135°
              gyroMaxValues[7] = GYROMIX(-.25,-.75)*1.35; //157,5°  
              gyroMaxValues[8] = GYROMIX(0,1); //180°
              gyroMaxValues[9] = GYROMIX(.25,.75)*1.35; //202,5°
              gyroMaxValues[10] = GYROMIX(.5,.5)*1.7; //225°
              gyroMaxValues[11] = GYROMIX(.75,.25)*1.35; //247,5°
              gyroMaxValues[12] = GYROMIX(1,0); //270°
              gyroMaxValues[13] = GYROMIX(.75,-.25)*1.35; //292,5°
              gyroMaxValues[14] = GYROMIX(.5,-.5)*1.7; //315° 
              gyroMaxValues[15] = GYROMIX(.25,-.75)*1.35; //337,5°


die Richtung bestimmt.
 
Ansicht hell / dunkel umschalten
Oben Unten