Satura rādītājs:

Servo smidzinātājs - USB ūdens pistole: 5 soļi
Servo smidzinātājs - USB ūdens pistole: 5 soļi

Video: Servo smidzinātājs - USB ūdens pistole: 5 soļi

Video: Servo smidzinātājs - USB ūdens pistole: 5 soļi
Video: 40 полезных автотоваров с Aliexpress, которые упростят жизнь любому автовладельцу #6 2024, Jūlijs
Anonim
Servo smidzinātājs - USB ūdens pistole
Servo smidzinātājs - USB ūdens pistole

USB vadāms servo ūdens lielgabals. Lieliski piemērots šaušanai uz nenojaušiem garāmgājējiem vai cilvēku aizturēšanai ar kaitinošiem jautājumiem. Šis projekts ir mazs ūdens sūknis, kas uzstādīts virs servo virziena šaušanai. To visu vada mikrokontrolleris, un to kontrolē no tastatūras, izmantojot USB. Lai redzētu vairāk mūsu projektu un bezmaksas video pamācības, apmeklējiet mūsu vietni

1. darbība: apkopojiet materiālus

Savāc materiālus
Savāc materiālus
Savāc materiālus
Savāc materiālus
Savāc materiālus
Savāc materiālus

Šis projekts ir balstīts uz mikrokontrolleru. Izņemot USB NerdKit komplektā iekļauto mikrokontrolleri ATmega168. Šim projektam mēs izmantojām sekojošo: 1 Hobby Servo, Hitec HS-501 Zemsprieguma virzuļūdens sūknis 1 Mazs n-kanālu MOSFET, 2N7000

2. darbība: samontējiet ķēdi

Salieciet ķēdi
Salieciet ķēdi
Salieciet ķēdi
Salieciet ķēdi
Salieciet ķēdi
Salieciet ķēdi
Salieciet ķēdi
Salieciet ķēdi

Mūsu ķēdes pirmā daļa vienkārši savienojas ar servo. Šeit tas ir vienkārši: viens vads no mikrokontrollera līdz servo. Atkarībā no ražotāja ir daži dažādi krāsu marķējumi, tāpēc pārbaudiet, pirms to izmēģināt. ServoSquirter shēmas shematisks fotoattēls uz NerdKits maizes dēļa. Ķēdes otrā daļa ļauj mikrokontrolleram ieslēgt un izslēgt sūkņa motoru. ATmega168 mikroshēma pieļauj tikai 40mA maksimumu jebkurā tapā vai no tās, bet mūsu sūknim ir nepieciešams tuvāk 1000mA! Tātad, lai kontrolētu šo lielāku slodzi, mēs esam izvēlējušies izmantot lielāku tranzistoru - 2N7000. Vispirms mēs izskaidrojam MOSFET (metāla oksīda pusvadītāju lauka efekta tranzistoru) kā slēdžu izmantošanas pamatus: paaugstinot vārtu spriegumu virs avota, mēs varam ļaut strāvai plūst no drenāžas uz avotu. No 2N7000 datu lapas mēs esam ieguvuši 1. attēlu, kas parāda saikni starp drenāžas strāvu un drenāžas avota spriegumu dažādiem vārtu avota sprieguma iestatījumiem. No šī grafika var uzzināt dažas svarīgas lietas: 1. VGS zem aptuveni 3,0 voltiem nav pieļaujama strāvas plūsma. Tas ir izslēgts stāvoklis, ko sauc arī par “nogriešanu”. 2. Attiecībā uz maziem VDS, līkne izskatās aptuveni lineāra caur izcelsmi - tas nozīmē, ka tā elektriski "izskatās" kā rezistors. Ekvivalenta pretestība ir līknes apgrieztais slīpums. Šo MOSFET darbības reģionu sauc par "triodi". 3. Lielākam VDS tiek sasniegts kāds maksimālais strāvas līmenis. To sauc par "piesātinājumu". 4. Palielinot VGS, ir atļauts plūst vairāk strāvas gan triodes, gan piesātinājuma režīmos. Un tagad jūs faktiski esat uzzinājis par visiem trim MOSFET darbības režīmiem: nogriešana, triode un piesātinājums. Tā kā mūsu vārtu vadība ir digitāla (+5 vai 0), mūs uztrauc tikai dzeltenā krāsā izliektā līkne, ja VGS = 5V. Parasti MOSFET kā slēdža izmantošana parasti ietver trioda darbības režīmu, jo MOSFET izkliedē jaudu PD = ID*VDS, un labam slēdzim vajadzētu izkliedēt nelielu jaudu pašā slēdzī. Bet šajā gadījumā mums ir darīšana ar motoru, un dzinējiem, pirmo reizi iedarbinot, ir nepieciešama liela strāva (ar nelielu sprieguma kritumu). Tātad pirmo vai divas sekundes MOSFET darbosies ar augstu VDS, un to ierobežos tā maksimālā strāva - aptuveni 800 mA no sarkanās punktētās līnijas, ko esam uzzīmējuši datu lapā. Mēs atklājām, ka ar to nepietiek, lai sāktu sūkni, tāpēc izmantojām nelielu triku un paralēli novietojām divus MOSFET. Tādā veidā viņi sadala strāvu un var efektīvi nogremdēt aptuveni 1600 mA. Arī sūkņa lielo jaudas prasību dēļ mēs izmantojām sienas transformatoru ar lielāku strāvas jaudu. Ja jums ir sienas transformators ar jaudu, kas lielāka par 5 V, varbūt 9 V vai 12 V, tad jūs apm

3. darbība: iestatiet PWM MCU

Iestatiet PWM MCU
Iestatiet PWM MCU
Iestatiet PWM MCU
Iestatiet PWM MCU
Iestatiet PWM MCU
Iestatiet PWM MCU

PWM reģistri un aprēķini Videoklipā mēs runājam par diviem taimera/skaitītāja moduļa izmantotajiem līmeņiem: augšējo vērtību un salīdzināšanas vērtību. Abi šie ir svarīgi, lai radītu vēlamo PWM signālu. Bet, lai vispirms aktivizētu ATmega168 PWM izvadi, mums ir jāizveido daži reģistri. Pirmkārt, mēs izvēlamies ātro PWM režīmu ar OCR1A kā augstāko vērtību, kas ļauj mums patvaļīgi iestatīt, cik bieži jāsāk jauns impulss. Pēc tam mēs iestatām pulksteni, lai tas darbotos ar iepriekšēju dalījumu 8, kas nozīmē, ka skaitītājs palielināsies par 1 ik pēc 8/(14745600 Hz) = 542 nanosekundes. Tā kā šim taimerim ir 16 bitu reģistri, tas nozīmē, ka mēs varam iestatīt kopējo signāla periodu 65536*542ns = 36 milisekundes. Ja mēs izmantotu lielāku dalījuma numuru, mēs varētu padarīt savus impulsus tālāk viens no otra (kas šajā situācijā nepalīdz), un mēs zaudētu izšķirtspēju. Ja mēs izmantotu mazāku dalījuma numuru (piemēram, 1), mēs nevarētu atšķirt savus impulsus vismaz 16 milisekundes attālumā, kā to paredz mūsu servo. Visbeidzot, mēs iestatījām salīdzināšanas izvades režīmu “nepārvēršamai” PWM izvade, kas ir aprakstīta mūsu video. Mēs arī iestatījām tapu PB2 kā izvades tapu-šeit nav parādīts, bet tas ir kodā. Noklikšķiniet, lai palielinātu šos attēlus no ATmega168 datu lapas 132.-134. Lappuses, izceļot mūsu reģistra vērtību izvēli:

4. solis: ieprogrammējiet mikrokontrolleru

Tagad ir pienācis laiks faktiski ieprogrammēt MCU. Pilns avota kods ir pieejams mūsu vietnē https://www.nerdkits.com/videos/servosquirter. Kods vispirms nosaka PWM, lai darbinātu servo. Pēc tam kods vienkārši sēž cilpā, gaidot lietotāja ievadi. Rakstzīmes 1 un 0 ieslēdz vai izslēdz MCU tapu, kas ir savienota ar sūkņa tranzistoru. Tas ieslēgs un izslēgs sūkni, dodot mums iespēju darboties pēc vēlēšanās. Kods arī reaģē uz taustiņiem “[” un”], šie taustiņi palielinās vai samazinās PWM tapas salīdzināšanas vērtību, kas izraisīs servo motors, lai mainītu pozīciju. Tas dod jums iespēju mērķēt pirms šaušanas.

5. darbība: sakari ar seriālo portu

Sakari ar seriālo portu
Sakari ar seriālo portu
Sakari ar seriālo portu
Sakari ar seriālo portu
Sakari ar seriālo portu
Sakari ar seriālo portu
Sakari ar seriālo portu
Sakari ar seriālo portu

Pēdējais solis ir datora iestatīšana, lai jūs varētu nosūtīt komandas mikrokontrolleram. Programmā NerdKit mēs izmantojam seriālo kabeli, lai nosūtītu komandas un informāciju uz datoru. Lielākajā daļā programmēšanas valodu ir iespējams rakstīt vienkāršas programmas, kas var sazināties ar serdiālo portu uz NerdKit. Tomēr ir daudz vienkāršāk izmantot termināla programmu, lai veiktu seriālo komunikāciju mūsu vietā. Tādā veidā jūs varat vienkārši ierakstīt tastatūru un redzēt NerdKit atbildi. Windows Komunikācijas ". Pirmoreiz atverot HyperTerminal, tā lūdz izveidot savienojumu. Atceliet šīs darbības, līdz atrodaties galvenajā HyperTerminal ekrānā. Jums būs jāiestata HyperTerminal, izvēloties pareizo COM portu un atbilstoši iestatot porta iestatījumus darbam ar NerdKit. Izpildiet tālāk redzamos ekrānuzņēmumus, lai pareizi iestatītu HyperTerm. Ja izmantojat Windows Vista, HyperTerminal vairs nav iekļauts. Šādā gadījumā lejupielādējiet PuTTY (Windows installer). Izmantojiet tālāk norādītos savienojuma iestatījumus, lai iestatītu Putty, izmantojot pareizo COM portu. Mac OS XPēc termināla lietojumprogrammas ievadīšanas ierakstiet "screen /dev/tty. PL* 115200", lai sāktu saziņu, izmantojot seriālo portu. LinuxOn Linux, mēs izmantojam " minicom ", lai sarunātos ar seriālo portu. Lai sāktu, palaidiet "minicom -s" konsolē, lai atvērtu minicom iestatīšanas izvēlni. Dodieties uz "Serial Port Setup". Iestatiet parametrus šādi: Minicom konfigurācija operētājsistēmā LinuxTad nospiediet taustiņu Esc un izmantojiet "Saglabāt iestatījumu kā dfl", lai saglabātu iestatījumus kā noklusējuma iestatījumus. Tagad jums vajadzētu būt iespējai noklikšķināt uz "Iziet" un izmantot minicom, lai sarunātos ar NerdKit.

Ieteicams: