Turinys:

Kaip pasigaminti šaunų robotą iš RC automobilio: 11 žingsnių
Kaip pasigaminti šaunų robotą iš RC automobilio: 11 žingsnių

Video: Kaip pasigaminti šaunų robotą iš RC automobilio: 11 žingsnių

Video: Kaip pasigaminti šaunų robotą iš RC automobilio: 11 žingsnių
Video: NEIŠIMKITE akumuliatoriaus iš automobilio. Padaryk tai TEISINGAI! 2024, Lapkritis
Anonim
Kaip padaryti šaunų robotą iš RC automobilio
Kaip padaryti šaunų robotą iš RC automobilio

Šis šaunus projektas skirtas aukštųjų mokyklų studentams ar bet kuriam mėgėjui, norinčiam sukurti šaunų robotą. Aš ilgai bandžiau sukurti interaktyvų robotą, tačiau jį sukurti nėra lengva, jei nežinote jokios elektronikos ar specialių programavimo kalbų. Dabar yra programavimo kalba, vadinama nqBASIC, kuri yra visiškai nemokama, kad sukurtumėte savo robotą.

1 žingsnis: ko jums reikia?

Ko tau reikia?
Ko tau reikia?
Ko tau reikia?
Ko tau reikia?
Ko tau reikia?
Ko tau reikia?
Ko tau reikia?
Ko tau reikia?

Šiam šauniam projektui jums reikės kai kurių dalių. 1) Eikite ir suraskite RC automobilį, kuriame yra du nuolatinės srovės varikliai. Radau labai pigų automobilį, pavadintą „Thunder tumbler“už 12 USD. Vaizdas pateikiamas žemiau. 2) Jums reikės „Servo Sensor“valdiklio kortelės, vadinamos SSMI. Čia yra nuoroda, skirta gauti ithttps://www.technologicalarts.ca/catalog/product_info.php? Currency = USD & products_id = 2763) Šiai lentai jums reikės mikrovaldiklio, vadinamo „NanoCore12DX“.https://www.technologicalarts.ca/catalog/ product_info.php? cPath = 50_36_92 & products_id = 4294) Jei norite, kad jūsų robotas taptų interaktyvus, jums reikia dviejų jutiklių. savo robotą programuoti.https://www.technologicalarts.ca/catalog/product_info.php? cPath = 26 & products_id = 386) Šiam gaminiui sukurta šauni robotų kalba vadinama nqBASIC. Eikite į https://www.nqbasic.com ir atsisiųskite nemokamai. Taip pat galite užduoti klausimus jų forume. 7) 4 AA baterijos (šarminės arba įkraunamos)

2 žingsnis: Išimkite „RC Car“

Paimkite „RC Car Apart“
Paimkite „RC Car Apart“

1) Išėmiau visą elektroniką. Iškirpkite kabelius iš valdiklio RC automobilyje, palikdami tik akumuliatorių, nes buvo tinkama maitinti SSMI („NanoCore12DX“servo/jutiklio/variklio sąsajos plokštė).

3 žingsnis: pritvirtinti nuolatinės srovės kabeliai ir akumuliatoriaus kabeliai

Pridedami nuolatinės srovės ir akumuliatoriaus kabeliai
Pridedami nuolatinės srovės ir akumuliatoriaus kabeliai

Du R/C automobilio nuolatinės srovės varikliai jau turėjo kabelius, todėl aš juos prijungiau prie prijungiamų jungčių (pridedama prie SSMI plokštės) savo SSMI. Aš padariau tą patį su akumuliatoriaus kabeliu.

4 žingsnis: LED kabeliai

LED kabeliai
LED kabeliai
LED kabeliai
LED kabeliai
LED kabeliai
LED kabeliai
LED kabeliai
LED kabeliai

Liko 4 kabeliai. Jie yra ploni. Tai yra kabeliai, kilę iš ratų. Šio RC automobilio galinių ratų viduje yra šviesos diodai. Iš kiekvieno rato yra du kabeliai. Jūsų robotas gali būti gražus su šiais šviesos diodais. Aš nusprendžiau naudoti šiuos šviesos diodus, kad robotas būtų linksmesnis. Šiuos kabelius galite pamatyti paveikslėlyje. Aš sumontavau juodą plastiko gabalėlį, kuris buvo iš automobilio galo, ant automobilio priekio, kad būtų gražus plokščias paviršius SSMI plokštės tvirtinimui. Aš naudoju velcros, kad pritvirtinčiau SSMI. Jei norite, galite naudoti dvipusę juostą ir kai kuriuos kaklaraiščius. Tada įkišau LED kabelius per skyles automobilio priekyje. Aš sumontavau SSMI ant automobilio. Tada aš prijungiau nuolatinės srovės variklius ir akumuliatorių kištukus prie jų vietų.

5 veiksmas: prijunkite LED kabelius prie SSMI plokštės

Prijunkite LED kabelius prie SSMI plokštės
Prijunkite LED kabelius prie SSMI plokštės
Prijunkite LED kabelius prie SSMI plokštės
Prijunkite LED kabelius prie SSMI plokštės
Prijunkite LED kabelius prie SSMI plokštės
Prijunkite LED kabelius prie SSMI plokštės

