 |
www.elektronik.si Forum o elektrotehniki in računalništvu
|
Poglej prejšnjo temo :: Poglej naslednjo temo |
Avtor |
Sporočilo |
drVrh Član



Pridružen-a: Sre 20 Feb 2008 20:17 Prispevkov: 918 Aktiv.: 4.35 Kraj: Slovenija-Koroska-Prevalje-Lese
|
Objavljeno: Pon Apr 07, 2008 2:41 pm Naslov sporočila: Enostaven robot |
|
|
LP
Odločil sem se za izdelavo enostavnega robota, ki ga boš lahko krmilil preko računalnika. Cel proces bo zelo enostaven robot bo imel nekaj funkcij npr. zavij levo, zavij desno, pelji naprej, pelji nazaj!
No to sem si omislil na preprost način tako da bom za vsak premik npr. pelji naprej, uporabil kodo v Assemblerju ter na novo sprogramiral mikrokontroler.
Torej za vsak premik bi Kontroler na novo sprogramiral.
Za premikanje bi uporabil 2 ali 4 motorčke, ki bi poganjali kolesa.
Nato bi uporabil dva senzorja, ki bi zaznala nek predmet v bližini in bi se motorji ustavili.
Sedaj me zanima kakšne vrste motorja bi lahko uporabil bi koračni motor bil vredu?
Ter kakšen K bi uporabil? (Mora biti PIC)
Ter če ima kdo še kakšno idejo lahko pove ter prosil bi za kakšen link!
Hvala za odgovore! _________________ Iz dneva v dan sem se spraševal kaj je to elektrika, vendar nisem našel odgovora ... in še vedno si postavljam to vprašanje
LP
Grega |
|
Nazaj na vrh |
|
 |
gaborp Član

Pridružen-a: Sob 16 Jul 2005 9:54 Prispevkov: 63 Aktiv.: 0.27 Kraj: Škofja Loka / Tržič
|
Objavljeno: Pon Apr 07, 2008 4:04 pm Naslov sporočila: Re: Enostaven robot |
|
|
drVrh je napisal/a: |
LP
Torej za vsak premik bi Kontroler na novo sprogramiral.
Ter kakšen K bi uporabil? (Mora biti PIC)
|
Glede izbire mikrokontrolerja mislim, da je najbolje, da izbereš tistega, katerega že poznaš. Če si na tem področju začetnik pa PIC verjetno ni slaba izbira, saj je na forumu o PIC-ih že marsikaj napisanega, med drugim tudi tutoriali.
Zakaj bi kontroler za vsak premik na novo sprogramiral ?? |
|
Nazaj na vrh |
|
 |
gkrusi Član



Pridružen-a: Tor 24 Jul 2007 17:22 Prispevkov: 811 Aktiv.: 3.72 Kraj: Ptuj
|
Objavljeno: Pon Apr 07, 2008 4:25 pm Naslov sporočila: |
|
|
Za začetek, ti bo ravno prav zmogljiv kak PIC16F84A. Ni drag, zmogljiv pa je več kot dovolj. Če bi rad robota krmilil preko PCja, ti priporočam uporabo RS232 komunikacije. RS232 komunikacija poteka preko COM porta (če se gre za prenosnik lahko uporabiš tudi pretvornik iz USB na COM). S COM portom je prav lepo delat v na primer Microsoft Visula C# (je free na spletu). Tako si lahko narediš tipke na računalniku, po COM portu pa pošlješ, kateri podprogramček naj mikrokontroler izvede. Torej imaš v mikrokontrolerju že napisane podprogramčke za naprej, levo desno, nazaj, po RS232 komunikaciji pa samo izbereš, kateri podprogramček se naj izvede.
Koračni motorčki bodo vredu. Priporočam, da uporabiš 2 unipolarna motorčka (4 tuljavice) in lahko vsako tuljavico krmiliš kar s tranzistorji. Tranzistorje še lahko ločiš za vsak slučaj z optospojniki. Krmiliš pa ga preprost tako, da vsak preklop tuljavice pomeni nek premik (ponavadi 1,8°).
Če si zainteresiran pa vprašaj, da podrobneje opišem. _________________ Zakaj bi bilo preprosto, če je lahko zakomplicirano??? |
|
Nazaj na vrh |
|
 |
strobos Član

Pridružen-a: Sre 24 Sep 2003 12:19 Prispevkov: 726 Aktiv.: 3.06 Kraj: Brežice
|
Objavljeno: Pon Apr 07, 2008 5:59 pm Naslov sporočila: |
|
|
Podobnega robota sem naredil pred leti. Objavljen je bil v Svetu elektronike, ne spomnim se katera številka. Program za PC sem napisal v Visual Basicu, lahko pa ga napišeš z marsikaterim drugim programom (Visual C++, Delphi, itd.). Program ti lahko dam, če želiš, le najti bi ga moral. Komunikacija je bila preko RS232 in modulov 433,92 MHz. Za pogon robota sem uporabil koračne motorje, kasneje pa sem naredil še enega robota, na katerem sem uporabil navadne servo motorje, ki sem jih predelal, da so se lahko vrteli neomejeno. Za zaznavanje ovir sem si naredil navadne IR senzorje z NE555, lahko pa podobne senzorje razdalje kupiš.
Lp |
|
Nazaj na vrh |
|
 |
matijap Član

Pridružen-a: Sob 05 Jun 2004 23:24 Prispevkov: 230 Aktiv.: 0.97 Kraj: Žirovnica, LJ
|
Objavljeno: Pon Apr 07, 2008 7:01 pm Naslov sporočila: |
|
|
gkrusi je napisal/a: |
Za začetek, ti bo ravno prav zmogljiv kak PIC16F84A.
|
Raje vzemi 16F628A, ki je z omenjenim združljiv, obenem pa zmogljivejši in cenejši. |
|
Nazaj na vrh |
|
 |
drVrh Član



Pridružen-a: Sre 20 Feb 2008 20:17 Prispevkov: 918 Aktiv.: 4.35 Kraj: Slovenija-Koroska-Prevalje-Lese
|
Objavljeno: Pon Apr 07, 2008 9:22 pm Naslov sporočila: |
|
|
LP
gkrusi lahko mi razložiš kako bi s tistim COM portom pošiljanje programov na mikrokontroler a to bi moral biti skos kabel potegnjen do robota ali je lahko samo takrat ko program naložiš na mikrokontroler?
Drugače pa sem zainterisiran. Samo s tistim motorčki pa ne mislim preveč komplicirat drugače ta zadeva s tuljavicam je zelo dobra:
strobos lahko kje poiščeš kakršno koli dokumentacijo o tem robotu ki si ga izdelal? Lahko mi daš program namreč najbolj poznam Visual Basic.
Kako pa ti senzorji z NE555? lahko o tem delu snezorjev poveš kaj več (kakšna shema itd.)?
matijap o tem mikrokontrolerjem 16F628A s čim je združljiv?  _________________ Iz dneva v dan sem se spraševal kaj je to elektrika, vendar nisem našel odgovora ... in še vedno si postavljam to vprašanje
LP
Grega |
|
Nazaj na vrh |
|
 |
ciko Član

Pridružen-a: Čet 27 Mar 2008 11:41 Prispevkov: 126 Aktiv.: 0.60 Kraj: Novo mesto
|
Objavljeno: Pon Apr 07, 2008 10:53 pm Naslov sporočila: |
|
|
oj
Jaz sem pred dobrim letom in pol na faksu delal neka podobnega, bil je proces z arm jedrom. Bili so navadni motorčki z enkoderjem, da si lahko določil hitrost obratov. Hitrost si reguliral z PWMjem. Poanta naloge je bila regulacija motorčka (krmiljenje in regulacija), sem pa tudi naredil enostavno aplikacijo za določitev parametrov preko com porta in izris grafov nekaterih parametrov robota. HW sem sicer že dobil narejen.
Je pa bila PI regulacija z zaščito proti integraslkem pobegu.
Če te zanima, bom probal izbrkati vso dokumentacijo, oz saj kodo. Je pa pisana v C-ju.
LP
Peter |
|
Nazaj na vrh |
|
 |
bungee Član


