PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Digitaler Potenziometer steuern



cypherpunk
15.02.2009, 21:40
Ich habe eine Fernsteuerung die über einen Potenziometer geregelt wird und jetzt möchte ich das ganze mithilfe meines Laptops steuern.
Ich dachte mir ich tausche den mechanischen Potenziometer durch einen digitalen aus ( soweit ich mich jetzt erkundigt habe gibt es dort einen Takt und eine Richtungspin ) nur die Frage ist wie ich das mit der Kommunikation zwischen Computer und Poti löse.
Ich möchte eigtl. keine großen einkäufe tätigen wie das C-Control, sondern gebe mich auch mit vermeindlichen hacks zufrieden, primäres Ziel ist die Funktionalität.

Bin Dankbar für jede Anregung und jeden Tipp.

oZe
16.02.2009, 00:31
Also vorweg eins: Ich weiß nicht wie das digital poti angesteuert wird aber ich habe eine vermutung.

Erst mal zur kommunikation zwischen poti und laptop:
Du kannst einfach einen kleinen µC nehmen (z.b. AtTiny2313) und diesen per RS232 mit dem PC verbinden. Das wäre jedenfalls die einfachste lösung.
Dann kannst du dem µC befehle per PC schicken mit nem Terminal Programm. An den µC hängst du dann das digitale poti an einen Ausgang. Die genaue ansteuerung kenn ich wie gesagt nicht aber ich vermute folgendes:

Du musst um beispielsweise das Poti um einen Wert zu erhöhen den "erhöhen" eingang des Potis auf high pegel setzen und anschließend über den takteingang eine positive flanke senden. So stell ich mir das jedenfalls vor. Das heißt du bräuchtest 3 ausgänge des µC für das Poti ("erhöhen","verringern" und "Takt"). Die Software für den µC müsste dann eben befehle vom Pc entgegen nehmen und entsprechend die ausgänge setzen. Wie du den µC mit dem PC in verbindung bringst ist sehr schön im Roboternetz Wiki beschrieben wenn ich mich da richtig dran erinner. Also einfach mal nachsehen unter "Max232". Ich glaub das stand alles im artikel "Einstieg leicht gemacht" drin.

Wär auch ganz nett wenn du mal kurz schreiben würdest wie viel kenntnisse du bisher hast in sachen elektronik.

Ich hoffe ich konnte dir für den Anfang helfen.

wkrug
16.02.2009, 07:22
Ich würd es auch mit einem Microcontroller machen wie "oZe" das vorschlägt, allerdings würd ich ein Poti mit I²C ( TWI ) Schnittstelle verwenden, weil man bei einem normalen UP/Down Digitalpoti nie genau die aktuelle Stellung kennt und somit das Poti immer erst in eine vordefinierten Zustand bringen muß.

Ein möglicher Kandidat wär das DS1803, wenn die Spannung 5V nicht übersteigt.

X-917
16.02.2009, 09:47
hallo erstmal,
Meint ihr nicht, das poti hat 2 pins, up/down und clock? ich denke das könnte man auch ohne pegelwandler und controller machen.
In visual studio (gratis) kann mit einer zeile code den zustand der rts und dtr leitung verändern. Noch 2 z-dioden 5v und schon hast du 2 5v steuerleitungen. Das funktioniert, ich habe damit schon das schieberegister meines rgb-modules gesteuert.
Einfacher gehts nicht!
Mfg

drew
16.02.2009, 11:44
Hallo,
normalerweise sollte das Poti dazu verwendet werden, um eine Spannung zwischen 0 und 5V(?) zu erzeugen.
Dazu könntest Du auch einen Controller verwenden, der ein PWM-Signal (PWM=Puls Weiten Moduliert) erzeugt. Wenn Du das mit einem R-C-Glied glättest kannst Du durch verändern des Puls-Pausenverhältisses jeden Zwischenwert anfahren.
Das hätte den Vorteil, dass Du kein zusätzliches Digitales Poti kaufen mußt.

Drew

cypherpunk
16.02.2009, 12:51
Danke erstmal für die zahl- und hilfreichen Beiträge.

@oZe:
Habe Basis Kenntnise bzgl. Elektrotechnik, Digitaltechnik.
Denke diese Lösung wäre möglich ausserdem habe ich auch noch einen Attiny irgendwo rumliegen.

@wkrug


On power-up, the DS1803 wipers’ position will be set to position 00h - the low-end
terminals. The user may then set the wiper value to a desired position.
Deswegen meinst du oder?
Bei einem Normalen Digitalen Poti bleibt da der Zustand erhalten ist er undefiniert oder hängt das auch vom Poti ab?

@X-917
Ja sowas habe ich mir auch schon überlegt,
Hast du dazu vielleicht einen Link oder änliches damit ich mir das mal anschauen kann, sprichst du von der Express oder Prof. Version?
Bzw. was sagen denn die anderen zu dieser Lösung?

@drew
Hatte ich auch schon darüber nachgedacht allerdings möchte ich es lieber mit einem "echten Widerständ" machen

Danke

X-917
16.02.2009, 14:41
Ich meine die Expressversion, die kann man sich gratis herunterladen. Ich habe die von 2005, aber eine neuere funktioniert sicher auch.
Was für einen Link meinst du? Ich kann dir helfen, bei der Schaltung und beim Programm. Ich kann dir auch den fertigen Schaltplan und ein Programm geben wenn du mir den Namen deines Potentiometers sagst und wie du es ansteuern willst (Benutzeroberfläche). Das hängt davon ab ob du was basteln willst oder lieber eine fertige Lösung.

Natürlich kannst du ja auch immer noch eine andere Lösung vorziehen, wenn jemand in meiner Idee einen gravierenden Fehler findet, bitte ich darum diesen zu offenbaren.

Noch eine Frage an die Rechtsexperten dieses Forums: Ich bin noch jung und naiv, mache ich mich strafbar wenn ich jemandem einen Schaltplan zeichne und diese Person ihn danach für kriminelle oder terroristische Zwecke missbraucht. NATÜRLICH HAT DAS NICHT MIT DIR ZU TUN CYPHERPUNK, DIE FRAGE IST ALLGEMEIN UND SOLLTE DICH KEINESFALLS ANGREIFEN! Nur bei so Fernsteuerungen, die kann man ja für manche Zwecke benützen...

MfG

cypherpunk
16.02.2009, 17:16
Nein eine fertige Loesung brauche/will ich nicht ^^
So ein Digital Poti hat also eine Up/Down Pind und einen Count Pin oder?
Du meinst also über die Serielle Schnitstelle?
Bzgl. Link meinte ich zu dem wie man mit Visual Studio den Ausgang auf High/Low setzt.

Danke

wkrug
16.02.2009, 17:52
Deswegen meinst du oder?
Bei einem Normalen Digitalen Poti bleibt da der Zustand erhalten ist er undefiniert oder hängt das auch vom Poti ab?
Ich meinte, ein UP/Down Poti muss erstmal sicher nach 0 gefahren werden, damit der Controller weiß welche Stellung das Poti dann im Betrieb hat.

Bei einem I²C Poti wird ein Wert übertragen und das Poti stellt sich dann auf diesen neuen Wert direkt ein.

X-917
16.02.2009, 19:10
mit fertige lösung meinte ich, ob ich dir den schaltplan und das programm machen soll oder ob dus mit diesen ideen selber schaffst. alle digitalpotis die ich kenne haben up/down in einem pin und einen clock pin. es gibt auch potis die die schleiferposition nicht speichern und darum nach stromanschluss immer auf 0 sind. Es gibt auch solche die nur speichern, wenn du einen pin auf high setzt. Ja ich meine die serielle schnittstelle.


ansteuern kannst du so:
-neue windowsanwendung
-is ja .net zieh das symbol "serialport" auf deine form (link in toolbar)
-doppelklick auf die form
-schreib in den form1.load:

serialport1.open()
serialport1.dtrenable = true/false
serialport1.rtsenable = true/false



so kannst du deine fernsteuerung mit button, timer usw. kontrollieren.
Die serielle Schnittstelle hat auch mehrere eingänge, mit diesen kannst du auch signale einlesen!

du müsstest halt genauere informationen nennen:
-wie willst du vom computer aus steuern (knopf, etc.)
-was für ein poti soll es ersetzen (wieviele kiloohm hat das originalpoti)
-wie hoch muss die auflösung sein
-wie hoch ist der strom der durch das poti fliesst.

ich bitte um die beantwortung meiner rechtsfrage

MfG