Daftar Isi:

MicroPython pada Papan Sensor Seni Kompleks: 3 Langkah
MicroPython pada Papan Sensor Seni Kompleks: 3 Langkah

Video: MicroPython pada Papan Sensor Seni Kompleks: 3 Langkah

Video: MicroPython pada Papan Sensor Seni Kompleks: 3 Langkah
Video: Tutorial Ultrasonic Sensor Micropython | ESP8266 NodeMCU 2024, November
Anonim
MicroPython pada Papan Sensor Seni Kompleks
MicroPython pada Papan Sensor Seni Kompleks
MicroPython pada Papan Sensor Seni Kompleks
MicroPython pada Papan Sensor Seni Kompleks

Salah satu aspek yang paling menakjubkan dari mikrokontroler ESP32 adalah kemampuannya untuk menjalankan MicroPython. Ini dapat dilakukan dengan dua cara: menjalankan program Python penuh, atau secara interaktif melalui aplikasi konsol. Instruksi ini akan mendemonstrasikan cara menggunakan MicroPython secara dua arah menggunakan Papan Sensor Seni Kompleks. Pertama-tama kita akan menjalankan aplikasi contoh yang mengumpulkan data accelerometer dari BNO_085 IMU, kemudian kita akan menggunakan program serial untuk memprogram secara interaktif dengan Python.

Level: Tutorial ini mengasumsikan beberapa pengetahuan tentang Python, dan Python telah diinstal. Itu juga mengasumsikan pengetahuan tentang perintah terminal dasar.

Alat: Satu-satunya alat yang kita perlukan adalah Papan Sensor, program terminal, dan program konsol serial. Di Mac, Anda cukup menggunakan terminal. Pada mesin Windows, Anda harus mengunduh dan menginstal program terminal. Untuk konsol serial. Putty selalu merupakan pilihan yang baik.

Langkah 1: Mendapatkan Firmware dan Perpustakaan

Untuk memulai, kita harus mengunduh firmware khusus yang disediakan oleh Complex Arts dan kemudian mem-flash-nya ke Sensor Board. Firmware dapat ditemukan di sini:

Unduh file firmware.bin dan letakkan di folder yang Anda pilih. Anda juga pada akhirnya akan membutuhkan program contoh Seni Kompleks, jadi sebaiknya lakukan itu sekarang; buka: https://github.com/ComplexArts/SensorBoardPython dan git clone atau unduh ke lokasi yang Anda pilih.

Setelah Anda mendapatkan file, kami memerlukan beberapa paket untuk berinteraksi dengan ESP32. Paket pertama yang kita perlukan adalah esptool.py. Untuk menginstalnya, cukup ketik

pip install esptool

di terminal.

Setelah esptool terinstal, kita bisa menghapus kemudian mem-flash ulang chip tersebut. Untuk melakukannya, masukkan

esptool.py --chip esp32 --port COM4 erase_flash

untuk portnya masukkan serial port yang berhimpitan dengan Sensor Board. Di Mac, itu akan terlihat seperti --port /dev/ttyUSB0

Setelah ini selesai, kami akan mem-flash chip dengan:

esptool.py --chip esp32 --port COM4 --baud 460800 write_flash -z 0x1000 firmware.bin

Sekali lagi, ubah port yang sesuai.

Langkah 2: Bekerja Dengan MicroPython

Bekerja Dengan MicroPython
Bekerja Dengan MicroPython

Jika kita memeriksa output serial dari Sensor Board pada titik ini, kita akan melihat REPL Python (loop read-eval-print: >>>) Untuk melakukan ini, kita memerlukan program konsol serial. Putty adalah pilihan yang baik karena menyediakan pilihan untuk SSH dan telnet, tetapi juga komunikasi serial sederhana seperti yang akan kita lakukan di sini. dempul.org. Setelah Anda menginstalnya, buka dan pilih "Serial" di bawah "Jenis koneksi:" Anda harus mengetikkan nama port serial yang sama dengan yang Anda masukkan untuk esptool di atas, lalu baud rate 115200 untuk Kecepatan. Silakan dan klik "Buka". Dan ada Python!

Sekarang kita ingin mengunggah dan menjalankan kode contoh kita. Untuk melakukannya, buka folder tempat Anda menyimpan contoh SensorBoardPython sebelumnya. Kami membutuhkan paket ampy yang luar biasa dari Adafruit. Anda dapat menginstalnya dengan:

pip install adafruit-ampy=0.6.3

Setelah Anda memilikinya, gunakan ampy untuk mengunggah contoh akselerometer ke papan:

ampy -p COM4 masukkan accelerometer.py

(mengubah port yang sesuai, tentu saja). Sekarang setel ulang papan Anda dengan tombol reset. Kami akan kembali ke Putty pada titik ini dan pada prompt >>>, ketik

akselerometer impor

Biola! Anda sekarang menjalankan kode accelerometer.py di Sensor Board! Kode akan berjalan selama 20 detik, lalu berhenti. Perhatikan bahwa saat kode akselerometer berjalan, LED biru di papan berkedip. Bagi mereka yang lebih akrab dengan Python, Anda akan melihat ini dilakukan tanpa threading dan tanpa penundaan(). Itu karena penggunaan pustaka asyncio Python, yang menyediakan metode hebat untuk menjalankan tugas secara bersamaan dan sangat berguna pada platform tertanam seperti ESP32. Jika Anda tidak terbiasa dengannya, ada baiknya untuk dicoba; ada tutorial yang bagus di sini: https://github.com/peterhinch/micropython-async/b… (tapi berhati-hatilah, ini sedikit memabukkan).

Langkah 3: MicroPython Over Serial

Kembali ke tugas yang ada! Saat kode akselerometer berhenti, Anda akan melihat kembali Python >>>. Sekarang kita dapat memprogram secara interaktif menggunakan Sensor Board sebagai interpreter Python kita. Untuk melakukannya, masukkan

>>x = 10

>>y = 11

>>x + y

21

Meskipun ini adalah contoh paling dasar, kita dapat dengan mudah mulai membuat kode yang lebih kompleks menggunakan perpustakaan Seni Kompleks sebagai titik awal. Ini memungkinkan Anda untuk menjalankan pengukuran posisi dan gerakan dengan cepat, dengan kontrol waktu nyata. Dengan pin GPIO yang tersedia di Sensor Board, Anda dapat dengan mudah menghubungkan servo, lampu, sensor, motor, atau perangkat fisik lainnya, menggunakannya secara interaktif, atau melalui program Python. Selamat bersenang-senang!

Untuk informasi lebih lanjut, lihat sumber daya lain ini:

complexarts.net/home/

complexarts.net/docs/bno085/

Direkomendasikan: