hallo ich suche ein program wo man ein servo mit3 tasten steuern kan taste 1 lings taste 2 mitte taste 3 rechts wobei ich noch 2 tasten bauch wo man den endanschlag je beide seiten regeln kan mus aber nicht unbdingt servo software ,reicht auch code schnipselchen wichtig sind halt die tasten und wie man das macht
bin zwar hellseher, aber blick da trotzdem nicht ganz durch... wofuer ein programm? avr? oder suchst du vielleicht sowas www.baumueller.de? naja meine hellseherischen faehigkeiten haben mit dem alter wohl ein bisschen nachgelassen...
hummelchen wrote: > hallo ich suche ein program wo man ein servo > mit3 tasten steuern kan > > taste 1 lings > taste 2 mitte > taste 3 rechts > > wobei ich noch 2 tasten bauch wo man den endanschlag je beide seiten > regeln kan mus aber nicht unbdingt > > servo software ,reicht auch code schnipselchen > > wichtig sind halt die tasten und wie man das macht Wenn das Programm noch etwas mehr machen darf als von Dir gewünscht, dann schau Dir doch das mal an: http://www.hanneslux.de/avr/mobau/7ksend/7ksend02.html Es steuert ein Servo über 4 Tasten in 5 Positionen. Zusätzlich steuert es noch 6 weitere Servos in die Position, die per Poti eingestellt wird. Und dann misst es noch die Batteriespannung und seigt den Ladezustand der Akkus an. Ein HF-Modul von einem Funkfernsteuersender kann es auch noch ansteuern. Was Du davon nicht brauchst, kannst Du ja deaktivieren. Guten Rutsch...
Wäre auch blöd, was von dem Esel abzugeben. Ist er erstmal geschlachtet, wird er wohl kein Gold mehr machen.
Hannes Lux mir reicht schon die 3 tasten den rest kann man ja peer programm machen ( art servotester mit tasten lach) habe zwar schon paar programme gefunden aber die meisten klappen nicht richtig das servo zu steuern , kein ordenlicher nullpunt ( servo zucken ) solte schon beim endposiion stehn bleiben ohne ruckeln obs am program liegtweis ich net , bascom funktion servor() habe schon negatives gehört hm teste aber weiter
Na hast Du denn mein Programm mal ausprobiert? Also ich habe es in Benutzung und da ruckelt nix. Assembliere den Quelltext und schieb ihn in einen Mega48. Die nicht verwendeten ADC-Eingänge legst Du an GND. Ich hatte auch ein Programm für Tiny13 geschrieben, das ein Servo per Tastendruck zwischen zwei (programmierbaren) Positionen hin und her fährt, aber das existiert aufgrund eines Festplattenschadens nur noch im Tiny13 und löst als "Fotofalle" eine Digicam aus (Servo betätigt den Auslöser). Ist also eine Art Drahtauslöser zum verwacklungsfreien Aufnehmen mit langer Belichtungszeit. Ich werde aber in absehbarer Zeit nochmal etwas in dieser Richtung programmieren müssen, da könnte Dein 1-Kanal-Servotester nebenbei mit abfallen. Besser für Dich wäre allerdings, Du baust den 7-Kanal-Servotester von meiner HP nach. Alternativ könntest Du Dir das mal ansehen: http://www.hanneslux.de/avr/mobau/impkorr/impulskorr.html Das lässt sich leicht für Deinen Zweck umstricken. ...
Hannes Lux habe kein atmel48 ode hab ich mir angeschaut sehr ausfürlich und gute dokumentation aber werde mir das genau anschauen hm besser wer für mich das program in c oder bascom , mit assmebler bin ich nich so gut was ich bauen möchte ist , ein klappe(display soll auf und zu gehn ) die auf und zu geht peer servo am anfang schnell dan langsam in die endpositon und wenn man wieder zurück will genau das gegenteil bei bascom ruckelt das servo mit der funkrion ab besten nur das pwm und tasten abfrage das reicht denk ich mal fürden anfang , nur asm ist halt mein problemfall na werdsschon schaffen aber erst mal super von dir danke noch mals für die hilfe schau grade mal auf der hp on dir e´´richtig gute infos nd am schönsten ist es man kan mit der ritztechnik sehr weit kommen (mit dem atmel ) :-) mfg mario
Hannes Lux zitat:Ich werde aber in absehbarer Zeit nochmal etwas in dieser Richtung programmieren müssen, da könnte Dein 1-Kanal-Servotester nebenbei mit abfallen. das wer super kann man in bascon den asm ode mit einbauen ? such grade
> kann man in bascon den asm ode mit einbauen ?
Im Prinzip ja, aber ich bin da nicht kompetent.
Ich glaube aber nicht, dass sich Programme mit meinem Programmierstil so
einfach in BASCOM einbinden lassen. Interrupt-Programmierung unter
BASCOM soll ja nicht übermäßig effizient sein. Ich rate Dir daher zu
ASM, ist einfach effizienter und übersichtlicher...
Guten Rutsch...
...
Hannes Lux dan werd ich mich mal mit asm beschäftigen oh ha wird ja was werden guten rutsch
Also ich habs mit meinem Mega 16 so gemacht. (ist eins meiner ersten C Programme, desshalb ist der Source vielleicht nicht so gut. Funktioniert aber sehr gut)
matthias leider kann ichs noch nicht testen servo zerschossen -lol was solls mus auch mal sein , nun habe ich kein mehr gesndes neues allen
hall matthias so servo neu gemacht war nur endstufe kaput der chip wo kreifst du dan das singnal fürs sevo ab auch am portd ?)
Als Ausgang für den Servo sind die 6 höchstwertigen Bits vom PortD definiert. Kannst aber ändern in der Zeile: PORTD=0b11111100; Ich habe übrigens einen 8MHz Quarz verwendet. Wenn du einen anderen hast musst du den Vorteiler oder die Werte von OCR1A und OCR1B ändern.
Matthias hatte router vergessen mit zunehm ich schaue mir das nochmal an das reicht mir denk ich so kann ich an weiter machen da habe ich dan noch platz für ein start knopf werde da ein display klappbar machen und noch ein startknopf machen welchen atmel nehmt ihr alle so ? betreef schalter usw
> welchen atmel nehmt ihr alle so ? Den 8-Bit-AVR... (ATMEL stellt auch andere "ATMELs" her, z.B. 8051er, ARMs, ...) Und in dieser Gruppe den, der für die jeweilige Aufgabe richtig ausgestattet ist. Kleine Dinge werden mit Tiny12, Tiny13, Tiny15, Tiny2313 erschlagen, mittlere mit Mega48, Mega8, Mega8515, Mega8535, größere mit Mega32, und die ganz großen Dinge mach' ich sowiso nicht. Ich werde mir also keinen Mega256x zulegen, um damit einige Experimente mit LEDs, Blinker, Lauflicht zu machen, denn ich mag nicht "mit Kanonen auf Spatzen schießen". ...
Hi! Ich steig grad um auf C programmieren und da hab ich zufällig ne Routine für Servos geschrieben=) Mein Grundaufbau vom Programm: Ich nehm den Timer1 und stell ihn ein das er alle 20ms einen Interrupt auslößt. Wenn der Interrupt ausgelößt wird setz ich mein Servo Ausgang auf high und dann kommt ne µs-Warteschleife welche (1000µs + Wert) wartet. Danach schalt ich den Ausgang wieder auf low. Dadurch hab ich meine Impulse. Du müsstest jetzt nur noch deine Tasten programmieren welche den Wert setzten. Also Taste1: Wert=-500 Taste2: Wert=0 Taste3: Wert=1000... Ist doch ganz einfach=) Hab mal mein Programm angehängt aber du musst es wahrscheinlich noch ein bisschen anpassen. Ich Programmiere auch mit verschiedenen AVRs (momentan ist n Mega16 in mein STK g) Ich versuche aber auch je nach Aufgabe einen passenden AVR zu wählen (Außer ich Programmier nur zur übung dann nehm ich halt den wo ich grad find) mfg Karl
>µs-Warteschleife
Wenn ich sowas lese, stellen sich mir die Nackenhaare auf.
Wofür gibt es wohl OC-Interrupts?
Wenn ich die Routine noch finde, poste ich sie mal. (Kann sein, dass sie
sogar schon hier im Forum rumschwirrt...)
Ja gut das war mein erstes C-Programm! und ich hab mir überlegt wie ich son kurzen peak am einfachsten erzeugen kann. Und wenn mein µC nur das Servo ansteuern muss dann kann ich da schon ne weile warten:) mfg Karl
>>µs-Warteschleife > Wenn ich sowas lese, stellen sich mir die Nackenhaare auf. Mir auch... Für C bin ich zwar zu blöd, aber ein AVR-Programm ohne Interrupt habe ich noch nicht geschrieben. ...
>Für C bin ich zwar zu blöd, aber ein AVR-Programm ohne Interrupt habe >ich noch nicht geschrieben. Dafür bin ich für ASM zu faul...
Was ist bei meinem Programm denn so schlimm??? Ich hab auch n Interrupt! Ich nehm den Timer der mir alle 20ms nen Interrupt auslößt. Nur mach ich die länge des Peak <2ms mit einer Warteschleife. Gut wenn man 20ms lang warten würde das der µC nix anderes machen könnte des würd ich auch übertrieben finden aber für diesen Anwendungsfall find ich persönlich in Ordnung. mfg Karl
Man sollte Interrupts generell so kurz wie möglich halten. In nem Interrupt zu warten ist sozusagen das schlimmste was man tun kann ^^
Achso=) aber wie mach ich des dann? soll ich einschalten dann mein timer umprogrammieren das er in einer ms wieder kommt und dann rausgehn und beim nächsten aufruf wieder auf low wechseln? mfg Karl
Hallo Karl... Ich möchte mich erstmal entschuldigen, dass ich Dir unterstellt habe, ohne Interrupt zu arbeiten. Die Ursache liegt darin, dass ich mir Deinen Code nicht angesehen habe. Das liegt daran, dass es mir widerstrebt, ein RAR-Archiv herunterzuladen und zu entpacken, wo es eine einfache, browserlesbare Textdatei auch getan hätte und ich kein eigenes Interesse an der Datei habe. Ich mülle mir nämlich ungern den Rechner mit Dingen zu, die ich selbst nicht benötige. Wie Du es machen sollst, kann und werde ich Dir nicht sagen. Du kannst aber im meinem oben zu findendem Link nachschaun, wie ich es gemacht habe. Wenn Du das aufmerksam machst, findest Du auch noch eine recht alte Version. Aber auch diese nutzt keine Warteschleifen, denn mit Timer-Interrupts geht das viel einfacher und bequemer. Auch ich nutze gelegentlich Warteschleifen. Aber dazu muss es schon einen triftigen Grund geben. Das wäre einerseits, dass ein Interrupt zuviel Overhead erzeugt, weil die Wartezeit nur wenige Controllertakte beträgt. Dann nutze ich eine (sehr lange) Warteschleife beim Initialisieren des LCDs, weil ich damit die Timer-Interrupts für das folgende Programm frei halten kann und die Warteschleife nur beim Reset (LCD-Init) genutzt wird, dann während des gesamten Programmablaufs nie wieder. Im Allgemeinen vermeide ich aber Warteschleifen, weil es mit Timer-Interrupt bedeutend bequemer geht. Außerdem kann der Controller in der Wartezeit andere Aufgaben erledigen, falls diese anstehen. Die gesamte Programmierung wird dadurch bedeutend flexibler. Beste Grüße und viel Erfolg... Hannes
Hallo! Brachst dich net entschuldigen bei mir :)! Eigentlich hast du aber recht das warteschleifen nicht so toll sind da der µC dann stehen bleibt und nix anderes macht... Ich kuck mir morgen mal dein Programm an und schau wie du das genau gelößt hast. Ich versuch dann auch mal in nächster Zeit Warteschleifen eher zu meiden. Bin halt noch relativ am Anfang vom Programmieren in C hab bis jetzt auch Assembler Programmiert und war eher ein C-Gegner aber ich muss sagen ich bin von C positiv überrascht! Geht doch einfacher und leicher Programme zu schreiben als ich anfangs dacht... und dann ist mir so ne nette Funktion aufgefallen mit der Warteschleife wo ich die Zeit in us eingeben kann da hab ich mir gedacht, das das super in mein Programm passen könnte g Also dir auch viel Erfolg und Grüße zurück Karl-Johannes Ps.: Hab mir deine Page schon öfters mal angekuckt hast ganz gute Projekte gemacht!
das stimmt eine super seite nur ich mus mich in assempler reinwurschteln c ist mir auch lieber da kenn ich mich ein bissel aus die programme hab ich gestestet funzen super was jetz noch super wer can bus als monitor aber das geht jetz zu weit das mit den 2 tasten ist klasse habs auch geschaft das das servo langsam anläuft und dan schneller und zum schlus langsam in die endposition und beim ausmachen das autos klaps selber ein dank akku :-) es macht richtig spass
kannst ja mal deinen Code posten für andere die auch so ein problem haben... Ich habs schon geschafft mein Servo per UART über einen PC zu steuern und positionieren (aber im Auto hast du ja keine UART sonder CAN) oder hast du das anderst gemeint? Also ein CAN-Bus monitor oder doch per CAN-Bus ansteuern? mfg Karl
Nur mal so, für Leute, die des Suchens nicht mächstig sind (scheint irgendwie auch mit dem Tippen zusammen zu hängeen...).: Beitrag "Massen mit Modellbauservos und Mega8 ruckfrei bewegen" >Ich hab auch n Interrupt! Klingt nach "Mein bac, dein Bac"...
das dipslay solte nicht über can bus laufen mus auch nicht einfach das servo von rechts nach lings fahren peer 2 tasten kein uart über pc rein über die beiden tasten hallo fieser, klugscheissender Rahul das hab ich auch bei der suchen schon gefunden aber ist nicht das was ich brauch aber danke für den tip mit der suche ;-) hallo ItsMe Mein Gott, lern´ erst mal Deutsch, dass ist ja Grauenhaft ! ich kann das sogar lesen !!!!!!!!!!!!!!!!! zu mein kleinen projekt im auto ein pc einbauen , das display solte klappbar sein wegen diebstahl der pc kommt in die mittelconsole .der pc wird dan über die zündung eingeschaltet und das display ausgeklapt.dies funktioniert auch alles mit dem servo tester aber eben zu schnell deswegen der atmel mit 2 tasten ,wenn ich das display nicht brauch einklappen lassen nun kam mir aber die idee den atmel noch zum auslesen des can buses vom auto zu misbrauchen :-) so könnte man daten auslesen wie fehlercode usw. da ich im auto nun ein pc habe warum den noch das radio drin lassen , denn der pc kann das doch auch - kam mir die idee mit dem can bus ,im pc eine radio karte einbauen die über die lenkradschalter bedient wird ist can-bus eigendlich wolte ich nur das display klappbar machen und nun bin ich so weit für den can-bus ist der at90can128 ja zuständig könnte man da nicht die servo steuerung mit einbauen oder besser getrennt? mfg hummelchen
>könnte man da nicht die servo steuerung mit einbauen
könnte man.
Übrigens reicht eine Taste, um das Display zu steuern: Der Controller
sollte ja wissen, ob es offen oder geschlossen ist.
Einmal drücken: auf
noch mal drücken: wieder zu...
[offtopic]
Den Sinn eines PC im Auto muß ich nicht sehen, oder?
Aber das ist wohl dieser "Pimp my Bride"-Quatsch.
[/offtopic]
Noch was offtopic. Oben wurde es schon angsprochen: hummelchen, versuche deine Text etwas verständlicher zu gestalteten. Es ist wirklich anstrengend, sich den Sinn aus deinen Aussagen herauszufiltern. Lies dir das, was du geschrieben hast noch mal durch (ja, es gibt auch Großbuchstaben!) und versuche dich in jemanden hineinzuversetzen, der das Lesen soll. Wenn du dabei merkst, dass das schwierig ist, solltest du den Text ändern. Durchlesen solltest du ihn auf jeden Fall noch mal vor dem Abschicken.
OT @Lieber sachkundiger Rahul: Was erwartest Du denn noch?? Er unterzeichnet doch (im Gegensatz zu Dir oder mir) schon mit "mfg", was auf vorhandene Umgangsformen schließen lässt. Netter kann und muss man doch nicht sein, oder? ... (Die 3 Punkte bedeuten sowas wie "MfG, Hannes", mein "MfG" steht dabei für "Mit fettem Gesäß".) /OT
>Was erwartest Du denn noch?? Dass ich beim Lesen weder einen Augenkrampf noch eine Hirnverwindung riskiere. >"Mit fettem Gesäß". Schon mal über ne Diät nachgedacht? ;-)
das mit dem pc ist mir so eingefallen naja über den sin läst sich streiten mache bauen eine riesen anlage rein die nur musik abspielen kan und andere halt ein pc der wesendlich mehr kann mfg hummelchen ja so gehts mir als legastheniker Afugrnud enier Sduite an enier Elingshcen Unvirestiät ist es eagl, in wlehcer Rienhnelfoge die Bcuhtsbaen in eniem Wrot sethen, das enizg wcihitge dbaei ist, dsas der estre und lzete Bcuhtsbae am rcihgiten Paltz snid. Der Rset knan ttolaer Bölsdinn sien, und du knasnt es torztedm onhe Porbelme lseen. Das ghet dseahlb, wiel wir nchit Bcuhtsbae für Bcuhtsbae enizlen lseen, snodren Wröetr als Gnaezs.
>>ja so gehts mir als legastheniker
Hmmm, sich auf eine Rechtschreibschwäche raus reden, aber Fremdwörter
perfekt schreiben....
O.K. bin schon wieder still, ist mir bloß aufgefallen. ;-)
Gruß Elektrikser
hallo Elektrikser ja das ist meistens bei mir so das ich schwierige sachen schreiben kan und die einfachsten nicht aber egal pssst erlich bin legastheniker habe ich bei google geschaut ob ich es richtig geschrieben habe ob man da nicht was mit dem atmel machen könnte ?!?!?!? mal laut lachen mus aber egal ich weis was ich kan und drauf habe ;-) mfg hummelchen
> Schon mal über ne Diät nachgedacht? ;-) Das wäre sicher keine schlechte Sache. Politiker sollen mit Diäten ganz gut zurecht kommen... ;-) > pssst erlich bin legastheniker Wenn ich meinen Gedanken freien Lauf lasse und meine Texte nicht nochmal durchlese und korregiere, dann sieht das bei mir auch so aus. Vielleicht ist es ja nur eine Frage der Disziplin. Auf alle Fälle ist es aber eine Frage des Respekts Anderen gegenüber, deshalb gebe ich mir Mühe, meine Texte vernünftig zu formulieren anstatt mein Gegenüber nur anzurülpsen. Das kostet natürlich etwas mehr Zeit. Aber was sein muss, muss sein... ...
Was habt Ihr denn alle gegen einen PC im Auto. Ich habe mir in den freien DIN-Radioschacht in meinen alten Audi A4 einen ITX-PC im autoradiogroßen Gehäuse eingebaut. Dazu dann ein 8 Zoll Touchscreen Monitor von Pearl. Nun habe ich ein Navi, einen MP3 Player, einen CD-Spieler und für den Spieltrieb läuft auf dem PC noch VAG-Com sowie VAG Scope. (Die USB-Version von MFT) Da habe ich Alles, was ich sonst in zig Einzelgeräten in den Wagen einbauen müsste. Wenn mich der Hafer sticht, könnte ich sogar noch eine DVD-Spieler Software installieren. Aber warum ?? Das hat nix mit Pimp My Ride zu tun. Was ich mit dem ITX-PC im Auto habe ersetzt, bis auf die Radsensorik ein Navi Plus, das mich beim Kauf des Wagens mehr als 1000 Euro gekostet hätte. So hat mich der Kram, incl. Windows XP Pro (149 Euro) und Directions Navigator 6 (79 Euro) "nur" 302 Euro plus 1 Nachmittag Arbeit gekostet. Just my two cents. Der Modellbauer
>Auf alle Fälle ist es aber eine >Frage des Respekts Anderen gegenüber, deshalb gebe ich mir Mühe, meine >Texte vernünftig zu formulieren anstatt mein Gegenüber nur anzurülpsen. >Das kostet natürlich etwas mehr Zeit. Aber was sein muss, muss sein... Völlig richtig. Aber wäre es dann nicht besser, auf so ein Geschreibsel gar nicht erst zu antworten, zumal der Inhalt ja genauso verdreht war? Hat mich unangenehm an diesen walifogel erinnert.
@jack ich werde mich bessern ihr habt mir sehr geholfen und ich bin weiter gekommen dank euch und die tips klasse von euch mfg hummelchen
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.