در سلسله آموزش های راه اندازی و کار با ماژول بلوتوث HC05، قسمت چهارم به ارتباط با دستگاه های مختلف و اتصال به آن ها می پردازیم. در قسمت های پیشین راجه به فرامین پایه، نحوه ورود به مد فرامین و اتصال آن به رایانه پرداختیم. در این قسمت به مهم ترین بخش آموزش، جست و جوی دستگاه ها و ارتباط با آن ها خواهیم پرداخت. در این آموزش قصد داریم تا با جستجو دستگاه های موجود در محیط، نام آن ها را بدست آورده و سپس به آن ها متصل شویم. اما جهت برقراری ارتباط دو مد کاری SLAVE/MASTER در ماژول تعیین کننده خواهند بود. در این آموزش به شرح کامل مد کاری و روش های ارتباطی خواهیم پرداخت. بنابراین با مرجع تخصصی ماژول بلوتوث به زبان فارسی، دیجی اسپارک همراه باشید.
مدهای کاری SLAVE/MASTER و دستورات
ماژول بلوتوث HC05 دارای دو مد کاری کلی به صورت SLAVE/MASTER است. در این دو مد کاری، ماژول بلوتوث می تواند با سایر دستگاه ها ارتباط برقرار نماید. در مد MASTER، ماژول بلوتوث می تواند یک آدرس(یک دستگاه) را انتخاب کرده و به آن متصل شود. اما در مد SLAVE، ماژول بلوتوث می تواند ارتباط سایر دستگاه ها به خود را بپذیرد. برای روشن شدن موضوع، فرض کنید قصد اتصال به رادیوپخش بلوتوثی خودرو خود را دارید. در این حالت بلوتوث خودرو به صورت SLAVE و بلوتوث گوشی همراه شما به صورت MASTER خواهد بود.
پیش از آنکه وارد مد AT شویم، مراحل ورود به این مد را یکبار با هم مرور می کنیم.
۱-اتصالات و تغذیه برقرار کنید.
۲-پایه EN را به ۳V3 متصل کنید.
۳-سریال مانیتور را باز کرده و باودریت را روی ۹۶۰۰ قرار دهید.
۴- مد ارسال روی Both NL & CR قرار گیرد.
جهت تنظیم مد کاری، باید از دستور AT+ROLE استفاده شود. در ابتدا پیش از تنظیم مدکاری، می توانیم با دستور زیر از مد فعلی ماژول مطلع شویم.
AT+ROLE
پس از ارسال این دستور، ماژول پاسخ زیر را بر می گرداند.
+ROLE:0
عبارت ۰ به معنای مد SLAVE و عبارت ۱ به معنای مد MASTER خواهد بود. در همین راستا، چنانچه بخواهیم مد کاری ماژول را به عنوان MASTER تنظیم کنیم، از دستور زیر استفاده می کنیم.
AT+ROLE=1
همچنین اگر بخواهیم مد کاری ماژول را به صورت SLAVE در نظر بگیریم، دستور را به شیوه زیر وارد می کنیم.
AT+ROLE=0
پس از تنظیم مد کاری، نوبت به مد اسکن می رسد. در مد اسکن ماژول بلوتوث به جستجوی بلوتوث های حاضر در محیط می پردازد. قسمت بعد به این مورد اختصاص دارد.
مد اسکن بلوتوث و جستجوی دستگاه
برای جستجو دستگاه پس از تنظیم در مد SLAVE یا MASTER، نوبت به جست و جوی محیط می رسد. جهت تنظیم در مد جست و جو، ابتدا باید با دستور زیر، کلاس کاری بلوتوث را در مد ۲۴ بیتی استاندارد قرار دهید.
AT+CLASS=0
در ادامه، نیاز است تا با دستور AT+INQM=X,Y,Z، پارامترهای جست و جو را تنظیم کنید. این پارامترها طبق جدول زیر تعریف می گردد.
توضیح | پارامتر |
نمایش اسامی دستگاه ها
این ورودی باید ۱ باشد. |
X |
تعیین تعداد دستگاه های قابل نمایش | Y |
مدت زمان برای جست و جو دریافت پاسخ | Z |
مطابق جدول فوق، فرض کنید که قصد جست و جو برای ۹ دستگاه و برای مدت تقریبا ۶۰ ثانیه را داریم. برای این مورد ورودی نخست ۱، ورودی دوم ۹ و ورودی سوم برابر با ۴۸ خواهد بود. برای ورودی سوم، عدد قرار گرفته در ۲۸٫۱ ضرب می شود. بنابراین خواهیم داشت.
AT+INQM=1,9,48
در ادامه پس از تنظیم، می توانید با دستور AT+INQ جست و جو را شروع کنید. پس از ارسال این دستور، لیست آدرس بلوتوث های حاضر در محیط به نمایش در خواهد آمد.
توجه: چنانچه پس از ارسال دستور AT+INQM با ERROR مواجه شدید، لطفا دستور زیر را برای ماژول ارسال کنید.
AT+STATE
دستور فوق وضعیت فعلی ماژول را نمایش می دهد. چنانچه در پاسخ به دستور فوق، عبارت INQURING را دریافت کردید، مطلع باشید که ماژول در حال جست و جو است. چنانچه در پاسخ به این دستور، جواب های دیگری دریافت کردید، ماژول را یکبار ریست کرده و پروسه را ادامه دهید.
توجه: برای ریست ماژول، کابل متصل به پایه EN را جدا کنید، دستور AT+RESET را ارسال کرده و سپس کابل EN را متصل کنید.
در ادامه، در رابطه با دستور AT+STATE که وضعیت را نمایش می دهد، جدول زیر پاسخ های مختلف به همراه توضیح هر یک را نمایش می دهد.
در حال تنظیم در مد AT |
INITIALIZED |
آماده به کار برای ارتباط | READY |
فعال شدن قابلیت اتصال به دستگاه ها | PAIRABLE |
جفت شده با دستگاه | PAIRED |
در حال جست و جو برای اتصال | INQUIRING |
در حال اتصال به دستگاه | CONNECTING |
متصل شده به دستگاه | CONNECTED |
قطع شده |
DISCONNECTED |
در رابطه با اتصال بلوتوث به دستگاه، دو مورد مهم وجود دارد. فرایند اتصال دو دستگاه در فناوری بلوتوث به دو قسمت PAIR و LINK (CONNECT) تقسیم بندی می شود. در قدم اول جهت برقراری ارتباط، باید دو دستگاه با همدیگر PAIR شوند. به عبارت دیگر پس از یافتن نام و ورود رمز عبور، دو دستکاه با یکدیگر PAIR(جفت) می شوند. پس از طی فرایند PAIR، نوبت به اتصال می رسد. در حقیقت در مد اتصال، دو دستگاه می توانند با یکدیگر به تبادل پیام بپردازند.
دریافت نام بلوتوث از روی آدرس
پس از آنکه آدرس های دستگاه ها در صفحه ظاهر شد، می توانیم نام هر دستگاه را از روی آدرس آن بیابیم. در رابطه با آدرس، دقت داشته باشید که چند پارامتر اول آن مهم بوده و سایر پارامترهای آن نباید لحاظ گردد. به عنوان مثال فرض کنید آدرس دستگاهی به صورت زیر در صفحه ظاهر گردد.
C829:2A:1AE643,0,FFA7
در آدرس فوق، تنها تا عدد ۰ به عنوان آدرس به شمار می روند. اعداد بعد از این به عنوان نام آدرس شناخته نخواهند شد. برای دریافت نام دستگاه از دستور AT+RNAME? استفاده می کنیم. به همین منظور برای دستور فوق به صورت زیر عمل می کنیم.
AT+RNAME? C829,2A,1AE643
در رابطه با دستور فوق توجه داشته باشید که عبارت : به , تبدیل شده است. با ارسال دستور فوق، نام دستگاه پس از چند لحظه برگردانده می شود.
لوازم مورد نیاز
لینک خرید ماژول HC05، کلیک کنید
لینک خرید مبدل سریال به USB، کلیک کنید.
جمع بندی
در مجموعه آموزش های راه اندازی و کار با ماژول بلوتوث HC05، قسمت چهارم را به اسکن محیط اختصاص دادیم. یکی از مهم ترین مسائل در هنگام کار با ماژول HC05، شناسایی دستگاه های اطراف است. در این قسمت با نحوه شناسایی محیط آشنا شدیم. ابتدا در آموزش به نقش ماژول در حالت SLAVE یا MASTER پرداختیم. سپس در ادامه نحوه اسکن محیط را بررسی کردیم. در نهایت نحوه تبدیل آدرس به اسم(RSSI) را مورد بررسی قرار دادیم.
چنانچه ایرادی در مطالب مندرج وجود داشته و یا قصد دارید تا دانش خود را با دیگران به اشتراک بگذارید، پیشنهاد می کنم مورد را به صورت کامنت در انتهای پست مطرح کنید. من بلافاصله به شما پاسخ می دهم. تا این لحظه در حدود ۲۹ هزار کامنت روی دیجی اسپارک ثبت و پاسخ داده شده اند. نظرات بدون جواب نمی مانند!!