upravljnje DC motorima ?
Moderators: pedja089, stojke369, [eDo], trax
upravljnje DC motorima ?
pozdrav
jeli ima neko ideju kako da napravim sklop koji ce recimo pomijerati DC motoric (npr. 5V ili 12V) 4 ili 5 ili vise polozaja, a da ulazni signal bude grebenasti prekidaac sa isto tolko polozaja (znaci na grebenastom prekidacu zadam polozaj 5 motoric ide na to podrucje, zadam polozaj 2 on se vrati na dvicu), uradio sam to pomocu releja(onolko releja kolko polozaja) ali bi to mnogo ljepse bilo sa malo elektronike i recimo jednim relejem koji bi mijenjao polaritet na motoricu.
jeli ima neko ideju kako da napravim sklop koji ce recimo pomijerati DC motoric (npr. 5V ili 12V) 4 ili 5 ili vise polozaja, a da ulazni signal bude grebenasti prekidaac sa isto tolko polozaja (znaci na grebenastom prekidacu zadam polozaj 5 motoric ide na to podrucje, zadam polozaj 2 on se vrati na dvicu), uradio sam to pomocu releja(onolko releja kolko polozaja) ali bi to mnogo ljepse bilo sa malo elektronike i recimo jednim relejem koji bi mijenjao polaritet na motoricu.
- InTheStillOfTheNight
- Odlično uznapredovao
- Posts: 938
- Joined: 01-06-2006, 17:54
- Location: Zagreb
Re: upravljnje DC motorima ?
Pitanje ti nije najbolje napisano, i totalno je nejasno o čemu ti pišeš. Koliko sam ja upoznat sa DC motorima oni nemaju "položaje" da ih postavljaš na 1,2,3,4,5. Dakle kada govoriš o nekim položajima svakako treba opisati i dio redukcije motora, te brzinu pomaka, nečega, negdje zbog nekog razloga.
Ti možda u svojoj glavi imaš jasnu sliku onoga što želiš, ali nitko na forumu ne može znati jeli ti sa 5 polužaja određuješ debljinu rezanja salame, guraš figuru šaha ili pozicioniraš zavjese u dnevnom boravku. Prvo moraš opisati svoj uređaj sa što više tehničke dokumentacije, i ono najbitnije barem napisati koji vrag radi taj imaginarni uređaj.
Ti možda u svojoj glavi imaš jasnu sliku onoga što želiš, ali nitko na forumu ne može znati jeli ti sa 5 polužaja određuješ debljinu rezanja salame, guraš figuru šaha ili pozicioniraš zavjese u dnevnom boravku. Prvo moraš opisati svoj uređaj sa što više tehničke dokumentacije, i ono najbitnije barem napisati koji vrag radi taj imaginarni uređaj.
InTheStillOfTheNight
Re: upravljnje DC motorima ?
Ako se trebaju koristit motori, a da ih je moguće pozicionirat, onda je to najjednostavnije napraviti sa step motorima.
Re: upravljnje DC motorima ?
nadam se da ce slika vise reci , svaki polozaj na koji treba da dodje motoric je oznacen kvadraticem, u svaki kvadratic bi bio smjesten mikroprekidac koji bi detektovo nailazak motorica , motoric bi se zaustavljo na onom polozaju odabranom grebenastim prekidacem (ili bi mozda neko odabrao binarnu tastaturu umjesto grebena), kretanje motorica bi trebalo da bude sasvim sporo recimo
100 cm/min,
a mozda i ovaj prijedlog sa step motoricima od "jazz"-a
100 cm/min,
a mozda i ovaj prijedlog sa step motoricima od "jazz"-a
- Attachments
-
- dc_controler.png (2.9 KiB) Viewed 4828 times
Re: upravljnje DC motorima ?
Kontoler i jedan H most ili releji za ukljucnje i promenu smera i to je to...
Program je prilicno jednostavan...
Program je prilicno jednostavan...
- InTheStillOfTheNight
- Odlično uznapredovao
- Posts: 938
- Joined: 01-06-2006, 17:54
- Location: Zagreb
Re: upravljnje DC motorima ?
Dobro ti @pedja kaže. H-most i bilo koji MCU.
Na tebi je da odabereš MCU s kojim želiš raditi i programski jezik u kojemu to želiš programirati. Ovo bi se dalo napraviti i bez mikrokontrolera razbijanjem glave oko analogije ili TTL vrata, ali svi nekako bježimo od toga jer je MCU zaista najjednostavnije i najbrže za napraviti.
Osobno bih ti preporučio PIC jer je puno zastupljeniji na ovom forumu i možeš naći sve potrebno (Programator, compiler i primjeri), pa prije razmišljanja oko motorića trebao bi najprije napraviti ili kupiti programator, kupiti mikrokontroler i instalirati sve potrebno za početak programiranja.
Meni su AVR i ARM daleko superiornija računala i radim većinom s njima, ali to i nije toliko bitno ako tek ulaziš u programiranje. Tema oko odabira MCU-a se toliko razvlačila po svim forumima da na kraju ne postoji bolje i lošije. AVR je "bolje" računalo, ali je istovremeno manje primjera i manje ljudi koji rade sa AVR-om, pa kad sve staviš na vagu i pogledaš iz ugla početnika bolje ti je uzeti računalo s kojim radi više ljudi, jer ima i više primjera, i zato ti preporučujem PIC.
Na tebi je da odabereš MCU s kojim želiš raditi i programski jezik u kojemu to želiš programirati. Ovo bi se dalo napraviti i bez mikrokontrolera razbijanjem glave oko analogije ili TTL vrata, ali svi nekako bježimo od toga jer je MCU zaista najjednostavnije i najbrže za napraviti.
Osobno bih ti preporučio PIC jer je puno zastupljeniji na ovom forumu i možeš naći sve potrebno (Programator, compiler i primjeri), pa prije razmišljanja oko motorića trebao bi najprije napraviti ili kupiti programator, kupiti mikrokontroler i instalirati sve potrebno za početak programiranja.
Meni su AVR i ARM daleko superiornija računala i radim većinom s njima, ali to i nije toliko bitno ako tek ulaziš u programiranje. Tema oko odabira MCU-a se toliko razvlačila po svim forumima da na kraju ne postoji bolje i lošije. AVR je "bolje" računalo, ali je istovremeno manje primjera i manje ljudi koji rade sa AVR-om, pa kad sve staviš na vagu i pogledaš iz ugla početnika bolje ti je uzeti računalo s kojim radi više ljudi, jer ima i više primjera, i zato ti preporučujem PIC.
InTheStillOfTheNight
Re: upravljnje DC motorima ?
Ovo je skolski primer sistema automatskog upravljanja. Naj jednostavniji nacin realizacije upravljanja bio bi analogni sistem sa linearnim (analognim) zadavanjem polozaja i linearnim ocitavanjem trenutnog polozaja motora.
Re: upravljnje DC motorima ?
ovaj pedja089 predlog je mnogo zanimljiv ali tek ucim PICbasic ,i volio bi tako nesto sklopim ,a kako bi izgledao sklop prema prijedlogu mladen33?
- InTheStillOfTheNight
- Odlično uznapredovao
- Posts: 938
- Joined: 01-06-2006, 17:54
- Location: Zagreb
Re: upravljnje DC motorima ?
Sa Mladenom se ne bih složio oko jednostavnosti... Hvala Bogu svatko ima pravo na mišljenje, no držim se onoga što ti je Pedja rekao, jer to je najbolji način... Možemo mi gužvati temu mjesecima, ali iskustvo i praksa je daleko jača od bilo koje školske metode...
InTheStillOfTheNight
Re: upravljnje DC motorima ?
jel moze neko da posta semu kontrolera, svog modela, prema ovom mom sistemu upravljanja motoricem, ukljucujuci i mladen33 skolski primeer?
Re: upravljnje DC motorima ?
A što će davati informaciju o položaju osovine? Ako misliš upravljati kutom zakreta osovine elektromotora trebat će odrediti početni položaj i imati nešto što će sklopu za upravljanje to reći. Isto vrijedi i za svaki slijedeći položaj (kut zakreta) osovine. Mislim da bi to bilo jednostavnije riješiti upotrebom step-motora.
Lijenost je iz raja izašla.
Re: upravljnje DC motorima ?
ok i sam sam tog misljenja ali tad bi sklop trebao biti upravljan PIC-om ili mozda preko ULN-a a ja tek ucim PicBasic, prelistavam i ucim prema kursu od pedja089 , trenutno sam razvio neku ideju sa releima ali jos nisam postigo zeljene rezultate ,svaka sugerstija -primer su mi dobro dosli
Re: upravljnje DC motorima ?
Ovo ti je dobar projekat da isprobas sta si naucio iz PicBasica.
U principu, imas ulaz sa preklopnika koji ti moze biti 5 ulaza na npr portu A. Zatim imas 5 ulaza npr na portu B sa mikroprekidaca na traci (il' vec sta ti je) kojim odredjujes polozaj motora. U beskonacnoj petlji poredis ova dva porta.
Kada dodje do razlike onda preko H mosta (recimo ovako nesto: h**p://faq.solarbotics.net/motors.html) upravljas motoricem da se pokrene u jednu ili drugu stranu. U koju stranu zavisi da li ti je ulaz na portu A veci ili manji od ulaza na portu B. U trenutku kada ti se izjednace ulazi na portovima A i B zaustavis motoric!
Probaj sam sastaviti semu i postuj je ovdje pa cemo ti dati sugestije!
Good luck!
U principu, imas ulaz sa preklopnika koji ti moze biti 5 ulaza na npr portu A. Zatim imas 5 ulaza npr na portu B sa mikroprekidaca na traci (il' vec sta ti je) kojim odredjujes polozaj motora. U beskonacnoj petlji poredis ova dva porta.
Kada dodje do razlike onda preko H mosta (recimo ovako nesto: h**p://faq.solarbotics.net/motors.html) upravljas motoricem da se pokrene u jednu ili drugu stranu. U koju stranu zavisi da li ti je ulaz na portu A veci ili manji od ulaza na portu B. U trenutku kada ti se izjednace ulazi na portovima A i B zaustavis motoric!
Probaj sam sastaviti semu i postuj je ovdje pa cemo ti dati sugestije!
Good luck!
-
- Napredujem
- Posts: 123
- Joined: 26-12-2010, 12:12
- Location: sad_tu_sad_tamo
Re: upravljnje DC motorima ?
Napiši što konkretno treba raditi taj elektronski sklop.Želiš li ti motor pozicionirati ili da znaš gdje se on u određenom trenutku nalazi (naprimjer odmah poslije uključenja).Kao što su već kolege napomenuli nisi baš "izdašan" sa opisom zahtjeva...
Pozdrav!
Pozdrav!
Re: upravljnje DC motorima ?
Pozdrav
evo nakon nekog vremena posjecivanja kursa od pedja089 i preporuke da radim sklop sa PIC-om i H-mostom sam kreiro shemu i napiso ovaj code pa ispravite me gdje grijesim (nista jos nisam implementiro)
SYMBOL T1=PORTA.0 "T1 do T4 polozaji grebenastog prekidaca"
SYMBOL T2=PORTA.1
SYMBOL T3=PORTA.2
SYMBOL T4=PORTA.3
SYMBOL T11=PORTB.2 "T11 do T14 tasteri"
SYMBOL T12=PORTB.3
SYMBOL T13=PORTB.4
SYMBOL T14=PORTB.5
SYMBOL PLUS=PORTB.0 "Kretanje motorica naprijed"
SYMBOL MINUS=PORTB.1 "Kretanje motorica nazad"
INPUT T1
input T2
input T3
input T4
input T11
input T12
input T13
input T14
output PLUS
output MINUS
pocetak:
if T1=0 and T11=0 then
low PLUS
low MINUS
pause
if T1=0 and T12=0 or T13=0 or T14=0 then
Low PLUS
high MINUS
pause
if T2=0 and T12=0 then
low PLUS
low MINUS
pause
if T2=0 and T11=0 then
high PLUS
low MINUS
pause
if T2=0 and T13=0 or T14=0 then
low PLUS
high MINUS
pause
IF T3=0 and T13=0 then
low PLUS
low MINUS
pause
if T3=0 and T11=0 or T12=0 then
high PLUS
low MINUS
pause
if T3=0 and T14=0 then
low PLUS
high MINUS
pause
if T4=0 and T14=0 then
low PLUS
low MINUS
pause
if T4=0 and T11=0 or T12=0 or T13=0 then
high PLUS
LOW MINUS
pause
goto pocetak
evo nakon nekog vremena posjecivanja kursa od pedja089 i preporuke da radim sklop sa PIC-om i H-mostom sam kreiro shemu i napiso ovaj code pa ispravite me gdje grijesim (nista jos nisam implementiro)
SYMBOL T1=PORTA.0 "T1 do T4 polozaji grebenastog prekidaca"
SYMBOL T2=PORTA.1
SYMBOL T3=PORTA.2
SYMBOL T4=PORTA.3
SYMBOL T11=PORTB.2 "T11 do T14 tasteri"
SYMBOL T12=PORTB.3
SYMBOL T13=PORTB.4
SYMBOL T14=PORTB.5
SYMBOL PLUS=PORTB.0 "Kretanje motorica naprijed"
SYMBOL MINUS=PORTB.1 "Kretanje motorica nazad"
INPUT T1
input T2
input T3
input T4
input T11
input T12
input T13
input T14
output PLUS
output MINUS
pocetak:
if T1=0 and T11=0 then
low PLUS
low MINUS
pause
if T1=0 and T12=0 or T13=0 or T14=0 then
Low PLUS
high MINUS
pause
if T2=0 and T12=0 then
low PLUS
low MINUS
pause
if T2=0 and T11=0 then
high PLUS
low MINUS
pause
if T2=0 and T13=0 or T14=0 then
low PLUS
high MINUS
pause
IF T3=0 and T13=0 then
low PLUS
low MINUS
pause
if T3=0 and T11=0 or T12=0 then
high PLUS
low MINUS
pause
if T3=0 and T14=0 then
low PLUS
high MINUS
pause
if T4=0 and T14=0 then
low PLUS
low MINUS
pause
if T4=0 and T11=0 or T12=0 or T13=0 then
high PLUS
LOW MINUS
pause
goto pocetak
- Attachments
-
- shema
- sema.png (44.26 KiB) Viewed 4498 times
Re: upravljnje DC motorima ?
Sema se bas i ne vidi lepo. Postavi sliku u vecoj rezoluciji.
A sto se tice odradjivanja polozaja, i kuda da krene, otprilike kontam sta hoces, ali nisam siguran da to tako radi... Ja bi na malo drugaciji nacin realizovao...
Recimo ovako
SYMBOL T1=PORTA.0 "T1 do T4 polozaji grebenastog prekidaca"
SYMBOL T2=PORTA.1
SYMBOL T3=PORTA.2
SYMBOL T4=PORTA.3
SYMBOL T11=PORTB.2 "T11 do T14 tasteri"
SYMBOL T12=PORTB.3
SYMBOL T13=PORTB.4
SYMBOL T14=PORTB.5
TP VAR BYTE '- trenutna pozicija
TZ VAR BYTE '- zadata pozicija
Start:
TP.0=T1
TP.1=T2
TP.2=T3
TP.3=T4
TP=~TP ' invertuj tako da 1 bude taster koji je stisnut ili TP.0=~T1
IF T11 =0 THEN
TZ=%00000001
ELSEIF T12=0 THEN
TZ=%00000010
itd
.
.
ENDIF
IF TP<TZ THEN
'Vrti u jednu stranu
ELSEIF TP>TZ THEN
'vrti u drugu stranu
ELSE
'zaustavi
ENDIF
PAUSE 100
GOTO Start
A sto se tice odradjivanja polozaja, i kuda da krene, otprilike kontam sta hoces, ali nisam siguran da to tako radi... Ja bi na malo drugaciji nacin realizovao...
Recimo ovako
SYMBOL T1=PORTA.0 "T1 do T4 polozaji grebenastog prekidaca"
SYMBOL T2=PORTA.1
SYMBOL T3=PORTA.2
SYMBOL T4=PORTA.3
SYMBOL T11=PORTB.2 "T11 do T14 tasteri"
SYMBOL T12=PORTB.3
SYMBOL T13=PORTB.4
SYMBOL T14=PORTB.5
TP VAR BYTE '- trenutna pozicija
TZ VAR BYTE '- zadata pozicija
Start:
TP.0=T1
TP.1=T2
TP.2=T3
TP.3=T4
TP=~TP ' invertuj tako da 1 bude taster koji je stisnut ili TP.0=~T1
IF T11 =0 THEN
TZ=%00000001
ELSEIF T12=0 THEN
TZ=%00000010
itd
.
.
ENDIF
IF TP<TZ THEN
'Vrti u jednu stranu
ELSEIF TP>TZ THEN
'vrti u drugu stranu
ELSE
'zaustavi
ENDIF
PAUSE 100
GOTO Start
Re: upravljnje DC motorima ?
@pedja089, zasto se i TZ nemoze kreirati kao i TP? Bez IFova? Cini mi se to brzim? Doduse, davno sam radio u PICBasicu, mozda mi je nesto promaklo.
Sto se tice seme, definitivno bih dodao otpore izmedju uC i baza tranzistora!
Good luck!
Sto se tice seme, definitivno bih dodao otpore izmedju uC i baza tranzistora!
Good luck!
Re: upravljnje DC motorima ?
Zato sto kad pustis taster gubis zadatu vrednost. Tako da bi to radilo samo dok drzis taster. A ovako je dovoljno samo samo stisnuti taster i pozicija ostaje upisana u TZ.
Evo pogledaj sam:
TZ.0=~T11
Sto znaci mi drzimo taster i TZ.0 je 1, ide na poredjenje i sve super radi.
Pustis taster TZ.0 je 0, tj cela promenljiva TZ je 0, ide u ispitivanje, onda je u svakom slucaju TZ manje od TP, i vrti stalno u stranu da ide prema nizoj poziciji. Kako TP ne moze biti 0, vrteo bi doveka ili dok nesto ne bi slomio...
Evo pogledaj sam:
TZ.0=~T11
Sto znaci mi drzimo taster i TZ.0 je 1, ide na poredjenje i sve super radi.
Pustis taster TZ.0 je 0, tj cela promenljiva TZ je 0, ide u ispitivanje, onda je u svakom slucaju TZ manje od TP, i vrti stalno u stranu da ide prema nizoj poziciji. Kako TP ne moze biti 0, vrteo bi doveka ili dok nesto ne bi slomio...
Re: upravljnje DC motorima ?
Skont'o poentu! U pravu si, mora se na neki nacin pamtiti prethodno stanje tastera da bi se moglo porediti!
Hvala na objasnjenju!
Hvala na objasnjenju!
Re: upravljnje DC motorima ?
Samo da ne bude dalje zabune, potrebno je inicijalizoveti promenljivu TZ pri pokretanju, najbolje joj je dodeliti vrednost koja se zatekne, ili neku inicijalizaciju da svaki put motor krene od pocetka ili sta vec...
To nije ceo program sto sam napisao, to je samo skica...
To nije ceo program sto sam napisao, to je samo skica...