Orodha ya maudhui:

Mwanga Kufuata na Kuepuka Robot Kulingana na Arduino: Hatua 5
Mwanga Kufuata na Kuepuka Robot Kulingana na Arduino: Hatua 5

Video: Mwanga Kufuata na Kuepuka Robot Kulingana na Arduino: Hatua 5

Video: Mwanga Kufuata na Kuepuka Robot Kulingana na Arduino: Hatua 5
Video: ОЖИДАНИЕ или РЕАЛЬНОСТЬ! ИГРЫ в РЕАЛЬНОЙ ЖИЗНИ! Маленькие кошмары 2 в реальной жизни! 2024, Julai
Anonim
Mwanga Kufuata na Kuepuka Robot Kulingana na Arduino
Mwanga Kufuata na Kuepuka Robot Kulingana na Arduino

Huu ni mradi rahisi ambao unafuata au Epuka Mwanga.

Nilifanya Masimulizi haya katika Proteus 8.6 pro. Vipengele vinahitajika: -1) Arduino uno.

2) 3 LDR.

3) 2 Dc Magari ya Gia.

8) 9v na 5v Vita

Hatua ya 1: Msimbo wa Ardunio

Nambari ya Arduino imebadilishwa tarehe -biti Tarehe 23 Februari 2016]

Kanuni hii imesemwa sana sitaki kuelezea lakini ikiwa unahitaji msaada fulani ukawa huru kuwasiliana nami kwa ([email protected])

Kumbuka: -Ninatumia hali mbili katika mpango huu wa 1 kwa Kufuatia Nuru. 2 ya kwanza kwa Mwanga kuepuka.

