Daftar Isi:

Bisakah Saya Menggunakan TinyLiDAR Di Scratch?: 3 Langkah
Bisakah Saya Menggunakan TinyLiDAR Di Scratch?: 3 Langkah

Video: Bisakah Saya Menggunakan TinyLiDAR Di Scratch?: 3 Langkah

Video: Bisakah Saya Menggunakan TinyLiDAR Di Scratch?: 3 Langkah
Video: Cara menggunakan 2 atau lebih VL53L0X Laser Distance Sensor 2024, Juli
Anonim
Bisakah Saya Menggunakan TinyLiDAR Di… Awal?
Bisakah Saya Menggunakan TinyLiDAR Di… Awal?

Kami mendapatkan permintaan sesekali untuk menanyakan apakah tinyLiDAR akan berfungsi pada platform komputasi khusus mereka. Meskipun tinyLiDAR dirancang sebagai sensor LiDAR yang mudah digunakan untuk Arduino UNO, tidak ada yang menghentikannya untuk digunakan pada platform lain seperti Raspberry Pi (seperti yang ditunjukkan pada instruksi sebelumnya di sini). Artinya, jika platform memiliki bus I2C dan dapat mendukung fitur peregangan jam dari spesifikasi I2C. Jadi - bagaimana jika papan Anda bahkan tidak mendukung I2C? - apalagi jam peregangan hal … Yah itu akan menjadi skenario yang menantang tetapi dalam kenyataannya itu benar-benar ada untuk bahasa pemrograman visual yang sangat populer disebut "Scratch".

Google jika Anda belum pernah mendengarnya sebelumnya tetapi singkatnya, ini adalah bahasa pertama yang bagus bagi siapa saja untuk memasukkan pikiran mereka ke dunia pemrograman. Scratch dibuat oleh MIT Media Lab dan telah ada selama lebih dari 16 tahun sekarang. Ini adalah bahasa goto untuk mengajar anak-anak membuat kode di seluruh dunia. Siapa pun dapat mulai menggunakannya secara gratis - karena biasanya berjalan di desktop Anda di browser web. Lihat di sini jika Anda suka.

Versi TL;DR

YA! Dengan fitur baru yang disebut "Mode Emulasi Ultrasonik" di tinyLiDAR f/w versi 1.3.9

Langkah 1: Gores Apa?

Ada banyak rasa Scratch di alam liar sekarang. Penggemar robotika cenderung menggunakan versi yang berfokus pada GPIO seperti ScratchGPIO atau versi modded lainnya seperti ScratchX yang dapat dibuat untuk mendukung 'perangkat keras eksperimental' apa pun. Semua ini bagus untuk pengguna tingkat lanjut tetapi versi utama yang diinstal secara default pada pi akan menjadi fokus kami untuk instruksi ini karena mereka memiliki opsi perangkat keras yang agak terbatas.

Pi's Raspbian Stretch Desktop hadir dengan dua versi Scratch yang sudah diinstal sebelumnya. Yaitu, "Scratch" dan "Scratch 2". Kami akan menggunakan yang pertama alias "Scratch 1.4 (NuScratch)" dan akan menggunakannya "offline" sehingga kami dapat menggunakan fitur server GPIO.

Anda dapat mengunduh gambar desktop pi resmi di sini.

Untuk alasan apa pun, pembuat Scratch memutuskan untuk hanya mendukung beberapa sensor yang paling umum tersedia dari perusahaan besar seperti Lego dll. Menariknya, mereka juga memutuskan untuk menambahkan dukungan untuk HC-SR04. Ini, tentu saja, sensor jarak ultrasonik di mana-mana yang hanya mengeluarkan satu lebar pulsa yang sebanding dengan jarak yang diukur.

Akurasi pengukuran dapat sedikit berbeda tergantung pada suhu udara, kelembaban dan bahan target seperti yang disebutkan di sini, di sini dan di sini. Tetapi secara umum, hampir semua platform dapat mengukur output lebar pulsa perangkat ini.

Langkah 2: Fitur Baru

Fitur baru
Fitur baru

Mengeluarkan pulsa skala mikrodetik yang akurat bukanlah masalah bagi kami di tinyLiDAR karena kami memiliki pengatur waktu perangkat keras resolusi tinggi di dalam mikro 32bit on-board. tinyLiDAR juga selalu mengkalibrasi otomatis untuk suhu saat menyala sehingga tidak diperlukan penyesuaian lebih lanjut untuk lingkungan pengoperasian.

Ayo lakukan

Oke - kami bisa jadi kami hanya menambahkan fitur baru ke tinyLiDAR (pada firmware 1.3.9) yang disebut "Mode Emulasi Ultrasonik". Anda dapat mengaksesnya dengan menggunakan perintah "u" dari Terminal GUI tinyLiDAR yang diperbarui.

Menggunakannya akan mengubah pengaturan dalam memori non-volatil sehingga akan membuat tinyLiDAR terlihat seperti sensor ultrasonik generik bahkan setelah Anda mematikannya. Anda dapat mengubahnya kembali ke mode I2C normal dengan menekan tombol reset dan mengeluarkan perintah "az". Rincian lebih lanjut ada di manual pengguna.

Untuk membuat hidup lebih sederhana, kami membuat sensor tinyLiDAR tersedia di preset untuk Mode Emulasi Ultrasonik baru ini dari situs web kami. Pesan saja versi "-u".

Lihat Ma, Tanpa Solder

Tidak perlu menyolder dan juga tidak memerlukan papan tempat memotong roti karena kabel "Grove to Female 4pin" yang disertakan akan dicolokkan langsung ke pin header pi Raspberry. Pin pemicu adalah kabel Kuning dan pin gema adalah kabel Putih. Hitam dan Merah tentu saja untuk kekuatan. Lihat gambar utama di atas untuk detailnya.

Btw, kami melangkah lebih jauh dan membuat pin Kuning berperilaku seperti sensor PING))) yang menggunakan satu kabel untuk sinyal pemicu dan gema.

Karena itu, Anda sekarang dapat melakukan pengukuran dengan tinyLiDAR menggunakan sketsa ultrasonik "PING" default yang dikirimkan dengan setiap Arduino IDE tanpa perubahan kode apa pun! Anda dapat mencobanya tanpa penundaan juga.

Tentu saja, Anda dapat mengatur parameter seperti akurasi tinggi, jarak jauh dll dari pengukuran LiDAR Anda sebelum memilih perintah "u" dan kemudian akan melakukan pengukuran tersebut setiap kali melihat pin pemicu jatuh seperti yang ditunjukkan pada diagram di atas.

Bahaya, Will Robinson

Perhatikan bahwa sensor ultrasonik SR04 membutuhkan beberapa resistor untuk mencegah suplai +5v merusak pi Anda. Tapi karena tinyLiDAR berjalan secara native dari +3.3v, tidak perlu ada resistor untuk berinteraksi dengan pi:)

Langkah 3: Mengkodekannya

Mengkodekannya
Mengkodekannya
Mengkodekannya
Mengkodekannya

Jadi, apa sebenarnya kode yang kita butuhkan agar tinyLiDAR dapat bekerja di Scratch?

Senang Anda bertanya!

Ini hanya masalah menyeret beberapa blok siaran sederhana seperti yang ditunjukkan pada gambar di atas.

Untuk mengaktifkan pin GPIO kita dapat mengeluarkan "broadcast gpioserveron"Kemudian untuk mengkonfigurasi pin pemicu kita mengeluarkan "broadcast config16out"Selanjutnya kita dapat mengkonfigurasi pin echo dengan "broadcast config26in" dan kemudian memulai pengukuran dengan "broadcast ultrasonictrigger16echo26". Ini akan menyebabkan pengukuran dilakukan secara terus menerus pada irama sekitar 140ms. Anda dapat membaca data yang diukur dengan menggunakan blok sensor "nilai sensor jarak ultrasonik".

Yah itu saja untuk saat ini, terima kasih telah membaca dan pastikan untuk memeriksa program demo Scratch kecil yang menyenangkan (dibagikan di sini) yang kami buat bernama "tinyLiDAR_catch_me" dan …Scratch On!;)

Direkomendasikan: