Агуулгын хүснэгт:

ROADRUNNER: 5 алхам
ROADRUNNER: 5 алхам

Видео: ROADRUNNER: 5 алхам

Видео: ROADRUNNER: 5 алхам
Видео: Wile E Coyote & Roadrunner - Flash in The Pain with healthbars 2024, Арваннэгдүгээр
Anonim
ROADRUNNER
ROADRUNNER

Roadrunner бол ундны лаазыг цангасан хэрэглэгчдэд хүргэх үүрэгтэй жижиг автомат машин юм.

Хэрхэн ажилладаг? Тээврийн хэрэгслийн дээд суурин дээр лааз байрлуулсан бөгөөд лаазны жин нь ажиллахад бэлэн болсон тухай тээвэрлэлтэд мэдэгдэх жижиг товчлуурыг дарна. Роудруннер өөрийгөө чиглүүлэхийн тулд хар шугам хэлбэрээр газар дээрх замыг дагадаг бөгөөд энэ нь хаашаа явах ёстойгоо харуулдаг бөгөөд гэрэл мэдрэгч ашигласны ачаар тэрээр замаасаа гарч, чиглэлээ засч байхдаа илрүүлж чаддаг., ийм байдлаар үлдэхийн тулд үргэлж зам дотор. Тээврийн хэрэгсэл хэрэглэгч рүү очсоны дараа ундааны савыг авч, жижиг тээврийн зогсоолыг нэг газар зогсооно. Эхлэх цэг рүүгээ буцаж, ажлаа дуусгахын тулд хэрэглэгч лаазаа буцааж тавих хүртэл тэр жагсаалаа дахин давтахгүй.

Алхам 1: багаж хэрэгсэл, материал

Хэрэгсэл ба материал
Хэрэгсэл ба материал
Хэрэгсэл ба материал
Хэрэгсэл ба материал

Алхам 2: Тоног төхөөрөмжийн угсралт

Тоног төхөөрөмжийн угсралт
Тоног төхөөрөмжийн угсралт
Тоног төхөөрөмжийн угсралт
Тоног төхөөрөмжийн угсралт
Тоног төхөөрөмжийн угсралт
Тоног төхөөрөмжийн угсралт

1. БИЕ

Биеийн хувьд бид хүссэн хэлбэрээрээ хайчилж, нугалсан хөнгөн цагаан хавтанг ашигласан. Мөн боолт хийхэд шаардлагатай бүх нүхийг бид хийсэн.

2. ДУГУЙ

Бид роботтойгоо яг таарсан Mecano тоглоомын 2 дугуйг ашигласан. Серво нь шурагны тусламжтайгаар холбосон хавтангийн доор ордог. Урд дугуйны хувьд бид "чөлөөт" дугуйг ашигласан тул аль ч чиглэлд амархан явдаг.

3. ФОТОСЕНЗОР

RDL гэрэл мэдрэгчийн хувьд бид хэлхээний самбар ашиглаж, хэлхээг гагнасан бөгөөд үүнд эсэргүүцэл, LDR, эерэг, сөрөг, дохио орно.

4. ARDUINO BOARD

Бид Arduino самбарыг эрэг ашиглан хавтан дээр хавсаргасан. Дараа нь бид бүх хэлхээг түүнтэй холбосон. Самбарыг нийлүүлэхийн тулд бид Arduino -д нийлүүлсэн 9V 2 батерейг ашигласан.

5. Дээд таваг

Дээд хавтангийн хувьд бид PMMA -ийг огтлох лазер хайчлах машин ашигласан. Бид энэ хэлбэрийг AutoCad ашиглан бүтээсэн. Энэ нь том хавтан, 3 дугуй цагираг, цагирганд багтах дугуй хэсгээс бүрдэнэ. Бид товчлуурыг тааруулахын тулд хавтан дээр зай өгсөн.

Алхам 3: Цахилгаан холболт

Цахилгаан холболт
Цахилгаан холболт

1. Серваторуудыг холбох:

Servomotors нь гурван кабелаас бүрдэнэ; дохио өгөх нэг шар эсвэл улбар шар, улаан нь хүч (Vcc), хар эсвэл хүрэн (GND). Улаан ба хүрэн нь Arduino (5V ба GND) дээрх зүү дээр бэхлэгддэг. Нэг servo нь PWM зүү 10, нөгөө нь PWM pin 11 -т холбогдсон байна.

2. Холбох товч:

Цахим товчлуурууд нь өвөрмөц байдлаар ажилладаг; тээглүүр дээрх хүчдэлийг диагналаар дамжуулахыг зөвшөөрөх, өөрөөр хэлбэл хэрэв бид дөрвөн зүүтэй бол оролт, гаралтыг зөвхөн 1-4 эсвэл 2-3 гэсэн хоёр зүүгээр холбох ёстой. Жишээлбэл, хэрэв бид 1-4 тээглүүрийг сонговол газардуулгыг (GND) 4-р зүүтэй холбож, гаралт нь ХОУХ-ны 9 зүүтэй холбогдож, эргээд 1 кОм эсэргүүцэлтэй хамт 5В-т холбоно. Vcc).

3. Гэрэл мэдрэгчийг холбох нь:

Гэрэл мэдрэгчийг холбохын тулд бид нэг хөлөө Vcc тэжээлд шууд байрлуулах ёстой, нөгөө хөлийг нэгэн зэрэг аналог зүү (энэ тохиолдолд A0 ба A1 тээглүүрүүд) болон GND газардуулгатай холбох ёстой. 1 кОм эсэргүүцэл.

Тэмдэглэл:

Хэрэв утаснууд нь Arduino -той шууд холбогдоогүй эсвэл өөр өөр холболтыг хөнгөвчлөхийн тулд хамгаалалтын самбар ашигладаг бол та жижиг холбогчийг утсан дээр гагнах боломжтой. Энэ төсөлд бид янз бүрийн үеийг холбох туузыг ашигласан болно.

Алхам 4: Arduino програмчлах

Arduino програмчлах
Arduino програмчлах
Arduino програмчлах
Arduino програмчлах

КОД

#Servo myservoL оруулах;

Servo myservoR;

int inPin = 7;

int buttonVal = 1;

хүчингүй тохиргоо () {

// ҮЙЛЧИЛГЭЭЧИД

myservoL.attach (10);

myservoR.attach (11);

Цуваа эхлэх (9600); }

void loop () {

int LDR_L = analogRead (A2);

int LDR_R = analogRead (A1);

buttonVal = digitalRead (inPin);

// PACK LEFT

хэрэв (LDR_L> 590 && buttonVal == 0) {

myservoL.write (180);

//Serial.println(LDR_L); }

өөр {

myservoL.write (92);

//Serial.println(LDR_L);

}

// ЗӨВ БАГЦ

хэрэв (LDR_R> 750 && buttonVal == 0) {

myservoR.write (-270);

//Serial.println(LDR_R); }

өөр {

myservoR.write (92);

//Serial.println(LDR_R); }

}

Зөвлөмж болгож буй: