Orodha ya maudhui:

Udhibiti wa Nafasi wa Angular wa 28BYJ-48 Stepper Motor Na Arduino & Analog Joystick: 3 Hatua
Udhibiti wa Nafasi wa Angular wa 28BYJ-48 Stepper Motor Na Arduino & Analog Joystick: 3 Hatua

Video: Udhibiti wa Nafasi wa Angular wa 28BYJ-48 Stepper Motor Na Arduino & Analog Joystick: 3 Hatua

Video: Udhibiti wa Nafasi wa Angular wa 28BYJ-48 Stepper Motor Na Arduino & Analog Joystick: 3 Hatua
Video: MKONO WA BWANA by Zabron Singers (SMS SKIZA 8561961 TO 811) 2024, Julai
Anonim
Udhibiti wa Nafasi wa Angular wa 28BYJ-48 Stepper Motor Na Arduino & Analog Joystick
Udhibiti wa Nafasi wa Angular wa 28BYJ-48 Stepper Motor Na Arduino & Analog Joystick

Huu ni mpango wa kudhibiti kwa motor ya stepper ya 28BYJ-48 ambayo nimetengeneza kutumia kama sehemu ya mradi wangu wa tasnifu ya mwaka wa mwisho. Sijaona hii ikifanywa hapo awali kwa hivyo nilidhani ningepakia kile nilichogundua. Tunatumahii hii itasaidia mtu mwingine huko nje!

Nambari kimsingi inaruhusu motor stepper "kunakili" nafasi ya angular ya starehe ya analojia, ambayo ni kusema ikiwa unasukuma fimbo ya kufurahisha mbele, motor inaelekea "kaskazini". kushinikiza fimbo ya furaha kuelekea magharibi, motor inazunguka kuelekeza katika mwelekeo huo huo.

Kwa utekelezaji wangu nilihitaji kwamba ikiwa fimbo ya kufurahisha imeachwa, i.e. haina msimamo wa angular, motor inarudi kwa mwelekeo wa "nyumbani". Mwelekeo wa nyumbani unakabiliwa na mashariki, na motor (au kwa kukodisha pointer / kifaa chochote ambacho umeambatisha kwenye shimoni la pato!) Lazima pia iwe inakabiliwa na mwelekeo huu wakati umewashwa.

Vifaa

Arduino Uno au sawa

ubao wa mkate na uteuzi wa waya za kuruka (wa kiume hadi wa kiume, wa kiume hadi wa kike)

Ugavi wa umeme wa 5V

Moduli ya fimbo ya analojia ya analog

28BYJ-48 stepper motor na ULN2003 stepper dereva

Kalamu, karatasi na blu-tac (au kifaa kingine chochote cha kuashiria kiambatishe kwenye motor!)

Hatua ya 1: Hatua ya 1: Kuweka Up

Unganisha motor ya stepper kwa dereva wa stepper, na unganisha pini kama ifuatavyo:

IN1 - pini ya Arduino 8

IN2 - pini ya Arduino 9

IN3 - pini ya Arduino 10

IN4 - pini ya Arduino 11

Unganisha usambazaji wako wa 5v kwenye reli za usambazaji kwenye ubao wako wa mkate, na unganisha pembejeo za ULN2003 5v kwenye reli za usambazaji. unganisha reli ya ardhini chini kwenye Arduino yako.

kwa fimbo ya furaha, unganisha kama ifuatavyo:

Kubadilisha pini - pini ya Arduino 2

Mhimili wa X - Arduino A0 (Analog katika 0)

Mhimili wa Y - Arduino A1

+ 5V - Pato la Arduino 5V

GND - Arduino GND

Mwishowe unganisha ardhi ya ubao wako wa mkate na pini nyingine ya Arduino GND

Hatua ya 2: Hatua ya 2: Kuelezea Kanuni

Nimejumuisha nambari kamili ya Arduino ili upakue na utumie. Lakini nitajitahidi kuelezea sehemu zinazofaa hapa.

Nadharia iliyo nyuma ya nambari hii ni kwamba nafasi iliyochukuliwa na fimbo ya kufurahisha imegawanywa kuwa grafu, na 0, 0 katikati. hata hivyo pembejeo za starehe hukaa kwa (takriban) 512 katikati, kwa hivyo kushinda kazi hizi mbili hutumiwa "sifuri" thamani iliyosomwa kutoka kwa mhimili wa X na Y. kulingana na usambazaji wa umeme unaotumia unaweza kuhitaji kubadilisha maadili katika kazi ZeroX na ZeroY ili fimbo yako ya furaha itoe usomaji wa kuaminika wa 0 wakati wa kupumzika.

