Brantiko
09.04.2008, 11:38
Hallo,
Ich habe einen kleinen Modellbagger mit Servos ausgerüstet welcher nun von alleine ein automatisches Baggerprogramm abspielen soll.
Also Schaufel öffnen, Arm runter lassen, Schaufel zu, Arm hoch dann den Oberwagen drehen.. Schaufel wieder öffnen usw.
Das ganze wollte ich mit Bascom und einer sehr langen Case-If Anwendung realisieren.
Eine Variable wird hochgezählt und für jeden Wert der Variable wird dem Servo ein Wert zu gewiesen. Diese Wertetabelle wird manuel eingetragen (viel Arbeit) welche ich mit Funktionen brechene, Zeichne und dann eine Wertetabelle erstellen lasse. So kann ich z.b ein Servo langsam beschleunigen und abbremsen lassen (Z.b für die Drehfunktion)
Um diese Kurve in echtzeit berechnen zu lassen ist der Chip vermutlich zu lahm bzw. man müsste auch verschiedene Intervalle definieren usw.
So weit mein Plan.
Falls Jemand eine bessere Idee hat, bitte raus damit ;-)
Nun zur Frage: Ich wollte den Atmega8 nehmen da alle andere viel zu viele Pins haben (brauche ja eigentlich nur 4 I/Os)
Allerdings bin ich mir nicht sicher ob der Chip es schafft simultan vier lange Case-If Tabellen auszuwerten und gleichzeit noch die Signale sauber erzeugen kann.
Ich hatte mal aus spaß ein Servo nach einer Sinuskurve fahren lassen, die vom Atmega8 berechnet wurde.. da hat der Servo schon geruckelt. Ist es von vorteil mit einem Ext. Quarz dne Chip mit einer höheren Frequenz zu betreiben?
Ansonsten müsste ich mit zwei Chips arbeiten. Einer berechnet die Werte, der andere erzeugt die Impulse. Allerdings habe ich keien Ahnung von der Kommunikation zwischen zwei Chips 8-[
Gruss
Alex
Ich habe einen kleinen Modellbagger mit Servos ausgerüstet welcher nun von alleine ein automatisches Baggerprogramm abspielen soll.
Also Schaufel öffnen, Arm runter lassen, Schaufel zu, Arm hoch dann den Oberwagen drehen.. Schaufel wieder öffnen usw.
Das ganze wollte ich mit Bascom und einer sehr langen Case-If Anwendung realisieren.
Eine Variable wird hochgezählt und für jeden Wert der Variable wird dem Servo ein Wert zu gewiesen. Diese Wertetabelle wird manuel eingetragen (viel Arbeit) welche ich mit Funktionen brechene, Zeichne und dann eine Wertetabelle erstellen lasse. So kann ich z.b ein Servo langsam beschleunigen und abbremsen lassen (Z.b für die Drehfunktion)
Um diese Kurve in echtzeit berechnen zu lassen ist der Chip vermutlich zu lahm bzw. man müsste auch verschiedene Intervalle definieren usw.
So weit mein Plan.
Falls Jemand eine bessere Idee hat, bitte raus damit ;-)
Nun zur Frage: Ich wollte den Atmega8 nehmen da alle andere viel zu viele Pins haben (brauche ja eigentlich nur 4 I/Os)
Allerdings bin ich mir nicht sicher ob der Chip es schafft simultan vier lange Case-If Tabellen auszuwerten und gleichzeit noch die Signale sauber erzeugen kann.
Ich hatte mal aus spaß ein Servo nach einer Sinuskurve fahren lassen, die vom Atmega8 berechnet wurde.. da hat der Servo schon geruckelt. Ist es von vorteil mit einem Ext. Quarz dne Chip mit einer höheren Frequenz zu betreiben?
Ansonsten müsste ich mit zwei Chips arbeiten. Einer berechnet die Werte, der andere erzeugt die Impulse. Allerdings habe ich keien Ahnung von der Kommunikation zwischen zwei Chips 8-[
Gruss
Alex