Съдържание:

Как да направите готин робот от RC кола: 11 стъпки
Как да направите готин робот от RC кола: 11 стъпки

Видео: Как да направите готин робот от RC кола: 11 стъпки

Видео: Как да направите готин робот от RC кола: 11 стъпки
Видео: 11 BEST Mortons Neuroma Massage, Exercise & Stretch Treatments [WOW!] 2024, Ноември
Anonim
Как да си направим готин робот от RC кола
Как да си направим готин робот от RC кола

Този готин проект е за ученици от гимназията или за всеки любител, който иска да направи готин робот. Опитвах се да направя интерактивен робот дълго време, но създаването на такъв не е лесно, ако не знаете електроника или специални езици за програмиране. Сега има език за програмиране, наречен nqBASIC, който е напълно безплатен, за да направите свой собствен робот.

Стъпка 1: Какво ви трябва?

От какво имаш нужда?
От какво имаш нужда?
От какво имаш нужда?
От какво имаш нужда?
От какво имаш нужда?
От какво имаш нужда?
От какво имаш нужда?
От какво имаш нужда?

Ще ви трябват някои части за този готин проект. 1) Отидете и намерете RC кола, която има два DC мотора в нея. Намерих много евтина кола, наречена thunder tumbler за $ 12. Снимката е по -долу. 2) Ще ви е необходима контролерна карта със сензор за серво, наречена SSMI. Ето връзката, за да получите ittp: //www.technologicalarts.ca/catalog/product_info.php? Currency = USD & products_id = 2763) Ще ви е необходим микроконтролер за тази платка, наречен NanoCore12DXhttps://www.technologicalarts.ca/catalog/ product_info.php? cPath = 50_36_92 & products_id = 4294) Имате нужда от два сензора, ако искате да направите робота си интерактивенhttps://www.technologicalarts.ca/catalog/product_info.php? cPath = 25_147 & products_id = 1885) Сериен кабел за свързване на компютъра към вашият робот да програмира. https://www.technologicalarts.ca/catalog/product_info.php? cPath = 26 & products_id = 386) Готин език за роботи, разработен за този продукт, се нарича nqBASIC. Отидете на https://www.nqbasic.com и изтеглете безплатно. Можете също да задавате въпроси от техния форум. 7) 4 батерии тип АА (алкални или акумулаторни)

Стъпка 2: Разделете RC Car отделно

Вземете RC Car Apart
Вземете RC Car Apart

1) Извадих цялата електроника. Изрежете кабелите от контролера вътре в RC автомобила, оставяйки само батерията, защото беше подходящо да захранвате SSMI (Servo/Sensor/Motor Interface Board за NanoCore12DX).

Стъпка 3: Прикрепени DC кабели и кабели за батерии

Прикрепени кабели за постоянен ток и кабели за батерии
Прикрепени кабели за постоянен ток и кабели за батерии

Двата DC двигателя на R/C автомобила вече имаха кабели, така че ги прикрепих към щепселните конектори (идва с SSMI платка) на моя SSMI. Същото направих и с кабела на акумулатора.

Стъпка 4: LED кабели

LED кабели
LED кабели
LED кабели
LED кабели
LED кабели
LED кабели
LED кабели
LED кабели

Остават 4 кабела. Те са тънки. Това са кабелите, които идват от колелата. Този RC автомобил има светодиоди в задните колела. Два кабела идват от всяко колело. Вашият робот може да бъде красив с тези светодиоди. Реших да използвам тези светодиоди, за да направя робота по -забавен. Можете да видите тези кабели от снимката. Монтирах черно парче пластмаса, което идваше от задната част на колата върху предната част на колата, за да направя хубава равна повърхност за монтиране на SSMI платка. Използвах velcros за монтиране на SSMI върху него. Можете да използвате двустранна лента и някои обвивки за вратовръзка, ако желаете. След това поставих LED кабелите през отвори в предната част на колата. Монтирах SSMI на колата.

Стъпка 5: Свържете LED кабели към SSMI платката

Свържете LED кабели към SSMI платката
Свържете LED кабели към SSMI платката
Свържете LED кабели към SSMI платката
Свържете LED кабели към SSMI платката
Свържете LED кабели към SSMI платката
Свържете LED кабели към SSMI платката

След това включете LED кабелите на правилните места. Трябва да научите от ръководството на SSMI платката кои конектори можете да използвате. Продължете и ги включете на същите места, където и аз. По -късно можете да се научите да поставяте тези кабели на различни места, ако искате. Вижте снимки

Стъпка 6: Свържете сензорите

Свържете сензорите
Свържете сензорите
Свържете сензорите
Свържете сензорите
Свържете сензорите
Свържете сензорите
Свържете сензорите
Свържете сензорите

Свържете кабелите на сензора на правилните места.

Стъпка 7: Вашият робот е готов да се търкаля

Вашият робот е готов да се търкаля
Вашият робот е готов да се търкаля

Хардуерът на вашия робот е готов. Сега трябва да го програмирате.

Стъпка 8: Инсталирайте софтуера

Инсталирайте Софтуера
Инсталирайте Софтуера

Отидете на https://www.nqbasic.com и изтеглете софтуера от уебсайта. Всички инструкции са на уебсайта- как да инсталирате и да подготвите компютъра си за това. Има и страхотно видео в YouTube, което показва как да регистрирате софтуера безплатно. Този език за програмиране е напълно безплатен. Не се колебайте да се регистрирате. В противен случай не можете да компилирате кода си.

Стъпка 9: Готови за програмиране

Готов за програмиране
Готов за програмиране

Свържете серийния си кабел от серийния порт на вашия компютър към SSMI серийния порт. 1) Стартирайте nqBASIC и изберете проект и нов проект 2) дайте име на вашия проект и го запазете. 3) Ще ви попита кой модул nanocore използвате, изберете NanoCore12DX от списъка. Това е единственият модул, който работи с SSMI.4) Изберете Файл/Нов файл. Той ще ви попита дали искате да добавите този файл към вашия проект. Кажете Да. 5) Дайте име на файла и щракнете върху Запазване.

Стъпка 10: Копирайте и поставете изходния код

