Съдържание:

1KG Sumobot Build: 6 стъпки
1KG Sumobot Build: 6 стъпки

Видео: 1KG Sumobot Build: 6 стъпки

Видео: 1KG Sumobot Build: 6 стъпки
Видео: How to make Robot Sumo 2024, Юни
Anonim
1KG Sumobot Build
1KG Sumobot Build

Тази инструкция ще ви води през процеса на проектиране и изграждане на 1 килограмов сумобот.

Но първо малко предистория защо реших да напиша това. Тъкмо се канех да поправя стария си сумобот за състезание, когато разбрах, че никога не съм правил Инструктаж за това как да направя сумобот. Бях мълчалив в Instructables през последната година, затова реших, че ще се върна с този Instructable за това как да създам 1KG сумобот.

Първо, много от вас биха се чудили: какво е сумобот?

По принцип сумоботът е вид робот, използван в състезания по сумобот или робот-сумо. Както подсказва името, целта е да се изтласкаме един друг от ринга, подобно на борбата сумо. Самият сумобот е проектиран с единствената цел да изтласка друг сумобот от пръстена. Сумоботът в тази инструкция е 1 килограм. Има обаче и други класове на тегло като 500 грама и 3 килограма.

Необходими умения:

  • Запознаване с CAD (компютърно проектиран дизайн)
  • Запояване
  • Програмиране в Arduino

Не са необходими много умения за този проект. Просто да се чувствате удобно с CAD, запояването и програмирането вървят дълъг път. Не се плашете от това колко сложно звучи като компютърно проектиран дизайн. Autodesk предоставя безплатни изчерпателни уроци по собствен софтуер (аз лично използвам Fusion 360) и е изключително полезен за начинаещ, който изучава въжетата. За мен по -важното е желанието и готовността да се уча и разбира се да се забавлявам по пътя.

С това нека започнем.

P. S. Включвам се и в този Instructable в конкурса Make it Move. Ако намирате този Instructable за страхотен, моля, гласувайте и за мен. (Искам тениската; изглежда наистина страхотно:))

Стъпка 1: Списък на частите

Списък с части:

0,090”6061 алуминиев лист - 12” x 12”(или всеки 0,090” /2,2 мм алуминиев лист, който може да бъде CNC’d. Избрах 6061, тъй като това ще се използва за основното тяло, а 6061 има доста голяма здравина)

0,5 мм алуминиев лист - 12”x 12” (Всяка сплав би работила; това е само за горния капак и острието. Използвах резервни алуминиеви отпадъци)

5 мм алуминиев лист (отново всяка сплав би работила. Моите бяха 7075 алуминиеви отпадъци.)

2 x 12V DC мотор с голям въртящ момент (Всеки двигател с голям въртящ момент ще работи, като този от Amazon.)

2 x джанта (отново всяка джанта ще работи, в зависимост от вашия двигател. Ако имате 5 мм вал на двигателя, тези колела ще работят добре. Моите всъщност са някои стари силиконови колела, които имах)

4 IR сензора за разстояние (използвам IR сензори за разстояние IR, които могат да бъдат закупени от множество магазини, като този от Pololu и този от Sparkfun.)

2 инфрачервени сензора (отново имам някои от Sparkfun.)

1 Микроконтролерна платка (използвам ATX2 само защото се изисква. Редовният Arduino Uno всъщност би бил по -добър за лесната му употреба).

1 3S литиево -полимерна батерия (LiPo. 3S LiPos са 12 волта. Капацитет от 800 до 1400 mah ще работи.)

1 Драйвер на мотора (Отново, това зависи от това колко мощност може да издържи моторът ви. Това отива директно върху Arduino Uno и може да осигури до 5A ток.)

Проводници, кабели и съединители (За свързване на сензорите към платката и за свързване с лаптоп.)

M3 винтове и гайки

Епоксидна смола

Картон

Лаптоп (за програмиране на платката)

Инструменти като ножици, маша за тел и поялник.

Стъпка 2: Сглобяване на шасито

Сглобяване на шасито
Сглобяване на шасито
Сглобяване на шасито
Сглобяване на шасито
Сглобяване на шасито
Сглобяване на шасито
Сглобяване на шасито
Сглобяване на шасито

Използвах Fusion 360, 3D CAD/CAM софтуер, работещ в облак, за проектиране на шасито. Autodesk предоставя красиви уроци тук. Научих се най -вече като гледах видеоклиповете и след това се опитвах да ги направя сам. Няма да се опитвам да ви науча как да използвате Fusion 360; Ще оставя професионалистите да си свършат работата.

Самият дизайн се състои от една основна основа, едно острие, един горен капак, две скоби за мотор и две (или четири) 3D отпечатани скоби. Основната основа е 2,2 мм алуминий, скобите на двигателя са 5 мм алуминий, острието е 0,5 мм алуминий, докато горният капак може да бъде или 0,5 мм алуминий или обикновен картон. Използвах картон, защото алуминият тежи няколко грама повече и бях надхвърлил ограничението от 1 килограм с 10 грама. 3D отпечатаните скоби, от друга страна, са отпечатани с ABS, на 50% пълнеж.

Проектите, които изискват алуминий, се експортират във.dxf файлове и се изпращат до местна компания за лазерно рязане тук във Филипините. Междувременно 3D отпечатаните части бяха експортирани в STL и отново изпратени до местна компания за 3D печат.

Отказ от отговорност: Повторно използвах мой стар сумобот, който вече не работи, но използва този дизайн, така че някои от частите вече са сглобени на снимките. Аз обаче ще ви преведа през процеса на сглобяване на всички парчета заедно.

След като частите бъдат нарязани, можете да започнете с горния капак, скобата и острието или скобата на двигателя.

Горният капак в дизайна е изработен от алуминий, но поради ограничения в теглото използвах картон. Изрязах картон по същите спецификации като в дизайна.

3D отпечатаната скоба е закрепена отпред с помощта на винтове и се използва за буквално закрепване на острието. Острието е залепено за основата с помощта на епоксидна смола. Отворите за винтове в острието и основната основа се използват за насочване на позиционирането и се уверете, че са точно свързани помежду си. На основната основа има кръгли отвори, които можете да запълните с епоксидна смола, за да залепите острието към основната основа. Голямата повърхност на отворите позволява на епоксидната смола да захване по -добре острието и да предотврати откъсването му от основата. Инфрачервеният сензор може също да бъде залепен в долната част на острието с помощта на епоксидна смола, точно както на снимките. Уверете се, че долната част на сензора е перпендикулярна на пода.

За да монтирате двигателя към основата, първо завийте двигателя в скобата на двигателя. Първо обаче трябва да запоите проводници към двигателя, тъй като проводниците са в задната част на двигателя и би било трудно да ги достигнете, след като са прикрепени към основата. Двигателят се подравнява с конзолата на двигателя и се държи с винтове. Тоест, ако имате мотора, включих го в списъка с части. Ако не, можете да промените дизайна, за да отговаря на вашия двигател. В този момент можете също да прикрепите джантата на колелото към двигателя. След това скобата на двигателя се завинтва към задните отвори на основната основа.

Ако използвате драйвер за двигател, който не може да се движи отгоре на Arduino, или по някаква причина, че шофьорът на двигателя трябва да има своя собствена зона, има място между двигателите и острието за него. Това място е отредено за батерията lipo и драйвер на мотор, в случай че имате нужда от допълнително място. Тъй като ние също вече работим върху долната част на робота и ще бъде трудно да получите достъп до нея по -късно, след като горният капак е прикрепен, можете да поставите драйвера на двигателя между острието и двигателите, точно както на снимките. Двустранната лента може да ви помогне да я прикрепите към основата.

Стъпка 3: Електроника

Електроника
Електроника
Електроника
Електроника
Електроника
Електроника

Следват електрониката, като сензорите, драйверът на двигателя и платката.

Ако отново използвате драйвер за двигател, който не върви върху Arduino, започнете да свързвате проводниците, необходими за свързването му с микроконтролера. За моя шофьор на двигател всичко, от което се нуждая, е сигнал (син) и заземен (черен) проводник. Зависи от самия шофьор. Всичко, от което се нуждаят всички драйвери, е кабели за свързване към батерията или източника на захранване. Кабелите, прикрепени към моя XT-60 (същият щепсел на повечето липови батерии) бяха твърде дебели, така че трябваше да го подрежа, за да пасне на тесните съединителни блокове.

Моят микроконтролер също споделя същия източник на захранване като драйверите на двигателя, така че трябваше да запоя проводници директно към проводниците на конектора XT-60 на драйверите на двигателя.

Възможно е самите инфрачервени сензори за разстояние да имат запоени щифтове за заглавки върху тях, в зависимост от това какъв сензор получавате. Обикновено те включват някои в пакета, ако ги закупите, така че просто ги запоявайте, ако е необходимо.

Може също да се наложи да запоите проводници заедно, за да свържете микроконтролера към сензорите, точно като мен. Сензорът има собствен конектор; някои използват JST, докато някои използват заглавки за серво. С обикновен Arduino можете да залепите джъмперните кабели към Arduino и след това да запоявате другия край на кабела към кабела, излизащ от сензора. Процесът работи по същия начин с други микроконтролери. Проводниците, идващи от микроконтролера, са запоени към проводници, идващи от сензора.

Стъпка 4: Сглобяване на всички части

Сглобяване на всички части
Сглобяване на всички части
Сглобяване на всички части
Сглобяване на всички части
Сглобяване на всички части
Сглобяване на всички части
Сглобяване на всички части
Сглобяване на всички части

Сензорите и микроконтролерът отиват на горната плоча. Монтирах IR сензорите за разстояние върху куп картон, за да го издигна над микроконтролера, тъй като проводниците зад сензора се сблъскват с микроконтролера. Забележете как на снимката има само три сензора. Едва в последната минута реших да добавя четвърти сензор за разстояние в задната част на робота. За съжаление нямаше повече място, така че трябваше да го монтирам на самата основна основа, точно зад двигателите.

След това микроконтролерът е прикрепен към горната плоча. Нищо твърде трудно; Просто пробих няколко дупки в картона и завинтих цялата дъска върху горната плоча. Ако използвате алуминий, ръчната бормашина ще бъде задължителна.

След като всичко е фиксирано върху горната плоча, използвайте двустранна лента, за да я залепите към горната част на двигателите.

В този момент можете да започнете да свързвате цялата електроника заедно, като например свързване на сензорите и драйвера на двигателя към микроконтролера. Ако използвате драйвера на двигателя, който просто залепва върху горната част на Arduino, тогава няма проблем за вас. Ако не, тогава ще трябва да го свържете според спецификациите на водача към дъската, точно както направих аз.

След като всичко е свързано, поставете lipo в долното пространство между двигателите и острието, след което включете вашия микроконтролер и драйвери, за да го видите да светне за първи път.

Стъпка 5: Програмиране

След като всичко е сглобено, има едно последно нещо, което трябва да направите: да програмирате вашия робот.

Програмирането на вашия робот зависи от стратегията, която искате. Тук предполагам, че сте компетентни в програмирането, защото моят шофьор на мотор използва серийна (UART) комуникация и по този начин моята програма няма да работи за други драйвери на двигатели. В края на краищата няма един размер, който да пасва на всички в програмирането.

За да ви помогна, ето една основна блок -схема на моята програма.

ако има някой много близо отпред, вървете с пълна мощност, ако лявият или десният цветен сензор открие бяла линия, върнете се, след това се обърнете, ако сензорът за ляво или дясно разстояние открие нещо, завъртете в тази посока, заден сензор открива нещо, обърнете се към тази посока, ако някой е далеч отпред, продължете напред, продължете напред

Ето цялата програма, ако сте любопитни:

#включва

// A5 - ляв цветен сензор // A4 - десен цветен сензор // A6 - сензор за задно разстояние // A2 - ляв сензор за разстояние // A3 - десен датчик за разстояние // A1 - преден датчик за разстояние // двигател 1 - десен // двигател 2 - настройка на лявата празнота () {uart1_set_baud (9600); Serial1.write (64); Serial1.write (192); ДОБРЕ(); звуков сигнал (2); setTextColor (GLCD_BLUE); glcd (1, 0, "Инициализиран"); забавяне (4900); }

void loop () {

int frontDistanceValue = analogRead (A1); int leftDistanceValue = analogRead (A2); int rightDistanceValue = analogRead (A3); int rearDistanceValue = analogRead (A6); int leftColorValue = digitalRead (A5); int rightColorValue = digitalRead (A4); if (frontDistanceValue> 250) {// някой точно отпред, максимална мощност Serial1.write (127); Serial1.write (128); } else if (leftColorValue == 0) {// докосна ръба // обърнете Serial1.write (1); Serial1.write (255); забавяне (400); Serial1.write (1); Serial1.write (128); забавяне (300); } else if (rightColorValue == 0) {// докосна ръба // обърнете Serial1.write (1); Serial1.write (255); забавяне (400); Serial1.write (127); Serial1.write (255); забавяне (300); } else if (frontDistanceValue> 230) {// доста далеч отпред Serial1.write (127); Serial1.write (128); } else if (leftDistanceValue> 250) {// завийте наляво Serial1.write (127); Serial1.write (255); забавяне (450); } else if (rightDistanceValue> 250) {// завийте надясно Serial1.write (1); Serial1.write (128); забавяне (450); } else if (rearDistanceValue> 150) {// близо до гърба Serial1.write (1); Serial1.write (128); забавяне (1050); } else if (frontDistanceValue> 180) {// далеч отпред Serial1.write (127); Serial1.write (128); } else {Serial1.write (100); Serial1.write (155); }}

Стъпка 6: Снимки

Снимки
Снимки
Снимки
Снимки
Снимки
Снимки
Снимки
Снимки

Показани са някои снимки на готовия сумобот.

Надяваме се, че сте научили нещо от тази инструкция. Ако това ръководство ви харесва, моля, гласувайте за мен в конкурса Make it Move. Ако не, ще се радвам да поправя всичко, което може да подобри това ръководство.

Приятно учене!

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