Kwa kadri Masharti haya yameridhika Roboti itafuata au Kuepuka Nuru. [Hii ni Thamani ya chini ya LDR ambayo ninachagua. Katika Nuru ya kawaida ni Rangi ni 80 hadi 95 lakini kadiri Nguvu yake inavyoongezeka voltages zaidi na zaidi ikiwa inaishawishi kwani inafanya kazi kwa Kanuni ya Mgawanyiko wa Voltage int a = 400; // Thamani ya Tolarance]

Hatua ya 2: Faili za Proteus

Kwa kupakua kwa Maktaba ya Arduino kutoka kwa kiunga hicho

Hatua ya 3: Jinsi daraja lako H linavyofanya kazi

Jinsi Daraja lako la H linavyofanya kazi
Jinsi Daraja lako la H linavyofanya kazi
Jinsi Daraja lako la H linavyofanya kazi
Jinsi Daraja lako la H linavyofanya kazi

L293NE / SN754410 ni daraja-msingi la H. Ina madaraja mawili, moja upande wa kushoto wa chip na moja kulia, na inaweza kudhibiti motors 2. Inaweza kuendesha hadi 1 amp ya sasa, na kufanya kazi kati ya 4.5V na 36V. Magari madogo ya DC unayotumia kwenye maabara haya yanaweza kukimbia salama kwa voltage ya chini kwa hivyo daraja hili la H litafanya kazi vizuri. Daraja la H lina pini na huduma zifuatazo: Pin 1 (1, 2EN) inawezesha na kulemaza motor yetu iwe ni kutoa HIGH au LOWPin 2 (1A) ni pini ya mantiki kwa motor yetu (pembejeo ni ya juu au ya chini) Pin 3 (1Y) ni ya moja ya vituo vya magari Pini 4-5 ni ya ardhini Pin 6 (2Y) ni ya terminal nyingine ya gari Pin 7 (2A) ni pini ya mantiki kwa motor yetu (pembejeo ni ya juu au ya chini) Pin 8 (VCC2 usambazaji wa umeme kwa gari letu, hii inapaswa kupewa voltage iliyokadiriwa ya motor yako Pini 9-11 hazijaunganishwa kwani unatumia gari moja tu kwenye maabara hiiPini 12-13 ni ya ardhiPini 14-15 haijashikamanaPin 16 (VCC1) ni iliyounganishwa na 5V. Hapo juu ni mchoro wa daraja la H na ambayo pini hufanya nini katika mfano wetu. Pamoja na mchoro ni meza ya ukweli inayoonyesha jinsi motor itafanya kazi kulingana na hali ya pini za mantiki (ambazo zimewekwa na Arduino yetu).

Katika Mradi huu, pini inayowezeshwa inaunganisha na pini ya dijiti kwenye Arduino yako ili uweze kuituma iwe ya juu au ya chini na kuwasha motor au kuwasha. Pini za mantiki ya motor pia zimeunganishwa na pini za dijiti zilizoteuliwa kwenye Arduino yako ili uweze kuipeleka HIGH na LOW ili motor igeuke upande mmoja, au LOW na HIGH ili iweze kugeukia upande mwingine. Voltage ya ugavi wa magari inaunganisha na chanzo cha voltage kwa motor, ambayo kawaida ni usambazaji wa umeme wa nje. Ikiwa motor yako inaweza kukimbia kwenye 5V na chini ya 500mA, unaweza kutumia pato la 5V la Arduino. Motors nyingi zinahitaji voltage ya juu na kuchora ya juu zaidi kuliko hii, kwa hivyo utahitaji usambazaji wa umeme wa nje.

Unganisha gari kwenye daraja la H Unganisha gari kwenye daraja la H kama inavyoonyeshwa kwenye picha ya 2.

Au, ikiwa unatumia usambazaji wa umeme wa nje kwa Arduino, unaweza kutumia pini ya Vin.

Hatua ya 4: Jinsi LDR inavyofanya kazi

Sasa jambo la kwanza ambalo linaweza kuhitaji maelezo zaidi ni matumizi ya Resistors Wategemezi wa Nuru. Resistors Wategemezi wa Nuru (au LDR's) ni vipinga ambavyo thamani yao hubadilika kulingana na kiwango cha taa iliyoko, lakini tunawezaje kugundua upinzani na Arduino? Kweli huwezi kweli, hata hivyo unaweza kugundua viwango vya voltage kwa kutumia pini za analog, ambazo zinaweza kupima (kwa matumizi ya kimsingi) kati ya 0-5V. Sasa unaweza kuwa unauliza "Kweli tunabadilishaje maadili ya upinzani kuwa mabadiliko ya voltage?", Ni rahisi, tunafanya mgawanyiko wa voltage. Mgawanyiko wa voltage huchukua voltage na kisha kutoa sehemu ya voltage hiyo sawia na voltage ya pembejeo na uwiano wa maadili mawili ya vipinga vilivyotumika. Mlingano ambao ni:

Pato la Voltage = Voltage Input * (R2 / (R1 + R2)) Ambapo R1 ni thamani ya kipinga kwanza na R2 ni thamani ya pili.

Sasa hii bado inauliza swali "Lakini LDR ina maadili gani ya kupinga?", Swali zuri. Kiasi kidogo cha taa iliyoko juu ni juu ya upinzani, nuru iliyoko zaidi inamaanisha upinzani wa chini. Sasa kwa LDR fulani nilitumia safu yao ya upinzani ilikuwa kutoka 200 - 10 kilo ohms, lakini hii inabadilika kwa anuwai kwa hivyo hakikisha utafute mahali uliponunua na ujaribu kupata lahajedwali au kitu cha aina hiyo. kesi R1 ni kweli LDR yetu, kwa hivyo wacha turudishe equation hiyo na tufanye hesabu ya hesabu (uchawi wa umeme wa kihesabu) Sasa kwanza tunahitaji kubadilisha maadili ya kilo ohm kuwa ohms: 200 kilo-ohms = 200, 000 ohms 10 kilo-ohms = 10, 000 ohms Kwa hivyo kupata voltage ya pato ni nini tunapokuwa mweusi kabisa tunaunganisha nambari zifuatazo: 5 * (10000 / (200000 + 10000)) Ingizo ni 5V kwani ndio tunapata. kutoka Arduino. Hapo juu inatoa 0.24V (imezungukwa) Sasa tunapata nini voltage ya pato iko katika mwangaza wa kilele kwa kutumia nambari zifuatazo: 5 * (10000 / (10000 + 10000)) Na hii inatupa 2.5V haswa. Kwa hivyo hizi ndio maadili ya voltage ambayo tutapata kwenye pini za Analog za Arduino, lakini hizi sio maadili ambayo yataonekana katika programu, "Lakini kwanini?" unaweza kuuliza. Arduino hutumia Analog kwa Chip Chip ambayo hubadilisha voltage ya analog kuwa data inayoweza kutumika ya dijiti. Tofauti na pini za dijiti kwenye Arduino ambayo inaweza kusoma hali ya juu au ya chini kuwa 0 na 5V pini za analog zinaweza kusoma kutoka 0-5V na kuibadilisha kuwa nambari ya 0-1023. Sasa na hesabu zingine za hesabu. tunaweza kweli kuhesabu ni maadili gani ambayo Arduino itasoma.

Kwa sababu hii itakuwa kazi ya laini tunaweza kutumia fomula ifuatayo: Y = mX + C Wapi; Y = Thamani ya DijitaliWapi; m = mteremko, (kupanda / kukimbia), (thamani ya dijiti / thamani ya analogi) Wapi; C = Y kukatiza Kukatishwa kwa Y ni 0 kwa hivyo hiyo inatupa: Y = mXm = 1023/5 = 204.6 Kwa hivyo: Thamani ya dijiti = 204.6 * Thamani ya Analog Kwa hivyo katika nyeusi nyeusi thamani ya dijiti itakuwa: 204.6 * 0.24 Ambayo inatoa takriban 49. Na katika mwangaza wa juu itakuwa: 204.6 * 2.5 Ambayo inatoa takriban 511. Sasa tukiwa na mbili kati ya hizi zilizowekwa kwenye pini mbili za analogi tunaweza kuunda vigeuzi viwili kamili kuhifadhi maadili yao mbili na kufanya waendeshaji kulinganisha kuona ni ipi ina thamani ya chini zaidi, kugeuza robot katika mwelekeo huo.

Ilipendekeza: