میکروبیت micro:bit میکروپایتون Micropython

ارسال و دریافت مقادیر سنسور دما بین بردهای میکروبیت micro:bit

نوشته شده توسط CiferTech

برد های میکروبیت در سال های اخیر شاهد تغییرات چشم‌گیر بوده‌اند که باعث جلب توجه توسعه دهندگان امبدد قرار گرفته‌اند اضافه شدن سنسور ها و قابلیت های متعدد به این برد ها، از جمله دلایل این مورد بوده است. در این آموزش قصد دارم به شما آموزش انتقال دیتا بین برد های میکروبیت را بدهم، که به راحتی قادر خواهید بود با استفاده از سنسور داخلی دما در این برد ها و استفاده از تراشه Nrf این انتقال دیتا را عملی کنیم، بدون استفاده از هیچ گونه اتصالات خارجی قفط و فقط با استفاده از خود برد های microbit. در ادامه پروژه دماسنج میکروبیت ارسال و دریافت مقادیر دما بین برد های میکروبیت با مرجع تخصصی آردوینو به زبان فارسی، دیجی اسپارک همراه باشید.

سنسور دما سنج برد میکروبیت - دیجی اسپارک

 


برد میکروبیت Mirco:bit


BBC micro:bit یک کامپیوتر جیبی است که شما را با نحوه کار نرم افزار و سخت افزار با هم آشنا می کند. دارای نمایشگر LED، سنسورها و بسیاری از ویژگی‌های ورودی/خروجی (GPIO) است که در صورت برنامه‌ریزی، به آن اجازه می‌دهد با شما و دنیای شما تعامل داشته باشد. micro:bit به شما کمک می کند تا بفهمید کامپیوترها چگونه کار می کنند. وقتی روی لپ‌تاپ تایپ می‌کنید یا صفحه نمایش تلفنتان را لمس می‌کنید، از یک دستگاه ورودی استفاده می‌کنید. ورودی‌ها به رایانه‌ها اجازه می‌دهند اتفاق‌هایی را که در دنیای واقعی اتفاق می‌افتند حس کنند، بنابراین می‌توانند روی این موضوع عمل کنند و کاری کنند که معمولاً روی یک خروجی مانند صفحه نمایش یا هدفون اتفاق بیفتد. در بین ورودی و خروجی، پردازنده وجود دارد. این اطلاعات را از ورودی‌هایی مانند دکمه‌ها می‌گیرد و باعث می‌شود در خروجی‌ها اتفاقی بیفتد، مانند پخش یک آهنگ در هدفون.
شناخت برد میکروبیت Mirco:bit اجرای پروژه - دیجی اسپارک

 

این دستگاه به اندازه نصف یک کارت اعتباری توصیف شده است و دارای یک پردازنده ARM Cortex-M0، حسگرهای شتاب سنج و مغناطیس سنج، اتصال بلوتوث و USB، نمایشگری متشکل از ۲۵ LED، دو دکمه قابل برنامه ریزی است. ورودی و خروجی دستگاه از طریق پنج کانکتور است. همچنین در سال ۲۰۲۰، یک برد V2 از نظر فیزیکی تقریبا یکسان منتشر شد که دارای یک میکروکنترلر Cortex-M4F، با حافظه بیشتر و سایر ویژگی‌های جدید است.

 


روش کار پروژه دماسنج میکروبیت


پروژه دماسنج میکروبیت از دو برنامه مختلف استفاده می کند، یکی برای micro:bit در فضای باز که دما را حس کرده و در گروه رادیویی ۲۳ ارسال می کند. میکروبیت از سنسور دمای خود برای اندازه گیری گرم یا سرد بودن دما استفاده می کند. از رادیو برای ارسال این دما به میکروبیت دوم استفاده می کند. هنگامی که میکروبیت داخلی یک دما را از خارج دریافت می کند، آن را در متغیری به نام outdoorTemp ذخیره می کند. وقتی دکمه ورودی A را روی میکروبیت داخلی فشار می دهید، دمای فعلی خود را در خروجی نمایشگر LED نشان می دهد. و در ادامه وقتی دکمه B را فشار می‌دهید، دمایی که از خارج در متغیر OutdoorTemp ذخیره کرده است را نشان می‌دهد.

روش کار پروژه دماسنج میکروبیت - دیجی اسپارک

 


وسایل مورد نیاز


دو عدد برد میکروبیت v2

باتری (در صورت نیاز)

پروژه دماسنج میکروبیت - دیجی اسپارک

 


اتصالات پروژه سنسور دما میکروبیت


در پروژه دماسنج میکروبیت تنها از دو عدد برد میکروبیت استفاده می‌کنیم، در نتیجه نیازی به اتصالات اضافی نداریم، تنها با پروگرام کردن هردو برد و تغذیه آنها قادر خواهید بود پروژه را بدون مشکلی اجرا کنید، سنسور های دما و ماژول رادیویی برای انتقال دیتا در خود برد میکروبیت نصب شده‌اند. و بصورت نر‌م‌افزاری قابل تعریف خواهند بود.

اتصالات پروژه سنسور دما میکروبیت micro:bit - دیجی اسپارک

 


کدنویسی در محیط MakeCode


پروگرام کردن برد های میکروبیت به لطف پلتفرم MakeCode بسیار آسان شده، و به کاربر این امکان را می‌دهد تا در محیط وب اقدام به کدنویسی و پروگرام کردن برد میکروبیت خود بپردازیم. به نقل از سازندگان این پلتفرم، Microsoft MakeCode یک پلتفرم رایگان و منبع باز برای ایجاد تجربیات یادگیری جذاب علوم کامپیوتر است که از مسیر پیشرفت به سمت برنامه نویسی در دنیای واقعی پشتیبانی می کند. این پلتفرم از چند بخش تشکیل شده.

  1. شبیه‌ساز که یک شبیه ساز تعاملی است که بازخورد فوری در مورد نحوه اجرای برنامه را ارائه می دهد و آزمایش و اشکال زدایی کد آنها را آسان می کند.
  2. بلوک ادیتور که این امکان را می‌دهد تا با بلوک‌های رنگی که می‌توانند آن‌ها را جابجا و روی فضای کاری خود رها کنند تا برنامه‌هایشان را بسازند.
  3. ادیتور کد که امکان ویرایش و نوشتن کد های پروژه دماسنج میکروبیت را به دو زبان java scrpt و python را فراهم می‌کند.
  • پس از ورود به سایت MakeCode در صفحه پروژه خود آیکون زیر را مشاهده می‌کنید که امکان دانلود را برای شما فراهم می‌کند، همچنین می‌توانید با اتصال برد میکروبیت به سیستم خود، کد پروژه را بطور مستقیم در برد خود آپلود کنید.

 

  • پس از اتصال میکروبیت، آیکون به شکل زیر نمایش داده خواهد شد، اما ابتدا باید برد را به مرورگر معرفی کنید.

 

  • در صفحه‌ای که به شکل خودکار برای شما باز خواهد شد، برد میکروبیت مدنظر خود را انتخاب کنید.

اجرای پروژه سنسور دما میکروبیت micro:bit - دیجی اسپارک

 

  • تنها با این حرکت برد شما توسط مروگر و سایت MakeCode با موفقیت معرفی شد.

آپلود کدهای پروژه سنسور دما میکروبیت - دیجی اسپارک

 

  • بلوک های مورد نیاز برای میکروبیت در نقش ارسال کننده به شرح زیر است.

بلوک های کدنویسی در makecode - دیجی اسپارک

 

  • بلوک های مورد نیاز برای میکروبیت در نقش دریافت کننده به شرح زیر است.

بلوک های میکروبیت در نقش دریافت کننده - دیجی اسپارک

 


کد های پروژه دماسنج میکروبیت


همچنین می‌توانید با استفاده از کد های زیر برای هر برد در نقش های مشخص شده اقدام به راه‌اندازی پروژه دماسنج میکروبیت کنید، برای این مورد می‌توانید از بخش ادیتور در سایت MakeCode و یا ادیتور مدنظر با قابلیت ساپورت از میکروپایتون اقدام به راه‌اندازی پروژه کنید.

  • کد مورد نیاز برای میکروبیت در نقش ارسال کننده.
from microbit import *
import radio
radio.config(group=23)
radio.on()

while True:
    radio.send(str(temperature()))
    sleep(5000)

 

  • کد مورد نیاز برای میکروبیت در نقش دریافت کننده.
from microbit import *
import radio
radio.config(group=23)
radio.on()
outdoorTemp = '-'

while True:
    message = radio.receive()
    if message:
        outdoorTemp = message
    if button_a.was_pressed():
        display.scroll(str(temperature()))
    if button_b.was_pressed():
        display.scroll(outdoorTemp)

 

 


نتیجه نهایی


پس از آپلود کد ها در برد های مشخص شده در نقش های مختلف مانند تصویر زیر وقتی دکمه ورودی A را در میکروبیت داخلی فشار می دهیم، دمای فعلی خود را در خروجی نمایشگر LED نشان می دهد. و در ادامه وقتی دکمه B را فشار می‌دهیم، دمایی که از خارج در متغیر OutdoorTemp ذخیره کرده است را نشان می‌دهد. همچنین برای جالب تر کردن پروژه می‌توانیم با خاموش کردن رادیو میکروبیت در فضای باز در زمانی که از آن استفاده نمی کنید و ارسال دما به دفعات کمتر، باتری ها دوام بیشتری داشته باشند. و یا از متغیرها برای ردیابی بالاترین و پایین‌ترین دمای ثبت شده استفاده کنیم.

پروژه سنجش دما با دو عدد برد میکروبیت - دیجی اسپارک

 


کلام آخر با سایفر


پروژه های میکروبیت به دلیل پلتفرم MakeCode و سنسور های متعددی که در برد میکروبیت قرار داده شده می‌توانند فرصت مناسبی برای یادگیری میکروپایتون و نحوه استفاده از قابلیت های این برد و همچنین بدست آوردن تجربه در میکروپایتون باشند. همچنین شما می‌تونید در صورت علاقمند بودن به زبان میکروپایتون آموزش های منتشر شده مربوط به میکروپایتون و ESP32 را نیز در سایت دیجی‌اسپارک مشاهده کنید.

چنانچه در مراحل راه اندازی و انجام این پروژه با مشکل مواجه شدید، بدون هیچ نگرانی در انتهای همین پست، به صورت ثبت نظر سوالتان را مطرح کنید. من در سریع‌ترین زمان ممکن پاسخ رفع مشکل شما را خواهم داد. همچنین اگر ایرادی در کدها و یا مراحل اجرایی وجود دارند می‌توانید از همین طریق اطلاع رسانی کنید.

 

در پایان نظرات و پیشنهادات خود را با ما درمیان بگذارید و با اشتراک گذاری این آموزش در شبکه های اجتماعی , از وبسایت دیجی اسپارک حمایت کنید.

 

درباره نویسنده

CiferTech

تبادل نظر و رفع عیب با ثبت دیدگاه