Wakati X, Y maadili yanasomwa, hubadilishwa kuwa radians kwanza kwa kutumia kazi atan2 () kwenye maktaba ya math.h. Kuelezea kazi hii iko nje ya wigo wa hii inayoweza kufundishwa, lakini tafadhali nenda uiangalie - ni ujanja rahisi wa jiometri!

Mwishowe, kufanya maisha iwe rahisi kwa sisi ambao zamani tulikuwa tukifanya kazi kwa digrii badala ya rads, thamani ya rada iliyohesabiwa na atan2 () inabadilishwa kuwa digrii.

Juu ya kitanzi kuna kijisehemu kidogo cha nambari ambacho hukuruhusu kubofya kitufe cha kitambo kwenye fimbo ya kusongesha eneo la "nyumbani". Hii ilikuwa muhimu sana wakati wa kujaribu nambari, lakini nimeiacha ikiwa naona jinsi inaweza kuwa muhimu katika hali zingine.

Sasa kwenye sehemu kuu ya nambari! tunaanza kwa kusoma joystick X, Y inaratibu mara mbili ikitenganishwa na ucheleweshaji wa 10ms na kisha kukagua ikiwa ni sawa - niligundua kuwa mshindo wa raha mara kwa mara utatoa usomaji wa nadra, na ucheleweshaji huu kidogo ulitosha kusimamisha kugeuka kwa motor kulingana na haya. Pia ni ucheleweshaji mfupi wa kutosha ambao hauonekani kuingilia pembejeo za makusudi.

Nambari iliyobaki inajielezea mwenyewe na nimefanya bidii kuiandika; Mfululizo wa taarifa za IF kulinganisha pembe ya sasa ya faraja na pembe ya gari, na kusogeza gari kwa pembe hiyo. 28BYJ-48 ina hatua 5.689 kwa digrii, kwa hivyo ndio sababu tunazidisha harakati zinazohitajika na nambari hii inayoonekana isiyo ya kawaida!

Sehemu moja ya nambari ambayo inahitaji kuelezea zaidi ni ile ambayo nimeipa jina la "kesi ya karibu". Katika hata ile joystick & motor zilikuwa k.v. + 175 °, na kiboreshaji cha furaha baadaye kilihamia -175 ° (mwendo wa 10 ° tu kwenye kigingi cha kufurahisha, kutoka kaskazini tu ya magharibi hadi kusini magharibi tu ya magharibi), motor ingeweza kusogea KATIKA MWELEKEO WABAYA na 350 °! kuhesabu hii kesi maalum iliandikwa.

Kesi ya kuzunguka huanza kwa kuangalia kuwa motor na fimbo ya raha zina ishara tofauti, i.e.moto ni chanya na hasi ya faraja, au kinyume chake. Inakagua pia kwamba jumla ya jumla (ambayo ni, maadili mazuri) ya fimbo ya kufurahisha na gari iko juu ya 180 °.

Ikiwa taarifa hizi zote ni za kweli, kazi inakagua ikiwa gari inahitaji kwenda sawa na saa (thamani ya gari ni hasi) au kinyume cha saa (ikiwa thamani ya gari ni chanya).

Thamani kamili za pembe ya motor na pembe ya faraja zimejaa, na kutolewa kutoka 360 ° kuamua umbali wa kusonga. Mwishowe, pembe ya gari (ambayo sasa inaonyesha pembe ya faraja) inasasishwa kama hivyo.

Hatua ya 3: IMEKWISHA

Kwa hivyo, kilichobaki kufanya ni kupakia nambari kwenye Arduino yako na kuiendesha! Tazama video hapo juu kwa wazo nzuri la jinsi mradi unavyofanya kazi. Hii itakuwa muhimu kwa gimbals za kamera, mikono ya roboti na matumizi mengine mengi!

Ikiwa unatumia nambari, tafadhali nijulishe, na ikiwa utaona mahali ambapo nambari inaweza kuboreshwa, ningependa kusikia maoni yako.

Ilipendekeza: