Elektronika.lt
 2025 m. sausio 5 d. Projektas | Reklama | Žinokite | Klausimai | Prisidėkite | Atsiliepimai | Kontaktai
Paieška portale
EN Facebook RSS

 Kas naujo  Katalogas  Parduotuvės  Forumas  Tinklaraščiai
 Pirmas puslapisSąrašas
 Forumas / + pokalbiai
 - Paieška forume
 - D.U.K. / Forumo taisyklės
 - Narių sąrašas
 - Registruotis
 - Prisijungti

Elektronika.lt portalo forumas

Jūs esate neprisijungęs lankytojas. Norint dalyvauti diskusijose, būtina užsiregistruoti ir prisijungti prie forumo. Prisijungę galėsite kurti naujas temas, atsakyti į kitų užduotus klausimus, balsuoti forumo apklausose.

Administracija pasilieka teisę pašalinti pasisakymus bei dalyvius, kurie nesilaiko forumo taisyklių. Pastebėjus nusižengimus, prašome pranešti.

Dabar yra 2025 01 05, 00:41. Visos datos yra GMT + 2 valandos.
 Forumas » Mikrovaldikliai » stepper motor
Jūs negalite rašyti naujų pranešimų į šį forumą
Jūs negalite atsakinėti į pranešimus šiame forume
Jūs negalite redaguoti savo pranešimų šiame forume
Jūs negalite ištrinti savo pranešimų šiame forume
Jūs negalite dalyvauti apklausose šiame forume
 
  
Puslapis 13
Pereiti prie 1, 2, 3  Toliau
Pradėti naują temą  Atsakyti į pranešimą Rodyti ankstesnį pranešimą :: Rodyti kitą pranešimą 
 stepper motor
PranešimasParašytas: 2010 03 15, 22:35 Pranešti apie taisyklių pažeidimą Atsakyti su citata
zingo
Dažnas dalyvis
Dažnas dalyvis
Peržiūrėti vartotojo aprašymą Siųsti asmeninį pranešimą
Sveiki, bandau pasidaryti nesudetinga bipolar stepper motor valdikliuka.
Naudoju atmega8. Esu pasirases tokia programa, su jam man pavyksta paleisti suktis ji desinen arba kairen, bet nepavyksta sustabdyti.
Ijungus valdikli ir nuspaudus pvz mygtuka desinen jis pradeda suktis desinen bet nuspaudus stop neko nereguoja. Gal galit patart kokias klaidas darau programos kode?
Kodas:
 

#include <avr/io.h>

int main() {

PORTB=7;
unsigned char a=0;

while(1){

     
     if (!(PINB&1))   // migtukas desinen
      {
      if (a==0) a=1;
      while (!(PINB&1)){}
      }
      if (a==1)   desine ();

      if (!(PINB&2))          // mygtukas kairen
      {
      if (a==0) a=2;
      while (!(PINB&2)){}
      }
      if (a==2)   kaire ();
          
      }    
}

void stop()
{

}

    void delay_ms() //

{
    int i,j;
    for(i=0;i<150;i++)
    for(j=0;j<100;j++)
   {
      asm("nop");
      asm("nop");
   }
   {

   PORTB=7;
   unsigned char a=0;

   if (!(PINB&4))  //  Stop mygtukas
 {
        if (a==0) a=3;
      while (!(PINB&4)){}
}
      if (a==3)    main() ;
    
      }
}


void desine() {
DDRC=15;

while (1) {


       PORTC=0b00000001; // desine
       delay_ms();
          PORTC=0b00001001;
      delay_ms();
       PORTC=0b00001000;
      delay_ms();
       PORTC=0b00001100;
      delay_ms();
        PORTC=0b00000100;
      delay_ms();
       PORTC=0b00000110;
        delay_ms();
       PORTC=0b00000010; 
         delay_ms();
       PORTC=0b00000011;
         delay_ms();

      }
   
}
void kaire() {
DDRC=15;

while (1) {

       
       PORTC=0b00000011; // i kaire
       delay_ms();
       PORTC=0b00000010;
      delay_ms();
       PORTC=0b00000110;
      delay_ms();
       PORTC=0b00000100;
      delay_ms();
        PORTC=0b00001100;
      delay_ms();
       PORTC=0b00001000;
        delay_ms();
       PORTC=0b00001001; 
         delay_ms();
       PORTC=0b00000001;
         delay_ms();
     
      }
   

}












Paskutinį kartą redagavo zingo, 2010 03 19, 00:18. Redaguota 2 kartus(ų)
 stepper motor
PranešimasParašytas: 2010 03 15, 23:16 Pranešti apie taisyklių pažeidimą Atsakyti su citata
Digix
VIP narys
VIP narys
Peržiūrėti vartotojo aprašymą Siųsti asmeninį pranešimą
gana keistai programa padarei, suprantama kad neveiks, net ja suprasti sunku

pirma kas cia per valdymas 3 kintamaisiais?

variklis negali vienu metu suktis i abi puses ir dar stoveti vietoje.

taigi reikia vieno kintamojo jo busenai

visas tokias va eilutes
if (a==0) a=1; else a=0;
padaryk be else,

va taip
if (a==0) a=1;

visus abc kintamuosius padaryk vienodu pavadinimu.

nu ir nesuprantu kam tu stop funkcija tokia sudetinga padarei kai ten tiesiog nieko daryti nereikia, arba gali koki 1ms delay ideti
 stepper motor
PranešimasParašytas: 2010 03 15, 23:31 Pranešti apie taisyklių pažeidimą Atsakyti su citata
zingo
Dažnas dalyvis
Dažnas dalyvis
Peržiūrėti vartotojo aprašymą Siųsti asmeninį pranešimą
Na va redagavau taip kaip patariai, ant simuliatoriaus lyg ir veikia reik megint isikelt i atmega. O klausimas dar kaip butu galima padaryt pvz kiek laiko suktusi nzn kaip paaiskint, bet daleiskim yra 2 mygtukai vienas didinantis kazkoki kintamaji "i" kitas start ir pvz tris kartus suspaudus mygtuka ir nuspaudus start variklis apsisuktu pvz 3 kartus ar suktusi 3 sekundes. Kaip apsirasyt ivedima i valdikli. Tikiuos minti suprasit Sad sunku paaiskint.
Tiesa coda ir temoj redagavau
 stepper motor
PranešimasParašytas: 2010 03 15, 23:58 Pranešti apie taisyklių pažeidimą Atsakyti su citata
Digix
VIP narys
VIP narys
Peržiūrėti vartotojo aprašymą Siųsti asmeninį pranešimą
aha, kodas dabar nesamone

taigi akivaizdu kad jei nori kad suktusi i viena puse tui buti a=1 o kita pouse a=2 ir jei stio tai sakykim a=0

negali buti visada a=1

o siap tai tavo programa labai diletantiska.

nu kai bandymas tinka, bet rimtessniam naudojimui ne.


tau reikai ne kurti funkcijas kairen desinen ir t,t, o vien afunkcija kuri priklausomai nuo duoto argumento suktu i viena zingsni i viena ar i kita puse


jei nori kad sukimas vyktu nurodyta apsisukimu skaisčiu tai padaryk cikla kuris prasuktu atitinkama kryptimi reikiama žingsniu kieki
tiesa tokiu taveju tosl kol varikli sukasi i klaviatura nebus reaguojama.

mygtuku tikrinimui irgi sukurk funkcija kuri duotu atsakyma kuris mygtukas buvo paspaustas.

paprastumo labui klaviaturos apklausimnejima tada patogiausia ikisti i taimerio pertraukimajei nori kad variklis sukimosi metu reaguotu i mygtukus

nu arba galima po kievieno zingsuio deti mygtuku tikrinimo funkcija
 stepper motor
PranešimasParašytas: 2010 03 16, 00:15 Pranešti apie taisyklių pažeidimą Atsakyti su citata
zingo
Dažnas dalyvis
Dažnas dalyvis
Peržiūrėti vartotojo aprašymą Siųsti asmeninį pranešimą
tai keisti pvz
Kodas:

int main() {

PORTB=7;
unsigned char a=0;

while(1){

     
     if (!(PINB&1))   // migtukas desinen
      {
      if (a==0) a=1;
      while (!(PINB&1)){}
      }
      if (a==1)   desine ();

      if (!(PINB&2))          // mygtukas kairen
      {
      if (a==0) a=2;
      while (!(PINB&2)){}
      }
      if (a==2)   kaire ();
          
      }    
}


Na nieko nesakau kad programa zemo lygio Smile niekada neteko susidurti su mikrokontroleriu programavimu :/
O db esu priverstas
 stepper motor
PranešimasParašytas: 2010 03 16, 12:52 Pranešti apie taisyklių pažeidimą Atsakyti su citata
Chuanas
Dažnas dalyvis
Dažnas dalyvis
Peržiūrėti vartotojo aprašymą Siųsti asmeninį pranešimą
gali papaisyt kaip cia darei? Is kur minusa gauna stepperis? As, tai dariau su tranzistoriniais switchais...
 stepper motor
PranešimasParašytas: 2010 03 16, 13:55 Pranešti apie taisyklių pažeidimą Atsakyti su citata
zingo
Dažnas dalyvis
Dažnas dalyvis
Peržiūrėti vartotojo aprašymą Siųsti asmeninį pranešimą
As dariau su L293 driveriu nuo mikrokontrolerio jungiau per l293 veliau galesiu papaisyt. A gal tu dariai kazka panasaus kaip as minejau su "ivedimu" ? kad spaudziant kazkoki migtuka didintu kazkoki kintamaji "i" ?
 stepper motor
PranešimasParašytas: 2010 03 16, 17:59 Pranešti apie taisyklių pažeidimą Atsakyti su citata
Chuanas
Dažnas dalyvis
Dažnas dalyvis
Peržiūrėti vartotojo aprašymą Siųsti asmeninį pranešimą
O, galvojau ir as sita cipa pikti, bet poto sugalvojau kaip tranzistorius galima panaudoti. Siai gal atsiranda taip nuostuoliai didesni, bet smagu pazaist. As dar judinu be kintamuju. Siap naudoju tranzistoriu, kuris kaip perjungiklis paduoda minusa, o is megos duodu plius. 4 tranza stovi, poto galvoju dar 2 dadet ir burushless cd-rom motorus sukt, cia jau idomiau bus Smile
 stepper motor
PranešimasParašytas: 2010 03 19, 00:19 Pranešti apie taisyklių pažeidimą Atsakyti su citata
zingo
Dažnas dalyvis
Dažnas dalyvis
Peržiūrėti vartotojo aprašymą Siųsti asmeninį pranešimą
Kaip pasiūlitumėt reguliuoti sukimosi greiti ? Nelabai pavyksta kažkaip?
 stepper motor
PranešimasParašytas: 2010 03 19, 00:41 Pranešti apie taisyklių pažeidimą Atsakyti su citata
Digix
VIP narys
VIP narys
Peržiūrėti vartotojo aprašymą Siųsti asmeninį pranešimą
tai po kiekvieno zingsnio idek kazkoki uzdelsima
 stepper motor
PranešimasParašytas: 2010 03 19, 00:57 Pranešti apie taisyklių pažeidimą Atsakyti su citata
zingo
Dažnas dalyvis
Dažnas dalyvis
Peržiūrėti vartotojo aprašymą Siųsti asmeninį pranešimą
bet pvz kaip reguliuot galma butu mechaniskai kad ir pvz su potensiometru, gal imanoma jo padeti kazkaip relizuot kaip kazkoki int ?
reiktu kazkaip programuot kad nuo potensiometro sukimo keistusi uzdelsimas? ar kazkaip paprastai imanoma ?

Va kazka panasaus i sita video.
http://www.ecs.umass.edu/ece/m5/media/stepper_motor.mov
 stepper motor
PranešimasParašytas: 2010 03 19, 01:58 Pranešti apie taisyklių pažeidimą Atsakyti su citata
Digix
VIP narys
VIP narys
Peržiūrėti vartotojo aprašymą Siųsti asmeninį pranešimą
Potenciometras yra analoginis daiktas, tai cia reikes naudoti ADC keitkli.

pajungi potenciometra ant ADC iejimo su adc ismatuoji potenciometro itampa ir pagal ta itampa nustatai usdelsima po kiekvieno zingnsio.

arba galima ant procesoriaus koju pajunti reguliuojama RC grandine su kuria tu darysi ta uždelsima vietoje delay funkcijos
nu sakykim per varza paduodi is vienos kojos signala i kondensatoriu o su kita koja lauki kol signalas pasidarys koks reikia


arba galima panaudoti QPSK enkoderi, pvz nuo kompiuterines peles su rutuliuku bet cia jau atskira tema aiskinti kaip jis veikia. su potenciometru arba RC ko gero paprasciau.
 stepper motor
