Isi kandungan:
- Langkah 1: Apa itu Peregangan Jam?
- Langkah 2: Sedikit Bantuan Dari Babi Yang Terbang
- Langkah 3: TL; Versi DR
- Langkah 4: Pemasangan
- Langkah 5: Pasang Pigpio
- Langkah 6: Pilihan: Penyediaan Sistem Dev
- Langkah 7: Menyiapkan WinSCP
- Langkah 8: (w) mendapatkan Kod
- Langkah 9: Catatan untuk Penggodam yang Akan Datang
Video: TinyLiDAR pada Pi ?: 9 Langkah (dengan Gambar)
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:12
Hello lagi!
Sekarang anda telah meluangkan masa yang berkualiti dengan tinyLiDAR dan Arduino anda - Pi Raspberry anda mungkin merasa kesepian;)
Pi mempunyai port I2C bukan? Jadi mengapa tidak mengaitkannya dan mencubanya di sana ?! Rancangan yang bagus, tetapi jika anda sudah mencuba - anda mungkin menyedari data tersebut kelihatan agak pelik.
Ya, pi sudah dilengkapi dengan pull-up 1.8K jadi anda harus memotong pad I2C pada tinyLiDAR untuk mengeluarkan pull-up 4.7K dari litar - lihat manual rujukan untuk perincian. Tetapi ini bukan alasan untuk data yang pelik.
Ini kerana bas I2C pi tidak sesuai dengan spesifikasi. Sudah seperti ini sejak pi pertama kali diperkenalkan kerana set cip Broadcom. Sejak awal mereka tidak menyokong ciri I2C yang disebut "peregangan jam" dengan betul.
Anda boleh membaca lebih lanjut mengenai bug h / w ini di sini.
Langkah 1: Apa itu Peregangan Jam?
Seperti yang anda ketahui, bas I2C terdiri daripada 3 wayar. Ini adalah untuk jam (SCL), data (SDA) dan landasan bersama. Jam dan garis data adalah jenis pengumpul terbuka / longkang terbuka yang bermaksud mereka memerlukan perintang tarik yang disambungkan ke rel bekalan positif untuk memberi mereka logik tinggi. Untuk mendapatkan logik yang rendah, mana-mana peranti di dalam bas boleh turun ke landasan bersama.
Sesuai standard I2C, peranti Master adalah alat yang membekalkan isyarat jam pada garis SCL tetapi jika kadar ini terlalu cepat maka peranti Slave dibenarkan untuk memperlahankannya dengan hanya menahan garis jam sehingga siap untuk berurusan dengan maklumat. Inilah yang kita panggil "peregangan jam".
Secara rasmi, peregangan jam disenaraikan sebagai ciri pilihan dalam standard I2C tetapi merupakan ciri yang sangat umum yang diperlukan bagi kebanyakan hamba "pintar" yang memerlukan sedikit masa untuk menyediakan data sensor dll.
Langkah 2: Sedikit Bantuan Dari Babi Yang Terbang
Untuk menangani bug I2C h / w ini, kami menjumpai perpustakaan kecil percuma yang dipanggil "pigpio". Ia adalah perpustakaan yang sangat popular, cepat dan ringan yang ditulis dalam C. Ia berfungsi sebagai latar belakang daemon untuk Raspberry Pi dan membolehkan kita mengawal I2C serta GPIO mana pun dengan mudah dari python. Perpustakaan memperlakukan port I2C lebih seperti GPIO dan dengan itu telah memintas bug peregangan jam I2C. Seperti semua perisian di pi, perpustakaan pigpio hanya sekadar "sertakan" sahaja jadi mari kita pergi!
Langkah 3: TL; Versi DR
Sediakan PiEnable SSH untuk log masuk dengan Putty Pasang pigpio library Dapatkan fail zip kecilLiDAR Unzip dan jalankan dari Putty
Pilihan:
Sediakan SublimeText dengan WinSCP
Langkah 4: Pemasangan
Untuk Raspberry Pi 3 kami, kami menggunakan sistem operasi New Out Of the Box Software (NOOBS Lite v2.4) standard. Ia mengandungi versi lalai Python yang sudah dipasang untuk kita siap kod. Anda boleh memuat turun OS dari sini.
Setelah dipasang pada kad SD mikro, anda perlu menyambungkan papan kekunci dan monitor supaya anda dapat masuk ke pi untuk pertama kalinya:
Nama pengguna: pi Kata Laluan: raspberry
Kemudian anda boleh memulakan pelayan shell selamat (SSH) dengan arahan berikut:
sudo systemctl mengaktifkan sshsudo systemctl memulakan ssh
Seterusnya kami memerlukan alamat IP pi di rangkaian anda supaya kami dapat log masuk dengan PuTTY. Untuk mendapatkannya, ketik sahaja:
nama hos -I
Dan cari alamat format IPv4 (Untuk persediaan kami ialah: 192.168.0.27)
Langkah-langkah di atas akan membolehkan pi berjalan "tanpa kepala" yang bermaksud anda tidak perlu menaip papan kekunci ini lagi dan juga tidak memerlukan monitor video lagi. Kami akan log masuk melalui rangkaian melalui sambungan SSH yang selamat. Perintah di atas menyebabkan pelayan SSH dilancarkan secara automatik setiap kali pi dihidupkan. Ini sesuai untuk kita semasa kita membuat pengekodan tetapi kemudiannya mungkin menjadi risiko keselamatan (menjadi paranoid baik) jadi apabila anda sudah siap, anda dapat menonaktifkan fitur SSH auto start ini menggunakan perintah ini:
sudo systemctl lumpuhkan ssh
Perintah ini harus ditaip pada papan kekunci yang disambungkan ke pi tentu saja.
PuTTY adalah program terminal yang diperlukan untuk mengeluarkan arahan dari PC ke pi sehingga anda harus mengambil salinan terbaru dari sini.
Pasang dan mulakan PuTTY. Anda perlu memasukkan alamat IP dari atas pada entri Nama Host dan menggunakan tetapan SSH lalai. Beri sesi apa sahaja nama yang anda mahukan dan tekan save. Kemudian tekan load dan klik OPEN untuk memulakan sesi.
Ia akan membawa anda ke skrin log masuk untuk pi. Gunakan nama pengguna dan kata laluan yang sama dengan yang anda gunakan sebelumnya.
Langkah 5: Pasang Pigpio
Sekarang, satu-satunya perkara yang perlu kita pasang selepas ini ialah perpustakaan pigpio dan kita boleh melakukan ini dengan menggunakan perintah berikut.
Petua: Anda hanya boleh menyalin [ctrl + c] dan menampal [klik kanan tetikus] ini dan arahan lain ke terminal PuTTY
sudo apt-get kemas kini
sudo apt-get install pigpio python-pigpio python3-pigpio
Langkah 6: Pilihan: Penyediaan Sistem Dev
Jadi inilah petua yang dapat membantu menjimatkan masa dalam dunia pengembangan kod anda. Kami sangat membenci penyunting teks berasaskan unix. Antaramuka pengguna biasanya kekok dan fon menyedut. GNU nano hampir tertahankan tetapi tidak ada yang halus seperti SublimeText yang boleh anda muat turun dari sini
Kami mempunyai persekitaran pembangunan berasaskan windows dan suka menggunakan editor teks ini bila boleh. Jadi petua di sini adalah dalam mengatur sistem anda agar dapat menggunakan penyunting teks profesional ini secara asli di desktop windows anda untuk membuat kod langsung pada kepala tanpa kepala anda.
Bagaimana? Menggunakan aplikasi percuma bernama WinSCP yang boleh anda muat turun dari sini
Langkah 7: Menyiapkan WinSCP
WinSCP adalah program pemindahan fail yang selamat yang memberikan gambaran grafik mengenai fail yang terdapat pada rpi anda seperti apa yang anda lihat dalam pengurus fail pada PC windows anda.
Oleh itu, teruskan dan pasangkan dua program di atas juga sekarang.
Seterusnya anda perlu membuat beberapa penyesuaian agar semuanya berfungsi dengan baik.
Untuk WinSCP, anda boleh mengklik Laman BARU. Kami akan menggunakan tetapan SFTP lalai dan anda hanya perlu memasukkan alamat IP (untuk nama Host) pi anda dan nama log masuk (untuk nama Pengguna). Anda boleh memilih untuk membiarkan kata laluan kosong jika anda mahu - ia akan meminta kata laluan setiap kali anda log masuk.
Seterusnya, klik butang Advanced dan kemudian klik di sebelah kiri untuk tetapan Shell Alam Sekitar. Di sebelah kanan ubah "Default" tarik ke pilihan "sudo su -". Ini akan membolehkan perubahan ditulis ke pi anda tanpa kesalahan kebenaran semasa anda menekan save dari SublimeText.
Tetapkan SublimeText untuk menjadi Editor Lalai di WinSCP
Untuk melakukan ini, klik butang Alat pada skrin tetapan Masuk WinSCP di mana anda memulakan dialog NewSite. Dua tangkapan skrin menunjukkan bagaimana ini dikonfigurasi, tetapi pada dasarnya anda akan mengklik untuk mengkonfigurasi pilihan Editor dan Menambah Editor yang akan menjadi editor Luar. Anda kemudian boleh mencari fail.exe di mana editor ini berada di komputer anda.
Langkah 8: (w) mendapatkan Kod
Setelah selesai, teruskan dan log masuk dengan WinSCP dan dengan PuTTY.
Sekarang kita sudah bersedia untuk memulakan kod tinyLiDAR kami.
Buat direktori yang disebut tinyLiDAR di bawah direktori rumah / pi anda.
Anda boleh melakukan ini dengan melakukan klik kanan di sebelah kanan skrin WinSCP dan pilih Baru / Direktori.
Sekarang di terminal PuTTY anda boleh menaip
cd t
dan tekan tab untuk membiarkannya melengkapkan perintah anda secara automatik untuk sampai ke direktori tinyLiDAR.
Setelah di sini taipkan perkara berikut:
wget
untuk mendapatkan fail terus dari pelayan kami. Kami kemudian boleh membuka zipnya dengan menaip
unzip r
dan tekan tab untuk melengkapkan nama semula secara automatik
Untuk menjalankannya, taip sahaja
python tlgui.py
Dan tinyLiDAR anda akan bertindak balas terhadap setiap perintah anda pada pi:)
Langkah 9: Catatan untuk Penggodam yang Akan Datang
Teruskan dan lihat di bawah tudung dengan mengklik dua kali pada mana-mana fail kod dari WinSCP. Merekalah yang mempunyai sambungan.py. Fail-fail tersebut akan dibuka dalam SublimeText secara langsung di PC anda. Tukar apa sahaja yang anda suka dan tekan save. Perubahan anda akan disimpan terus ke pi anda.
Setelah siap, anda jalankan sekali lagi dengan menggunakan kekunci anak panah ke atas untuk arahan yang terakhir diketik atau ketik sekali lagi dan tekan enter:
python tlgui.py
Anda mungkin menyedari susun atur Terminal GUI kelihatan sedikit lebih baik daripada versi Arduino. Ini kerana PuTTY menyokong watak unicode, jadi kami dapat menggunakan beberapa watak kawalan kursor tambahan untuk membuatnya kelihatan lebih halus.
Terdapat juga perintah tambahan di sini (dibandingkan dengan versi Arduino) yang merupakan "dc" untuk fungsi Baca Berterusan. Cubalah dan lihat apa pendapat anda.
Itu sahaja!
Terima kasih kerana membaca dan menikmati penggodaman pada pi:)
Disyorkan:
Mengubah Pad Dance L-tek ke Poll pada 1000hz pada Windows dan Linux: 9 Langkah
Mengubah Pad Dance L-tek ke Poll pada 1000hz di Windows dan Linux: Mengapa mod ini? Sekiranya anda pernah menatal ke grafik pada lagu 125 BPM, anda mungkin tertanya-tanya, ada apa dengan boi spikey ini? Mengapa masa jatuh ke dalam "slot" diskrit? ITG dan DDR mempunyai tetingkap masa yang sangat ketat, dan dengan ini
Sensor Suhu & Daging BBQ pada ESP8266 Dengan Paparan: 5 Langkah (dengan Gambar)
Sensor Suhu & Daging BBQ pada ESP8266 Dengan Paparan: Dalam Instruksional ini, saya akan menunjukkan kepada anda cara membuat versi sendiri alat BBQ yang mengukur suhu semasa di barbeku anda dan menghidupkan kipas untuk menyalakannya jika diperlukan. Selain itu, terdapat juga sensor suhu teras daging
DIY Ambilight Dengan Raspberry Pi dan TIADA Arduino! Berfungsi pada Mana-mana Sumber HDMI: 17 Langkah (dengan Gambar)
DIY Ambilight Dengan Raspberry Pi dan TIADA Arduino! Berfungsi pada Mana-mana Sumber HDMI: Saya mempunyai pemahaman elektronik yang agak asas, sebab itulah saya sangat bangga dengan persediaan DIY Ambilight saya dalam kandang kayu asas dengan keupayaan untuk menyalakan dan mematikan lampu sesuka hati. Bagi mereka yang tidak tahu apa itu Ambilight;
Realiti Maya pada Raspberry Pi Dengan BeYourHero !: 19 Langkah (dengan Gambar)
Realiti Maya pada Raspberry Pi Dengan BeYourHero !: Selamat Datang di " Jadilah Pahlawan Anda " projek! Saya harap anda bersedia memasuki perendaman Realiti Maya generasi seterusnya! Projek ini akan memberi anda kawalan gerak isyarat sepenuhnya kepada Wira maya yang anda suka dengan satu set peranti mudah yang murah dengan menggunakan
Memasang Windows pada Pemacu Luaran Dengan Partition Mac pada Mac: 5 Langkah (dengan Gambar)
Memasang Windows pada Pemacu Luaran Dengan Partisi Mac di Mac: Sekiranya anda telah membeli sesuatu seperti MacBook pro asas dan menyimpan sedikit wang tunai, tetapi kemudian segera menghadapi masalah penyimpanan ketika cuba memasang tetingkap menggunakan Bootcamp Kita semua tahu bahawa 128 gb tidak diperlukan ini supaya kita mungkin membeli sesuatu