Pridružen-a: Pon 07 Mar 2005 18:49 Prispevkov: 1479 Aktiv.: 6.24 Kraj: Ljubljana
|
Objavljeno: Pon Apr 07, 2008 11:58 pm Naslov sporočila: |
|
|
gkrusi je napisal/a: |
Za začetek, ti bo ravno prav zmogljiv kak PIC16F84A. Ni drag, zmogljiv pa je več kot dovolj. |
Te moram popravit... F84 JE drag, glede na to da se da dobit zmogljivejše PIC-e za manj denarja.
Citiram: |
PIC 16F84A-04/P 5,62 €
PIC 16F690-I/P 3,49 € |
Dal sem samo primerjavo med ceno, po karakteristikah .... to naj si pa pogleda vsak sam. F690 uporabljam sam kar precej in ima skoraj vse kar bi si želel.... le leteti še ne zna  |
|
Nazaj na vrh |
|
 |
drVrh Član



Pridružen-a: Sre 20 Feb 2008 20:17 Prispevkov: 918 Aktiv.: 4.35 Kraj: Slovenija-Koroska-Prevalje-Lese
|
Objavljeno: Tor Apr 08, 2008 8:04 am Naslov sporočila: |
|
|
LP
Odločil sem se da bom uporabil mikrokontroler 16F690. Za motorje pa verjetno koračne. Bo vredu? _________________ Iz dneva v dan sem se spraševal kaj je to elektrika, vendar nisem našel odgovora ... in še vedno si postavljam to vprašanje
LP
Grega |
|
Nazaj na vrh |
|
 |
bungee Član


Pridružen-a: Pon 07 Mar 2005 18:49 Prispevkov: 1479 Aktiv.: 6.24 Kraj: Ljubljana
|
Objavljeno: Tor Apr 08, 2008 9:51 am Naslov sporočila: |
|
|
F690 je dober. Koračni motorji so tudi vredu, kako boš pa izvedel krmiljenje le-teh? |
|
Nazaj na vrh |
|
 |
drVrh Član



Pridružen-a: Sre 20 Feb 2008 20:17 Prispevkov: 918 Aktiv.: 4.35 Kraj: Slovenija-Koroska-Prevalje-Lese
|
Objavljeno: Tor Apr 08, 2008 6:28 pm Naslov sporočila: |
|
|
LP
Za krmiljenje bo izvedel na takšen način kot za vklop LED-ice in časovno zanko za določen čas. In tu bo pa namesto LED-ice motorček ki ga bo s kodo vklopil ter začel se bo vrteti, hitrosti motorja pa ne bom nastavljal. Zavijanje pa bo enako kot na bagerju.
Čisto enostavna zadeva! _________________ Iz dneva v dan sem se spraševal kaj je to elektrika, vendar nisem našel odgovora ... in še vedno si postavljam to vprašanje
LP
Grega |
|
Nazaj na vrh |
|
 |
piroman Član


Pridružen-a: Čet 23 Okt 2003 12:06 Prispevkov: 2707 Aktiv.: 11.42 Kraj: Ljubljana
|
Objavljeno: Tor Apr 08, 2008 7:03 pm Naslov sporočila: |
|
|
Koračni motor se ti ne vrti kar sam od sebe, če ga samo priklopiš. _________________ One shouldn’t work on semiconductors, that is a filthy mess; who knows if they really exist!
Wolfgang Pauli, 1931 |
|
Nazaj na vrh |
|
 |
gkrusi Član



Pridružen-a: Tor 24 Jul 2007 17:22 Prispevkov: 811 Aktiv.: 3.72 Kraj: Ptuj
|
Objavljeno: Tor Apr 08, 2008 7:10 pm Naslov sporočila: |
|
|
Emmm, no ja. Krmiljenje koračnih ni ravno tako preprosto, kot krmiljenje DC motorčka. Unipolarni ima štiri tuljavice, ki jih vklapljaš v zaporedju:
1. 1000
2. 1100
3. 0100
4. 0110
5. 0010
6. 0011
7. 0001
8. 1001
Koda izgleda približno tako:
- korak_x je definiran kot osembitna spremenljivka
- polozaj_x je definiran kot 32 bitna spremenljiva s predznakom
- x je definiran kot 32 bitna spremenljiva s predznakom
- kot x1, x2, x3 in x4 so definirani izhodi povezani na posamezne tuljavice motorja
Koda: |
void premakni_motor_x()
{
if (korak_x > 8)
{
korak_x = 1;
}
if (korak_x < 1)
{
korak_x = 8;
}
if (korak_x == 1) // 1000
{
output_high(x1);
output_low(x2);
output_low(x3);
output_low(x4);
}
if (korak_x == 2) // 1100
{
output_high(x1);
output_high(x2);
output_low(x3);
output_low(x4);
}
if (korak_x == 3) // 0100
{
output_low(x1);
output_high(x2);
output_low(x3);
output_low(x4);
}
if (korak_x == 4) // 0110
{
output_low(x1);
output_high(x2);
output_high(x3);
output_low(x4);
}
if (korak_x == 5) // 0010
{
output_low(x1);
output_low(x2);
output_high(x3);
output_low(x4);
}
if (korak_x == 6) // 0011
{
output_low(x1);
output_low(x2);
output_high(x3);
output_high(x4);
}
if (korak_x == 7) // 0001
{
output_low(x1);
output_low(x2);
output_low(x3);
output_high(x4);
}
if (korak_x == 8) // 1001
{
output_high(x1);
output_low(x2);
output_low(x3);
output_high(x4);
}
} |
Koda: |
x = /*želen korak*/
while (polozaj_x < x)
{
polozaj_x = polozaj_x + 1;
korak_x ++;
premakni_motor_x();
delay_ms(5); // nastavi hitrost premikanja
}
while (polozaj_x > x)
{
polozaj_x = polozaj_x - 1;
korak_x --;
premakni_motor_x();
delay_ms(5); // nastavi hitrost premikanja
} |
S tako kodo v spremenljivko x vneseš želen korak, na katerega se naj motor premakne in se bo sam premaknil točno tja. Z vrednostjo v ukazu delay_ms( ); lahko nastaviš hitrost oziroma čas vsakega koraka. _________________ Zakaj bi bilo preprosto, če je lahko zakomplicirano??? |
|
Nazaj na vrh |
|
 |
piroman Član


Pridružen-a: Čet 23 Okt 2003 12:06 Prispevkov: 2707 Aktiv.: 11.42 Kraj: Ljubljana
|
Objavljeno: Tor Apr 08, 2008 7:15 pm Naslov sporočila: |
|
|
Na Atmelovi strani je en app. note: krmilnik koračnega motorčka, ki mu prek serialca nafutraš: pospešek, hitrost, število korakov in pojemek. Zraven imaš še nekaj teoretičnih osnov, ki tudi znajo priti prav...
http://www.atmel.com/dyn/resources/prod_documents/doc8017.pdf _________________ One shouldn’t work on semiconductors, that is a filthy mess; who knows if they really exist!
Wolfgang Pauli, 1931 |
|
Nazaj na vrh |
|
 |
drVrh Član



Pridružen-a: Sre 20 Feb 2008 20:17 Prispevkov: 918 Aktiv.: 4.35 Kraj: Slovenija-Koroska-Prevalje-Lese
|
Objavljeno: Tor Apr 08, 2008 7:32 pm Naslov sporočila: |
|
|
LP
gkrusi najlepša hvala za ta program naredil si mi uslugo sedaj mi je zelo jasno krmiljenje koračnega motorja. Res najlepša hvala nevem kako naj se ti zahvalim. Sedaj grem naročit koračne motorje, jutri po šoli se bom lotil izdelave. Bom poročal kako in kaj poteka izdelava. _________________ Iz dneva v dan sem se spraševal kaj je to elektrika, vendar nisem našel odgovora ... in še vedno si postavljam to vprašanje
LP
Grega |
|
Nazaj na vrh |
|
 |
|
|
Ne, ne moreš dodajati novih tem v tem forumu Ne, ne moreš odgovarjati na teme v tem forumu Ne, ne moreš urejati svojih prispevkov v tem forumu Ne, ne moreš brisati svojih prispevkov v tem forumu Ne ne moreš glasovati v anketi v tem forumu Ne, ne moreš pripeti datotek v tem forumu Ne, ne moreš povleči datotek v tem forumu
|
Uptime: 494 dni
Powered by phpBB © 2001, 2005 phpBB Group
|