ربات جاروبرقی یکی از مفیدترین اختراعات دهه اخیر است و هرکسی جور دیگری بگوید به این معنی است که او ندارد! این لوازم خانگی خارقالعاده، تمرکزی از فناوری است: یک سیستم تعبیهشده پیچیده متشکل از چند میکروکنترلر، سنسورهای بسیار، و بسیاری از نرمافزارها!
![](https://duino4projects.com/wp-content/uploads/2022/07/TinyML-Slope-Control-for-Robots-With-Arduino-Pro.-Building-an-Inclination-Estimator-System-With-Nicla-Sense-ME-and-Neuton.jpg)
اما چند بار احساس می کنید که ربات شما احمق است؟ به ویژه، در شرایطی که کمک کوچک شما روی مانعی مانند فرش خانه، قفسه خشک کن و غیره می بندد. چگونه قبل از اینکه خیلی دیر شود، این موضوع را تشخیص دهیم؟
یک هک برای جلوگیری از این وضعیت آزاردهنده این است که مسیر ربات را در زمان واقعی با توجه به کف محاسبه کرده و تصمیمات را با توجه به موقعیت فعلی آن انجام دهید. به عنوان مثال، اگر شیب بیش از 4 درجه باشد، ربات خود را متوقف می کند و به عقب برمی گردد.
در این آموزش، من با استفاده از یک تکنیک مبتنی بر داده، یادگیری ماشین ، به این مشکل می پردازم و نحوه پیاده سازی یک سیستم برآوردگر شیب را بر اساس شتاب سنج با استفاده از مدل ML بر روی برد آردوینو پرو نشان می دهم . برای آموزش و استقرار این مدل بر روی یک میکروکنترلر، من از Neuton استفاده میکنم ، یک چارچوب TinyML که امکان ساخت خودکار شبکههای عصبی را بدون تجربه یادگیری ماشین و جاسازی آنها در دستگاههای محاسباتی کوچک فراهم میکند.
تدارکات
![](https://duino4projects.com/wp-content/uploads/2022/07/Supplies-19.jpg)
مدل ML بر روی برد Arduino Nicla Sense ME ، یک برد کوچک و کم مصرف آردوینو با قدرت محاسباتی قوی، مستقر خواهد شد. این بر اساس یک میکروکنترلر 32 بیتی با 4 سنسور حرکت، مغناطیس سنج، فشار و گاز است. برای پروژه هایی که نیاز به ترکیب اندازه گیری حسگر و وظایف هوش مصنوعی در یک دستگاه کوچک دارند، مناسب است. بهترین بازی برای این آزمایش!
نیکلا بخشی از پلتفرم آردوینو پرو است . برای شروع کار با Nicla ، کافی است از Arduino IDE استفاده کنید و بسته “ Arduino Mbed OS Nicla Boards” را از مدیر برد دانلود کنید.
برد آردوینو را با استفاده از کابل USB به کامپیوتر خود وصل کنید و ... تمام شد! برد شما برای ارتباط با IDE آماده است.
قبل از اینکه «دستهایتان را کثیف کنید» با یادگیری ماشین، بررسی کنید که نیکلا درست کار میکند: طرح « Nicla_Blink » را در نمونههای « Nicla_Sense_System» باز کنید و آن را آپلود کنید. LED نصب شده روی Nicla شما شروع به چشمک زدن سبز می کند.
اندازه گیری شتاب سنج توسط بوش BHI260AP انجام می شود : یک سنسور IMU 6 محوره نصب شده بر روی Nicla .
برای اطمینان از اینکه همه حسگرهای Nicla به درستی کار می کنند، کتابخانه Arduino_BHY2 را از مدیر کتابخانه دانلود کنید و مثال " Standalone " را باز کنید.
این مثال را روی برد آردوینو آپلود کنید و نتایج را در پلاتر سریال ببینید . این طرح تمام داده های حسگرها ( شتاب، دما، گاز و غیره ) را پیکربندی و می خواند.
اکنون، نیکلا واقعاً آماده است!
مرحله 1: ساخت مدل
![](https://duino4projects.com/wp-content/uploads/2022/07/Model-Building.jpg)
این سیستم برای تخمین شیب فقط در امتداد یک محور طراحی شده است و مقدار شیب بر حسب درجه در [0° بیان می شود. دامنه 5 درجه _ _