DC Motor control gamit PIC16F877 & L298 (De-motor ng driver)

S

sk.shawn

Guest
Hi lahat,

Ay sinusubukan ko ang kontrol sa isang simpleng DC motor gamit ang isang motor driver chip (L298) sa pamamagitan ng mga programa ng PIC16F877 microcontroller.

Ay sinusubukan ko na lumabas sa isang simpleng code na kung saan ay ilipat ang motor ng isang isang-kapat ng taon na may paggalang sa kanyang unang posisyon at pagkatapos ay hihinto.Kailangan ko itong motor kilusan na ipinatupad sa aking carpark prototipo barrier na kung saan ang barrier ay magbubukas ng (sa pamamagitan ng mga motor
ng isang-kapat ng taon kilusan) sa pagtanggap ng isang input activation sa pamamagitan ng isang itulak button.

Ang kahirapan lies sa bahagi ng kontrolado ang motor sa makatarungan ilipat sa pamamagitan ng isang isang-kapat ng taon.Kahit na ano ko, ang motor pa rin naglilipat ng higit pa sa isang isang-kapat ng taon.Gayunman, napansin ko ng isang pagbabago sa bilis kahit na.

Ako ay may nakalakip sa pamamagitan ng code.Hope ka guys ay magdadala ng kaunti ng iyong oras upang tulungan ako sa mga ito at ipaalam sa akin kung paano ko dapat pumunta tungkol sa achieveing ito motor control.

Talagang salamat para sa tulong at pasensiya para sa matagal na text!

Pagbati
Shawn

 
Ikaw nakalimutang mag-post ng iyong code sa iyong thread.Mangyari lamang na gawin ito,
Gusto pinapayo sa inyo na pumunta para sa stepper motor, na kung saan ay maaaring gamitin sa L293D, o ULN 2803 madali.Bakit ninyo na may mga tiyak na DC motors.Na lagi mong mukha ang problema sa DC motors.

 
Kailangan mong malaman:
Boltahe ng motor
Interfacing
Feed Back etc ...
Sa lahat ng drowing ng mga pag-i-install na sa commanded
Kailangan mo ng pagpapahinto at CLOSE sa pagpapahinto LUGAR sensors upang mabawasan ang bilis at diskarte upang payagan ang isang malapit sa kawatasan tumigil sa pagpapahinto sensor at ito sa bawat bahagi ng paglalakbay

Kung ang isang stepper motor ay magiging sapat na bilang sila titigil ng diretso

1/sensors pagpapahinto
Tulad ng gagawin mo lamang simulan itigil senyas na walang bilangin ang mga hakbang na hindi na kailangang mag-check acceleration
2/counts travel
Kung gumamit ka ng mga hakbang (amont ng takda sa travel) pagbilang,
ikaw ay dapat na maging carefull sa startslowly upang maiwasan ang mga nawawalang inililipat sa simulan ...

<img src="http://www.edaboard.com/images/smiles/icon_biggrin.gif" alt="Very Happy" border="0" />
 
Thanks guys para sa mga sagot.Paumanhin para sa mawalan sa attachment.Ako cant tila sa mailakip ang file ng maayos sa thread.Kaya dito ang code sa raw sa ibaba.Aking pasensiya na sa abala.

Sa regards na kung bakit ang isang DC motor ay pinili, at ang ay dahil sa gastos.I'm doing isang proyekto ngayon at kami ay limitado ng pera sa gastusin sa.Kaya, ako kinda nais na ipatupad na ito gamit ang isang DC motor.Ito
ay isang 12V DC motor.

Mangyaring huwag mag-atubiling ipaalam sa akin malalaman kung ka guys ay nangangailangan ng karagdagang impormasyon.Ako tunay na pag-asa para makakuha ng isang solusyon na ito.Been trying sa nakaraang 3 araw na walang tagumpay.

Salamat muli para sa tulong guys!

Pagbati
Shawn

/*****************************
Paglalarawan:
Ito
ay isang simpleng programa sa pagtatangka upang ilipat ang mga makina sa pamamagitan ng isang isang-kapat ng taon
sa pamamagitan ng kontrolado ng para sa loop count.Gayunman, ito
doesnt trabaho.
Kahit pagkatapos ng pagbabawas ng bilang ng halaga sa 3 na kung saan ay ang pinakamababang upang makamit ang isang pinakamaliit na
posible motor paggalaw.Ang motor pa rin gumagawa ng higit pa sa isang isang-kapat ng taon naman.Kaya ako suplado!
****************************/
# isama ang "io16f877.h"
magpawalang-bisa pangunahing (walang laman)
(

matagal int i = 0;

ADCON1 = 0x07;
TRISA = 0xff;
TRISB = 0x00;PORTB = 0x00;RB0 = 1; / / Paganahin Ang Motor
RB1 = 0; / / lohika na kailangan para sa mga walang motor kilusan
RB2 = 0;

habang (1) / / Pangunahin Walang-hanggan Habang Umikot
(kung (RA0 == 1) / / button pindutin napansin
(
para sa (i = 0; i <3; i )
(

RB1 = 1; / / Motor inililipat sa isang direksyon.Ang susi ay dito.Tried pagbabawas ng para sa loop count para makamit bababa motor paggalaw.Ngunit ito pa rin cant gawin ito.
RB2 = 0; / / Ang motor pa rin naglilipat ng higit pa sa isang isang-kapat ng taon
)RB1 = 0; / / Motor ay dapat huminto na paglipat kung ito ay gumagawa ng isang isang-kapat ng taon ng rebolusyon
RB2 = 0;
)

)

)

 
iyong code AY MAAARING HINDI GAGAWIN ang trabaho SA LAHAT!
Ito ay nakasalalay lamang sa isang oras SA sa posisyon ang mga braso
Ang huling posisyon ay depende sa power supply,
sa labas ng temperatura, ang dumi sa sistema ang pagpapadulas ng sistema, ang mga oras na ang pindutan ay hunhon ...

Tulad ng ipinaliwanag ko sa unang bahagi, kung ang motor ay isang libreng tumatakbo DC motor Kailangan ay mayroon kang mga DALAWANG switch sensing ang posisyon ng mga armas laban sa dulo ng paglalakbay, isa Isara sa dulo slowing down ang motor ng iba pang mga isa sa dulo.
Na nagpapahiwatig ng isang bilis ng control sa PWM o iba pang paraan.

Upang gamitin ang isa lamang lumipat sa katinuan ang pagdating sa dulo ng isa ng posibleng paraan ng "pagpepreno" ay sa pamamagitan ng shorting ang armature na gumagamit ng salamin ng kotse o motor na kandado mismo sa sandaling ito ay tumigil.

Symbolic ang code:

Pagbukas
Kung pushbutton_open pagkatapos / / bukas
direction_open = 1 / / riley pasulong
Kung stop_open pagkatapos ay
direction_open = 0
/ / ang motor itinitigil patay na ito ay isang hangin screen tagapunas motor

Isinasara
Kung pushbutton_close pagkatapos / / malapit
direction_close = 1 / / riley reverse
kung stop_closed = 1 pagkatapos ay
DIRECTION_CLOSE = 0

Ito ay ang pinakamadaling paraan MAY A DC Motor

Ang tunay na magandang paraan ay ang paggamit ng isang stepper motor
Ang bilang ng mga HAKBANG forward o reverse

 
Thanks gebepic!

Mukhang hindi biro para sa akin bilang ako tunay na walang karanasan sa paghawak ng motor.Naiintindihan ko ang iyong punto tungkol sa mga isyu ng pagpapasok ng kahulugan control at ang lahat.Gayunman, ako tunay na kailangan ng dagdag suporta sa mga tuntunin ng alam ng hardware na kailangan upang isabit up na ito at marahil kahit anong sample code kung maaari.

I'm just thinking kung mayroon kang anumang mga pinapayong mga sites na kung saan ko bisitahin at basahin up more on.Tunay pahalagahan ito!

Sa karagdagan, Gusto kong ipakita sa iyo ang aking mga hardware setup.Ito
ay isang simpleng hardware ko na kung saan ay walang mga palatandaan tungkol sa mga kasama na ang sensing katangian.Hope na maaari mong ipaalam sa akin ng karagdagang.

Kung ang lahat ng ibang tao na nabigo, ako hulaan ako would may sa gawin sa paggamit ng isang stepper motor na kung saan ay sinusubukan ko upang maiwasan dahil sa badyet constrains.

Anyway, thanks a million para sa iyong suporta muli!

Pagbati
Shawn
Paumanhin, ngunit kailangan mo ng pag-login in upang makita ang attachment na ito

 
Hi,
Bukas-loop control ito ay mahirap, ngunit gayunpaman, maaari mong subukan sa isang boltahe mas mababa sa 12V upang makakuha ng mas mahusay na kontrol at mababa ang bilis.

Pagbati,
Laktronics

 
Narito ang pansamantala "drowing" at ang Picsimulator IDE pangunahing code. Para sa 16F 676 iakma ito sa 877
Paumanhin, ngunit kailangan mo ng pag-login in upang makita ang attachment na ito

 
http://www.mitedu.freeserve.co.uk/Circuits/Switching/dcmotor.html
http://matthieu.benoit.free.fr/moteur2.htm
http://www.educypedia.be/electronics/circuitsmotorcontrol.htm

ang 3rd ay ay magbibigay sa inyo ng kumpletong solusyon ko pag-asa.Mayroon ba bumalik pagkatapos ng ito, sa resulta at ipamahagi ito sa lahat

 
Ang mga ito ay para sa mga sigurado ng napakahusay na mga link.
Na beats aking mabilis at marumi solusyon.
Kahit thanks ay frowned upon, oras na ito para sa mga tawag ng exception

A BIG THANKS.

<img src="http://www.edaboard.com/images/smiles/icon_biggrin.gif" alt="Very Happy" border="0" />gebe

 
Guys,

Talagang thanks.Ako ay nagtatrabaho sa mga ito sa kasalukuyan.Kung ko kumuha ito gumagana, ay talagang mag-post at ibahagi sa lahat ng iyo.

It's great na kayo ay guys pagtulong sa iba!

Pagbati
Shawn

 
Ang isang mas mahusay na isa Paggawa at nasubok sa simulator modules bilang kalakip sa bawat larawan Comprehensively komento source sa Basic ay kalakip sa folder.

gebe

Source ay ang lumang isa ay ayusin at ibalik dito

Ginawa
Paumanhin, ngunit kailangan mo ng pag-login in upang makita ang attachment na ito

 
hey dearz!

ako magkulang sa control 4 DC motors sa pamamagitan ng paggamit ng pic 16f877 sa patyo sa loob rotor helikoptero .. kung ano ang magiging eskematiko para sa dat Morever kung code ay magagamit pagkatapos ay sumulat ng may ...

usman. P.Khan

 
DC motors:
http://hmin.tripod.com/als/fsmyth/pages/stepdrv4.html # ST56
o
Steppers:
http://hmin.tripod.com/als/fsmyth/pages/wzmicro.html # WZ56

<als>

 

Welcome to EDABoard.com

Sponsor

Back
Top