/* Копирайте от тук до края на този текст Пример за DIP32 (8mHz)*/dim M00 като нов pwm (PP0) dim M01 като нов pwm (PP1) dim M11 като нов pwm (PP2) dim M10 като нов pwm (PP3) dim IR1 като нов ADC (PAD05) // ADC обект за Sharp сензор (отпред) dim IR1Result като нов bytedim IR2 като нов ADC (PAD03) // ADC обект за Sharp Sensor (Back) dim IR2Result като нов bytedim myChar като нов байт / /Променлива за съхраняване на получените символи dim S като нов SCI (PS0, PS1) // SCI objectdim SPK като нов DIO (PM4) // Използване на високоговорителя на SSIMconst ontime = 20dim продължителност като нова дума Const A2 = 2273 // Музикални бележки Const A3 = 1136 // Музикални бележкиConst A4 = 568 // Музикални ноти за издаване на звук, когато роботът види нещо dim WLED1 като нов DIO (PM2) // Светодиоди на колелата dim WLED2 като нов DIO (PM3) // Светодиоди на колелото dimim контур като нов байтConst OFF = 0Const ON = 1Const ЗАВИНАГИ = 1Const A = 200Const B = 10Const DEL_1MSEC = 1000sub DelayMsec (в байт милисекунди) докато (милисекунди> 0) System. Delay (DEL_1MSEC) // Забавяне 1000 микросекунди, за да се направи 1 милисекунда милисек onds = милисекунди - 1 край whileend subsub stop () // за да спре двигателите M00. PWM_Start (PWM_MAIN_CLK, 0, 250, 250) M01. PWM_Start (PWM_MAIN_CLK, 0, 250, 250) M10. PWM_Start (PWM_MAC, 250) M11. PWM_Start (PWM_MAIN_CLK, 0, 250, 250) end subsub goback () // роботът ще се върне M00. PWM_Start (PWM_MAIN_CLK, 0, 250, 180) M01. PWM_Start (PWM_MAIN_CLK, 0, 250, 250, 250, 250) M10. PWM_Start (PWM_MAIN_CLK, 0, 250, 180) M11. PWM_Start (PWM_MAIN_CLK, 0, 250, 250) край на подподсувката rightright () // завъртете робота надясно M00. PWM_Start (PWM_MAIN_CLK, 0, 250,. 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) край на подсуббота завой наляво () // завъртете робота наляво M 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 (PCMM) () // направете робота напред 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, 180) // десен dcend подподреждане wait3 () // моите собствени закъснения DelayMsec (A) DelayMsec (A)) DelayMsec (A) end subub wait4 () DelayMsec (A) DelayMsec (A) DelayMsec (A) DelayMsec (A) end subub wait5 () DelayMsec (A) DelayMsec (A) DelayMsec (A) DelayMsec (A) DelayMsec (A)) end subsub wait10 () // дълъг цикъл на закъснение = 1 while (цикъл <11) DelayMsec (A) цикъл = цикъл + 1 край whileend subsub playsound () // за възпроизвеждане на продължителността на нотите = време на време докато (продължителност> 0) SPK. PIN_Out (PM4, ON) система. Забавяне (A2) SPK. PIN_Out (PM4, Off) система. Продължителност на закъснение (A2) = продължителност - 1 край докато DelayMsec (B) продължителност = време на време докато (продължителност> 0) SPK. PIN_Out (PM4, ON) система. Забавяне (A3) SPK. PIN_Out (PM4, Изключено) система. Забавяне (A3) продължителност = продължителност - 1 край, докато DelayMsec (B) продължителност = време на време докато (продължителност> 0) SPK. PIN_Out (PM4, ON) система. Забавяне (A4) SPK. PIN_Out (PM4, Изключено) система. Продължителност на закъснение (A4) = продължителност - 1 край, докато DelayMsec (B) край под основната PWM. PWM_Res_PP0145 (TIMER_D IV_16, 0) PWM. PWM_Res_PP23 (TIMER_DIV_16, 0) S. SER_Setup (SER_BUFFER_4, BAUD9600) // Настройка на SCI и позволяване на буфериране на 4 знака System. INTS_On () // Включете прекъсванията! S. SER_Put_string ("Това е тест") S. SER_Put_char ('\ n') S. SER_Put_char ('\ r') докато (FOREVER) IR1. ADC_Start (WAIT, ADC_MODE_8ONCE) // Прочетете стойността от предния остър сензор IR1. ADC_Read (PAD05, IR1Result) IR2. ADC_Start (WAIT, ADC_MODE_8ONCE) // Прочетете стойността от задния остър сензор IR2. ADC_Read (PAD03, IR2Result) S. SER_Put_decimal (IR2Result, FILLUP_SPACE) // изпратете прозорците на хипер терминал S. SER_Put_char ('\ n') // направете нов ред на хипертерминала S. SER_Put_char ('\ r') ако ((IR1Result == 25) или (IR1Result> 25)) stop () playound () wait5 () WLED1. PIN_Out (PM2, ON) WLED2. PIN_Out (PM3, ON) goback () wait5 () if ((IR2Result == 25) или (IR2Result> 25)) stop () playound () wait5 () turnleft () wait3 () goahead () край, ако turnright () wait3 () иначе goahead () край, ако if ((IR2Result == 25) или (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)) ain

Стъпка 11: Компилирайте и заредете във вашия робот

Уверете се, че сте поставили батерии в робота си и го включете. Трябва да видите зеления светодиод за захранване да свети на SSMI. На модула Nanocore12DX има малък превключвател, уверете се, че е в позиция на зареждане. Натиснете ключа за нулиране на SSMI. Отидете на nqbasic и изберете Build and load. Той ще компилира вашия код и ще го зареди във вашия робот. Извадете серийния кабел от робота си и променете превключвателя от позиция на зареждане в позиция за работа на модула NanoCore12DX. Поставете робота си върху равна повърхност и натиснете бутона за нулиране на SSMI. Поздравления! Ако имате някакви проблеми с тези стъпки, моля не се колебайте да пишете във форума nqBASIC. Ще бъда там и ще отговоря на всички ваши въпроси. Забавлявайте се!

Препоръчано: