Forum: Mikrocontroller und Digitale Elektronik atmega8a Servo ansteuern AVR


von Jannik K. (janni_kar_19)


Lesenswert?

Hi alle zusammen,

Zu erst einmal, ich bin neu hier und möchte mich mit dem Thema etwas 
genauer beschäftigen. Ich programmiere in Bascom-AVR und habe ehrlich 
gesagt noch nicht all zu viel Ahnung, also bitte etwas Rücksicht.

Nun zu meinem Problem:

Ich möchte den Mikrocontroller dazu bringen einen Servo zu bewegen. Um 
das zu schaffen habe ich mir ein Buch gekauft, in dem es steht und viele 
Internet-anleitungen befolgt, bisher ohne Erfolg.

- Der verwendete Servo ist vom Conrad : Artnr.: 404753 - 62
- Mein Programmer ist selbstgebaut und funktioniert.
- Strom kommt auch an.
- am Prozessor ist zweimal + und zweimal - angeschlossen

Nun zu meinem Programm:
1
$regfile = "m8adef.dat"
2
$crystal = 8000000
3
4
$hwstack = 32
5
$swstack = 10
6
$framesize = 40
7
8
Config Servos = 1 , Servo1 = Portb.1 , Reload = 10 , Timer = Timer0
9
Config Portb = Output
10
Enable Interrupts
11
12
13
Do
14
15
Servo(1) = 30
16
Wait 1
17
Servo(1) = 100
18
Wait 1
19
20
Loop
21
22
End                                                         'end program

wäre super, wenn mir jemand helfen könnte, denn ich hab echt keine 
Ahnung woran es liegen könnte.

Mfg Jannik

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Jannik K. schrieb:
> - am Prozessor ist zweimal + und zweimal - angeschlossen

Du hast natürlich auch die obligatorischen Abbblockkondensatoren von 
100nF zwischen beide Versorgungspärchen geschaltet?

Zu Bascom kann ich nichts sagen - null Ahnung.

von Schnupftabak (Gast)


Lesenswert?

>Ahnung woran es liegen könnte.

Woran was liegen könnte?
Was ist Deine Frage?

von Cyblord -. (cyblord)


Lesenswert?

Mit einer Blinkenden LED könntest du mal schauen ob der Cntroller läuft 
und das Programm überhaupt korrekt ausführt.  Und du würdest sehen ob 
das Timing stimmt.

von Cyborg (Gast)


Lesenswert?

Sieht nicht danach aus, als wenn der Programablauf da Sinn macht.

Ist Google kaputt? Da gibts doch Beispiele im Netz.
http://www.jacob-pirna.de/avr-8-bit/modellbau-servo-mit-avr-in-bascom.html

von Bascom? (Gast)


Lesenswert?

Soll das nicht
Config Portb.1 = Output
heißen?

von Thomas (Gast)


Lesenswert?

Moin Jannick,

ich hab das mit nem Olimex-Testboard und dem AVR-Tutorial, insbesondere
https://www.mikrocontroller.net/articles/AVR-Tutorial:_Servo geschafft. 
Schön ist es, wenn Du gleichzeitig ein Poti auswertest und du mit dem 
Poti das Servo bewegen kannst. Ist echt kein Hexenwerk, braucht aber ein 
bisschen Gehirnschmalz und Ausdauer. Nur zu!

Gruß Thomas

von Bascom? (Gast)


Lesenswert?

Und das
 , Timer = Timer0
kannste dir schenken, es wird sowieso Timer0 verwendet.

von Jobst M. (jobstens-de)


Lesenswert?

Bild vom Aufbau, Schaltplan.


Gruß

Jobst

von M. K. (sylaina)


Lesenswert?

Mit Bascom kenne ich mich auch nicht aus aber wenn ich mir mal obigen 
Code anschaue erscheint es mir so, als fehle da noch was.
In der Config wird einmal Servos und einmal Servo1 definiert, ich der 
Schleife dann wird aber ein Servo(1) angesprochen der anscheinend zuvor 
noch gar nicht definiert wurde. Ist das wirklich so richtig?
Und die Zahlenwerte, da tu ich mir auch schwer mit denn ich kann hier 
nicht das typische Servosignal (20 ms Periode mit einem 1-2 ms Impuls) 
erkennen.
Daher Jannik: Ist dir das Steuersignal für einen Servo denn bekannt? 
Lies dir doch mal diesen Artikel durch: 
https://www.mikrocontroller.net/articles/Modellbauservo_Ansteuerung

von Heinz L. (ducttape)


Lesenswert?

Meine Glaskugel sagt mir dass sich der Servo nicht bewegt. Informier 
mich bitte ob die Kugel recht hat oder in die Reinigung muss...

Erste Frage bei sowas ist halt immer, stimmt der Frequenzteiler? Ob der 
das tut kannst leicht feststellen wenn Du mal 'n Led-Blinkprogramm in 
den Chip lädst wo die LED, sagen wir mal, 4x die Sekunde blinken soll. 
LED dranhalten, schauen ob's flackert. Wenn's statt 4x die Sekunde nur 
alle 2 Sekunden blinkt wissen wir schon mal was es ist, sonst halt was 
es nicht ist.

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
Noch kein Account? Hier anmelden.