فهرست مطالب:
- مرحله 1: اجزاء
- مرحله 2: برد سرور
- مرحله 3: رمزگذار سرور: کپی و چسباندن
- مرحله 4: هیئت مدیره مشتری
- مرحله 5: کد مشتری: کپی و چسباندن
- مرحله 6: نکته ای در مورد کد:
تصویری: سروو کنترل بی سیم: 6 مرحله
2024 نویسنده: John Day | [email protected]. آخرین اصلاح شده: 2024-01-30 08:57
این پروژه چرخش سروو را به صورت بی سیم با استفاده از پتانسیومتر (دستگیره) کنترل می کند. چرخش تا 180 درجه محدود شده است.
مرحله 1: اجزاء
این پروژه شامل
- 2 برد کنترل Arduino UNO با کابل اتصال USB
- 2 ماژول فرستنده گیرنده nRF24L01-2.4GHz (برای کمک به این ماژول ها به
- 2 تخته آداپتور سوکت (تراشه های کوله پشتی) برای nRF24L01
- 1 اختیاری Arduino Compatible 328 ProtoShield Prototype Expansion Board
- 1 سروو
- 1 پتانسیومتر آنالوگ
- لحیم کاری و لحیم کاری
- سیم
- انبردست بینی سوزنی
- روکش عایق ، من از نوار برقی استفاده کردم
مرحله 2: برد سرور
برد سرور شامل یک ماژول فرستنده گیرنده ، برد محافظ (که فقط از یک جهت مستقیماً به برد آردوینو متصل می شود) و سروو می باشد. من تصمیم گرفتم که تخته محافظ را برای جلوگیری از تخته ناهنجار ناشیانه در نظر بگیرم و پروژه را به طور کامل تمیز کنم.
کد و منبع وب موجود در لیست اجزاء ، اتصالات ماژول فرستنده را نشان می دهد. تصمیم گرفتم به جای استفاده از اتصالات موقت مانند پروژه های قبلی ، اتصالات را لحیم کنم. از آنجا که من مبتدی هستم ، هر قسمت لحیم کاری را با نوار برقی عایق بندی کردم (آنها زیبا نبودند).
پین های تخته محافظ مستقیماً با پین های آردوینو مطابقت دارند. قبل از اتصال تخته محافظ ، زمین و پایه های 5 ولتی را با سیم و لحیم به ریل های برد وصل کردم. همچنین سیم های 5 ولت و زمین قطعات را به ریل های برد محافظ لحیم کردم ، سپس سرانجام آردوینو را به برد سپر وصل کردم.
سروو برای برق به پین 3 ولت و برای ارتباط به پین دیجیتال 2 متصل است.
** توجه: فقط پس از اتمام این ساخت متوجه شدم که برد های آردوینو من یکسان نیستند. فرستنده گیرنده سرور من از ریل 5 ولت روی برد محافظ تغذیه می کند ، در حالی که گیرنده گیرنده از پین 3 ولت تغذیه می کند ، اگرچه من معتقد بودم که عملکرد تراشه آداپتور بر روی فرستنده گیرنده ارائه ولتاژ مناسب است. تنها چیزی که می توانم با اطمینان بگویم این است که کد ارائه شده مطابق با پیکربندی نشان داده شده در تصاویر ، جلوه توصیف شده را ایجاد می کند.
مرحله 3: رمزگذار سرور: کپی و چسباندن
// کد سرور/ * NRF24L01 Arduino CE> D8 CSN> D10 SCK> D13 MO> D11 MI> D12 RO> استفاده نشده GND> GND VCC> 5V */// سیم کشی فرستنده
#عبارتند از
// کتابخانه سرو
#عبارتند از
// کتابخانه فرستنده گیرنده
#سرووپین 2 را تعریف کنید
// پین خروجی سروو اعلان
سرویس ServoTimer2 ؛
// اعلام نام سروو
RH_NRF24 nrf24؛
// اعلام نام فرستنده گیرنده
int timeOUT = 0؛
// متغیر برای سروو
int پالس = 90 ؛
// متغیر برای ذخیره پالس
void setup ()
{serv.attach (سرووپین) ؛ // خدمات سروو
Serial.begin (9600)؛ // وسایل فرستنده گیرنده
اگر (! nrf24.init ())
Serial.println ("init ناموفق بود")؛ // موارد مانیتور سریال اگر (! nrf24.setChannel (12)) // کانال را روی 125 قرار دهید Serial.println ("setChannel failed") ؛ if (! nrf24.setRF (RH_NRF24:: DataRate2Mbps، RH_NRF24:: TransmitPower0dBm)) Serial.println ("setRF ناموفق بود")؛ // موارد مانیتور سریال}
حلقه خالی ()
{if (nrf24.available ()) {uint8_t buf [RH_NRF24_MAX_MESSAGE_LEN] ؛ uint8_t len = sizeof (buf) ؛ if (nrf24.recv (buf، & len)) // موارد مانیتور سریال {Serial.print ("درخواست دریافت شد:")؛ پالس = strtol ((const char*) buf، NULL، 10)؛ // نوع داده ها را تغییر دهید
int prin = نقشه (نبض ، 750 ، 2250 ، 0 ، 180) ؛ // نوع داده ها را تغییر دهید
Serial.println (prin)؛ serv.write (نبض) ؛ // باعث حرکت سروو می شود}}
}
مرحله 4: هیئت مدیره مشتری
برد مشتری از یک ماژول فرستنده گیرنده و پتانسیومتر تشکیل شده است. ماژول فرستنده گیرنده همانند سیم سرور ** وصل می شود با این تفاوت که بدون برد محافظ ، مستقیماً به پین های برد آردوینو وصل می شود.
پتانسیومتر 5 ولت را می گیرد ، زمین می گیرد و به پین 2 آنالوگ متصل می شود.
** توجه: همانطور که در مرحله برد سرور ذکر شد ، بردهای Arduino من یکسان نیستند. در این حالت ، فرستنده گیرنده به پین با برچسب 3.3V ، مستقیماً در مجاورت پین 5V متصل می شود ، اما باز هم ، به نظر می رسد همه چیز خوب کار می کند.
مرحله 5: کد مشتری: کپی و چسباندن
// CLIENT CODE/ * NRF24L01 Arduino CE> D8 CSN> D10 SCK> D13 MO> D11 MI> D12 RO> استفاده نشده GND> GND VCC> 5V */// سیم کشی فرستنده
#عبارتند از
// کتابخانه فرستنده گیرنده
int potpin = A2؛ // کاهش پتانسیومتر
int val؛
char tempChar [5]؛
رشته valString = ""؛ // نوع داده ها را تغییر دهید
RH_NRF24 nrf24؛ // وسایل فرستنده گیرنده
void setup ()
{Serial.begin (9600) ؛ if (! nrf24.init ()) Serial.println ("init fail")؛ // پیش فرضها پس از init عبارتند از 2.402 گیگاهرتز (کانال 2) ، 2 مگابیت بر ثانیه ، 0dBm اگر (! nrf24.setChannel (12)) Serial.println ("setChannel failed") ؛ if (! nrf24.setRF (RH_NRF24:: DataRate2Mbps، RH_NRF24:: TransmitPower0dBm)) Serial.println ("setRF ناموفق بود")؛ } // موارد فرستنده گیرنده
حلقه خالی () {
val = analogRead (potpin) ؛ // موارد پتانسیومتر
val = map (val، 0، 1023، 750، 2250)؛
valString = val؛ رشته رشته = (valString)؛ str.toCharArray (tempChar ، 5) ؛ // تغییر نوع داده nrf24.send (tempChar ، sizeof (tempChar)) ؛
}
مرحله 6: نکته ای در مورد کد:
کد شامل برخی از قابلیتهای عیب یابی محدود در قالب بازخورد از مانیتور سریال در رابط نرم افزار Arduino است. هنگام مشاهده مانیتور سریال از کد SERVER (ctrl + shift + M) ، باید بتوانید وضعیت پتانسیومتر را به صورت عددی بین 1 تا 180 مشاهده کنید.
همچنین ، در اینجا کتابخانه بی سیم و سروو وجود دارد:
www.airspayce.com/mikem/arduino/RadioHead/
github.com/nabontra/ServoTimer2
توصیه شده:
آموزش کنترل سروو موتور آردوینو: 4 مرحله
آموزش کنترل سروو موتور آردوینو: سلام بچه ها! به آموزش جدید من خوش آمدید ، امیدوارم از قبل از & quot؛ کنترل موتور پله ای بزرگ & quot؛ و قابل آموزش قبلی لذت برده باشید. امروز من این آموزش آموزنده را برای آموزش اصول اولیه هرگونه کنترل سرووموتور به شما ارسال می کنم ، من قبلاً یک ویدیو ارسال کرده ام
دیوار نصب برای IPad به عنوان کنترل پنل اتوماسیون خانگی ، با استفاده از آهنربای کنترل شده سروو برای فعال کردن صفحه: 4 مرحله (همراه با تصاویر)
دیوار نصب برای IPad به عنوان کنترل پنل اتوماسیون خانگی ، با استفاده از آهنربای کنترل شده سروو برای فعال کردن صفحه: اخیراً من زمان زیادی را صرف خودکارسازی وسایل داخل و اطراف خانه ام کرده ام. من از Domoticz به عنوان برنامه اتوماسیون خانگی خود استفاده می کنم ، برای جزئیات به www.domoticz.com مراجعه کنید. در جستجوی یک برنامه داشبورد که تمام اطلاعات Domoticz را نشان می دهد
کنترل از راه دور خودرو - کنترل با استفاده از کنترلر بی سیم Xbox 360: 5 مرحله
کنترل از راه دور - کنترل با استفاده از کنترلر بی سیم Xbox 360: اینها دستورالعمل هایی برای ساختن ماشین کنترل از راه دور خود است که با استفاده از کنترلر بی سیم Xbox 360 کنترل می شود
ESP8266 RGB LED STRIP WIFI کنترل - NODEMCU به عنوان یک کنترل از راه دور IR برای نوار LED کنترل شده بر روی Wifi - کنترل تلفن هوشمند RGB LED STRIP: 4 مرحله
ESP8266 RGB LED STRIP WIFI کنترل | NODEMCU به عنوان یک کنترل از راه دور IR برای نوار LED کنترل شده بر روی Wifi | RGB LED STRIP Smartphone Control: سلام بچه ها در این آموزش می آموزیم که چگونه از nodemcu یا esp8266 به عنوان ریموت IR برای کنترل نوار LED RGB استفاده کنید و Nodemcu توسط تلفن هوشمند از طریق وای فای کنترل می شود. بنابراین اساساً می توانید RGB LED STRIP را با تلفن هوشمند خود کنترل کنید
نحوه کنترل موتور DC بدون برس بدون کوادکوپتر بدون سرنشین (3 نوع سیم) با استفاده از کنترل کننده سرعت موتور HW30A و Arduino UNO: 5 مرحله
نحوه کنترل موتور DC بدون برس بدون کوادکوپتر بدون سرنشین (3 نوع سیم) با استفاده از کنترل کننده سرعت موتور HW30A و Arduino UNO: توضیحات: کنترل کننده سرعت موتور HW30A را می توان با باتری های 4-10 NiMH/NiCd یا 2-3 سلولی LiPo استفاده کرد. BEC با حداکثر 3 سلول LiPo کاربردی است. می توان از آن برای کنترل سرعت موتور DC بدون برس (3 سیم) با حداکثر حداکثر 12Vdc استفاده کرد. مخصوص