Obsah:

Servo Squirter - USB vodná pištoľ: 5 krokov
Servo Squirter - USB vodná pištoľ: 5 krokov

Video: Servo Squirter - USB vodná pištoľ: 5 krokov

Video: Servo Squirter - USB vodná pištoľ: 5 krokov
Video: esp32 cam remote control electric water pistol 2024, November
Anonim
Servo Squirter - USB vodná pištoľ
Servo Squirter - USB vodná pištoľ

Servo vodná pištoľ ovládaná USB. Skvelé na streľbu na nič netušiacich okoloidúcich alebo na zastavenie ľudí s nepríjemnými otázkami. Tento projekt je malé vodné čerpadlo namontované na vrchu serva na smerovú streľbu. Celé to riadi mikrokontrolér a ovládate z klávesnice cez USB. Ak si chcete pozrieť ďalšie naše projekty a bezplatné video návody, navštívte náš web

Krok 1: Zhromaždite materiály

Zhromaždite materiály
Zhromaždite materiály
Zhromaždite materiály
Zhromaždite materiály
Zhromaždite materiály
Zhromaždite materiály

Tento projekt je založený na mikrokontroléri. Iný ako mikrokontrolér ATmega168 zahrnutý v USB NerdKit. Na tento projekt sme použili nasledovné: 1 Hobby Servo, Hitec HS-501 Nízkonapäťové piestové vodné čerpadlo 1 Malý n-kanálový MOSFET, 2N7000

Krok 2: Zostavte obvod

Zostavte obvod
Zostavte obvod
Zostavte obvod
Zostavte obvod
Zostavte obvod
Zostavte obvod
Zostavte obvod
Zostavte obvod

Prvá časť nášho obvodu sa jednoducho pripája k servu. Tu je to jednoduché: jeden drôt od mikrokontroléra k servu. V závislosti od výrobcu existuje niekoľko rôznych farebných označení. Predtým, ako to vyskúšate, si to overte. Schematická fotografia obvodu ServoSquirter na doske NerdKits Druhá časť obvodu umožňuje mikrokontroléru zapínať a vypínať motor čerpadla. Samotný čip ATmega168 umožňuje maximálne 40mA na alebo z akéhokoľvek kolíka, ale naše čerpadlo vyžaduje bližšie k 1000mA! Aby sme mohli ovládať toto väčšie zaťaženie, rozhodli sme sa použiť väčší tranzistor 2N7000. Najprv vysvetlíme základy používania tranzistorov s efektom poľa s polovodičovým efektom MOSFET (Metal Oxide Semiconductor Field Field Transistors): ako napätie brány nad zdrojom, môžeme nechať prúd prúdiť z odtoku do zdroja. Z technického listu 2N7000 sme extrahovali obrázok 1, ktorý ukazuje vzťah medzi odtokovým prúdom a napätím odtokového zdroja pre rôzne nastavenia napätia hradlového zdroja. Z tohto grafu sa môžete dozvedieť niekoľko dôležitých vecí: 1. Pri VGS nižšom ako 3,0 voltu nemôže prúdiť žiadny prúd. Toto je vypnutý stav, nazývaný tiež „prerušenie“. 2. Pri malých VDS vyzerá krivka podľa pôvodu zhruba lineárne - čo znamená, že elektricky „vyzerá“ako odpor. Ekvivalentný odpor je inverzný sklon krivky. Táto oblasť prevádzky MOSFET sa nazýva "trioda". 3. Pri väčších VDS je dosiahnutá určitá maximálna úroveň prúdu. Hovorí sa tomu „nasýtenie“. 4. Keď zvyšujeme VGS, môže prúdiť viac prúdu v režimoch triody aj saturácie. A teraz ste sa vlastne dozvedeli o všetkých troch režimoch prevádzky MOSFET: orezanie, trioda a sýtosť. Pretože naše ovládanie brány je digitálne (+5 alebo 0), znepokojuje nás iba žltá krivka pre VGS = 5V. Použitie MOSFET ako prepínača spravidla zahŕňa triodový režim prevádzky, pretože MOSFET rozptýli výkon PD = ID*VDS a dobrý prepínač by mal rozptýliť malý výkon v samotnom prepínači. Ale v tomto prípade máme do činenia s motorom a motory pri prvom spustení zvyčajne vyžadujú veľa prúdu (s malým poklesom napätia). Prvú alebo dve sekundy bude MOSFET pracovať s vysokým VDS a bude obmedzený svojim maximálnym prúdom - asi 800 mA z červenej prerušovanej čiary, ktorú sme nakreslili v technickom liste. Zistili sme, že to nestačí na spustenie pumpy, a tak sme použili malý trik a zapojili dva paralelne MOSFETy. Týmto spôsobom zdieľajú prúd a môžu účinne pohltiť približne 1600 mA dohromady. Tiež kvôli vysokým požiadavkám na výkon čerpadla sme použili nástenný transformátor s vyšším prúdovým výstupom. Ak máte nástenný transformátor s výstupom viac ako 5 V - možno 9 V alebo 12 V -, budete potrebovať ca

Krok 3: Nastavte PWM na MCU

