- Labornetzteil AliExpress         
Seite 2 von 2 ErsteErste 12
Ergebnis 11 bis 18 von 18

Thema: ALLEGRO Treiberstufe

  1. #11
    Benutzer Stammmitglied
    Registriert seit
    02.02.2006
    Ort
    8160 Weiz
    Alter
    44
    Beiträge
    39
    Anzeige

    Praxistest und DIY Projekte
    Funktioniert einfach nicht. Schön langsam wäre ich wirklich happy wenn der Motor mal ein Lebenszeichen von sich gebe.

    Vielleicht liegt der Fehler in meinem Programm ja bei den Zeitabständen in denen Strobe zu null und wieder high wird?
    Oder beim Sleepmode? Dieser muss ja bevor der Treiber beschrieben wird zu null werden um die alten Daten zu löschen, und muss dann immer auf high eingestellt sein.

    Bitte um Hilfe
    ************************************************** ******
    $regfile = "2313def.dat"
    $crystal = 1000000

    Config Portb = Output

    Dim Word0 As Long
    Dim Word1 As Long

    Motor Alias Portb.2
    Strobe Alias Portb.3
    Sleepmode Alias Portb.4

    Word0 = &B0010000010000011101
    Word1 = &B1001100011000010001

    Strobe = 1
    Sleepmode = 0
    Waitus 1
    Sleepmode = 1
    Waitus 100
    Strobe = 0
    Waitus 1
    Shiftout Portb.0 , Portb.1 , Word0 , 1 , 19 , 100
    Waitus 1
    Shiftout Portb.0 , Portb.1 , Word1 , 1 , 19 , 100
    Waitus 1
    Strobe = 1

    Do
    Toggle Motor
    Waitms 500
    Toggle Motor
    Waitms 500
    Loop

    End
    ************************************************** ******

    Schöne Grüße,
    Martin

  2. #12
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.09.2004
    Ort
    Düsseldorf
    Beiträge
    3.948
    Ja ich hab jetzt mal auf die Signale geehen und wenn ich nix überlesen hab dann stimmt das so.

    Mal zum Testen das hier nehmen.


    Code:
    $regfile = "2313def.dat"
    $crystal = 1000000
    
    Config Portb = Output
    
    Dim Word0 As Long
    Dim Word1 As Long
    
    Motor Alias Portb.2
    Strobe Alias Portb.3
    Sleepmode Alias Portb.4
    
    Word0 = &B00100000100000111010000000000000
    Word1 = &B10011000110000100010000000000000
    
    Strobe = 1
    Sleepmode = 0
    Waitus 1000
    Sleepmode = 1
    Waitus 1000
    Strobe = 0
    Waitus 1000
    Shiftout Portb.0 , Portb.1 , Word0 , 1 , 19 , 1000
    Waitus 1000
    Shiftout Portb.0 , Portb.1 , Word1 , 1 , 19 , 1000
    Waitus 1000
    Strobe = 1
    
    Do
    Toggle Motor
    Waitms 500
    Toggle Motor
    Waitms 500
    Loop
    
    End
    Zum einen hab ich die Pausen raufgedreht um sicher zu sein das der steppertreiber nicht einfach nur überrollt wird.
    Später wenn alles läuft dann kannste an den Timings feilen.
    Jetzt muß er erstmal laufen.


    Im Datenblatt steht "Data is clocked into a
    shift register on the rising edge of CLOCK signal." also interpretiere ich das als 1 oder 3 für die Option.
    Da ich jetzt nicht weiß ob deine alte Zeile als MSB oder LBS genommen wird hab ich einfach auf die vollen 4 Bit aufgerundet und dein Bitmuster damit fest nach MSB geschoben.
    Damit ist die Option erstmal auf 1 festgelegt.

    Versuch das mal und berichte.


    PS:
    Der Treiber sieht interessant aus.
    Wo gibts den ?
    Gruß
    Ratber

  3. #13
    Benutzer Stammmitglied
    Registriert seit
    02.02.2006
    Ort
    8160 Weiz
    Alter
    44
    Beiträge
    39
    Den Treiber habe ich bei Farnell bestellt. Er wird aus dem Lager in den USA geliefert (20Euro Transportkosten). Der Chip selbst kostet nur 5Euro.
    Es gibt natürlich auch andere Treiber welche einfacher handzuhaben sind, aber wie du schon gesagt hast ist dieser sehr interessant.
    Das ist es ja warum ich diesen Treiber gewählt habe.

    Es tut sich aber leider noch immer nichts.
    Ich habe jetzt mal die Spannungen am Portb gemessen.

    Die Spannung am Portb.4 - Sleepmode liegt immer bei 0V.
    Sollte aber immer auf high liegen da ja sonst die Daten resetet werden.

    Die Spannung am Portb.1 wechselt immer zwischen 0 und 2,5V.
    Portb.1 sollte ja nur während des Datentransportes aktiv sein?!

    Hardwaremäßig habe ich am Treiberpin Clock die Leitungen Portb.1 und Portb.2 zugeführt.
    Hoffe das ist richtig so.

    MfG
    Martin

  4. #14
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.09.2004
    Ort
    Düsseldorf
    Beiträge
    3.948
    Also die 2.5V gefallen mir ganz und garnicht.

    Könnte sein das Bascom auch beim 2313 nicht alles unterstützt.
    Hab die Portdefinition mal Alternativ eingestellt.

    Apropos 2313:
    Is doch nen 90S2313 und kein Tiny2313 oder ?


    Zusätzlich hab ich die Stackdefinitionen dzugenommen.


    Sieht jetzt so aus.


    Code:
    $regfile = "2313def.dat"
    $crystal = 1000000
    
    $hwstack = 32
    $swstack = 20
    $framesize = 40
    
    'Config Portb = Output
    Config Pinb.0 = Output                                      'Geht auch per ddrb aber erstmal Klare Sachen schaffen
    Config Pinb.1 = Output
    Config Pinb.2 = Output
    Config Pinb.3 = Output
    Config Pinb.4 = Output
    
    
    Dim Word0 As Long
    Dim Word1 As Long
    
    Motor Alias Portb.2
    Strobe Alias Portb.3
    Sleepmode Alias Portb.4
    
    
    
    Word0 = &B00100000100000111010000000000000
    Word1 = &B10011000110000100010000000000000
    
    Strobe = 1
    Sleepmode = 0
    Waitus 1000
    Sleepmode = 1
    Waitus 1000
    Strobe = 0
    Waitus 1000
    Shiftout Portb.0 , Portb.1 , Word0 , 1 , 19 , 1000
    Waitus 1000
    Shiftout Portb.0 , Portb.1 , Word1 , 1 , 19 , 1000
    Waitus 1000
    Strobe = 1
    
    Do
    Toggle Motor
    Waitms 500
    Toggle Motor
    Waitms 500
    Loop
    
    End


    Den Treiber habe ich bei Farnell bestellt. Er wird aus dem Lager in den USA geliefert (20Euro Transportkosten). Der Chip selbst kostet nur 5Euro.
    Es gibt natürlich auch andere Treiber welche einfacher handzuhaben sind, aber wie du schon gesagt hast ist dieser sehr interessant.
    Das ist es ja warum ich diesen Treiber gewählt habe.
    Ja,muß ich mal schauen.
    Bei 20€ Extraporto ist das gut zu überlegen.
    Gruß
    Ratber

  5. #15
    Benutzer Stammmitglied
    Registriert seit
    02.02.2006
    Ort
    8160 Weiz
    Alter
    44
    Beiträge
    39
    In Steckbrett steckt zurzeit ein ATTINY2313.
    Dachte mir zum Herumprobieren ist er gut genug.
    Kann es sein dass mit diesem Probleme auftreten?
    Soll ich einen anderen verwenden (ATmega8 oder so)?.

    SG
    Martin

  6. #16
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.09.2004
    Ort
    Düsseldorf
    Beiträge
    3.948
    Nö,brauchst keinen anderen zu nehmen aber die Zeile

    Code:
    $regfile = "2313def.dat"
    Weist den Controller an für einen AT90S2313 zu Compilieren.

    Du hats aber einen Tiny2313.
    Der ist zwar der Nachfolger und weitgehends Kompatibel aber darauf sollte man sich nicht verlassen

    Mach mal folgendes draus.

    Code:
    $regfile = "attiny2313.dat"
    Gruß
    Ratber

  7. #17
    Benutzer Stammmitglied
    Registriert seit
    02.02.2006
    Ort
    8160 Weiz
    Alter
    44
    Beiträge
    39
    Ich habe jetzt trotzdem mal einen ATmega8 ins Steckbrett gesteckt.
    Im Leerlauf hat der Controller 5V am Sleepmode Ausgang.
    Aber wenn ich jedoch den Sleepmode Pin vom Treiber mit den des Controllers verbinde liegen am Ausgang des Controllers 0V an.

    Werde nochmal die Schaltung am Treiber überprüfen.
    Vielleicht habe ich ja auch die Wertigkeiten der einzelnen Bits nicht richtig eingestellt.

    Was wäre denn dein Vorschlag für die zwei Wörter nur als Grundeinstellung. Also z.B. nur Vollschrittbetrieb?

    Danke,
    Martin

  8. #18
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.09.2004
    Ort
    Düsseldorf
    Beiträge
    3.948
    Da hab ich jetzt noch nicht weiter reingelesen denn welche Modi du nutzen willst mußt du schon selber entscheiden.

    Wie gesagt,es muß erstmal die Komunikation laufen damit es funktioniert.
    Die restlichen Feinheiten um Halb/Vollschritt usw. kannste dann hinterher ausprobieren.
    Bei Hlbschritt haste ne feiner Auflösung und beim Vollschritt mehr Halte/Drehmoment usw.
    Gruß
    Ratber

Seite 2 von 2 ErsteErste 12

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

LiFePO4 Speicher Test