Мазмуну:
- 1 -кадам: Компоненттер
- 2 -кадам: Ар бир компонент үчүн колдонулат
- 3 -кадам: Дизайн
- 4 -кадам: Стратегияны ойнотуу
- 5 -кадам: Программалоо
Video: Arduino Sumo роботу: 5 кадам
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:41
Биз баштаардан мурун
Сумо робот деген эмне?
Бул белгилүү бир өлчөмдөргө жана өзгөчөлүктөргө ээ болгон өзүн өзү башкара турган роботтор, ал башка роботтор менен конкурстарга жана конкурстарга катышууга жарамдуу болгон душман формаларында иштелип чыккан.
"Сумо" аты эски япон спорттон келип чыккан, бул эки атаандаш рингде кармашат, алардын ар бири башка каршылашын түртүп салууга аракет кылышат, жана роботтор сумо боюнча мелдештерде да ушундай кылышы керек. рингге жайгаштырылган роботтор жана бири -бирин атаандашын сүрүп чыгарууга аракет кылуу.
Ой:
Белгилүү бир спецификациясы бар жана ошол мелдештин мыйзамдарына шайкеш келген роботту куруңуз (Сумо), бул робот эч кандай жол менен чуркап кетпеш үчүн күрөшүү жана аман калуу үчүн так өлчөмдө болушу керек.
Келгиле, Sumo роботторунун атаандаштык мыйзамдарын карап көрөлү:
Мен өзүмдүн СУМОмду түзүүдө эске алуусу керек болгон кээ бир маанилүү ролдорду түшүндүрүп берем, ал дагы тереңирээк маалымат бербестен, өз идеяңды элестетүүгө жана жаңыртууга жардам берет.
1. Өлчөмдөрү: Максималдуу Туурасы 20 см, Максималдуу Узундугу 20 см, Бийиктиги көрсөтүлгөн эмес.
2. Форма: роботтун формасы жарышты баштагандан кийин өзгөрүлмө болушу мүмкүн, бирок ажырагыс бөлүктөрү жок бир борбордук объект болуп кала берет.
3. Салмагы: 3 кг ашпайт.
4. Робот өзүн өзү башкара билиши керек.
1 -кадам: Компоненттер
1 Arduino Ano3
2 DC мотору
1 L298N Dual H көпүрөсү Arduino үчүн
1 УЗИ сенсор
2 IR TCRT5000
1 Батарея 9v
AA батарейкасы 4 * 1,5 в даана + Батарея үйү
4 робот дөңгөлөгү
секирүүчү зымдар
2 -кадам: Ар бир компонент үчүн колдонулат
Эми бизде керектүү компоненттер бар, андыктан эмне үчүн колдонулганын билүү үчүн майда -чүйдөсүнө чейин карап көрөлү.
1- Arduino Ano3
Бул бардык бөлүктөрдү көзөмөлдөгөн жана аны бириктирген башкы такта
2- DC мотору
Кайсы робот маневр жасоого жана КОНКПЕТТИН алкагынын ичинде жылууга жардам берет
4- L298N Dual H Arduino үчүн көпүрө
Бул кыймылдаткычтарга туруктуу чыңалууну, ошондой эле кыймылды жана чыңалууну жакшы көзөмөлдөөчү Arduino табакчасынын колдоосун камсыз кылган кичинекей панель.
5- УЗИ сенсор
УЗИ сенсору атаандаштын роботун табуу үчүн колдонулат жана көбүнчө роботтун үстүнө коюлат.
6- IR TCRT5000
Жогоруда айткандай, белгилүү бир өлчөмдө иштелип чыккан жана эки түстүү, толтуруу кара жана алкагы ак түстө. Конкурсант сыртка чыкпашы керек. Ошондуктан, биз робот рингден чыкпай турганына ынануу үчүн IR сенсорун колдонобуз. Бул сенсор шакектин түстөрүн айырмалоо мүмкүнчүлүгүнө ээ).
7- Батарея 9v
Бул маанилүү чыңалуу менен башкы тактаны (Arduino) колдойт.
8- АА батарейкасы 4 * 1,5 в даана + Батарея үйү
Бул эки кыймылдаткычты (DC мотору) маанилүү чыңалуу менен колдойт жана дөңгөлөктөргө толук күч берүү үчүн бөлүнүшү керек.
9- Өтмө зымдар
3 -кадам: Дизайн
Мен Google 3D эскизин колдонуу менен эки сумо роботунун дизайнын жасадым, анткени лазердик кескичке акрилден бөлүктөрдү кескенге чейин роботторумдун кагаз моделдерин түзүүнү жакшы көрөм. Бардык бөлүктөр бири -бирине туура келерин текшерүү үчүн, кагаз моделдердин чиймелердин так өлчөмүндө басылышы маанилүү.
Мен атаандаштык мыйзамдары менен конкреттүү өлчөөнү эске алам, андыктан дагы креативдүү дизайнда ойлонуп, өзүңдүн моделиңди жаса.
Роботтун салмагына көбүрөөк сезимтал болуу үчүн, батарейкаларды роботтун алдына 45 градус бурчта, роботтун алдына коюңуз.
Дизайн 1ди бул жерден жүктөп алыңыз
Дизайн 2ди бул жерден жүктөп алыңыз
Сиз ошондой эле Кагаздын моделин түшүрүп алсаңыз болот
PDF файлын Adobe Acrobat Reader менен ачыңыз (сунушталган программа)
4 -кадам: Стратегияны ойнотуу
Мурда биз айткандай, роботтун өзүн өзү башкара билүү жөндөмү болушу керек, андыктан бизге аны бир нече жол менен программалоо мүмкүнчүлүгүн берет. чыныгы утушту каалайм.
Play стратегиясы (1):
· Биз роботту айланасында тынымсыз жасайбыз.
· Робот айлануу учурунда дайыма аралыкты тынымсыз өлчөп турат.
· Эгерде өлчөнүүчү атаандаштын аралыгы (мисалы 10смден) төмөн болсо, бул атаандашыбыз роботтун алдында турат дегенди билдирет.
· Робот айланууну токтотуп, анан чабуулду башташы керек (тездик менен толук күч менен алдыга жылуу).
· Робот биз IR чеккичтеринин көрсөткүчтөрүн алышы керек, анткени биз рингдин чегинен өткөн жокпуз.
· Эгерде IR түсү ак түстө болсо, анда ал роботту түз эле сенсордун карама -каршы жагына жылдырышы керек (мисалы: эгер роботтун ак түсүн көрсөткөн алдыңкы сенсор артка жылса)!
Play стратегиясы (2):
· Старт роботу алдыдагы аралыкты өлчөйт.
· Робот ошол эле ченелген аралыкты артка жылдырат.
· Робот айланууну токтотуп, анан күтүүсүздөн чабуулду баштайт (толук күч менен алдыга жылуу).
· Каршылаш тиркелген учурда робот 45 градуска айланышы керек, ал эми рингден кулап кетсе аман калуу үчүн.
· Робот биз IRдин сенсорлорунун көрсөткүчтөрүн алышы керек, анткени биз рингдин чегинен өткөн жокпуз.
· Эгерде IR түсү ак түстө болсо, анда ал роботту түздөн -түз сенсордун карама -каршы жагына жылдырышы керек (мисалы: Эгерде роботтун ак түсүн көрсөткөн алдыңкы сенсор артка жылса)!
5 -кадам: Программалоо
сураныч, схеманы жана кодду текшериңиз
* Жаңыртуу 2019-03-26
Бул жерден Ultrasonic китепканасын жүктөп алып, аны орнотуңуз:
github.com/ErickSimoes/Ultrasonic/blob/mas…
/*
тарабынан Ахмед Азуз
www.instructables.com/id/How-to-Make-Ardu…
Биринчи бул жерден lib жүктөп алыңыз
github.com/ErickSimoes/Ultrasonic/blob/ma…
*/
#Ultrasonic.h кошуу
УЗИ УЗИ (4, 3);
const int IN1 = 5;
const int IN2 = 6; const int IN3 = 9; const int IN4 = 10; #аныктоо IR_sensor_front A0 // алдыңкы сенсор #IR_sensor_back A1 аныктоо // арткы сенсон int расстояние;
жараксыз орнотуу ()
{Serial.begin (9600); кечигүү (5000); // сумонун шайкештик ролдору боюнча} void loop () {int IR_front = analogRead (IR_sensor_front); int IR_back = analogRead (IR_sensor_back); аралык = ultrasonic.read (); КАЙРА (200); // баштоо rotete if (алыстык <20) {Stop (); while (аралык 650 || IR_back> 650) {тыныгуу;} кечигүү (10); } эгер (IR_front <650) // <650 ак сызыкты билдирет {Stop (); кечиктирүү (50); Артка (255); кечигүү (500); } if (IR_back <650) // {Stop (); кечиктирүү (50); АЛГА (255); кечигүү (500); } /* ----------- мүчүлүштүктөрдү оңдоо ---------------- Serial.print (УЗИ. Ренинг (CM)); Serial.println ("cm"); Serial.println ("IR front:"); Serial.println (IR_front); Serial.println ("IR кайра:"); Serial.println (IR_back); */
} //--------------------------------------------
void FORWARD (int Speed) {// Мотордун алдыга жылышына жол бергибиз келгенде, // бул бөлүктү цикл бөлүмүндө жокко чыгарыңыз. analogWrite (IN1, Ылдамдык); analogWrite (IN2, 0); analogWrite (IN3, 0); analogWrite (IN4, Ылдамдык); } // -------------------------------------------- жараксыз АРТКА (int Speed) {// Мотордун алдыга жылышына жол бергибиз келгенде, // бул бөлүктү цикл бөлүмүндө жокко чыгарыңыз. analogWrite (IN1, 0); analogWrite (IN2, Ылдамдык); analogWrite (IN3, Ылдамдык); analogWrite (IN4, 0); } // -------------------------------------------- жараксыз РОТАЦИЯ (int Speed) {// Мотордун айлануусуна уруксат бергибиз келгенде, // бул бөлүктү цикл бөлүмүндө жокко чыгарыңыз. analogWrite (IN1, Ылдамдык); analogWrite (IN2, 0); analogWrite (IN3, Ылдамдык); analogWrite (IN4, 0); } // -------------------------------------------- void Stop () {// Моторду токтоткубуз келгенде, // бул бөлүктү цикл бөлүмүндө жокко чыгарыңыз. analogWrite (IN1, 0); analogWrite (IN2, 0); analogWrite (IN3, 0); analogWrite (IN4, 0); }
Сунушталууда:
Arduino Powered Painting роботу: 11 кадам (Сүрөттөр менен)
Arduino Powered Painting Robot: Сиз качандыр бир кезде робот укмуштуудай сүрөттөрдү жана көркөмдөрдү жасай алабы деп ойлоп көрдүңүз беле? Бул долбоордо мен муну Arduino Powered Painting Robot менен ишке ашырууга аракет кылам. Максаты - роботтун өз алдынча сүрөт тартуусу жана рефлексти колдонуу
Отто DIY+ Arduino Bluetooth роботу 3D басып чыгарууга оңой: 6 кадам (сүрөттөр менен)
Отто DIY+ Arduino Bluetooth роботу 3D басып чыгарууга оңой: Оттонун чындап ачык булагы STEAM билимине мүмкүнчүлүк берет, биз дүйнө жүзү боюнча Otto DIYди класстарында колдонуп жаткан жана бул билим берүүчү жайлардын ачыктыгына жараша пикирлерди чогултабыз. биз же
RC Tracked роботу Arduino аркылуу - Кадам менен: 3 кадам
Arduino аркылуу RC Tracked роботу - Кадам менен: Эй балдар, мен BangGoodдан дагы бир сонун робот шасси менен кайтып келдим. Сиз мурунку долбоорлорубуздан өттүңүз деп үмүттөнөбүз - Spinel Crux V1 - Gesture Controlled Robot, Spinel Crux L2 - Arduino Pick and Place Robot with Robotik Arms and The Badland Braw
Mini Sumo роботу: 5 кадам
Робот Мини Сумо: Башында сумо роботун чогултууну баштоо үчүн сизде бардык керектүү материалдар болушу керек. Бул үчүн сизде төмөнкү түзүлүштөр болушу керек: 1 PIC 16F877A 2 Кварц кристалы 4МГц 4 Конденсатор 22pF 2 Санарип QTR-1RC Line Sensor 1 Bluetooth режими HC -05 1 Ultra
Май роботу: Экзистенциалдык кризис менен Arduino роботу: 6 кадам (Сүрөттөр менен)
Май роботу: Ардуино роботу экзистенциалдык кризис менен: Бул долбоор " Рик жана Морти " анимациялык сериясына негизделген. Эпизоддордун биринде Рик робот жасайт, анын бирден бир максаты - сары май алып келүү. Брюсфейдин (Брюссель инженердик факультети) студенттери катары бизде механикага тапшырма бар