فهرست مطالب:

MicroPython در صفحه حسگر هنرهای پیچیده: 3 مرحله
MicroPython در صفحه حسگر هنرهای پیچیده: 3 مرحله

تصویری: MicroPython در صفحه حسگر هنرهای پیچیده: 3 مرحله

تصویری: MicroPython در صفحه حسگر هنرهای پیچیده: 3 مرحله
تصویری: Course Lesson 4 of 10: Raspberry Pi Pico Expansion board for 4WD Smart Car Kit 2024, نوامبر
Anonim
MicroPython در صفحه سنسور هنرهای پیچیده
MicroPython در صفحه سنسور هنرهای پیچیده
MicroPython در صفحه سنسور هنرهای پیچیده
MicroPython در صفحه سنسور هنرهای پیچیده

یکی از شگفت انگیزترین جنبه های میکروکنترلر ESP32 توانایی آن در اجرای MicroPython است. این را می توان به دو طریق انجام داد: اجرای کامل برنامه های پایتون یا تعاملی از طریق یک برنامه کنسول. این دستورالعمل نحوه استفاده از MicroPython را با استفاده از برد سنسور هنرهای پیچیده نشان می دهد. ما ابتدا یک برنامه کاربردی را اجرا می کنیم که داده های شتاب سنج را از IMU BNO_085 جمع آوری می کند ، سپس از یک برنامه سریال برای برنامه ریزی تعاملی در پایتون استفاده می کنیم.

سطح: این آموزش برخی از دانش پایتون را فرض می کند و پایتون نصب شده است. همچنین فرض می کند که از دستورات اصلی ترمینال آگاهی دارید.

ابزارها: تنها ابزار مورد نیاز ما Sensor Board ، یک برنامه ترمینال و یک برنامه کنسول سریال است. در Mac ، می توانید به سادگی از ترمینال استفاده کنید. در دستگاه Windows ، باید برنامه ترمینال را بارگیری و نصب کنید. برای کنسول سریال بتونه همیشه انتخاب خوبی است.

مرحله 1: دریافت نرم افزار و کتابخانه ها

برای شروع ، ما باید سیستم عامل سفارشی ارائه شده توسط Complex Arts را بارگیری کرده و سپس آن را به صفحه سنسور فلش کنیم. سیستم عامل را می توانید در اینجا پیدا کنید:

فایل firmware.bin را بارگیری کرده و در پوشه دلخواه خود قرار دهید. شما همچنین در نهایت به برنامه نمونه هنرهای پیچیده احتیاج خواهید داشت ، بنابراین ممکن است اکنون این کار را انجام دهید. به آدرس: https://github.com/ComplexArts/SensorBoardPython بروید و git را کلون کرده یا در مکان دلخواه بارگیری کنید.

پس از دریافت فایل ها ، ما به چند بسته برای ارتباط با ESP32 نیاز داریم. اولین بسته ای که به آن نیاز داریم esptool.py است. برای نصب آن کافی است تایپ کنید

pip نصب esptool

در ترمینال

پس از نصب esptool ، می توانیم تراشه را پاک کرده و دوباره فلش کنیم. برای انجام این کار ، وارد شوید

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

برای پورت ، پورت سریال منطبق با برد سنسور را وارد کنید. در Mac ، این چیزی شبیه به --port /dev /ttyUSB0 است

پس از انجام این کار ، تراشه را با عبارت زیر فلش می کنیم:

esptool.py -چیپ esp32 --port COM4 -baud 460800 write_flash -z 0x1000 firmware.bin

مجدداً بر اساس آن پورت را تغییر دهید.

مرحله 2: کار با MicroPython

کار با MicroPython
کار با MicroPython

اگر خروجی سریال Sensor Board را در این مرحله بررسی کنیم ، Python REPL (حلقه read-eval-print: >>>) را مشاهده می کنیم. برای انجام این کار ، به یک برنامه کنسول سریال نیاز داریم. Putty یک گزینه خوب است زیرا گزینه هایی برای SSH و Telnet ارائه می دهد ، اما همچنین ارتباط سریالی ساده ای را که در اینجا انجام می دهیم ارائه می دهد. putty.org. پس از نصب آن ، آن را باز کرده و "Serial" را در قسمت "Connection type:" انتخاب کنید. باید همان نام پورت سریال را که برای esptool بالا وارد کرده اید ، وارد کنید ، سپس نرخ باتری 115200 را برای Speed وارد کنید. پیش بروید و روی "باز کردن" کلیک کنید. و پایتون وجود دارد!

اکنون ما می خواهیم کد نمونه خود را بارگذاری و اجرا کنیم. برای انجام این کار ، به پوشه ای بروید که قبلاً نمونه های SensorBoardPython را ذخیره کرده اید. ما به بسته آمپي فوق العاده Adafruit نياز داريم. می توانید آن را با موارد زیر نصب کنید:

pip install adafruit-ampy = 0.6.3

پس از تهیه ، از ampy برای بارگذاری مثال شتاب سنج بر روی صفحه استفاده کنید:

ampy -p COM4 accelerometer.py قرار دهید

(البته بر این اساس پورت را تغییر دهید). حالا با دکمه ریست برد خود را ریست کنید. در این مرحله به Putty باز می گردیم و در دستور >>> تایپ می کنیم

واردات شتاب سنج

ویولا! اکنون کد accelerometer.py را روی برد سنسور اجرا می کنید! کد 20 ثانیه اجرا می شود ، سپس متوقف می شود. توجه داشته باشید که در حالی که کد شتاب سنج در حال اجرا است ، LED آبی روی برد چشمک می زند. برای کسانی که بیشتر با پایتون آشنا هستند ، متوجه خواهید شد که این کار بدون نخ و بدون تاخیر انجام می شود (). این به دلیل استفاده از کتابخانه asyncio پایتون است که روشهای عالی برای اجرای همزمان کارها ارائه می دهد و در سیستم عاملهای تعبیه شده مانند ESP32 بسیار مفید است. اگر با آن آشنا نیستید ، ارزش بررسی آن را دارد ؛ یک آموزش عالی در اینجا وجود دارد: https://github.com/peterhinch/micropython-async/b… (اما هشدار دهید ، کمی سرسخت است).

مرحله 3: MicroPython Over Serial

بازگشت به کار مورد نظر! وقتی کد شتاب سنج متوقف شد ، دوباره پایتون را مشاهده می کنید >>>. اکنون می توانیم به صورت تعاملی از Sensor Board به عنوان مترجم پایتون خود برنامه نویسی کنیم. برای انجام این کار ، وارد شوید

>> x = 10

>> y = 11

>> x + y

21

در حالی که این ابتدایی ترین نمونه ها است ، ما به راحتی می توانیم با استفاده از کتابخانه های Complex Arts به عنوان نقطه شروع ، کد پیچیده تری ایجاد کنیم. این به شما این امکان را می دهد تا با کنترل زمان واقعی ، اندازه گیری و حرکت موقعیتی را در حال پرواز انجام دهید. با استفاده از پین های GPIO موجود در صفحه سنسور ، می توانید سرویس ها ، چراغ ها ، سنسورها ، موتورها یا هر دستگاه فیزیکی را به راحتی وصل کنید ، یا از طریق تعاملی یا از طریق برنامه پایتون. خوش بگذره!

برای اطلاعات بیشتر ، این منابع دیگر را بررسی کنید:

complexarts.net/home/

complexarts.net/docs/bno085/

توصیه شده: