Schrittmotor direkt über µC ansteuern

Gast #1575732
Lesenswert?

Hallo,

ich möchte gerne einen bipolaren Schrittmotor direkt mit einem µC 
ansteuern.
Meine Überlegung ist den Motor der einen Wicklungswiderstand von 16 Ohm 
hat, direkt an die µC Ports zu schalten. Der Strom durch die Wicklung 
sollte mindestens 15mA betragen. Das bedeutet, dass bei einer Spannung 
von 5V ein Reihenwiderstand von 330 Ohm nötig wäre. Mit 270 Ohm und den 
16 Ohm der Wicklung komme ich auf einen Strom von ca. 17mA. Wenn ich 
dann die Ports so schalte, dass die beiden Wicklungen abwechselnd von 
diesem Strom durchflossen werden müsste es doch funktionieren. Oder 
mache ich da einen Denkfehler?
Gast #1575747
Lesenswert?

Willst Du nur den Motor drehen lassen, oder auch was damit bewegen? 
15mA@5V sind nur 50mW und der größte Teil davon wird im 330Ohm bzw. 270 
Ohm Widerstand umgesetzt. P=I^2*R

Abgesehen davon ist es sicher nicht empfehlenswert die Port-Pins direkt 
an die Motor-Wicklungen anzuschließen. Beim Umpolen werden die 
Motor-Wicklungen eine Induktions-Spannung erzeugen, die höher ist, als 
die 5V. Normalerweise leitet man diese über eine Freilaufdiode ab.
Gast #1575757
Lesenswert?

Ja, der Motor dreht sich bei dem Strom, funktioniert sogar bei 10mA. 
Aber das mit der Freilaufdiode gibt mir jetzt zu denken. Wenn ich an 
jedem Port zwei Dioden jeweils gegen GND und VCC anbringe müsste es aber 
funktionieren???
Gast #1575758
Lesenswert?

Michael schrieb:

>ich möchte gerne einen bipolaren Schrittmotor direkt mit einem
>µC ansteuern.

Na ja, so ganz direkt wird es nicht gehen. Ich selbst, experimentierte 
vor ein paar Jahren mal mit dem integrierten Schrittmotortreiber TCA3727 
von Siemens. Macht Voll- und Halbschritte, wird vom µC einfach nur über 
Bitmuster angesteuert. Als Zusatzbauteile waren nur 2 Lastwiderstände 
als Stromsensoren erforderlich. Zum Experimentieren und Programmieren, 
war das alles erfreulich einfach.
Gast #4590781
Lesenswert?

Hi, hier ist der richtige Titel, jetzt hoffe ich auf eine  Lösung.
In nem anderen Thread hatte ich ja angekündigt, ein Mini-Stepper direkt 
an den tiny45 anzuschließen.
Habe ich nun getan, nur mit je 20 Ohm um die Spannung auf etwa 1.5 V zu 
bringen.
Wicklungswiderstand war etwa 20, mit Zu- und Ableitung zu den Pins also 
60 Ohm, ergibt 25 mA.
Nach ca.10 Halbschritten ohne ExtraLast war Schluss, aber nach Pause 
lief es wieder etwas, aber immer weniger, also tiny jetzt defekt.Hätte 
mich anders auch gewundert, immerhin hat es gezuckt.
Stefanus erwähnte R+C, wie muss die Beschaltung aussehen ?
Gern berichte ich dann über die Ergebnisse.
Das Ansteuerprogramm, Halbschritte, kann mit Led in Pb 0,1,2,3 
beobachtet werden.
;step.asm
;avrdude -P /dev/ttyUSB0 -c stk500v2 -p t45 -Uflash:w:step.hex:i
.include "tn45def.inc"
.def   A      = r16
.def   B      = r17
.def   C      = r18
.def   i48      = r19
        rjmp Anfang
;        .org 0x0003
;        rjmp TIM0_OVF    ;Timer0 Overflow
Anfang:
    ldi i48,48

      ldi ZH,high(data*2)

      ldi ZL,low(data*2)

loop:
  lpm C,Z+

  cpi C,0
   breq loop-1
  out ddrb, C
  lpm C,Z+

  or C,i48
  out portb, C
  ldi  A,20
  rcall pause
  ldi A,0
  out ddrb, A
  ldi  A,250
  rcall pause
  rcall pause
  rcall pause
   rcall pause
  rjmp loop
pause:

 ldi   r24,A

   ldi   r25,250
innen:                ;innere Schleife

    sbiw r24,1

    sbis portb,4
  rjmp +2
  sbi portb,4
  rjmp +1
  cbi portb,4
  brne  innen

  cbi portb,4
  ;  sbic pinb,inP

 brne  innen

 ret               ; Ende Pause

data:
.db 15, 10, 12, 8, 15, 9, 3, 1, 15, 5, 12, 4, 15, 6, 3, 2, 0, 0
; Ende, habe einige, hoffentlich entbehrliche Zeilen entfernt. Leider 
weiß ich nicht die richtge Formatierung.
Gruß vom (kühlen) Thüringerwald
Gast #4591457
Lesenswert?

Der µC ist doch nicht totzukriegen.
Mit kürzerem Impuls (ldi A,8 statt vorher 20) lief es wieder mehrere 
Runden.
In meinem Listing sind noch einige alte Zeilen einer Tastenabfrage (von 
sbis bis cbi).
Das vorgeschlagene RC-Glied ist wohl ein Schnubber, wie ich inzwischen 
gelesen habe.
Selbst beim TLE4202 schon eingesetzt, wieso hatte ich das vergessen. 
Alzheimer ?
Nach'm Frühstück wird der Lötkolben angeheizt.
Ob sich die 8 zusätzlichen Teile lohnen ?
5 A4988 f.10 € sind schon auf dem Weg.
Guten Morgen
Gast #4591498
Lesenswert?

Ich hatte in einem anderen Thread einen Snubber vorgeschlagen. Das war 
aber auch ein anderer Anwendungsfall, der nicht hierzu passt.

Wenn du einen Snubber verwendest, werden Impulse entstehen, die über 5V 
hinaus gehen bzw. unter 0 Volt gehen. Das verträgt kein Mikrocontroller.

Hier sind 4 Freilaufdioden sinnvoller, entsprechend diesem Schaltbild:
http://talkingelectronics.com/projects/MOSFET/images/PushPullMotor.gif

Zwar befinden sich im Mikrocontroller bereits Dioden, die sind aber 
nicht ausreichend belastbar.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren