-
-
Okay, ich schaus mal an...
-
Sehr interessant, wie du mit den Potis verfährst
Ich werde dich mal anrufen und dir was dazu erzählen...
-
Hab dir ne PN geschickt...
viele grüße,
lukas
-
Top, habe ich gesehen... Dann kann ich das auch hier sagen, interessiert vielleicht auch andere...
Du musst die Umwandlung zwischen den ADC-Werten und den PWMs mit Hilfe einer Funktion machen. Da der AVR sich etwas schwer tut mit 3-4 stelligen Quadratzahlen, würde ich auf den sanften Anlauf verzichten und es einfach linear machen, geht besser. Die Funktion wäre ungefähr (ADC-512)/2 bzw. (ADC-512)/2*(-1), das kannst du einfach mit einer If-Schleife abfragen (Wenn ADC unter 512 ist, dann die eine, sonst die andere...) Ich denke, dass du mit diesem Wink weiterkommst, oder hast du in der Schule bei dem Thema Funktionen geschlafen? 
Außerdem solltest du die Reference des AVRs einschalten, und zwar auf AVCC. Wenn nämlich die Potis im Joystick als Spannungsteiler aufgebaut sind (Schleifer an den ADC, den einen Pin an +, den anderen an -) und sie von der gleichen Spannungsquelle mit versorgt werden wie der AVR, dann gleichen sich a) Schwankungen zu 100% aus, sodass du stabile, präzise Werte bekommst, und der Wert des ADCs ist bei einem linearen Poti genau proportional zur Potistellung. Alles klar soweit?
Ich kann dir natürlich das ganze Programm schreiben, aber ich denke, dass Learning-by-Doing dir längerfristig hilft 
MFG
-
Ich bin im Moment nicht oft in Braunschweig, deshalb macht die Programmierung nicht wirklich Fortschritte. Momentan muss ich noch jede kleine Funktion ausprobieren, aber wenn ich alles angetestet habe, kann ich ja auch den Bascom-Simulator benutzen...
Ich denke ich habe deine Idee verstanden und werde die wohl mal implementieren. Haste noch andere Einwände zur Programmierung? Ich hab schon einige Ideen, aber vielleicht schwirrt in deinem Kopf auch noch was rum (dazu)
...
Meine Ideen:
- Motorsteuerung per PWM (teilweise implementiert)
- Joystick-Abfrage per ADC (teilw. impl.)
- Sperrung einzelner Achse möglich (z.B. durch Joysticktaste):
Diese Funktion ermöglicht es, die Abfrage einer der beiden Achsen
abzuschalten, um z.B. einen sauberen Schwenk (nur x-Achse) zu
erhalten. Sobald die Joystick-Taste losgelassen wird, sind wieder beide
Achsen "aktiv".
- Alle Funktionen müssen per Joystick und von außen (per USB)
steuerbar sein (teilw. impl.)
Wenn du ein paar Tipps hast, wie ich Funktionen "von außen" also per RXD aufrufen kann, lass es mich wissen...
Sag mir Bescheid, wenn du icq hast...
vg!
-
Mach ich... Bist du noch on?
-
Mist, zu spät. Wenn du sowieso nicht viel machst, dann schreibe ich dir erst von Oldenburg in den nächsten Tage richtig, ok?
-
Ok, aber glaub mir... ich bin ständig online... du brauchst nur in den chat zu kommen oder mich in deiner icq-liste zu haben 
Btw: pidgin.im ist ne super alternative zu dem original ICQ-Programm... Das Original brauchst du aber leider erstmal um dich zu registrieren 
vg
-
Aaaahaaa... Na dann. Aber im Forum bist du nicht on 
Die Motorsteuerung per PWM ist klar und machen wir auch so.
Joystick ist auch klar, wie gesagt mit der Funktion...
Die Sperrung ist auch möglich, man kann einfach den Taster abfragen und die Achse bei gedrücktem Taster in der Mitte positionieren und die ADC-Abfrage überspringen (Ich würde einfach per If... vor der ADC-Abfrage den jeweiligen Taster abfragen und wenn er gedrückt ist die Abfrage überspringen und dem Motor nichts sagen...). Ist jetzt alles spontan erdacht, ich gebe also keine Garantie, das dass so der beste Weg ist 
Für das abrufen von außen musst du dir ein Protokoll überlegen, auf das die Motorsteuerung reagieren kann, z.B. erst ein Byte mit der zu steuernden Funktion und dann der Wert dafür... Du sendest also beispielsweise erst den Wert "1", er steht für die X-Achse des Remotehead, und dann den PWM-Wert dafür. Verstanden?
Aber wie gesagt, ist alles spontan...
MFG
-
Und? Wie sieht es aus? Kriegst du alles hin?
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln
Lesezeichen