در این مقاله راه اندازی ماژول بلوتوث HC-05 با آردوینو را آموزش خواهید دید.
ماژولهای بلوتوث کم مصرف (BLE) با قیمتی مناسب در دسترس هستند، اما با این حال، بسیاری از این ماژولها با دستگاههایی که از بلوتوث کلاسیک پشتیبانی میکنند، سازگاری ندارند.
اما ماژول بلوتوث HC-05 ، یک ماژول نسبتا گران است که با طیف گستردهای از دستگاهها مانند گوشیهای هوشمند، لپتاپها و تبلتها سازگاری دارد. اضافه نمودن بلوتوث به آردوینو میتواند پروژه شما را ارتقا دهد و امکانات بسیاری به رابط کاربری و ارتباطات آن اضافه کند. در این صورت موبایل، تبلت و غیره میتواند به عنوان واسطه رابط کاربری یا جمعآوری کننده و مفسر داده برای پروژه بعدی شما عمل کند.
پس بهتر است کار با آن را شروع کنیم.
در قسمت اول درمییابیم که استفاده از این ماژول با آردوینو و انتقال داده به گوشی هوشمند، چقدر آسان است. در ادامه نیز، به کمک دستورات AT، به تنظیمات مختلف ماژول HC-05 مانند نام دستگاه، رمز عبور، مُدهای کاری و غیره نگاهی میاندازیم.
ماژول:
از کلید بسیار کوچکی که در انتهای بالای سوییچ مشاهده میکنید، برای قرار دادن بُرد در مُد دستورات AT استفاده میکنیم.
پایههای ماژول بلوتوث HC-05:
این ماژول همانطور که در تصویر زیر مشاهده میکنید، شش پایه زیر دارد:
عملکرد پایهها
پایه | شرح |
state | به ورودی آردوینو وصل میشود تا وصل یا قطع بودن ارتباط را اطلاع دهد. |
Rx | پایه دریافت داده ماژول است. پیشنهاد میشود که از یک مقسم ولتاژ همانند آنچه در قسمت ارتباط آمده است، استفاده شود. |
Tx | مستقیماً به پایه Rx آردوینو وصل میشود. |
GND | به پایه GND آردوینو وصل میشود. |
5v | روی این بُرد برک اوت، یک رگولاتور 3.3 ولتی قرار دارد. پس به این پایه تغذیه 5 ولت اعمال میکنیم. |
EN | ماژول را فعال یا غیرفعال میکند. |
مثالی ساده از انتقال داده
ما با یک مثال خیلی ساده از برقراری ارتباط سریال بین HC-05 و گوشی هوشمند و ارسال و دریافت پیام شروع میکنیم. شما میتوانید از این مثال برای کنترل دستگاهها یا ثبت هر دادهای استفاده کنید.
نحوه اتصال ماژول بلوتوث HC-05 به آردوینو:
ما از پایههای 10 و 11 آردوینو برای اتصال به HC-05 و از کتابخانه SoftwareSerial برای راه اندازی ماژول بلوتوث HC-05 با آردوینو استفاده میکنیم. پورت سریال سختافزاری آردوینو برای ارسال پیام از کامپیوتر به آردوینو یا دریافت پیام آردوینو توسط کامپیوتر استفاده میشود.
معمولا توصیه شده است که از مقسم ولتاژ، روی خط Rx ماژول استفاده شود. دلیل آن هم این است که مطمئن شویم ماژول، سیگنالهای بالاتر از 3.3 ولت دریافت نمیکند.
در یک عملکرد واقعی، اگر نیاز به وقفههای سختافزاری دارید، میتوانید از خود پورت سریال سختافزاری آردوینو برای ارتباط با ماژول بلوتوث استفاده کنید.
کد:
کد زیر، احتمالا سادهترین نمونه کد برای تست همه دستگاههایی است که از ارتباط پورت سریال پشتیبانی میکنند. این کد به سادگی ارتباط ترمینال کامپیوتر و HC-05 را در یک حلقه برقرار میکند و پیام را از ترمینال به ماژول بلوتوث و از ماژول بلوتوث به ترمینال منتقل میکند.
#include <SoftwareSerial.h>
SoftwareSerial EEBlue(10, 11); // RX | TX
void setup()
{
Serial.begin(9600);
EEBlue.begin(9600); //Default Baud for comm, it may be different for your Module.
Serial.println("The bluetooth gates are open.\n Connect to HC-05 from any other bluetooth device with 1234 as pairing key!.");
}
void loop()
{
// Feed any data from bluetooth to Terminal.
if (EEBlue.available())
Serial.write(EEBlue.read());
// Feed all data from termial to bluetooth
if (Serial.available())
EEBlue.write(Serial.read());
}
پیش نمایش:
برنامه های اندرویدی متعددی برای اتصال گوشی شما به ماژول بلوتوث وجود دارد. اما ما از برنامه Bluetooth Terminal برای ارتباط با ماژول HC05 استفاده کردیم.
همانند تصویر زیر، خروجی برنامه را در ترمینال آردوینو مشاهده خواهید کرد. با این روش، به کمک HC-05، یک اتصال بلوتوث برای ارسال پیامها از گوشی به آردوینو فراهم کردیم.
کانفیگ ماژول بلوتوث HC-05 با دستورات AT
همانگونه که پیشتر گفته شد، ممکن است شما بخواهید برای کانفیگ ماژول بلوتوث HC05 ، به تنظیمات قسمتهای مختلف مانند اسم دستگاه، رمز عبور، نرخ انتقال (baud rate) و غیره بپردازید. برای انجام این کارها، باید ابتدا ماژول را در مد دستورات AT قرار دهید.
همانطور که در تصویر ابتدایی دیدید، یک برد برک اوت با یک سوییچ بر روی آن داریم. به همین خاطر، برای این ماژول مراحل زیر را انجام دهید:
- سیم +5 ولت را از انتهای ماژول همانند شکل بالا قطع کنید.
- سوییچ را فشار دهید و نگه دارید (آن را رها نکنید).
- ارتباط +5 ولت را دوباره متصل کنید.
- حال سوییچ را رها کرده و اندکی صبر کنید. خواهید دید که LED روی ماژول هر دو ثانیه یک بار شروع به چشمک زدن میکند که کندتر از حالت قطع نرمال است.
کد زیر را بر روی آردوینو آپلود کنید.
#include <SoftwareSerial.h>
SoftwareSerial EEBlue(10, 11); // RX | TX
void setup()
{
Serial.begin(9600);
EEBlue.begin(38400); //Baud Rate for command Mode.
Serial.println("Enter AT commands!");
}
void loop()
{
// Feed any data from bluetooth to Terminal.
if (EEBlue.available())
Serial.write(EEBlue.read());
// Feed all data from termial to bluetooth
if (Serial.available())
EEBlue.write(Serial.read());
}
قابل ذکر است که تنها تغییری که در کد انجام شد، در نرخ انتقال (baud rate) بوده است. این نرخی است که ماژول در مُد دستور ارتباط برقرار میکند. ما نباید هیچ تغییری در ترمینال انجام دهیم، زیرا ما همچنان با باد ریت 9600 مشغول صحبت کردن با آردوینو هستیم. ترمینال را باز کنید، AT COMMANDS را ارسال کنید و حتما بررسی کنید که ماژول پاسخ OK را ارسال کند!
تنظیمات اسم دستگاه و رمز عبور
دستور | پاسخ | شرح |
AT+NAME=”EE BLUE” | OK | اسم را EE blue می گذارد. |
AT+PSWD=”2425″ | OK | رمز عبور را تنظیم میکند. |
ممنون از اینکه وقت گذاشتید و این مقاله را تا انتها مطالعه کردید. امیدواریم بتوانید راه اندازی ماژول بلوتوث HC-05 با آردوینو را به کمک این مقاله انجام دهید.
اگر سوالی در این مورد داشتید، حتما در زیر مقاله، در بخش دیدگاه برای ما بنویسید. در ضمن اگر دستی در نوشتن در حوزه الکترونیک دارید، میتوانید با عضویت در سایت ما، مقالات خود را آپلود کنید. این مقالات پس از بررسیهای لازم، با نام شما منتشر میشوند و به این شکل شما به یک نویسنده تبدیل خواهید شد.