Ito ay nakakakuha ng isang maliit na mainit, tag-araw at lahat ng iyon. Mayroon akong isang tagahanga ng Tsino sa aking desk, ngunit nagtatrabaho ako sa iba't ibang mga dulo ng aking bagong malaking desk, at ang tagahanga ay halos palaging pumutok, at pag-ikot sa tuwing sa tuwing nalulungkot. Kaya ngayon gagawin namin ang isang tagahanga na may awtomatikong pag-target sa target.
Kaya, kailangan nating subaybayan ang posisyon ng target, isinasaalang-alang ang sitwasyon sa talahanayan, upang ang tagahanga ay hindi naglalayong sa iba pang mga bagay. Sa isip, siyempre, maaari kang kumuha ng raspberry pi minicomputer gamit ang isang camera, at gumamit ng isang library ng pangitain ng makina upang makilala ang mga paggalaw o isang maliwanag na T-shirt.
Ngunit ito ay isang medyo mahirap na gawain, at ang lupon mismo ay nagkakahalaga ng higit sa 10 beses na mas mahal kaysa sa platform arduino, na hindi makayanan ang camera. Ngunit bukod sa camera, may iba pang mga paraan upang matukoy ang target, halimbawa, isang sensor ng layo ng sensor sa ultrasonic.
Kapag nakita ko sa Internet ang isang kagiliw-giliw na proyekto na "radar" batay sa arduino at sensor na ito. Ang proyekto mismo ay medyo walang silbi, ngunit ang ideya mismo ay kahanga-hanga - upang paikutin ang sensor ng distansya at i-scan ang puwang, na nakatali sa anggulo ng pag-ikot.
Ulitin natin ang proyektong ito para sa kasiyahan, at pagkatapos ay tutuloy tayo.
Nangangahulugan ito na ang sensor ay dapat na paikutin, para sa mga ito, ang karaniwang modelo ng servo ay ginagamit (na hindi alam, ang servo ay isang motor na may isang gearbox at puna sa anggulo, iyon ay, maaari naming itakda ito ang anggulo ng pag-ikot, at i-on ito).
Huwag tayong maging matalino, at ayusin lamang ang sensor gamit ang singsing mula sa silid ng bisikleta.
Pinagsasama namin ang circuit sa isang breadboard.
Iyon lang, nananatili upang i-download ang firmware sa arduino. Ang bersyon na ito ay gumagamit ng isang mas mabilis na aklatan.
Maaari mong i-download ang mga mapagkukunan sa pahina ng proyekto, ang link ay matatagpuan sa paglalarawan sa ilalim ng video. Doon mo mahahanap ang lahat ng mga detalyadong tagubilin, partikular sa isang malaking artikulo para sa mga unang pumili ng arduino. Sa pangkalahatan, nai-load namin ang firmware sa board at nabuhay ang aming radar. Ngayon sa computer na kailangan mong magpatakbo ng isang programa na makakatanggap ng data mula sa radar (ito ay nasa folder ng proyekto, ngunit kailangan mo ng isang kapaligiran sa pagproseso upang simulan ito, maaari mong i-download ito sa opisyal na website).
Sinimulan namin ito, at narito kailangan mong i-configure ang isang sandali lamang - ang numero ng port kung saan nakakonekta ang arduino. Ito ay ang parehong bilang na napili sa arduino ide program, tanging dapat nating ipasok ito nang manu-mano.
Nagsisimula kami.
Iyon lang, mahusay ang aming radar at ipinapakita ang distansya sa mga hadlang na natagpuan. Tulad ng nakikita mo, gumagana ito na may sapat na kawastuhan upang hindi lamang tuklasin ang isang malaking target sa anyo ng isang tao o isang ulo, ngunit nakayanan din ang anumang maliit na bagay na maaaring maging isang buong larangan para sa mga kagiliw-giliw na mga eksperimento. Kaya't habang ang lahat ay nakakatuwa sa raspberry pi, nagpasya akong hamunin ang aking sarili at magturo ng isang literal na bulag na sistema upang makilala ang target at layunin dito. Ito ay magiging isang mahusay na simpleng proyekto na maaaring maulit kahit sa tulong ng arduino starter kit. Gawin natin ito at isipin ang algorithm ng trabaho.
Kaya, ang mga kakayahan ng system ay medyo limitado. Nakukuha lamang namin ang distansya mula sa radar, ngunit alam namin kung aling anggulo ang tumutugma sa bawat sukat. Ang unang bagay na nasa isipan ay ang pagbuo ng isang mapa ng workspace. Iyon ay, gumawa kami ng isang pass at tandaan kung anong anggulo kung ano ang distansya. Ngayon, sa mga kasunod na pagpasa, makakahanap kami ng pagkakaiba-iba para sa bawat anggulo ayon sa aming mapa. At sa gayon maaari nating makita ang isang bagong bagay na tatanggi laban sa background ng mga kilalang halaga. Ngayon kailangan mong turuan ang system upang tukuyin ang mga layunin. Subukan natin ang pagpipiliang ito: isasaalang-alang namin ang bilang ng mga kilalang puntos na matatagpuan sa isa't isa, iyon ay, sa buhay, ito ay magiging isang tiyak na lugar na ini-scan ng radar.
Isasaalang-alang namin ang layunin - ang lugar ay mas malaki kaysa sa isang tiyak na sukat. Agad nitong sinala ang lahat ng ingay sa pagsukat. Ipinapanukala ko ring patawarin ang system para sa maraming mga pagkakamali kapag nag-scan ng isang lugar, dahil ang ultrasonic sensor ay hindi perpekto.
Makikilala ng radar ang isang malaking lugar, iyon ay, alam nito ang anggulo ng simula ng rehiyon na ito at ang anggulo ng pagtatapos nito sa sistema ng coordinate. Nananatili lamang ito upang makalkula ang gitna ng lugar na ito at idirekta ang radar doon, at hayaan itong hindi na ilipat. Ito ay magiging isang mode ng hold.
Patuloy naming susukat ang distansya at kung ang nasusukat na punto ay biglang umalis sa hanay ng kakayahang makita ng radar, pagkatapos pagkatapos ng ilang sandali kami ay muling lumipat sa mode ng paghahanap ng target. Iyon ang lahat na hindi maintindihan, ang computer ay hindi na kinakailangan dito, gagawin ng arduino ang lahat sa kanyang sarili. Ito ay sapat lamang upang kuryente ito mula sa isang 5 boltahe ng suplay ng kuryente. Ang firmware ay nasa folder ng proyekto, mayroong isang grupo ng mga setting na kung saan maaari mong i-play sa paligid at i-configure ang lahat para sa iyong sarili.
Kaya, sinisimulan namin ang system. Una, ang pagkakalibrate ay mula sa gilid hanggang sa gilid. Naaalala ng system ang distansya sa hanay ng pag-calibrate sa coordinate system nito. Pagkatapos ay nagsisimula kaagad ang trabaho, ina-scan namin ang lugar, kung napansin namin ang target, pagkatapos ay matatagpuan namin ang anggulo ng laki at layunin nito sa gitna. Gumagana ito tulad ng isang orasan at naglalayong halos sa gitna ng target.
Sa pamamagitan ng paraan, ang lahat ng oras ng pagkaantala ay mai-configure, lalo na, ang oras sa pagitan ng pagkawala ng mga layunin at pagsisimula ng isang bagong pag-scan, kung hindi man ay iisipin mo rin na ang sistema ay nagpapabagal - walang katulad nito, itinakda mo lang ito. Sa pangkalahatan, ang mga utak para sa tagahanga ay handa na, mangolekta tayo ng bakal.
Ang tagahanga na ito ay binili ng aliexpress mga 5 taon na ang nakakaraan. Ito ay compact, pinalakas ng USB at mahusay para sa proyektong ito. Maaari ka ring maghanap para sa usb fan sa fix-price o sa mga gamit sa bahay.
Tingnan natin ang tagahanga na ito at tingnan kung mayroong libreng puwang sa kaso nito na maaaring ma-crrew gamit ang sariling electronics.
Ang Arduino nano, sa kasamaang palad, ay hindi magkasya dito, ngunit mayroong isang arduino pro mini, ang parehong bagay, ngunit mas maliit at walang programmer na nakasakay, ngunit perpektong akma.
At bakit hindi kontrolin ang kapangyarihan sa tagahanga gamit ang arduino at itapon ang katutubong pindutan? Walang sapat na espasyo, ang relay ay hindi magkasya, kaya gagamit kami ng isang field effect transistor.
Kailangan pa rin niya ng dalawang resistors ng 100 ohms at 10 kOhm. Inalis namin ang pindutan nang lubusan upang hindi ito makagambala. Ang diagram ng koneksyon ay magiging ganito:
Ikonekta natin ang finder ng saklaw gamit ang isang cable mula sa hard drive.
Mayroon din kaming isang kapasitor sa circuit, hindi kinakailangan, ngunit napaka kanais-nais, dahil ang servo drive ay nagbibigay ng medyo kapansin-pansin na mga kasalukuyang surge para sa usb, at maaari itong makaapekto sa mga sukat ng distansya.
Upang i-download ang firmware sa pro mini, kailangan mo ng isang panlabas na programmer, gastos nito ang mga Intsik tulad ng isang lata ng serbesa at kumokonekta tulad nito:
Hindi mo na kailangang gawin pa, i-click ang pindutan ng pag-download, at ang mga naglo-load ng firmware tulad ng dati sa nano board.Ang pabahay ay nagsara at lahat ng mga wire ay lumabas sa mga butas mula sa switch.
Susunod, kailangan mong ayusin ang servo. Napagpasyahan na ibitin ang fan sa isang istante, at ilakip ang servo sa isang sulok.
Upang maiwasan ang sulok mula sa pag-ikot, gumagamit kami ng double-sided tape, ngunit mas mahusay ang nababanat mula sa camera ng bike.
Ang puwang para sa sensor ay kailangang bahagyang mapalawak. Ayusin ito sa mga turnilyo na dumating kasama ang servo.
Ang panghuling ugnay, lahat, i-on at hintayin na maipasa ang pagkakalibrate at tamasahin ang homing fan.
Napaka nakakatawa na bagay. Ito ay orihinal na ipinaglihi bilang isang pangungutya, ngunit salamat sa mga Tsino at isang malaking walang laman na kompartimento sa loob ng tagahanga, posible na gumawa ng isang tapos na aparato na halos walang nakausli na mga wire at snot, na kung saan ay lubos na nakalulugod. Sa pamamagitan ng paraan, kung hindi mahahanap ng tagahanga ang target sa loob ng ilang oras, tumataas ito sa gitna at patayin. Upang i-on ito, kailangan mo lamang itaas ang iyong kamay, at ang tagahanga ay handa na upang pakayin ang target at palamig muli.
Ang servo ay naging isang murang plastik, ang gearbox ay nakabitin sa buong paligid, kaya ang paggalaw ay twitching, ngunit ano ang magagawa ko. Sa pahina ng proyekto mayroong isang link sa isang mas mahusay na servo, mayroon itong isang metal na kahon ng metal. Ang proyekto ay naging cool na cool at kawili-wili, dahil sa pagiging simple - isang sensor, isang drive, ngunit bilang isang resulta, buong pag-homing sa mapa ng rehiyon at kontrol ng pagpindot.
Salamat sa iyong pansin. Makita ka agad!
Video: