Litar

Bagaimana Membina Stairbot Dengan Makeblock: 32 Langkah (dengan Gambar)

Projects Built with Makeblock

Projects Built with Makeblock

Isi kandungan:

Anonim

Pertama sekali, kami ingin memandu anda menerusi prinsip kerja kes ini. Secara umum, terdapat 8 peringkat dalam kes ini di bawah keadaan ideal. Roda 1 dan roda 4 memandu roda yang dilengkapi dengan motor, manakala yang lain roda yang didorong. Peranti mengangkat dipasang secara berasingan pada roda 2 dan roda 4.

Peringkat 1
Kereta bergerak maju.

Peringkat 2

Sensor ultrasonik telah mengesan halangan-halangan di hadapan.

Kemudian mengangkat peranti pada kereta ini akan mengangkat roda 1 dan roda 3 sehingga sensor ultrasonik tidak dapat mengesan halangan.

Nota: "halangan" di sini merujuk kepada "tangga".

Peringkat3

Kereta terus bergerak ke hadapan, didorong oleh roda 1 dan roda 4.

Peringkat 4

Seperti yang ditunjukkan dalam gambar, pengikut garis pada roda 2 telah mengesan halangan (tangga), jadi peranti angkat 1 akan mengangkat roda 2 hingga tangga yang lebih tinggi seterusnya.

Peringkat 5

Kereta terus bergerak ke hadapan, didorong oleh roda 1 dan roda 4

Peringkat 6
Roda pemanduan (roda 1 dan roda 4) secara automatik akan berhenti apabila sakelar limit pada roda 4 telah mengesan tangga. Peranti mengangkat 2 kemudian akan mengangkat roda 4 ke atas.

Peringkat 7

Kereta terus bergerak maju, didorong oleh roda 1

Ia seperti kita kembali ke panggung 1 lagi …

Peringkat 8
Peringkat 8, sama seperti peringkat 2. Kereta robot terus bergerak ke hadapan sehingga sensor ultrasonik mengesan rintangan …

Umumnya, dalam kes ini, kitaran prinsip kerja dari tahap 1 hingga tahap 8.

Dari perspektif struktur mekanikal, bahagian unik kes ini ialah reka bentuk peranti mengangkat yang diperlukan untuk menjadi sama dan cepat apabila mengangkat barang ke atas dan ke bawah. Jadi, dalam kes ini, kami menggunakan gear dan rak untuk membina peranti mengangkat. Seperti yang ditunjukkan dalam deskripsi berikut, kami menggunakan rasuk 0808 untuk membina trek gelongsor, dan penyambung tali bersambung dengan rasuk 0824 untuk membina blok gelongsor yang mudah.

ketahui lebih lanjut

Langkah 2:

Seterusnya adalah bahagian yang digunakan dalam setiap langkah dan kaedah bangunan. Peranti mengangkat 1

Senarai bahagian:

4 x Beam0824-032

2 x Beam0824-160

8 x Skru M4x22

8 x Nut M4

Gunakan bahagian berikut untuk menyambung struktur.

Langkah 3:

Senarai bahagian:

4 x Penyambung Belt

16 x Skru M4x8

Hanya dengan mengetatkan skru, kita boleh membina blok gelongsor dengan mudah.

Ambil dua Beam0808-312 yang boleh melalui blok geser dengan segera.

Langkah 4:

Kini mari kita bergerak ke langkah seterusnya: membina rak.

Untuk memastikan kereta pintar yang mendaki tangga pintar ini untuk menyesuaikan tangga dengan ketinggian yang berbeza, trek gelongsor dan rak perlu cukup lama. Lintasan gelongsor panjang 312mm, jadi rak tidak sepatutnya pendek

Apa yang perlu kita lakukan ialah menyambung 4 bahagian untuk membina rak. Alasan mengapa kami menggunakan Beam0808-312 di sini adalah untuk mengelakkan gabungan bahagian rak dari lenturan semasa proses mengangkat. Sekiranya sambungan bahagian rak membongkok, akan ada masalah jejaring antara gear dan rak. Oleh itu, kita perlu menetapkan rak ke Beam0808-312, seperti yang ditunjukkan dalam gambar berikut:

Langkah 5:

Sambungkan rel panduan dan rak

Senarai bahagian:

1 x Beam0824-144

3 x Skru M4x22

2 x Nut M4

Langkah 6:

Senarai bahagian:

2 x Beam0824-176

6 x Skru M4 x 22

6 x Nut M4

Langkah 7:

Pasang roda 2 (roda bergerak)

Senarai bahagian:

2 x Tayar 64 * 16mm

2 x Timing Pulley 90T

2 x Shaft Threaded 4x39mm

4 x Flange Bearing

2 x Skru M4

2 x Skru Set Munting Kepala M3x5

4 x Plastik Spacer4x7x2

Betulkan dua tayar pada dua hujung Beam0824

Mengikuti semua langkah, kami selesai memasang roda 2 dan mengangkat peranti 1.

Langkah 8:

Mari kita pergi ke langkah seterusnya - memasang roda 4 dan mengangkat peranti 2.

Struktur peranti mengangkat 2 adalah sama dengan peranti mengangkat 1, jadi bahagian-bahagian yang digunakan untuk pemasangan.

Satu-satunya perbezaan ialah anda perlu menetapkan Beam 0824-032 seperti yang ditunjukkan dalam gambar.

Pasang rel panduan dan rak yang sama seperti langkah-langkah membina alat mengangkat 1. Gunakan Beam0824-080, bukan Beam0824-144, untuk menyambungkan hujung atas.

Langkah 9:

Untuk menyambungkan bahagian bawah, kami menggunakan bahagian berikut:

1 x Beam0824-128

6 x Skru M4x22

6 x Nut M4

Langkah 10:

Pasang Kurungan L1 pada Beam0824

Senarai bahagian:

2 x Skru M4x14

2 x Nut M4

Langkah 11:

Selepas menamatkan alatan mengangkat bangunan 2, kita boleh mula membina roda 4 (memandu roda)

Senarai bahagian:

1 x DC Motor-25

1 x Timing Pulley 90T

1 x DC Motor-25 Bracket

1 x Penyambung Shaft

1 x Skru Set Kepala tanpa kepala M3x5

2 x Skru M4x14

Langkah 12:

Pasang tayar

2 x Skru M4x14

2 x Nut

Pasang struktur di atas pada Bracket L1

Sehingga kini, kami selesai membina separuh kereta ini.

Langkah 13:

Langkah seterusnya ialah membina struktur utama kereta dan roda 1 dan roda 3.

Bina roda 1 (roda memandu) terlebih dahulu.

2 x Tayar 64 * 16mm

2 x Timing Pulley 90T

2 x Penyambung Shaft

8 x Skru M4x14

4 x Nut M4

4 x Skru M3x5

4 x Skru Set Kepala tanpa kepala M3x5

2 x DC Motor-25mm

2 x DC Motor-25 Bracket

2 x Beam0824-064

Langkah 14:

Pasang bar anti perlanggaran

Senarai bahagian:

1 x Beam0824-160

2 x pendakap L1

4 x Skru M4x14

4 x Nut M4

Langkah 15:

Berkumpul struktur utama kereta

Senarai bahagian:

2 x Beam0824-192

1 x Bar Anti-Perlanggaran

2 x Tayar 64 * 16mm

6 x Skru M4x30

6 x Nut M4

Langkah 16:

Berkumpul roda 3 (roda didorong)

Senarai bahagian:

2 x Tayar 64 * 16mm

2 x Timing Pulley 90T

2 x Beam0808-088

4 x Flange Bearing

2 x Shaft Threaded

4 x Plastik Spacer4x7x2

2 x Nut

2 x Skru Set Munting Kepala M3x5

Langkah 17:

Senarai bahagian:

4 x Skru M4x22

4 x Nut M4

Betulkan roda 3 ke pendakap kereta

Langkah 18:

Pasang peranti mengangkat 2 pada pendakap kereta

Senarai bahagian:

8 x Skru M4x14

Langkah 19:

Gunakan 6 Screw M4x14 untuk memasang peranti pemalsuan 1

Lebar tangga adalah
terhad dan tayar terlalu besar, jadi kami terpaksa menganggur kedudukan semua tayar. Dalam roda 4, kita hanya menggunakan motor dan tayar.

Langkah 20:

Pasang motor peranti mengangkat

Senarai bahagian:

2 x DC Motor-37

2 x Gear 18T

2 x Skru Set Kepala Tanpa Mekanis M3 x 5

4 x Skru M4 x 8

Nota: Sebelum memasang DC Motor-37, memasang pendakap motor terlebih dahulu.

Laraskan jarak antara gear dan rak, kemudian motorkan secara berasingan di alur benang Beam0824 pada peranti mengangkat 1 dan 2

Langkah demi langkah, kami selesai membina struktur mekanikal kereta ini.

Langkah 21:

Mari kita pergi ke sensor pemasangan langkah seterusnya

1 x Had Kuasa

Pasang suis had pada sisi peranti mengangkat 2

2 x Had Kuasa

Pasang suis had dua ini secara berasingan pada rasuk mengangkat peranti 1 dan 2.

Nota: suis had digunakan untuk mengehadkan ketinggian mengangkat.

Langkah 22:

Pasang sensor pengikut talian

Senarai bahagian:

2 x Skru M4 x 22

2 x Plastik Spacer 4 * 7 * 10

4 x Plastik Spacer4x7x2

1 x Pengikut Line Me

Langkah 23:

Pasang gyroscope

Langkah 24:

Pasang sensor ultrasonik

Seperti yang kita semua tahu, sensor ultrasonik tidak dapat mengesan halangan dalam jarak 0-30mm. Jadi dalam kes ini, kami memasang sensor ultrasonik di dalam kereta, membiarkan bar anti-perlanggaran di hadapan untuk merosakkan tangga. Dengan cara ini, ultrasonik hanya berlaku untuk dapat mengesan halangan - tangga.

Langkah 25:

Pasang Me Orion

Langkah 26:

Pasang penyesuai (untuk suis had)

Langkah 27:

Selesai memasang semua sensor, kini marilah kita melihat seluruh struktur kereta dan sensor

Kereta ini boleh dibahagikan kepada 4 bahagian berdasarkan bilangan tayar.

Roda 1 dan roda 4 memandu roda, manakala roda 2 dan roda 3 dikendalikan roda

(Roda 4 roda 3 roda 2 roda 1)

Di dalam kereta ini, peranti mengangkat1 dan 2 mengawal kedudukan roda 2 dan roda 4

(Mengangkat peranti 1 Mengangkat peranti 2)

(Line pengikut roda 2 sensor ultrasonik roda 1)

(Modul memandu motor Memandu motor roda 4 Had suis peranti mengangkat 2 Had kuasa roda 4 Mengangkat peranti 2)

(Gyroscope Drive motor roda 1 Mengangkat peranti 1 Memandu motor roda 1 Had kuasa roda 2)

Kenapa kita memerlukan giroskop? Giroskop di sini digunakan untuk menyesuaikan kelajuan mengangkat motor, dengan itu untuk mengimbangi kereta itu sendiri (motor yang digunakan dalam peranti mengangkat motor DC yang gagal mengimbangi kereta).

Langkah 28:

Seluruh kereta:

Langkah 29:

Peta Pendawaian

Langkah 30:

mw_shl_code = applescript, true #include "MeOrion.h" #include MeGyro gyro; MeDCMotor lifer1 (PORT_1); // 升降 1 Lifer MeDCMotor (PORT_2); // 升降 2 MeDCMotor rw (M2); // 1 号 驱动轮 MeDCMotor fw (M1); // 4 号 驱动轮 MeLineFollower lineFinder1 (PORT_7); // 巡 线 MeLimitSwitch upWard1 (PORT_3, SLOT2); // 1 号 升降 限位 开关 MeLimitSwitch forWard2 (PORT_4, SLOT1); // 4 号 轮子 限位 开关 MeLimitSwitch upWard2 (PORT_4, SLOT2); / / 2 号 升降 限位 开关 MeUltrasonicSensor ultraSensor (PORT_8); // 1 号 轮子 超声波 void setup () // 初始化, 前后 升降 装置 回收 {Serial.begin (9600); gyro.begin (); lifer1.run (-250); sementara (! upWard1.touched ()); lifer1.stop (); lifer2.run (-250); sementara (! upWard2.touched ()); lifer2.stop (); } tidak sah Step2 () {float p = 15; terapung i = 0.01; sudut apungan = 0; float targetAngle = 0; integrasi terapung = 0; float err = 0; sementara (NotStop ()) {gyro.update (); float angle = gyro.getAngleX (); err = angle - targetAngle; integrasi + = salah; int speed1 = 200; int speed2 = 200; speed2 = speed1 + err * p; // + integration * i; lifer1.run (speed1); lifer2.run (speed2); / / kelewatan (10); } lifer1.stop (); lifer2.stop (); } int startTiming = 0; unsigned long startTime = 0; int NotStop () {int16_t distance; jarak = ultraSensor.distanceCm (); kelewatan (10); jika (0 == startTiming) {if ((jarak <10) && (jarak> 1)) {return 1; } else {startTiming = 1; startTime = millis (); kembali 1; }} lain {unsigned long currentTime = millis (); jika (currentTime - startTime <2500) // 超声波 检测 不到 楼梯 后 ngayong时 2.5 秒 {return 1; } else {return 0; }}} void loop () {startTiming = 0; startTime = 0; // 阶段 1 小车 前进 fw.run (60); rw.run (60); // 1 号 4 号 轮子 推动 小车 前进 int16_t distance; do {distance = ultraSensor.distanceCm (); kelewatan (10); } // 阶段 2 碰到 楼梯 主动 轮 停止 整体 车架 上升 while (! ((Distance <4) && (distance> 1))); // 如果 碰到 楼梯 fw.stop (); rw.stop (); Langkah 2 (); // 阶段 3 1 号 4 号 轮子 推动 小车 前进 fw.run (60); rw.run (60); // 阶段 4 2 号 轮子 巡 线 传感器 检测 到 楼梯 主动 轮 停止 升降 装置 1 把 2 号 轮子 收回 去 while (! (LineFinder1.readSensors ()! = S1_IN_S2_IN)); lifer1.run (-250); fw.stop (); rw.stop (); sementara (! upWard1.touched ()); // 1 号 升降 限位 开关 检测 升降 结束 lifer1.stop (); Melaraskan(); // 阶段 5 1 号 4 号 轮子 推动 小车 前进 fw.run (60); rw.run (60); // 阶段 6 4 号 轮子 限位 开关 检测 到 4 号 轮子 碰到 楼梯 主动 轮 停止 2 号 升降 装置 回收 4 号 轮子 while (! ForWard2.touched ()); lifer2.run (-250); fw.stop (); rw.stop (); sementara (! upWard2.touched ()); // 1 号 升降 限位 开关 检测 升降 结束 lifer2.stop (); // 阶段 7 循环 阶段 1 // 阶段 8 循环 阶段 2} void Adjust () // 陀螺 仪 控制 1,2 号 升降 电机 控制 平衡 {int p = 40; // float i = 0.05; sudut apungan = 0; float targetAngle = 4; / // float integration = 0; // float err = 0; lakukan {gyro.update (); sudut = gyro.getAngleX (); // err = (sudut - targetAngle); // integration + = err; lifer2.run ((sudut - targetAngle) * p); // + i * integrasi); / / kelewatan (10); } sementara (fabs (angle - targetAngle)> 1); lifer2.stop (); } / mw_shl_code

Langkah 31:

Langkah 32:

Pasang pemacu motor Makeblock