PranešimasParašytas: 2010 03 19, 02:08 Pranešti apie taisyklių pažeidimą Atsakyti su citata
zingo
Dažnas dalyvis
Dažnas dalyvis
Peržiūrėti vartotojo aprašymą Siųsti asmeninį pranešimą
Gal zinai kokia nuoroda kad butu pavaizduota schemute su ta rc grandinele prie koju nelabai isivaizduoju kaip nuo vienos leidi su kita lauki, cia pries varikli ir ant kiekvieno isejimo ? (think)
 stepper motor
PranešimasParašytas: 2010 03 19, 04:16 Pranešti apie taisyklių pažeidimą Atsakyti su citata
Digix
VIP narys
VIP narys
Peržiūrėti vartotojo aprašymą Siųsti asmeninį pranešimą
nu o kas per problema?

as tai shemos neturiu ir sunkoka butu rasti.


nusipaisyk pats:

dvi procesoriaus kojos:

tarpusavyje sujungtos su potenciometru
ant vienos is tu koju kuri dirba kaip isejimas pajungtas kondensatorius kitu galu i korpusa.
 stepper motor
PranešimasParašytas: 2010 03 27, 19:31 Pranešti apie taisyklių pažeidimą Atsakyti su citata
zingo
Dažnas dalyvis
Dažnas dalyvis
Peržiūrėti vartotojo aprašymą Siųsti asmeninį pranešimą
Bet tai keiciant velinima, nezymiai greitis kinta, mazinant velinima greitis nelabai kinta, o sumazinus iki labai mazo tai isvis vaRiklis pradeda pulsuot ir nesisuka. Gal reiktu kazkaip keisti dazni ?
Pradėti naują temą  Atsakyti į pranešimą Pereiti prie 1, 2, 3  Toliau
 
Forumo sistema: phpBB
 „Google“ paieška forume
 Kas naujesnio?
 Naujos temos forume

Global electronic components distributor – Allicdata Electronics

Electronic component supply – „Eurodis Electronics“

LOKMITA – įvairi matavimo, testavimo, analizės ir litavimo produkcija

Full feature custom PCB prototype service

Sveiki ir ekologiški maisto produktai

Mokslo festivalis „Erdvėlaivis Žemė

LTV.LT - lietuviškų tinklalapių vitrina

„Konstanta 42“

Technologijos.lt

Buitinė technika ir elektronika internetu žemos kainos – Zuza.lt

www.esaugumas.lt – apsaugok savo kompiuterį!

PriedaiMobiliems.lt – telefonų priedai ir aksesuarai

Draugiškas internetas

FS25 Tractors
Farming Simulator 25 Mods, FS25 Maps, FS25 Trucks
ETS2 Mods
ETS2 Trucks, ETS2 Bus, Euro Truck Simulator 2 Mods
FS22 Tractors
Farming Simulator 22 Mods, FS22 Maps, FS25 Mods
VAT calculator
VAT number check, What is VAT, How much is VAT
LEGO
Mänguköök, mudelautod, nukuvanker
Thermal monocular
Thermal vision camera,
Night vision ar scope,
Night vision spotting scope
FS25 Mods
FS25 Harvesters, FS25 Tractors Mods, FS25 Maps Mods
Dantų protezavimas
All on 4 implantai,
Endodontija mikroskopu,
Dantų implantacija
FS25 Mods
FS25 Maps, FS25 Cheats, FS25 Install Mods
GTA 6 Weapons
GTA 6 Characters, GTA 6 Map, GTA 6 Vehicles
FS25 Mods
Farming Simulator 25 Mods,
FS25 Maps
ATS Trailers
American Truck Simulator Mods, ATS Trucks, ATS Maps
Reklama
‡ 1999– © Elektronika.lt | Autoriaus teisės | Privatumo politika | Atsakomybės ribojimas | Turinys | Reklama | Kontaktai LTV.LT - lietuviškų tinklalapių vitrina
Script hook v, Openiv, Menyoo
gta5mod.net
FS25 Mods, FS25 Tractors, FS25 Maps
fs25mods.lt
Optical filters, UV optics, electro optical crystals
www.eksmaoptics.com
Reklamos paslaugos
SEO sprendimai

www.addad.lt
Elektroninių parduotuvių optimizavimas „Google“ paieškos sistemai
www.seospiders.lt
FS22 mods, Farming simulator 22 mods,
FS22 maps

fs22.com
Reklama


Reklama