Tada prijunkite LED kabelius prie reikiamų vietų. Iš SSMI plokštės vadovo turite sužinoti, kokias jungtis galite naudoti. Pirmyn ir prijunkite juos tose pačiose vietose, kur aš. Vėliau, jei norite, galite išmokti šiuos kabelius prijungti prie skirtingų vietų. Žr. Paveikslėlius

6 veiksmas: prijunkite jutiklius

Prijunkite jutiklius
Prijunkite jutiklius
Prijunkite jutiklius
Prijunkite jutiklius
Prijunkite jutiklius
Prijunkite jutiklius
Prijunkite jutiklius
Prijunkite jutiklius

Prijunkite jutiklio kabelius prie reikiamų vietų.

7 žingsnis: jūsų robotas yra paruoštas riedėti

Jūsų robotas paruoštas riedėti
Jūsų robotas paruoštas riedėti

Jūsų roboto aparatūra yra paruošta. Dabar reikia jį užprogramuoti.

8 veiksmas: įdiekite programinę įrangą

Įdiekite programinę įrangą
Įdiekite programinę įrangą

Eikite į https://www.nqbasic.com ir atsisiųskite programinę įrangą iš svetainės. Visos instrukcijos yra svetainėje- kaip įdiegti ir paruošti kompiuterį. Taip pat yra puikus „YouTube“vaizdo įrašas, kuriame parodyta, kaip nemokamai užregistruoti programinę įrangą. Ši programavimo kalba yra visiškai nemokama. Nedvejodami užsiregistruokite. Priešingu atveju negalėsite surinkti kodo.

9 veiksmas: pasiruošę programuoti

Paruošta programuoti
Paruošta programuoti

Prijunkite nuoseklųjį kabelį iš kompiuterio nuoseklaus prievado prie SSMI nuoseklaus prievado. 1) Paleiskite „nqBASIC“ir pasirinkite projektą bei naują projektą2) pavadinkite savo projektą ir išsaugokite jį. 3) Jis paklaus, kurį nanokoros modulį naudojate iš sąrašo. Tai vienintelis modulis, kuris veikia su SSMI. 4) Pasirinkite Failas/Naujas failas. Jis paklaus, ar norite pridėti šį failą prie savo projekto. 5) Nurodykite failo pavadinimą ir spustelėkite Išsaugoti.

10 veiksmas: nukopijuokite ir įklijuokite šaltinio kodą

/* Kopijuoti iš čia į šio teksto pabaigąPavyzdys DIP32 (8mHz)*/dim M00 kaip naujas pwm (PP0) dim M01 kaip naujas pwm (PP1) dim M11 kaip naujas pwm (PP2) dim M10 kaip naujas pwm (PP3) silpnas IR1 kaip naujas ADC (PAD05) // „Sharp Sensor“(priekinis) ADC objektas dim IR1 Rezultatas kaip naujas bytedim IR2 kaip naujas ADC (PAD03) // „ADC“objektas „Sharp Sensor“(atgal) dim IR2 Rezultatas kaip naujas bytedim myChar kaip naujas baitas / /Kintamasis, skirtas gautiems simboliams saugoti Dim S kaip naujas SCI (PS0, PS1) // SCI objectdim SPK kaip naujas DIO (PM4) // Garsiakalbio naudojimas SSIMconst ontime = 20dim trukmė kaip naujas žodisConst A2 = 2273 // Muzikos užrašaiConst A3 = 1136 // Muzikos užrašaiConst A4 = 568 // Muzikos užrašai, skirti skambėti, kai robotas mato kažkokį tamsų WLED1 kaip naują DIO (PM2) // Šviesos diodai ant ratlankių WLED2 kaip nauji DIO (PM3) // Šviesos diodai ant ratų pritemdytos kilpos kaip naujas baitasConst OFF = 0Const ON = 1Const FOREVER = 1Const A = 200Const B = 10Const DEL_1MSEC = 1000sub DelayMsec (baitomis milisekundėmis), kol (milisekundės> 0) System. Delay (DEL_1MSEC) // Atidėkite 1000 mikrosekundžių, kad gautumėte 1 milisekundę milisekundžių onds = milisekundės - 1 pabaiga, kai pasibaigia subsub stop () // kad varikliai sustotų M00. PWM_Start (PWM_MAIN_CLK, 0, 250, 250) M01. PWM_Start (PWM_MAIN_CLK, 0, 250, 250) M10. PWM_Start (PWM_MAIN_CLK,, 250) M11. PWM_Start (PWM_MAIN_CLK, 0, 250, 250) pabaigai grįžti atgal () // robotas grįš atgal M00. PWM_Start (PWM_MAIN_CLK, 0, 250, 180) M01. PWM_Start (PWM_MAIN_CLK, 0, 250, 250) M10. PWM_Start (PWM_MAIN_CLK, 0, 250, 180) M11. PWM_Start (PWM_MAIN_CLK, 0, 250, 250) pabaigos posūkio pabaiga () // pasukite robotą į dešinę M00. PWM_Start (PWM_MAIN_CLK, 0, 250, 250) M01. PWM_Start (PWM_MAIN_CLK, 0, 250, 180) M10. PWM_Start (PWM_MAIN_CLK, 0, 250, 250) M11. PWM_Start (PWM_MAIN_CLK, 0, 250, 250) pabaigos posūkio posūkis () // pasukite robotą į kairę M00. PWM_Start (PWM_MAIN_CLK, 0, 250, 250) M01. PWM_Start (PWM_MAIN_CLK, 0, 250, 250) M10. PWM_Start (PWM_MAIN_CLK, 0, 250, 250) M11. PWM_Start (PWM_MAIN, 250 p. () // padarykite robotą pirmyn M00. PWM_Start (PWM_MAIN_CLK, 0, 250, 250) M01. PWM_Start (PWM_MAIN_CLK, 0, 250, 180) // kairė nuolatinė srovė M10. PWM_Start (PWM_MAIN_CLK, 0, 250, 250) M11) „DelayMsec“(A) pabaigos papildomas laukimas) pabaigos subub laukimas10 () // ilgosios delsos kilpa = 1, o (kilpa <11) DelayMsec (A) kilpa = kilpa + 1 pabaiga, kol pasibaigia subsub playsound () //, norint paleisti užrašų trukmę = laikas, kai (trukmė> 0) SPK. PIN_Out (PM4, ON) sistema. Delay (A2) SPK. PIN_Out (PM4, Off) sistema. Delay (A2) trukmė = trukmė - 1 pabaiga, o DelayMsec (B) trukmė = laikas, kai (trukmė> 0) SPK. PIN_Out [PM4, ON] sistema. Atidėjimo (A3) SPK. PIN_Out (PM4, išjungta) sistema. Vėlinimo (A3) trukmė = trukmė - 1 pabaiga, o „DelayMsec“(B) trukmė = laikas, kai (trukmė> 0) SPK. PIN_Out (PM4), ON) sistema. „Delay“(A4) SPK. PIN_Out (PM4, Off) sistema. „Delay“(A4) trukmė = trukmė - 1 pabaiga, o „DelayMsec“(B) - pagrindinis PWM. PWM_Res_PP0145 (TIMER_D) IV_16, 0) PWM. PWM_Res_PP23 (TIMER_DIV_16, 0) S. SER_Setup (SER_BUFFER_4, BAUD9600) // Nustatykite SCI ir leiskite buferizuoti 4 simbolius System. INTS_On () // ĮJUNGTI PERTRAUKAS! S. SER_Put_string („Tai testas“) S. SER_Put_char ('\ n') S. SER_Put_char ('\ r') while (FOREVER) IR1. ADC_Start (WAIT, ADC_MODE_8ONCE) // Skaitykite vertę iš priekinio aštraus jutiklio IR1. ADC_Read (PAD05, IR1Result) IR2. ADC_Start (WAIT, ADC_MODE_8ONCE) // Skaitykite vertę iš galinio aštraus jutiklio IR2. ADC_Read (PAD03, IR2Result) S. SER_Put_decimal (IR2Result, FILLUP_SPACE) // siųskite vertę terminalas S. SER_Put_char ('\ n') // padaryti naują eilutę hiperterminale S. SER_Put_char ('\ r'), jei ((IR1Result == 25) arba (IR1Result> 25)) stop () playsound () wait5 () WLED1. PIN_Out (PM2, ON) WLED2. PIN_Out (PM3, ON) grįžimas () wait5 () if ((IR2Result == 25) or (IR2Result> 25)) stop () playsound () wait5 () turnleft () wait3 () goahead () galas, jei posūkis () wait3 () else goahead () baigiasi, jei ((IR2Result == 25) arba (IR2Result> 25)) WLED1. PIN_Out (PM2, ON) WLED2. PIN_Out (PM3, ON) stop () wait5 () turnright () wait3 () WLED1. PIN_Out (PM2, OFF) WLED2. PIN_Out (PM3, OFF) goahead () wait3 () else goahead () end, if end endend m ain

11 veiksmas: sukompiliuokite ir įkelkite į savo robotą

Įsitikinkite, kad įdėjote baterijas į robotą ir įjungėte jį. Turėtumėte matyti, kad SSMI šviečia žalias maitinimo indikatorius. „Nanocore12DX“modulyje yra mažas jungiklis, įsitikinkite, kad jis yra apkrovos padėtyje. Paspauskite SSMI atstatymo jungiklį. Eikite į „nqbasic“ir pasirinkite „Sukurti ir įkelti“. Jis surenka jūsų kodą ir įkelia jį į jūsų robotą. Nuimkite nuoseklųjį kabelį nuo savo roboto ir perjunkite jungiklį iš apkrovos į veikimo padėtį NanoCore12DX modulyje. Padėkite robotą ant lygaus paviršiaus ir paspauskite SSMI atstatymo mygtuką. Sveikiname! Jei turite kokių nors problemų dėl šių veiksmų, nedvejodami rašykite nqBASIC forume. Aš būsiu ten ir atsakysiu į visus jūsų klausimus. Smagiai!

Rekomenduojamas: