Cuprins:

Cum să faci un robot cool dintr-o mașină RC: 11 pași
Cum să faci un robot cool dintr-o mașină RC: 11 pași

Video: Cum să faci un robot cool dintr-o mașină RC: 11 pași

Video: Cum să faci un robot cool dintr-o mașină RC: 11 pași
Video: Ce înseamna semnul tau din nastere 2024, Decembrie
Anonim
Cum să faci un robot cool dintr-o mașină RC
Cum să faci un robot cool dintr-o mașină RC

Acest proiect interesant este destinat studenților de liceu sau oricărui hobby care dorește să facă un robot grozav. Încercam să fac un robot interactiv mult timp, dar să creez unul nu este ușor dacă nu cunoașteți electronice sau limbaje de programare speciale. Acum există un limbaj de programare numit nqBASIC, care este complet gratuit, pentru a-ți crea propriul robot.

Pasul 1: De ce aveți nevoie?

De ce ai nevoie?
De ce ai nevoie?
De ce ai nevoie?
De ce ai nevoie?
De ce ai nevoie?
De ce ai nevoie?
De ce ai nevoie?
De ce ai nevoie?

Veți avea nevoie de câteva piese pentru acest proiect grozav. 1) Du-te și găsește o mașină RC care are două motor DC în ea. Am găsit o mașină foarte ieftină numită tumblă Thunder pentru 12 USD. Imaginea este mai jos. 2) Veți avea nevoie de un card controler de senzor servo numit SSMI. Iată linkul pentru a obține ithttps://www.technologicalarts.ca/catalog/product_info.php? Currency = USD & products_id = 2763) Veți avea nevoie de un microcontroler pentru această placă numit NanoCore12DX https://www.technologicalarts.ca/catalog/ product_info.php? cPath = 50_36_92 & products_id = 4294) Aveți nevoie de doi senzori dacă doriți ca robotul dvs. să fie interactiv https://www.technologicalarts.ca/catalog/product_info.php? cPath = 25_147 & products_id = 1885) Cablu serial pentru a vă conecta computerul la robotul dvs. să programeze.https://www.technologicalarts.ca/catalog/product_info.php? cPath = 26 & products_id = 386) Un limbaj cool al robotului dezvoltat pentru acest produs se numește nqBASIC. Accesați https://www.nqbasic.com și descărcați gratuit. De asemenea, puteți pune întrebări de pe forumul lor. 7) 4 baterii AA (alcaline sau reîncărcabile)

Pasul 2: îndepărtați mașina RC

Îndepărtați RC Car
Îndepărtați RC Car

1) Am scos toate componentele electronice. Tăiați cablurile de la unitatea de control din interiorul mașinii RC, lăsând doar bateria, deoarece a fost corect să alimentați SSMI (Servo / Senzor / Placă de interfață motor pentru NanoCore12DX).

Pasul 3: Cabluri DC atașate și cabluri pentru baterii

Cabluri DC atașate și cabluri pentru baterii
Cabluri DC atașate și cabluri pentru baterii

Cele două motoare de curent continuu ale mașinii R / C aveau deja cabluri, așa că le-am atașat la conectorii conectabili (vine cu placa SSMI) de pe SSMI. La fel am făcut și cu cablul bateriei.

Pasul 4: Cabluri LED

Cabluri LED
Cabluri LED
Cabluri LED
Cabluri LED
Cabluri LED
Cabluri LED
Cabluri LED
Cabluri LED

Au mai rămas 4 cabluri. Sunt subțiri. Acestea sunt cablurile care provin de la roți. Această mașină RC are LED-uri în interiorul roților din spate. Din fiecare roată vin două cabluri. Robotul dvs. poate fi drăguț cu aceste LED-uri. Am decis să folosesc aceste LED-uri pentru a face robotul mai distractiv. Puteți vedea aceste cabluri din imagine. Am montat o bucată neagră de plastic care a venit din spatele mașinii pe partea din față a mașinii pentru a face o suprafață plăcută plăcută pentru a monta placa SSMI. Am folosit velcros pentru a monta SSMI pe el. Dacă doriți, puteți folosi bandă dublă față și niște cravate. Apoi am introdus cablurile LED prin găurile din partea din față a mașinii. Am montat SSMI pe mașină, apoi am conectat motoarele de curent continuu și mufele bateriei la locațiile lor.

Pasul 5: Conectați cablurile LED la placa SSMI

Conectați cablurile LED la placa SSMI
Conectați cablurile LED la placa SSMI
Conectați cablurile LED la placa SSMI
Conectați cablurile LED la placa SSMI
Conectați cablurile LED la placa SSMI
Conectați cablurile LED la placa SSMI

Apoi conectați cablurile LED în locurile potrivite. Trebuie să aflați din manualul plăcii SSMI ce conectori puteți utiliza. Continuați și conectați-le în aceleași locuri pe care le-am făcut și eu. Mai târziu, puteți învăța să puneți aceste cabluri în diferite locuri, dacă doriți. Vedeți imagini

Pasul 6: Conectați senzorii

Conectați senzorii
Conectați senzorii
Conectați senzorii
Conectați senzorii
Conectați senzorii
Conectați senzorii
Conectați senzorii
Conectați senzorii

Conectați cablurile senzorului în locurile potrivite.

Pasul 7: robotul dvs. este gata să ruleze

Robotul dvs. este gata să ruleze
Robotul dvs. este gata să ruleze

Hardware-ul robotului dvs. este gata. Acum trebuie să-l programați.

Pasul 8: Instalați software-ul

Instalați software-ul
Instalați software-ul

Accesați https://www.nqbasic.com și descărcați software-ul de pe site. Toate instrucțiunile sunt pe site - cum să instalați și să vă pregătiți computerul. Există, de asemenea, un videoclip interesant pe YouTube care arată cum să înregistrați software-ul gratuit. Acest limbaj de programare este complet gratuit. Nu ezitați să vă înregistrați. În caz contrar, nu vă puteți compila codul.

Pasul 9: Gata de programare

Gata de programare
Gata de programare

Conectați cablul serial de la portul serial al computerului la portul serial SSMI.1) Lansați nqBASIC și selectați proiectul și proiectul nou2) dați un nume proiectului dvs. și salvați-l. din listă. Acesta este singurul modul care funcționează cu SSMI. 4) Selectați fișier / fișier nou. Vă va întreba dacă doriți să adăugați acest fișier la proiectul dvs. Spuneți Da. 5) Dați un nume pentru fișier și faceți clic pe Salvare.

Pasul 10: Copiați și lipiți codul sursă

/ * Copiați de aici până la sfârșitul acestui text Exemplu pentru DIP32 (8mHz) * / dim M00 ca nou pwm (PP0) dim M01 ca nou pwm (PP1) dim M11 ca nou pwm (PP2) dim M10 ca nou pwm (PP3) dim IR1 ca ADC nou (PAD05) // Obiect ADC pentru senzor Sharp (față) dim IR1 Rezultă ca nou bytedim IR2 ca nou ADC (PAD03) // Obiect ADC pentru senzor Sharp (Înapoi) dim IR2 Rezultă ca nou bytedim myChar ca nou octet / / Variabil pentru stocarea caracterelor primite dim S ca nou SCI (PS0, PS1) // SCI objectdim SPK ca nou DIO (PM4) // Utilizarea difuzorului pe SSIMconst ontime = 20dim durata ca cuvânt nou Const A2 = 2273 // Note muzicale Const A3 = 1136 // Note muzicale Const A4 = 568 // Note muzicale pentru a face sunet când robotul vede ceva dim WLED1 ca nou DIO (PM2) // LED-uri pe roți dim WLED2 ca nou DIO (PM3) // LED-uri pe roată buclă dim ca octet nou Const OFF = 0Const ON = 1Const FOREVER = 1Const A = 200Const B = 10Const DEL_1MSEC = 1000sub DelayMsec (în octet milisecunde) în timp ce (milisecunde> 0) System. Delay (DEL_1MSEC) // Întârziere 1000 microsecunde pentru a face 1 milisecundă milisecundă onds = milisecunde - 1 capăt în timp ce opriți subsub stop () // pentru a opri motoarele 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_CLK, 0, 250, 250) end subsub goback () // robotul va reveni 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) end subsub turnright () // rotiți robotul spre dreapta 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) end subsub turnleft () // rotiți robotul la stânga 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_CLK), 0, () // avansați robotul M00. PWM_Start (PWM_MAIN_CLK, 0, 250, 250) M01. PWM_Start (PWM_MAIN_CLK, 0, 250, 180) // left dc M10. PWM_Start (PWM_MAIN_CLK, 0, 250, 250) M11. PWM_Start (PWM_MAIN_CLK, 0, 250, 180) // right dcend subsub wait3 () // propriile mele întârzieri DelayMsec (A) DelayMsec (A) DelayMsec (A) end subsub wait4 () DelayMsec (A) DelayMsec (A) DelayMsec (A) DelayMsec (A) end subsub wait5 () DelayMsec (A) DelayMsec (A) DelayMsec (A) DelayMsec (A) DelayMsec (A)) end subsub wait10 () // long delay loop = 1 while (loop <11) DelayMsec (A) loop = loop + 1 end whileend subsub playsound () // to play the notes duration = ontime while (duration> 0) SPK Sistem. PIN_Out (PM4, ON) System. Delay (A2) SPK. PIN_Out (PM4, Off) system. Delay (A2) duration = duration - 1 end while DelayMsec (B) duration = ontime while (duration> 0) SPK. PIN_Out (PM4, ON) system. Delay (A3) SPK. PIN_Out (PM4, Off) system. Delay (A3) duration = duration - 1 end while DelayMsec (B) duration = ontime while (duration> 0) SPK. PIN_Out (PM4, ON) system. Delay (A4) SPK. PIN_Out (PM4, Off) system. Delay (A4) duration = duration - 1 end while DelayMsec (B) end sub main PWM. PWM_Res_PP0145 (TIMER_D IV_16, 0) PWM. PWM_Res_PP23 (TIMER_DIV_16, 0) S. SER_Setup (SER_BUFFER_4, BAUD9600) // Configurați SCI și permiteți 4 caractere să fie tamponate System. INTS_On () // PORNIȚI INTERRUPȚIILE! S. SER_Put_string ("Acesta este un test") S. SER_Put_char ('\ n') S. SER_Put_char ('\ r') în timp ce (FOREVER) IR1. ADC_Start (WAIT, ADC_MODE_8ONCE) // Citiți valoarea din senzorul frontal clar IR1. ADC_Read (PAD05, IR1Result) IR2. ADC_Start (WAIT, ADC_MODE_8ONCE) // Citiți valoarea din senzorul ascuțit din spate IR2. ADC_Read (PAD03, IR2Result) S. SER_Put_decimal (IR2Result, FILLUP_SPACE) // trimiteți valoarea la Windows terminal S. SER_Put_char ('\ n') // faceți o nouă linie pe terminalul S. SER_Put_char hiper ('\ r') dacă ((IR1Result == 25) sau (IR1Result> 25)) stop () playsound () wait5 () WLED1. PIN_Out (PM2, ON) WLED2. PIN_Out (PM3, ON) goback () wait5 () if ((IR2Result == 25) or (IR2Result> 25)) stop () playsound () wait5 () turnleft () wait3 () goahead () end if turnright () wait3 () else goahead () end if if ((IR2Result == 25) or (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 whileend m nu este

Pasul 11: Compilați și încărcați în robotul dvs

Asigurați-vă că ați introdus bateriile în robot și îl porniți. Ar trebui să vedeți LED-ul verde de putere aprins pe SSMI. Pe modulul Nanocore12DX există un mic comutator, asigurați-vă că este în poziția de încărcare. Apăsați comutatorul de resetare pe SSMI. Accesați nqbasic și selectați Build and load. Acesta vă va compila codul și îl va încărca în robotul dvs. Scoateți cablul serial de pe robot și schimbați comutatorul de la sarcină la poziția de rulare pe modulul NanoCore12DX. Puneți robotul pe o suprafață plană și apăsați butonul de resetare pe SSMI. Felicitări! Dacă aveți probleme cu acești pași, nu ezitați să scrieți pe forumul nqBASIC. Voi fi acolo și vă voi răspunde la toate întrebările. Distrați-vă!

Recomandat: