PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Verkaufe Modellbauservo Umrüstplatine AS5040 Absolutwertgeber



jojo45
17.06.2012, 10:57
Hallo,
ich habe noch mehrere Umrüstplatinen für meine Modellbauservos hier rumliegen.

Mit diesem Board ist es möglich einen Modellbauservo auf einen Absolutwertgeber umzurüsten.
Verwendet wird dazu der AS5040 von austriamicrosystems von diesem auch mit Magneten kostenlose Samples von austriamicrosystems angefordert werden können.

Auf dem Board sind spezielle Pads wo folgende Drähte angeschlossen werden können:

VDD5V
VSS
PWM
Analogwert 0 - 5VDC (0° - 360°)


Alle anderen Pins können direkt am IC abgegriffen werden.
Der Motor kann dann via Motortreiber über PWM "bedient" werden und es ist mittels der Platine und dem Motor ein geschlossener Regelkreis vorhanden.
Ideal für Lehrzwecke und natürlich auch für alle denkbaren Anwendungen um genau zu positionieren.


Installationsanleitung:

Das vorhandene Poti und die Elektronik wird aus dem Servo entfernt (Außer dem Motor)
Das Poti wird geöffnet und die Platine davon entfernt.
Sichtbar ist nun der Metallstift der Verbindung zum Getriebe hat
Auf diesem Stift wird nun der Neodymmagnet mit Sekundenkleber fixiert.
Dieses "Magnetpoti" wird nun wieder in den Servo gesteckt.
Die fertige Platine mit bestückten Bauteilen wird nun auf den Magneten gesteckt.
Die Platine kann mit Heißkleber fixiert werden.



Stückliste:


Anzahl

Bezeichnung

Link



1
100nF Kondensator
http://de.farnell.com/avx/06035c104jat2a/kondensator-mlcc-0603-50v-100nf/dp/1740621


2
4,7kOhm Widerstand
http://de.farnell.com/vishay-draloric/rcl0612-4k7-1-100-ppm-k-e3/widerstand-0612-4k7-1-long-term/dp/1877852RL


3
1µF Kondensator
http://de.farnell.com/united-chemi-con/emvy500ada1r0md55g/capacitor-alum-elec-1uf-50v-smd/dp/1698669


1
AS5040 IC
http://www.ams.com/eng/Products/Magnetic-Encoders/Rotary-Encoders/AS5040

http://de.farnell.com/austriamicrosystems/as5040-assu/encoder-magnet-dreh-10bit-16ssop/dp/1630800


1
MD6SH-1 (6x2,5mm)
Neodymmagnet
http://www.ams.com/eng/Products/Magnetic-Encoders/Magnets3/AS5000-MD6SH-1





Bestellen:
Eine Platine kostet 3,50 € + 1,00 € Versand (Versandkosten nur einmal pro Lieferung).
Die Bestellung mit folgenden Infos einfach an mich via PN:

Anzahl der gewünschten Platinen
Lieferadresse
Bezahloption (PayPal oder Banküberweisung)

dingeldongel
19.12.2012, 18:42
Hab die Platinen getestet. Funktionieren gut! Versuche gerade damit Rotationen auch über 360Grad hinweg zu messen. Ist die Rotationsgeschwindigkeit niedrig (ca. 60U/min), geht das noch relativ einfach über das erkennen eines Sprunges der Ausgabewerte z.B. von einem WErt über 300grad auf einen Wert unter 100Grad bei Vorwärtslauf und umgedreht bei Rückwertslauf. Man kann so problemlos den Servo um z.B. 3850 Grad drehen lassen. Zurück auf 0 Drehen und die Position stimmt haargenau.

Problematisch wird es bei längeren Codes und höheren Geschwindigkeiten. Da verliert der Controller hin und wieder mal ne Umdrehung.

Hat jemand ne Idee wie man das Problem lösen kann?

Die Incremental-Ausgänge lassen sich leider über diese Platine nicht nutzen, würden mir aber auch nicht besonders helfen, da ich vier von den Encodern an einem Controller verwenden möchte.

jojo45
19.12.2012, 21:59
Nutzt du den 0-5VDC Analogwert? Oder das PWM Signal?
Um welche Anwendung geht es? Musst du die Anzahl der Umdrehungen mitbekommen oder geht es dir nur darum, dass nach der schnellen Drehzahl die Position wieder stimmt?

dingeldongel
20.12.2012, 10:14
WEnn ich die Bilder deiner Platine richtig deute, ist das Signalkabel so verlötet, dass man PWM abgreift, diese dann mit den Elkos und Widerständen geglättet wird und dann ein analoges Signal rauskommt. Das greife ich ab. Ist doch so gedacht oder?

Ich brauche am Ende einen exakten Umdehungsgrad. Z.B. 4372 Grad oder -3720Grad. Wie bei einer CNC mit Servoantrieb. Ich brauche nicht die 10Bit Auflösung. 8Bit würden mir reichen aber ich brauche diese Auflösung bei 10-100 Umdrehungen und einer Geschwindigkeit von max. 200 Umin.

Der Index Pin ist eine Idee, aber wie erkenne ich ob vorw. oder rückw. gedreht wurde?

jojo45
20.12.2012, 11:26
Das greife ich ab. Ist doch so gedacht oder?
Ja durch die Verzögerung 2. Ordnung wird das Signal geglättet. So ist es gedacht um nicht die Dauer der PWM Impulse zählen zu müssen.


Der Index Pin ist eine Idee, aber wie erkenne ich ob vorw. oder rückw. gedreht wurde?
Du weißt doch in welche Richtung du den Motor ansteuerst oder? Dadurch weißt du dann auch ob du aufwärts oder abwärts zählen musst.

dingeldongel
20.12.2012, 12:15
Du weißt doch in welche Richtung du den Motor ansteuerst oder? Dadurch weißt du dann auch ob du aufwärts oder abwärts zählen musst.

Das müsste zu 95% funktionieren. Es könnte bei mir aber passieren, dass das Rad ohne Motorantrieb durch Einwirkung von außen gedreht wird. Wie z.B. beim Ausrollen eines Fahrzeugs.

Hat schon mal jemand die Auswertung mit SSI getestet? Bringt die auch die Werte von 0-1023 oder addiert sie die werte bei mehreren Rotationen.

jojo45
20.12.2012, 12:49
Hat schon mal jemand die Auswertung mit SSI getestet?

Siehe Datenblatt des AS5040. Dort wird beschrieben, dass über SSI ein 10bit Wert also ein Dezimalwert von 0-1023 übertragen wird.

Wenn du denkst, dass du es so nicht hinbekommst, dann könntest du dir auch mal den AS5130 anschauen: http://www.ams.com/eng/Products/Magnetic-Position-Sensors/Magnetic-Rotary-Position-Sensors/AS5130
Der hat einen Multiturn-Counter, d.h. er zählt die Umdrehungen in einem internen Register mit. Der Zahlenbereich ist von -128 bis +127 Umdrehungen.

oberallgeier
20.12.2012, 13:55
... ich habe noch mehrere Umrüstplatinen für meine Modellbauservos ... Eine Platine kostet 3,50 € + 1,00 € Versand ...Wie groß ist denn die Platine - UND - wie groß sollte-muss der Servo sein? In welche Servos hast Du die denn schon mit Erfolg eingebaut? Ach ja, ich vermute dass man für mehrere Platinen nur einmal Versandkosten bezahlt, richtig ?


... Der Motor kann dann via Motortreiber über PWM "bedient" werden ...Dieser Motortreiber ist offenbar nicht Bestandteil von Deiner Platine bzw. muss separat beschafft, plaziert, verdrahtet und angesteuert werden ! ?

jojo45
20.12.2012, 14:55
Wie groß ist denn die Platine - UND - wie groß sollte-muss der Servo sein?

Die Platine hat eine Fläche von 16mm x 16mm. Ich habe einen billigen MG995 Servo aus Ebay verwendet,
da die Qualität des Potis sowieso egal ist, da es ja entfernt wird. Aber das Poti sollte vorhanden sein, da von diesem
das Verbindungsstück zum Motor genutzt wird.


In welche Servos hast Du die denn schon mit Erfolg eingebaut?
Ich habe 8 Motoren umgerüstet, von dem Typ der auf dem Foto zu sehen ist.
Erfolg für den Umbau ist immer gegeben, es funktioniert sehr gut und einfach und hat bei mir auf Anhieb und auch immer funktioniert.
Durch den Analogwert ist es auch sehr einfach programmiertechnisch im µC umzusetzen.


Ach ja, ich vermute dass man für mehrere Platinen nur einmal Versandkosten bezahlt, richtig ?
Ja, richtig. Versandkosten nur einmal.


Dieser Motortreiber ist offenbar nicht Bestandteil von Deiner Platine bzw. muss separat beschafft, plaziert, verdrahtet und angesteuert werden ! ?

Der Motortreiber ist nicht Bestandteil, ich habe eben die 2 Drähte für den Motor + 3 Drähte für das Encoderboard aus dem Motor herausgeführt.
Die 3 Drähte gehen dann zum µC und die anderen beiden auf den Motortreiber. Also werden aus dem Motor 5 Drähte herausgeführt.
Das Motortreiberboard mit L298N kann fertig und günstig bei Ebay erworben werden.

Die Motoren sehen dann auch wieder sehr ordendlich aus, wie nachfolgendes Foto zeigt.

oberallgeier
20.12.2012, 19:33
Vielen Dank für die ausführliche Antwort. Und ein donnernder Applaus für den Roboterarm. Hmmm grübel das ist ja mal ne feine Idee grübel ich hab so ein ähnliches Modell bei mir rumstehen grübel ...


... 16mm x 16mm ... 8 Motoren umgerüstet ... Motortreiber ist nicht ... 5 Drähte herausgeführt ...5 Drähte habe ich bei meiner Lichtschrankenlösung auch (Beispiel hier). (https://www.roboternetz.de/community/threads/32293-DC-Kleinstmotor-mit-Getriebe-Drehsensor-5V-510-Upm?p=401963&viewfull=1#post401963) Genauso zwei Drähte für Motorpower und drei für die Lichtschranke. Mit den vier Encoderschlitzen bekomme ich bei nur-steigender-Flanke ne Auflösung von fast 11,5 bit - theoretisch 3072. Allerdings bekomme ich bei meiner Methode das gesamte Getriebspiel mit. Da ist die Lösung mit dem AS5040 sicher besser - und es ist ein Absolutgeber, hmmm. Mal überlegen (ich hab ein neues Projekt, da könnt es passen).

Ich hab leider noch ne Frage: Welche "Drehzahl" kann denn Deine Lösung bzw. der AS5040 theoretisch auflösen?

jojo45
20.12.2012, 20:00
Und ein donnernder Applaus für den Roboterarm.
Dankeschön. :)


Welche "Drehzahl" kann denn Deine Lösung bzw. der AS5040 theoretisch auflösen?
Nach dem Datenblatt 30.000 upm. (Ich denke das sollte reichen)