Löten kann ich wohl!
Ich komme aus Münster(NRW)!
Gruß
Roman
so schwer ist das nicht!
Wenn du löten kannst, kann dir jemand den Code schreiben, (vlt sogar ich? kA) du überträgst den in deinen MC und lötest dir nach schaltplan die Schaltung zusammen
Minimallößung (egal ob Schritt- oder normale Glaichstrommotoren): 1MC, MC-Grundbeschaltung (1Widerstand, 1Kondensator und die stromanschlüsse) 8 Transistoren und 8 Freilaufdioden. Dann halt noch die Motoren und die Potis des Joysticks richtig anschließen, Saft drauf, fertig.
Aus welcher region kommst du denn?
Gruß, AlKi
Jeder Mensch lebt wie ein Uhrwerk, wie ein Computer programmiert...
==> UMPROGRAMMIEREN!
Kubuntu
Löten kann ich wohl!
Ich komme aus Münster(NRW)!
Gruß
Roman
Ich mal heut abend nen Schaltplan, n ATMega8 als MC sollte ausreichen
Ein- und Ausgänge für:
- Motoren (DC: 2X2=4 ; Schritt: 2X4=8) (Ausgänge)
- Joystickpotis (2X1=2) (Analog-Digital-Wandler-Eingänge)
also insgesamt 6 oder 10 Anschlüsse, da bleiben sogar noch Anschlüsse frei. (ein ATMega8 hat, wenn man ISP-Anschlüsse frei lässt, 19 nutzbare Ein- und Ausgänge)
Gruß, AlKi
Jeder Mensch lebt wie ein Uhrwerk, wie ein Computer programmiert...
==> UMPROGRAMMIEREN!
Kubuntu
Bild hier
die 2 Potis unten rechts sind von dem Joystick, die Motorbrücken sind für Gleichstrommotoren.
Nen ISP-Anschluss hab ich auch drin.
Die Anschlüsse für die Motorspannung und (falls die Spannung zu hoch für den Spannungsregler 7805 ist) die Versorgungsspannung für den MC sind oben in der Mitte (die Massen müssen zusammengelegt werden, sonst geht die Motoransteuerung nicht).
Belegung von links nach rechts: Motorspannung, MC-Versorgungsspannung (6-35V bei dem 7805), GND der Motorspannung, GND der MC-Versorgungsspannung. beide GNDs sind zusammengelegt. wenn die Motorspannung nicht größer als die 35V ist, kannst du die auch gleichzeitig als MC-Versorgungsspannung nutzen)
EDIT: ich war zu blöd, des bild hier richtig einzufügen...
EDIT2: ich hab ein besseres bild eingefügt!
EDIT3: Anschlussbelegung und erklärung.
und noch ein EDIT: Der Schaltplan enthält zwei kleine Fehler
Die Werte der Widerstände R2, R3, R4 und R5 sind wohl etwas zu hoch, hab da halt mal irgendetwas genommen. solange sie im 500Ohm bis 1kOhm-Bereich liegen, sollten sie ok sein (so, dass halt nicht mehr als 20mA durch nen Pin fließen) kommt aber auf die verwendeten Transistoren an.
Vor allem: Jeder Transistor benötigt einen eigenen Vorwiderstand an seiner Basis! sonst geht es evtl. nicht. die Werte mit dem kOhm sollten dabei bei vielen Transistoren gehen. Wenn nicht, sind die Transistoren hier nicht brauchbar oder müssen über andere Transistoren, die den Basisstrom aushalten) angesteuert werden.
vlt verbesser ich den Schaltplan noch irgendwann...
Gruß, AlKi
Jeder Mensch lebt wie ein Uhrwerk, wie ein Computer programmiert...
==> UMPROGRAMMIEREN!
Kubuntu
Hallo AlKI,
danke für den Schaltplan!
(Ich kann danur schlecht was erkennen, auflösung istnicht gut)
Könntest du denmal per Mail senden?
Danke
ööhm, ja, damit ichs posten konnte, musst ichs etwas schlechter machen.
Mit etwas mühe erkennt man aber schon, was da steht (Lupe...... gnnn, ja... )
Schreib mir deine Mail-Addresse per Persönlicher Nachricht, dann schick ichs dir (oder hast du ICQ, msn, skype?)
Hab ein neues Bild oben reineditiert, jetzt schärfer, dafür kleiner, toll.
Gruß, AlKi
Jeder Mensch lebt wie ein Uhrwerk, wie ein Computer programmiert...
==> UMPROGRAMMIEREN!
Kubuntu
Hier das Bascom-Programm:
hab ihn gerade bei meinem ATMega8 ausprobiert. da ging er.Code:' Remote-Head-Programm für einen ATMega8 (c) AlKi $regfile = "m8def.dat" ' Damit Bascom weiß, dass es das Programm für einen ATMega8 umwandeln muss (in der Datei stehen Infos über den ATMega8) $framesize = 40 ' \ $swstack = 40 ' |=> Damit für Variablen Platz gelassen wird $hwstack = 40 ' / $crystal = 8000000 ' Damit Bascom weiß, wie schnell der MC getaktet ist ' Anschlüsse als Ausgänge konfigurieren: Config Portd.6 = Output ' PD6 Motor1a Alias Portd.6 ' und einen aliasnamen zuweißen (zum besseren Verständniss des Programmtextes) Config Portd.5 = Output ' dasselbe für PD5, Motor1b Alias Portd.5 Config Portb.7 = Output ' PB7, Motor2a Alias Portb.7 Config Portb.6 = Output ' und PB6 Motor2b Alias Portb.6 ' Variablen deklarieren, damit sie im Programmtext genutzt werden können Dim Achsea As Long Dim Achseb As Long Dim Zaehler As Long ' den Analog-Digital-Wandler einstellen: Config Adc = Single , Prescaler = 64 , Reference = Avcc Start Adc ' und aktivieren Do 'Hauptschleife Achsea = Getadc(0) ' \ die Werte der Potentiometer auslesen und in den Variablen speichern Achseb = Getadc(1) ' / ' und jeh nach dem Handeln: If Achsea < 424 Then Motor1a = 1 ' (Ausgang auf "high" legen, also +5V, dadurch wird ein Motor in eine Richtung angeschalten) Zaehler = 380 While Zaehler > Achsea ' hier... Decr Zaehler Wend Motor1a = 0 ' (Den Ausgang wieder auf "low"-Pegel legen, damit wird der Motor ausgeschalten) Zaehler = 24 While Zaehler < Achsea ' ...und hier sind Verzögerungsschleifen, welche von dem Wert der Variable (hier Achsea) Incr Zaehler ' abhängig unterschiedlich verzögern. Da die eine kürzer verzögert wenn die andere länger Wend ' Verzögert, wird nur das An/Aus-Verhältniss verändert. Die gesamte Zeitverzögerung ist ' aber (fast) immer gleich. Das ist PulsWellenModulation (PWM), und zwar software-PWM. End If If Achsea > 612 Then ' undsoweiter Motor1b = 1 Zaehler = 574 While Zaehler < Achsea Incr Zaehler Wend Motor1b = 0 Zaehler = 1000 While Zaehler > Achsea Decr Zaehler Wend End If If Achseb < 424 Then Motor2a = 1 Zaehler = 380 While Zaehler > Achseb Decr Zaehler Wend Motor2a = 0 Zaehler = 24 While Zaehler < Achseb Incr Zaehler Wend End If If Achseb > 612 Then Motor2b = 1 Zaehler = 574 While Zaehler < Achseb Incr Zaehler Wend Motor2b = 0 Zaehler = 1000 While Zaehler > Achseb Decr Zaehler Wend End If Loop ' Damit wird wieder bei "Do" angefangen.
Ich glaube, ein ATMega8 ist etwas arg überdimensioniert ist (der Programmspeicher ist nur zu etwa 10% gefüllt), aber das stört nicht. (für einen anderen AVR müsste man nur die Portnamen und das Regfile ändern. Darum übrigens auch die Aliasnamen, damit man nicht den ganzen Programmtext ändern muss)
Die Geschwindigkeit der Motoren wird per (pseudo-) Software-PWM gesteuert. Das steht auch in den Kommentaren. Das Programm ist nicht das Optimum, aber es funktioniert. Vlt. schreib ichs noch irgendwann um.
Jeh größer der Ausschlag deines Joysticks, desto schneller die Motoren.
du musst es nur noch per Bascom kompilieren und über nen ISP-Adapter in nen ATMega8 übertragen und den Passend anschließen. falls du nicht an Bascom rankommst, kann ich dir auch das hexfile geben und du kannst es mit Ponyprog übertragen. (n hexfile ist eine Datei, in der der Maschinencode in hexadezimaler Form dargestellt ist (kann man mitm Texteditor öffnen))
EDIT: was ich noch sagen wollte: du hast bei dem joystick nen rel. großen Bereich um die Mittelstellung, in dem nicht gesteuert wird. Kleine Ruckler machen also bei Mittelstellung nichts aus.
Gruß, AlKi
Jeder Mensch lebt wie ein Uhrwerk, wie ein Computer programmiert...
==> UMPROGRAMMIEREN!
Kubuntu
Hab mir gerade die Postings nochmal durchgelesen, nicht dass du mich falsch verstehst:
mit der Schaltung steuerst du ZWEI Achsen unabhängig voneinander (drehen links/rechts und schwenken rauf/runter)
wegen dem:Mit dem Remote Head soll der Camkorder nach Links/Rech (od. hoch/runter) bewegt werden
Gruß, AlKi
Jeder Mensch lebt wie ein Uhrwerk, wie ein Computer programmiert...
==> UMPROGRAMMIEREN!
Kubuntu
Ich hätte hier mal noch einen Ansatz, der zwar nicht ganz auf die Spezifikation passt, aber (fast) ganz aus fertigen Bausätzen aufgebaut werden kann und daher dem (wie er selbst schreibt elektronisch nicht so bewanderten) Grik18 eher entgegen kommt (hat dann aber nichts mehr mit Mikrocontroller zu tun):
Als Motoren große Servos nehmen - Schwerpunkt und Optische Achse(n) (Nodalpunkt) liegen bei Kameras nicht immer deckungsgleich ;-(
Ansteuern mittels fetig aufgebauter oder als Bausatz erhältlichem Servotester aus dem Modellbauzubehör.
Fertig.
Nachteil: nicht mit Joystick ansteuerbar, dafür aber mit zwei Drehbewegungen (eine für waagrecht links/rechts, eine für senkrecht hoch/runter)
So werden sogar professionelle, steuerbare Kameras bedient (habe ich bei einem Volleyballturnier gesehen, die haben mit zwei Steuerrädern, die kreuzweise angeordnet sind eine Netzkamera direkt auf dem Netzpfosten gesteuert).
Die Drehgeschwindigkeit des Kamerakopfes passt sich (im Rahmen der max. Winkelgeschwindigkeit des Servos) der Drehgeschwindigkeit der Steuerung an.
Elektronischer Aufwand: beschränkt sich auf Verkabelung und evtl. Bausatz zusammenbauen.
--
Jörg H.
Hallo Leute,
habe jetzt eine Steuerung für Getriebemotor ergattert, sind auch 2 Motore angeschlossen(von Modelkraft glaube ich). Da diese Motoren schwächeln wollte ich mal nachfragen ob jemend gezielt gute Getriebemotoren, die Stärker sind, empfählen?
Lesezeichen