6.6 KiB
تشخیص نزدیکی - سختافزار مجازی IoT
در این بخش از درس، شما یک حسگر نزدیکی به دستگاه IoT مجازی خود اضافه میکنید و فاصله را از آن میخوانید.
سختافزار
دستگاه IoT مجازی از یک حسگر فاصله شبیهسازیشده استفاده خواهد کرد.
در یک دستگاه IoT فیزیکی، شما از حسگری با ماژول اندازهگیری لیزری برای تشخیص فاصله استفاده میکنید.
افزودن حسگر فاصله به CounterFit
برای استفاده از یک حسگر فاصله مجازی، باید یکی را به برنامه CounterFit اضافه کنید.
وظیفه - افزودن حسگر فاصله به CounterFit
حسگر فاصله را به برنامه CounterFit اضافه کنید.
-
کد
fruit-quality-detector
را در VS Code باز کنید و مطمئن شوید که محیط مجازی فعال شده است. -
یک بسته اضافی Pip نصب کنید تا یک CounterFit shim نصب شود که بتواند با حسگرهای فاصله از طریق شبیهسازی بسته rpi-vl53l0x Pip ارتباط برقرار کند، یک بسته پایتون که با حسگر فاصله VL53L0X تعامل دارد. مطمئن شوید که این را از یک ترمینال با محیط مجازی فعال نصب میکنید.
pip install counterfit-shims-rpi-vl53l0x
-
مطمئن شوید که برنامه وب CounterFit در حال اجرا است.
-
یک حسگر فاصله ایجاد کنید:
-
در جعبه Create sensor در پنل Sensors، جعبه Sensor type را باز کنید و Distance را انتخاب کنید.
-
Units را به
Millimeter
بگذارید. -
این حسگر یک حسگر I2C است، بنابراین آدرس را به
0x29
تنظیم کنید. اگر از یک حسگر فیزیکی VL53L0X استفاده میکردید، این آدرس به صورت پیشفرض تنظیم شده بود. -
دکمه Add را انتخاب کنید تا حسگر فاصله ایجاد شود.
حسگر فاصله ایجاد خواهد شد و در لیست حسگرها ظاهر میشود.
-
برنامهنویسی حسگر فاصله
اکنون دستگاه IoT مجازی میتواند برای استفاده از حسگر فاصله شبیهسازیشده برنامهریزی شود.
وظیفه - برنامهنویسی حسگر زمان پرواز
-
یک فایل جدید در پروژه
fruit-quality-detector
به نامdistance-sensor.py
ایجاد کنید.💁 یک روش آسان برای شبیهسازی چندین دستگاه IoT این است که هر کدام را در یک فایل پایتون جداگانه انجام دهید و سپس آنها را به طور همزمان اجرا کنید.
-
یک اتصال به CounterFit با کد زیر شروع کنید:
from counterfit_connection import CounterFitConnection CounterFitConnection.init('127.0.0.1', 5000)
-
کد زیر را در زیر این اضافه کنید:
import time from counterfit_shims_rpi_vl53l0x.vl53l0x import VL53L0X
این کتابخانه شبیهسازی حسگر VL53L0X را وارد میکند.
-
در زیر این، کد زیر را برای دسترسی به حسگر اضافه کنید:
distance_sensor = VL53L0X() distance_sensor.begin()
این کد یک حسگر فاصله را اعلام میکند و سپس حسگر را شروع میکند.
-
در نهایت، یک حلقه بینهایت برای خواندن فاصلهها اضافه کنید:
while True: distance_sensor.wait_ready() print(f'Distance = {distance_sensor.get_distance()} mm') time.sleep(1)
این کد منتظر میماند تا یک مقدار آماده خواندن از حسگر باشد و سپس آن را در کنسول چاپ میکند.
-
این کد را اجرا کنید.
💁 فراموش نکنید که این فایل
distance-sensor.py
نام دارد! مطمئن شوید که آن را از طریق Python اجرا میکنید، نهapp.py
. -
شما اندازهگیریهای فاصله را در کنسول مشاهده خواهید کرد. مقدار را در CounterFit تغییر دهید تا این مقدار تغییر کند یا از مقادیر تصادفی استفاده کنید.
(.venv) ➜ fruit-quality-detector python distance-sensor.py Distance = 37 mm Distance = 42 mm Distance = 29 mm
💁 شما میتوانید این کد را در پوشه code-proximity/virtual-iot-device پیدا کنید.
😀 برنامه حسگر نزدیکی شما موفقیتآمیز بود!
سلب مسئولیت:
این سند با استفاده از سرویس ترجمه هوش مصنوعی Co-op Translator ترجمه شده است. در حالی که ما تلاش میکنیم دقت را حفظ کنیم، لطفاً توجه داشته باشید که ترجمههای خودکار ممکن است شامل خطاها یا نادرستیها باشند. سند اصلی به زبان اصلی آن باید به عنوان منبع معتبر در نظر گرفته شود. برای اطلاعات حساس، توصیه میشود از ترجمه حرفهای انسانی استفاده کنید. ما مسئولیتی در قبال سوء تفاهمها یا تفسیرهای نادرست ناشی از استفاده از این ترجمه نداریم.