Paano gamitin: Biglang GP2Y0A21YK Distance sensor

R

Robo

Guest
Lamang na binili ko ang distansya ng sensor, ngunit hindi ako sigurado kung paano gamitin ito. Nauunawaan ko na ang mas malapit sensor ay sa pader, ang mas mataas ang output boltahe ay magiging. Ngunit ano ang gagawin ko sa output ang boltahe sa gayon ay maaari kong programa ang aking robot upang maiwasan ang mga pader sa pagpindot? (Sa pamamagitan ng ang paraan na gumagamit ako ng board ng edukasyon sa BasicStamp 2 module) alam ko sa paanuman kailangan kong gamitin ang isang ADC upang makuha ang digital signal. Ngunit paano ko hayaan ang aking board ng edukasyon sa "basahin" ang digital signal? Ang aking unang-iisip ay na kumonekta ko ang mga wire ng output sa isa ng ang ng P0 upang P15 ports (ipaalam sabihin P0), at ako programa sa BasicStamp na may mga sumusunod pseudocode: kung P0> 2.5V naman umalis sa ibang patuloy na pasulong Gayunpaman, ako don ' tingin t aking BOE ay makita kung ano ang boltahe ng output ay sa P0. Ang sinuman ay may anumang mga ideya? Salamat.
 
Tingin ko kung ano ang iyong gawin ay gamitin analog sig nal mula sa output ng GP2 upang makita na ang iyong shold naman robot o hindi, tama? Kung gusto mong gawin tulad na, ikaw lamang ilagay ang iyong signal sa pamamagitan ng COMPARATOR circuit (tulad ng ng opamp may isang pin na konektado sa reference boltahe), sa gayon, maaari mong makita kung ang antas ng output signal boltahe lumampas sa referrence boltahe. Sa pamamagitan ng ang paraan, ito ay kapabayaan benefith ng distansya measurae tampok, na ang kakayahan ng sensor na ito. Kaya, upang gumawa ng sensor ito na kapaki-pakinabang para sa iyong pera, tingin ko ikonekta ito sa ADC ay ang pinakamahusay na ideya. Ito ay ang aking ideya :) Sana ito ay makakatulong sa
 
Salamat para sa pagtugon :) Ngunit kung paano ang aking mga Lupon ng Edukasyon bumabasa ang boltahe (ipaalam sa sinasabi 3V)? Ay BOE input port sa gayon ay maaari kong ikonekta ang 3V sa port input upang ipagbigay-Ang BOE alam may 3V sa ang port? Salamat.
 
Sa iyong Lupon ng Edukasyon taglay mo ang lahat 16 I / O Pins susunod sa breadboard. Mga Pins na ito ay maaaring gamitin upang basahin ang signal (mga) mula sa panlabas na aparato tulad ng iyong layo metro. Maaari din silang kontrolin ang mga 8-bit (o higit pa) A / D converter na kung saan ay maaaring fed direkta mula sa iyong d-metro. Sa 8-bit na A / D magkakaroon ka ng 256 iba't-ibang mga signal na maaaring magamit upang makontrol ang paggalaw ng iyong mga robot sa mas katumpakan sa isang dalawang-hakbang na pamamaraan.
 
Salamat. Para sa pagpapagaan, makikita ko lang gamitin ang 2-yugto pamamaraan sa halip ng ADC para sa ngayon. Para sa mga sumusunod na pseudocode: (Ipagpalagay ko kumonekta sa ang sensor boltahe pagbabasa sa P0) Lumiko pakaliwa kapag ang boltahe sa P0 ay mas malaki kaysa sa 3V (robot masyadong malapit sa dingding ng) kung (P0> 3) Lumiko pakaliwa 'Kung hindi magpatuloy upang pumunta pasulong ( walang pagharang sa harap ng robot) kung hindi man ay pumunta tuwid Paano ko dapat isulat ang "kung (P0> 3)" line ang paggamit BasicStamp? Hayaan ang mga sinasabi ko mga 2V input bilang sensor pagbabasa sa P0, Hindi sa tingin ko lamang ng pagsulat "kung (P0> 3)" ay nagbabalik ng maling pahayag ng karapatan? Ano ang dapat line na? Salamat.
 
Tandaan na mayroon ka lamang 2 posibleng readings: anumang ibaba 0.5V (o kaya) ay lohika '0 ', ang anumang bagay sa itaas 2.5V (o kaya) ay lohika '1'. Para sa kadahilanang ito ay dapat mong gamitin ang isang COMPARATOR upang payagan lamang ang mga dalawang antas sa ang xx ng PIN: '0 'o '1'. Kaya sa BasicStamp line ay magiging: KUNG (SA xx = 0) Pagkatapos .... ito paraan o KUNG (SA xx = 1) pagkatapos .... ang iba pang mga paraan
 
Ito palaging tumakbo Loop2, na sinusundan ng Umikot. Ang dalawang "kung pagkatapos ay" hindi tila sa trabaho ... anumang mga ideya? Salamat para sa pagtulong! Narito ang ang aking BasicStamp code: '{$ STAMP BS2} counter var Word DEBUG "Pumunta Robo!" Loop2: Mababang 1 mataas 2 Mababang 3 mababang 4-pause 5000 KUNG (0 = 0) Pagkatapos Umikot ng Umikot: Mababang 1 mataas 2 Mababang 3 mataas 4 pause 5000 KUNG (0 = 1) Pagkatapos Loop2 'I-pause 5000 END
 
Mayroon kang naka-check / sinusukat ang boltahe sa "0"? Mukhang ang "0" ay sa lohika H at pinapanatili sa loop2 ...
 

Welcome to EDABoard.com

Sponsor

Back
Top