Kommando för upprampning av steppper hastighet

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
Tekko
Inlägg: 9009
Blev medlem: 28 november 2004, 20:19:15

Inlägg av Tekko »

Nu har jag proggat en halvstegsdriver, startar fint på 1ms.

Och en högmoment, startar själv på 2ms, behöver hjälp samt stannar efter några varv på 1ms.
Tekko
Inlägg: 9009
Blev medlem: 28 november 2004, 20:19:15

Inlägg av Tekko »

Nu vill jga utveckla mitt stepperprogram lite med 2 knappar, en som ökar varvtalet och en som minskar. Någon som kan BASCOM-AVR och vet vad jag ska lätta till för att få de funktioner jag vill ha med knapparna ?
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

Först måste du väl hitta en metod i ditt verktyg för att få en
bättre upplösning än bara hela millisekunder
Antagligen bör du läsa på lite om timers och gå den vägen...
Tekko
Inlägg: 9009
Blev medlem: 28 november 2004, 20:19:15

Inlägg av Tekko »

Mjo. :?
Användarvisningsbild
RDX*
EF Sponsor
Inlägg: 1652
Blev medlem: 28 maj 2003, 22:52:04
Ort: Skåne - Lund

Inlägg av RDX* »

Du kan testa denna koden, jag har inte testat att det fungerar, men du borde få lite hjälp i alla fall.

Kod: Markera allt

$crystal = 3200000
$regfile "2313def.dat"

      Dim Wa As Byte

      Config Pinb.0 = Output
      Config Pinb.1 = Output
      Config Pinb.2 = Input
      Config Pinb.3 = Input
      Config Timer0 = Timer , Prescale = 64
      Wa = 150

Do
      Debounce Pinb.2 , 0 , Snabbare , Sub
      Debounce Pinb.3 , 0 , Langsammare , Sub


      Set Portb.0
      Reset Portb.1
      Gosub Vanta

      Set Portb.1
      Set Portb.0
      Gosub Vanta

      Reset Portb.0
      Set Portb.1
      Gosub Vanta

      Reset Portb.1
      Reset Portb.0
      Gosub Vanta

Loop

Vanta:
   Do

   Loop Until Tcnt0 >= Wa
   'when 10 pulses are count the loop is exited
   'or use the special variable TIMER0
   Timer0 = 0

Return

Snabbare:
    
    If Wa <= 34 Then
      Wa = 5
    Else
      Wa = Wa - 29
    End If
Return

Langsammare:
    End If
    If Wa => 121 Then
      Wa = 150
    Else
      Wa = Wa + 29
    End If
Return
Med koden borde du kunna reglera hastigheten från 3 ms till 0.1 ms i fem steg.
Tekko
Inlägg: 9009
Blev medlem: 28 november 2004, 20:19:15

Inlägg av Tekko »

RDX, tack för din hjälp :) Dock det finns 2 fel i koden:
Bild
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

Det är väl *1* fel i koden ?

Har du inte ens läst felmeddelanderna innan du postar ? :-)

Intressantare är väl hur det fungerade efter att du fixade felet...
Tekko
Inlägg: 9009
Blev medlem: 28 november 2004, 20:19:15

Inlägg av Tekko »

Errors cleared :D Får testa imorrn, mår dåligt idag samt att ingenting är kopplat pga städning.
Användarvisningsbild
RDX*
EF Sponsor
Inlägg: 1652
Blev medlem: 28 maj 2003, 22:52:04
Ort: Skåne - Lund

Inlägg av RDX* »

Jag sa att jag inte hade testat det (dvs. ej kompilerat eller kollat syntax). Men jag misstänker att felet inte var svårare än att du lyckas korrigera det :wink:.


nå, fungerade det? Vi väntar spänt :) .
Tekko
Inlägg: 9009
Blev medlem: 28 november 2004, 20:19:15

Inlägg av Tekko »

Körde programmet i simulatorn, det loopar inte utan kör tills det kommer till "Loop until Tcnt >= Wa" där det stannar, kanske blir annat då det är överlagt i avren dock.

Ska testa vad som händer.
Tekko
Inlägg: 9009
Blev medlem: 28 november 2004, 20:19:15

Inlägg av Tekko »

programmet funkade inte. Motorn vibrerar och ger igrån sej ljud men startar inte samt att knapparna inte ger någon påverkan.
Användarvisningsbild
RDX*
EF Sponsor
Inlägg: 1652
Blev medlem: 28 maj 2003, 22:52:04
Ort: Skåne - Lund

Inlägg av RDX* »

Jag har kollat i simulatorn nu och det verkar fungera som det ska. Det som kan hjälpa är att stänga av timern i knappfunktionerna. Kopplade du knapparna rätt? Dvs de ska gå låga när du trycker ner knappen. Om du har kopplat fel så ändra debounce-parametern till aktiv hög.

Och startar motorn med en paus på 3ms? Du sa aldrig vilket intervall du ville ha på hastigheten!
Tekko
Inlägg: 9009
Blev medlem: 28 november 2004, 20:19:15

Inlägg av Tekko »

Jag har knapparna på PD 2 och 3
Användarvisningsbild
RDX*
EF Sponsor
Inlägg: 1652
Blev medlem: 28 maj 2003, 22:52:04
Ort: Skåne - Lund

Inlägg av RDX* »

jo, men är dom aktivt låga?


dvs att du har kopplat det så är

Kod: Markera allt

     |
     |-Pd2-------[ 10 k ]------ +5V
     |        |
               \
                \
              |
              |
            jord

Tekko
Inlägg: 9009
Blev medlem: 28 november 2004, 20:19:15

Inlägg av Tekko »

Jag har fått knapparna att fungera men en utgång på avren har pajjat :cry:

På lägsta hastigheten startar motorn men ökar jag så stannar den och vibrerar bara.
Skriv svar