PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : VDD und Daten übertragen!? Propeller Clock



bexter
25.08.2011, 19:26
Hi!
Ich muss über 2 Schleifkontakte Daten und Versorgungsspannung für den 2 Microcontroller übertragen.
Kann das so hinhauen wie in meinem Schaltplan?
Wie kann man das noch lösen, möglicht ohne V-Drop bei der Diode...
Lg Alex19776

PICture
25.08.2011, 19:34
Hallo!

Schleifkontakte eignen sich für fehlerfreie Datenübertragung ohne Rückbestätigung nicht. Dein Schaltplan ist für mich unverständlich. :(

-schumi-
25.08.2011, 19:42
@PICture
Ich schätze er will die Versorgungsspannung des zweiten µC schnell Ein/Ausschalten und somit seriell (wie bei nem UART) die Daten übertragen. Der µC läuft auch mit diesem Signal, das mit nem C gepuffert wird

Ürigens fehlt vor der Diode (sprich an PD2 von IC2) ein Pulldown, sonst bekommst du kein richtiges Low

Ob das funktioniert - ich weis es nicht^^

Viele Grüße
-schumi-

bexter
25.08.2011, 19:43
Siehst an das Rauschen durch die Schleifkontakte hab ich gar nicht gedacht.
Zu meiner Schaltung:
Der Transistor wird vom 1. Microcontroller mit einer Frequenz gepulst. Sagen wir 20kHz.
Die 20khZ gehen direkt zum 2. Microcontroller nach dem Schleifkontakt, und durch Frequenzmodulation werden die Daten übertragen.
gleichzeitig werden nach der Diode die Pulse über den Kondensator integriert, und ergeben dann 5V-Vf der Diode. Also ca. 4,5V die als Versorgung des 2. Microcontroller dienen.
So stell ich mir das vor, aber vielleicht gibts einen eleganteren Weg???
LG Alex B.

Ganz richtig Schumi, so hab ich mir das gedacht :p

-schumi-
25.08.2011, 20:04
20Khz pulsen, Frequenzmodulation... Das hört sich alles ziemlich kompliziert an...

Wenn sich das Rauschen durch die Schleifkontakte im Rahmen hält (Evtl. ein par pF nach GND?), würd ich einfach den TxD-Pin von IC1 nehmen, einen Mosfet dran der das Signal invertiert (Damit 5V kommen wenn nichts gesendet wird) und die nötige Leistung bringt. Dann am IC2 das Signal an PD2 noch mit nem Transistor invertieren.

Dein 1 MilliFarad Kondensator sollte das leicht glätten können ;-))

PICture
25.08.2011, 20:06
Ich habe zwar keine fertige und ausprobierte Lösung, würde aber die Daten lieber über LED + Phototransistor und nur VCC durch gepufferte Schleifkontakte übertragen. ;)

bexter
25.08.2011, 20:16
Hmm Led und Phototransistor klingt interessant, da ich eh eine Ir-Led in der Basis habe, und einen Phototransistor auf dem drehenden Teil, um die Umdrehungen zu messen, und das Bild zu synchronisieren.
Aaaber die sehen sich nur einmal pro Umdrehung...

PICture
25.08.2011, 20:36
Klar, die müssen entweder möglichst in der Mitte oder mehrere Sender sein, denke ich. Eventuell kurze Pakete komprimierten Daten, falls möglich.

Sonst fällt mir nur drehbarer Trafo aus defekten VHS Videorecorder ein. ;)

WL
25.08.2011, 20:59
Als Energieübertragung bietet sich außerdem ein Royer-Converter an.
Die Datenübertragung würde ich auch mit IR durch eine Hohlwelle machen.

bexter
25.08.2011, 21:14
Platz für 2 Schwingkreisspulen hab ich leider nicht, da das ganze in ein Fesplattengehäuse passen muss, und die rotierende Platine nur 5mm Luft nach unten hat.
Das Layout ist auch schon fast fertig, und da ist die Versorgung über Schleifringe schon fix drauf, das möchte ich ungern ändern...

Die Idee mit Infrarot finde ich aber gut, aber da ich die Daten nur zum stellen der Uhr brauch und daher keine hohe Bandbreite, würde es nicht vielleicht so gehen...

Der 2. Microconroller berechnet aus der "vorbeifliegenden" IR-Led die Drehzahl, wenn jetzt der 1.Microcontroller die IR-Led ausschaltet wird das ausbleiben des Signals als Logische "1" interpretiert.
damit liesse sich doch die Drehzahl berechnen und gleichzeitig die paar Daten übertragen...

Bumbum
26.08.2011, 18:04
Hallo,

ich hatte bei mir im Auto früher mal ans Lenkrad Tasten gebaut, über die ich die Anlage gesteuert habe. Die Kommunikation und Versorgung habe ich auch über nur einen Draht gelöst. (Schleifkontakt der Hupe). Masse ist beim Lenkrad natürlich ebenfalls vorhanden. Dazu habe ich folgende Schaltng verwendet:

19785

Allerdings hat da der Slave gesendet, also nicht der Teil, der die Schaltung mit Spannung versorgt, sondern der Teil, der versorgt wurde. Aber das sollte in die andere Richtung entsprechend gehen.

Das Prinzip der Schaltung ist eine Spannungsversorgung mit Strombegrenzung. (über den LM317 gelöst) Der Slave hat dann einfach diese Spannung mithilfe eines Transistors kurz geschlossen. Der Transistor wurde über die RS232-Ausgangsleitung angesteuert.
Selbstverständlich mußte die Spannung nach dem Transistor noch über eine Diode und einen Puffer-Elko stabilisiert werden, damit der Atmel auch im "Kurschlußfall" mit Strom versorgt werden konnte.
Auf der Master-Seite konnte ich dann mithilfe eines Komperators das Signal wieder in ein RS232-Signal für den Empfänger wandeln.

Aber ich weiß nicht, ob das auf eine Propeller-Clock übertragbar ist. Bei mir war als Last tatsächlich nur der kleine Atmel dran, der 8 Tasten eingelesen hat. Also Stromverbrauch quasi null. Bei einer Propeller-Clock dürfte das mit dem Puffern schwieriger werden. Eventuell mit einer hohen Baudrate und Pausen zwischen den Bytes?

Aber ich konnte bei dieser Schaltung live miterleben, wovor hier gewarnt wird: Ein Schleifkontakt hat es in sich. Ich habe Wochen damit verbracht das ganze zu Entstören. Am Schreibtisch mit einer direkten Kabelverbindung läuft alles immer einwandfrei, aber wehe das Ding läuft über den Schleifring...

Ich habe am Schluß die Daten glaube ich zwei mal in zwei verschiedenen Formaten mit zwei verschiedenen Checksummen verschickt, Plus das ganze Parity-Zeugs was im Standard-USART beim Atmel eingebaut ist. Und erst wenn alles gleich war, wurde das Datenpaket angenommen. Hat am Ende dann zu 98% Störungsfrei funktioniert.

Viele Grüße
Andreas

Ceos
27.08.2011, 17:24
cih weis zwar, dass ich dem thema jetzt ein wenig vorrausgehe, aber hast du schon ne lösung für den antrieb ? ich verzweifle bei der suche nach nem motor für meine rotoclock, die motoren die ich habe sind von einer HDD (synchrondrehstrommotor und von einem CD laufwerk, 10 polig sync drehstrom + 3 hallsensoren dessen belegung ich noch nciht geknackt habe) leider finde ich keine möglichkeite diese motoren vernünftig anzutreiben und ein einfacher DC motor macht zu viel krach, ich brauch nur max 500 u/min

WL
27.08.2011, 21:42
.........................und ein einfacher DC motor macht zu viel krach, ich brauch nur max 500 u/min

wie wäre es mit einem Kassettenrekordermotor.
Die sind sehr leise und einfach anzusteuern.

stoerpeak
28.08.2011, 01:40
Um Stromversorgung und Positionierdaten für Modellbau-Servos über 2-Adern (über Klinkenstecker und Buchse) zu übertragen hatte ich letztes Jahr so etwas ähnliches gemacht:

https://www.roboternetz.de/community/threads/49022-Stromversorgung-und-Steuerung-mehrerer-Servos-über-2-Drähte (https://www.roboternetz.de/community/threads/49022-Stromversorgung-und-Steuerung-mehrerer-Servos-%C3%BCber-2-Dr%C3%A4hte)

Die Transistorhalbbrücke im "Sender" wird gebraucht, weil die Servos ordentlich Strom ziehen.

Gruß Stoerpeak

Klebwax
28.08.2011, 02:32
10 polig sync drehstrom + 3 hallsensoren dessen belegung ich noch nciht geknackt habe)

Möglicherweise kann ich dir dabei etwas helfen.

Schau dir mal die Platine auf dem Motor an. 3 Anschlüsse sind für die 3 Motorphasen. Meist sind sie breiter als die anderen. Zwischen ihnen kann man auch einen kleinen, jeweils gleichen Widerstand messen.

Die Hallsensoren sind analog und haben differentielle Ausgänge, also 2 pro Sensor. Der Sensor selbst hat vier Anschlüsse, zwei für die Versorgung und zwei Ausgänge, sie gehen typischerweise direkt zum Stecker. Die Versorgung ist parallel geschaltet. In beiden Versorgungsleitungen zu den Hallsensoren sind Strombegrenzungswiderstände, manchmal sind sie im Motor, manchmal auf dem Controlerboard.

Der Motor ist ein BLDC Motor mit analogen Hallsensoren. Zur Ansteuerung gibt's ICs, die wirst du auf dem Controlerboard finden.

MfG Klebwax