Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Programiranje RC servo motora

[es] :: C/C++ programiranje :: Programiranje RC servo motora

[ Pregleda: 5521 | Odgovora: 6 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

dr.zmaj
Drazen Zmaj
prof.
Beograd

Član broj: 63416
Poruke: 259
*.adsl-a-1.sezampro.yu.

Sajt: kompaskmt.9f.com


Profil

icon Programiranje RC servo motora22.09.2009. u 18:39 - pre 177 meseci
Da li neko moze da mi pomogne da isprogramiram program koji bi pokretao servo motor. Nisam programirao u C jeziku, koristio sam VB6 kod upravljanja interfejsom i obicnim DC motorima. Medjutim kod servo motora potrebno je isprogramirati vremenske impulse koji bi omogucili pokretanje servo motora na jednu i drugu stranu. To sam uspeo cisto elektronski sa tajmerima NE555, ali bi hteo racunarom da upravljam sa 4 servomotora. Podaci za polozaj:Ideja di bila sledeca:
1.5ms sredina
0.6 ms levo
2.4ms desno

Napraviti dva tajmera
Prvi (logicka nula)
da bude 30ms i njega ne moras da diras.
a drugi (logicka jedinica)
da bude 1.5ms

i vrtim tu petlju tako.


Ako hocu da servo ode skroz levo onda
Nula
30ms
Jedinica
0.6ms

Ili ako hocu skroz desno
Nula
30ms
Jedinica
2.4ms
 
Odgovor na temu

Mihajlo Cvetanović
Beograd

Moderator
Član broj: 37636
Poruke: 1249



+96 Profil

icon Re: Programiranje RC servo motora22.09.2009. u 19:49 - pre 177 meseci
A kako je motor povezan s računarom? Imaš li to već odrađeno, kako se šalju te nule i jedinice?
 
Odgovor na temu

dr.zmaj
Drazen Zmaj
prof.
Beograd

Član broj: 63416
Poruke: 259
*.adsl-1.sezampro.yu.

Sajt: kompaskmt.9f.com


Profil

icon Re: Programiranje RC servo motora23.09.2009. u 18:17 - pre 177 meseci
Pokusavao sam sa slanjem jedinice i nule preko paralelnog porta. Znaci citav projekat po zamisli bi radio bez upotrebe mikrokontrolera, motori su spojeni na izlaze LPT-a.
 
Odgovor na temu

Mihajlo Cvetanović
Beograd

Moderator
Član broj: 37636
Poruke: 1249



+96 Profil

icon Re: Programiranje RC servo motora24.09.2009. u 00:05 - pre 177 meseci
Pokušavao si, okej, ali da li si uspeo? Hoću da kažem, šta nam vredi da ovde pričamo o softveru, ako se motor ne vrti.

Inače, imaš neke prilično kratke pauze (0.6ms), koje su možda večnost što se samog procesora tiče, ali Windowsov mehanizam dodeljivanja procesorskog vremena može lako da preskoči tvoj proces baš kad je potrebno završiti rad motora. S tim mora nekako da se računa, ali ja ne znam kako. Windows prosto nije namenjen za programiranje u realnom vremenu. Sad lupam, ali možda drajveri imaju veću kontrolu nad izvršavanjem od običnih korisničkih procesa.

Ako zanemarimo drajvere, možda mogu da ti posluže oni precizni tajmeri, QueryPerformanceCounter/QueryPerformanceFrequency. Vrtiš se u maloj petlji dok ne dođe vreme za drugi signal. Problem sa dodeljivanjem procesorskog vremena možda može da se reši maksimalnim povećanjem prioriteta threada u kritičnom periodu. To znači da nekih tridesetak milisekundi ništa drugo na mašini ne bi radilo osim tvog procesa koji čeka da prođe vreme u maloj petlji.
 
Odgovor na temu

dr.zmaj
Drazen Zmaj
prof.
Beograd

Član broj: 63416
Poruke: 259
*.adsl-1.sezampro.yu.

Sajt: kompaskmt.9f.com


Profil

icon Re: Programiranje RC servo motora27.09.2009. u 15:46 - pre 177 meseci
Da programirao sam u VB i obicnom Basicu pod dosom, uspevam da zavrtim motor ali samo u jednom smeru.
 
Odgovor na temu

Mihajlo Cvetanović
Beograd

Moderator
Član broj: 37636
Poruke: 1249



+96 Profil

icon Re: Programiranje RC servo motora27.09.2009. u 18:03 - pre 177 meseci
Šta ti je konkretno problem?
 
Odgovor na temu

wiktor91
Varazdin, Hrvatska

Član broj: 171052
Poruke: 116
*.adsl.net.t-com.hr.



Profil

icon Re: Programiranje RC servo motora07.02.2010. u 23:04 - pre 172 meseci
Ako želiš izvesti upravljanje bez mikrokontrolera to ti je najjednostavnije izvesti tako da na LPT port spojiš neki driver recimo ULN2003, dovedeš mu napon koj hočeš za servo i onda preko 5V(mislim) impulsa na nekom ulaznom pinu on kao relej propusti dovedeni napon na pripadajuči izlazni pin(onaj napon koj si mu doveo za servo). Mislim da ULN2003 konkretno podržava nekih 40V ali još dodatno provjeri.

Ja sam koristio mikro kontroler u kombinaciji s ULN jer mi je tako bilo praktičnije, uostalom tako sam bio sigurniji da mi slučajno na LPT port ne probije neki veči napon i sprži njega a i nešto drugo u kompu.

E da, za upravljanje LPT portom imaš predobru parapin biblioteku za C ali dok sam ja to radio bila je podržana samo na UNIXoidnim sistemima.
Windows 95 /Win’ dz/: n., 32-bit extensions and a graphical shell for a 16-bit patch to an 8-bit operating system
originally coded for a 4-bit microprocessor, written by a 2-bit company, that can’t stand 1 bit of competition.
 
Odgovor na temu

[es] :: C/C++ programiranje :: Programiranje RC servo motora

[ Pregleda: 5521 | Odgovora: 6 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.