Nastavte PWM na MCU
Nastavte PWM na MCU
Nastavte PWM na MCU
Nastavte PWM na MCU
Nastavte PWM na MCU
Nastavte PWM na MCU

Registre a výpočty PWM Vo videu hovoríme o dvoch úrovniach, ktoré používa modul časovača/počítadla: najvyššia hodnota a porovnávacia hodnota. Oba sú dôležité pri generovaní požadovaného signálu PWM. Na to, aby sme na prvom mieste aktivovali výstup PWM vášho ATmega168, musíme nastaviť niekoľko registrov. Najprv vyberieme režim Fast PWM s OCR1A ako najvyššou hodnotou, čo nám umožní ľubovoľne nastaviť, ako často sa má začať nový impulz. Potom nastavíme hodiny tak, aby bežali s preddelením 8, čo znamená, že počítadlo sa zvýši o 1 každých 8/(14745600 Hz) = 542 nanosekúnd. Pretože pre tento časovač máme 16-bitové registre, znamená to, že môžeme nastaviť celkovú periódu signálu na 65536*542ns = 36 milisekúnd. Ak by sme použili väčšie číslo delenia, mohli by sme urobiť naše impulzy ďalej od seba (čo v tejto situácii nepomáha) a stratili by sme rozlíšenie. Ak by sme použili menšie číslo delenia (napríklad 1), neboli by sme schopní rozdeliť naše impulzy najmenej na 16 milisekúnd, ako naše servo očakáva. Nakoniec sme pre „neinvertujúci“PWM nastavili režim porovnávania výstupu. výstup, ktorý je popísaný v našom videu. Tiež sme nastavili pin PB2 ako výstupný pin-tu nie je zobrazený, ale je v kóde. Kliknutím zväčšite tieto zábery zo strán 132-134 listu ATmega168 so zvýrazneným výberom hodnôt registra:

Krok 4: Naprogramujte mikrokontrolér

Teraz je čas skutočne naprogramovať MCU. Úplný zdrojový kód je k dispozícii na našich webových stránkach https://www.nerdkits.com/videos/servosquirterKód najskôr nastaví PWM na pohon serva. Kód potom len chvíľu sedí v slučke a čaká na vstup používateľa. Znaky 1 a 0 zapínajú alebo vypínajú pin MCU, ktorý je pripojený k tranzistoru pumpy. Tým sa čerpadlo zapne a vypne, čo nám dáva možnosť ľubovoľne vypaľovať. Kód tiež reaguje na klávesy „[“a „]“, tieto klávesy zvýšia alebo znížia porovnávaciu hodnotu na pine PWM, čo spôsobí servo motor na zmenu polohy. To vám dáva možnosť mieriť pred streľbou.

Krok 5: Komunikácia so sériovým portom

Komunikácia cez sériový port
Komunikácia cez sériový port
Komunikácia cez sériový port
Komunikácia cez sériový port
Komunikácia cez sériový port
Komunikácia cez sériový port
Komunikácia cez sériový port
Komunikácia cez sériový port

Posledným krokom je nastavenie počítača, aby ste mohli príkazy odosielať do mikrokontroléra. V NerdKit používame sériový kábel na odosielanie príkazov a informácií do počítača. Je možné písať jednoduché programy vo väčšine programovacích jazykov, ktoré môžu komunikovať cez NerdKit cez sériový port. Je však oveľa jednoduchšie použiť na vykonanie sériovej komunikácie terminálový program. Týmto spôsobom stačí napísať na klávesnici a zobraziť odpoveď od NerdKit. Windows Ak používate systém Windows XP alebo starší, je súčasťou dodávky HyperTerminal, ktorý by mal byť v ponuke Štart v časti „Štart -> Programy -> Príslušenstvo -> Komunikácia “. Pri prvom otvorení programu HyperTerminal sa zobrazí výzva na nastavenie pripojenia. Zrušte ich, pokiaľ nie ste v hlavnom okne HyperTerminal. Aby ste mohli pracovať s NerdKit, budete musieť nastaviť HyperTerminal, zvoliť správny port COM a správne nastaviť porty. Nasledujte snímky obrazovky, aby ste získali správne nastavenie HyperTermu. Ak používate Windows Vista, HyperTerminal už nie je súčasťou dodávky. V takom prípade si stiahnite PuTTY (inštalátor systému Windows). Nasledujúce nastavenia pripojenia použite na nastavenie Putty pomocou správneho portu COM. Mac OS X Po vstupe do aplikácie Terminal zadajte „screen /dev/tty. PL* 115200“a začnite komunikovať cez sériový port. Linux V systéme Linux používame „ minicom “, aby ste sa porozprávali so sériovým portom. Ak chcete začať, spustením „minicom -s“na konzole vstúpte do ponuky nastavenia minicomu. Prejdite na „Nastavenie sériového portu“. Nastavte parametre nasledovne: Konfigurácia Minicomu v systéme Linux Potom kliknite na kláves Escape a pomocou „Uložiť nastavenie ako dfl“uložte nastavenia ako predvolené. Teraz by ste mali byť schopní stlačiť „Exit“a používať minicom na rozhovor s NerdKit.

Odporúča: