Мазмұны:

Мысыққа арналған доп: 9 қадам (суреттермен)
Мысыққа арналған доп: 9 қадам (суреттермен)

Бейне: Мысыққа арналған доп: 9 қадам (суреттермен)

Бейне: Мысыққа арналған доп: 9 қадам (суреттермен)
Бейне: Қалай сурет салуға болады? Сандар арқылы 2024, Қараша
Anonim
Мысықтан доп ататын ойыншы
Мысықтан доп ататын ойыншы

Қажетті материалдар

1 x RFID сенсоры/ қашықтан басқару құралы

1 x Arduino Uno

2 x тұрақты ток қозғалтқыштары

1 x 180 серво

1 x 360 серво

бірнеше сымдар

Жобаны құруға арналған қорап/контейнер

допты өткізетін құбыр

1 -қадам: Қозғалтқышты және қашықтан басқару пультін қосу

Қозғалтқыш пен қашықтан басқару пультінің тізбегін құрыңыз
Қозғалтқыш пен қашықтан басқару пультінің тізбегін құрыңыз
Қозғалтқыш пен қашықтан басқару пультінің тізбегін құрыңыз
Қозғалтқыш пен қашықтан басқару пультінің тізбегін құрыңыз

Тізбекті құру

жоғарыдағы тізбекті құрыңыз және дәл сол кодты пайдалану үшін сол түйреуіштерге қосылыңыз

2 -қадам: Екі қозғалтқыш үшін негіз жасаңыз

Екі қозғалтқыш үшін база құру
Екі қозғалтқыш үшін база құру

бүйірлері үшін 4, 5 дюйм және 2 дюймдік төртбұрыштарды кесу үшін көбік тақтасын пайдалану қажет болады. содан кейін үстіңгі және астыңғы жағына пайдалану үшін 5 -тен 5 дюймге дейінгі квадраттарды кесіңіз. Келесіде қозғалтқыштарға отыратын орын қажет, сондықтан допты атуға орын беру үшін диаметрі 23 мм және бір -бірінен 39 мм қашықтықта 2 тесікті кесіңіз. содан кейін қозғалтқыштардан сымдардың тізбекке қосылуына мүмкіндік беру үшін төменгі квадратқа нүкте немесе жұп тесік жасаңыз.

3 -қадам: Қозғалтқыштардың түбіне сервисті қосыңыз

Қозғалтқыштардың төменгі жағына Серво қосыңыз
Қозғалтқыштардың төменгі жағына Серво қосыңыз

шаршының астына (ортасында) 180 немесе 360 серводы мұқият жабыстырыңыз. біз мұны жасаймыз, біз қашықтан басқару пультімен немесе кездейсоқ бағытты қолмен өзгерте аламыз, осылайша доп әр түрлі бағытта атылады

4 -қадам: Үлкен контейнердегі тесіктерді кесіңіз

Үлкен контейнердегі тесіктерді кесіңіз
Үлкен контейнердегі тесіктерді кесіңіз
Үлкен контейнердегі тесіктерді кесіңіз
Үлкен контейнердегі тесіктерді кесіңіз
Үлкен контейнердегі тесіктерді кесіңіз
Үлкен контейнердегі тесіктерді кесіңіз

үлкен контейнерді алып, алдыңғы және артқы жағындағы тесікті кесіңіз, ол дәл болмауы керек, бірақ алдыңғы жағында біз допты серво қозғалысы кезінде әр түрлі бағытта атуға мүмкіндік беретін суретте көрсетілгендей үлкен болуы керек. және контейнердің артқы жағы сымдардың шығуына және тізбек бөліктерін орналастыруға немесе қажет болса тізбекті өзгертуге мүмкіндік беретін кіші тесікті кеседі. алдыңғы жағында сервоны контейнерлердің бірінің қақпағына жабыстырыңыз, содан кейін тіреу үшін контейнердің негізіне, сілтеме үшін екінші суретті қараңыз

5 -қадам: Құбыр

Құбыр
Құбыр

Ұзындығы 1 фут болатын ПВХ құбырын жасаңыз немесе сатып алыңыз, доптың айналуы үшін қисық болса, доптың кіруіне рұқсат беру үшін 1,5 дюймдік дюймді кесіңіз.

6 -қадам: Хоппер

Хоппер
Хоппер
Хоппер
Хоппер
Хоппер
Хоппер

4 тең трапеция кесіңіз, таңдауға болады, бірақ менікі 5 дюйм болатын және құбырға салынған кезде сәл қисайған, содан кейін төменгі жағында көбік тақтасы стол теннисі допы өтетін үлкен тесікті кесіп тастаған. Содан кейін оларды бір -біріне жабыстырыңыз, олар барлық шарларға отыруға мүмкіндік береді. Кейінірек біз оны тесік кесілген құбырдың жоғарғы жағына жабыстырамыз.

7 -қадам: Бункерді, құбырды және қозғалтқышты орналастыру

Бункерді, құбырды және қозғалтқышты орналастыру
Бункерді, құбырды және қозғалтқышты орналастыру

Сіз құбырды контейнер ішіне моторға арналған ақ қораптың шетінде орналастырғыңыз келеді, осылайша шар шығып, дөңгелектермен итеріледі. енді бункерге құбырдың жоғарғы жағына жабыстыруға болады

8 -қадам: соңғы сервис

Соңғы сервис
Соңғы сервис
Соңғы сервис
Соңғы сервис

бұл серво бункердің түбіне жабысады/ онда мен кесетін құбыр жеткілікті түрде жабысып қалады, ол үшін түйме басылмайынша және серво жылжытылмайынша пинг -шарлар құлап кетпейді.

9 -қадам: Жұмыс бөліктерін тексеру үшін кодты қосыңыз

Жұмыс бөліктерін тексеру үшін кодты қосыңыз
Жұмыс бөліктерін тексеру үшін кодты қосыңыз

// Мысықтарды түзетуші

// кодты пәрмендерді пайдалану үшін кітапханаларды импорттаңыз, мысалы, түйреуіштерді серво ретінде жариялау және IR қашықтан басқару пультін орнату #include #include

// тұрақты ток қозғалтқыштарының жылдамдықтарын орнату үшін айнымалыларды орнату int onspeed = 255; int lowspeed = 100; int offspeed = 0;

// инфрақызыл қабылдағыш түйреуішін және екі қозғалтқыш түйреуішін орнату IR_Recv = 2; int motor1 = 10; int motor2 = 11;

// айнымалыларды сервоприборлар деп жариялау, сондықтан бағдарлама оның арнайы командаларды қолдану Servo flap екенін біледі; Серво бұрышы;

// қашықтан басқару пультінен кірісті алу үшін IR түйінін жариялау // нәтижелерді қашықтағы IRrecv irrecv (IR_Recv) алады; decode_results нәтижелері;

жарамсыз орнату () {

Serial.begin (9600); // сериялық байланысты бастайды irrecv.enableIRIn (); // Ресиверді іске қосады

flap.attach (7); // серво қақпағын 7 түйреуішке бекітеді, осылайша біз оны кейінірек бағдарлама бұрышында қолдана аламыз.attach (4); // серво бұрышын 4 түйреуішке бекітеді, сондықтан оны кейін pinMode (motor1, OUTPUT) бағдарламасында қолдана аламыз; // мотор1 -ді шығысқа орнатыңыз, осылайша біз pinMode (мотор2, OUTPUT) түймесі басылған кезде жылдамдықты жібере аламыз; // мотор2 -ді шығысқа орнатыңыз, осылайша біз түйме басылған кезде жылдамдықты жібере аламыз

}

void loop () {

flap.write (0); // шарларды беруді басқаратын серводы 0 градусқа орнатыңыз, ол шарларды өткізбеуі үшін

if (irrecv.decode (& results)) {long int decCode = results.value; Serial.println (decCode); irrecv. resume ();

ауыстыру (results.value) {

жағдай 0xFFA25D: // power analogWrite (мотор1, жылдамдығы); analogWrite (мотор2, жылдамдық); кешіктіру (7000); flap.write (90); кешіктіру (500); flap.write (0); кешіктіру (2000); analogWrite (мотор1, жылдамдығы төмен); analogWrite (мотор2, жылдамдығы төмен); үзіліс;

0xFFE01F жағдайы: // EQ

analogWrite (мотор1, жылдамдық); analogWrite (мотор2, төмен жылдамдық); кешіктіру (7000); flap.write (90); кешіктіру (500); flap.write (0); кешіктіру (2000); analogWrite (мотор1, жылдамдығы төмен); analogWrite (мотор2, жылдамдығы төмен);

үзіліс;

жағдай 0xFF629D: // режимі

analogWrite (мотор1, төмен жылдамдық); analogWrite (мотор2, жылдамдық); кешіктіру (7000); flap.write (90); кешіктіру (500); flap.write (0); кешіктіру (2000); analogWrite (мотор1, жылдамдығы төмен); analogWrite (мотор2, жылдамдығы төмен);

үзіліс;

жағдай 0xFF30CF: // 1, 90 градусқа реттеледі

бұрыш.жазу (30);

үзіліс;

жағдай 0xFF18E7: // 2, 0 градус орнату

бұрыш.жазу (90);

үзіліс;

жағдайда 0xFF7A85: // 3, 180 градусқа орнату

бұрыш.жазу (150);

үзіліс;

} } }

Ұсынылған: