برقراری ارتباط وایرلس با استفاده از ماژول بلوتوث HC-05

بلوتوث یک فناوری بی سیم با برد کوتاه است که به تلفن های همراه، PDA، کامپیوترها، دستگاه های ضبط و پخش استریو، لوازم خانگی، اتومبیل ها و همه وسایل دیگری که می توانید که ارتباط آن ها را با یکدیگر فکر کنید امکان ارتباط می دهد.

وسایل مجهز به تراشه های بلوتوث در حدود ۱۰ متر برد دارند و می توانند داده ها را با سرعت ۷۲۰ کیلوبایت در ثانیه از طریق دیوارها، کیف ها و پوشاک منتقل کنند.

هیجان انگیزتر آنکه اتصال دادن بین وسایل دارای تکنولوژی بلوتوث می تواند بدون دخالت مستقیم ما انجام گیرد. وقتی دو وسیله مجهز به تراشه های بلوتوث به نزدیکی هم می رسند، نرم افزار نهاده شده در تراشه های فرستنده و گیرنده بلوتوث به طور خودکار یک ارتباط را برقرار می سازد و داده ها را نقل و انتقال می دهد.

با این همه، برد کوتاه و سرعت محدود بلوتوث باعث شده است که برای شبکه های محلی بی سیم مرسوم، کمتر باشد چون این شبکه های کامپیوتری معمولا بیش از ۱۰۰ متری بلوتوث فاصله دارند و برد سرعتی آن ها ۱۰ تا ۱۰۰ متر مگابایت در ثانیه است.

یکی از جالب ترین نکات درباره این استاندارد روشی است که وسیله مجهز به تراشه های بلوتوث به طور خودکار یکدیگر را تشخیص می دهند، ارتباط برقرار می کنند و داده ها را به دستور شما یا بدون دخالت شما انتقال می دهند.

در خصوصیات بلوتوث یک راتباط رادیویی با برد کوتاه تعریف شده است. این استاندارد همچنین یک برد متوسط ۱۰۰ متری را تعریف کرده است اما به ندرت به کار می رود چون به توان الکتریکی و هزینه بیشتری نیاز دارد.

هر وسیله بلوتوث حاوی یک تراشه فرستنده/گیرنده است که در باند فرکانس رادیویی MIS(Medical Scientific Industrial) یا صنعتی، علمی، پزشکی از ۲٫۴ گیگاهرتز تا ۲٫۴۸ گیگاهرتز عمل می کند.

سازندگان و طراحان، این فرکانس را بدین لحاظ انتخاب کردند که در سراسر جهان به رایگان در دسترس است و محدودیت های داشتن مجوز را ندارد.

باند ISM به ۷۹ کانال تقسیم می شود که هر کدام پهنای باندیک مگاهرتزی دارند که این باند رایگان است.

بلوتوث از لحاظ نظری پهنای باند یک مگابایت در ثانیه را دارد، که سرعتی نزدیک به ۷۲۳ کیلوبیت در ثانیه است.

این سرعت خیلی بالا نیست اما برای انتقال داده ها بین وسایل دستی و دسترسی به اینترنت کاملا کافی است.

از مشکلاتی که کاربران تجهیزات رایانه ای و یا تلفن های همراه با آن مواجه هستند وجود سیم های ارتباطی دست و پا گیر است که اکنون با وجود این تکنولوژی جدید بدون سیم می توان ارتباط بین تجهیزات رایانه ای و در گامی فراتر ارتباطات شبکه ای و تلفن همراه و غیره را برقرار کرد.

این فناوری موجب بی سابقه ترین بهره وری می باشد که با بی نیاز ساختن وسایل ارتباطی شخصی از اتصالات سیمی، انقلابی در بازار اینگونه محصولات ایجاد کرده است.

ماژول های بلوتوث سری HC

شرکت سازنده این سری ماژول ها را به دو صورت با پسوند اعداد زوج و پسوند اعداد فرد وارد بازار کرده است. ماژول های با پسوند زوج فقط می توانند یا در مد Master باشند یا Slave و به صورت HC-04M و HC-04S تولید می شود. و سری اعداد فرد با استفاده از یک سری دستورات که AT Command نامیده می شود می توانند در مد دلخواه قرار بگیرند.

معرفی ماژول بلوتوث HC-05

فرض کنید می خواهیم یک ربات را از فاصله مثلا ده متری کنترل کنیم، آیا میکروکنترلر مورد نظر شما دارای تکنولوژی بلوتوث می باشد؟ آیا برای تبادل اطلاعات با یک بلوتوث بر روی میکروکنترلر مورد نظر شما رجیستر و پین خاصی در نظر گرفته شده است؟ مثل پین های TXD و RXD در ارتباط UART یا MISO، MOSI و… در ارتباط SPI.

بی شک برای برقرای چنین ارتباطی به سخت افزاری نیاز داریم تا بتوانیم از طریق آن دیتا را به بلوتوث داده و سپس از طریق پروتکل بلوتوث آن را به وسیله ی دیگر ارسال و یا دریافت کنیم.

ماژول انتخابی که به معرفی آن خواهیم پرداخت ماژول HC-05 می باشد. توسط این ماژول می توان دیتا را در فواصل معین و با استفاده از پروتکل بلوتوث ارسال و دریافت کرد. مزیتی که ماژول مورد نظر دارا می باشد این است که می توان دیتا را به صورت سریال از طریق میکروکنترلر و یا کامپیوتر به ماژول انتقال داد و سپس خود ماژول دیتا را از طریق پروتکل بلوتوث به دستگاه و یا وسیله ی دارای بلوتوث ارسال خواهد کرد و همچنین می تواند داده های دریافتی از طریق پروتکل بلوتوث را به صورت سریال تبدیل کرده و به کاربر تحویل دهد که این امر استفاده از ماژول را بی نهایت راحت کرده است. ارسال و دریافت اطلاعات به صورت سریال در ماژول از طریق پروتکل USART و با استفاده از پین های RX و TX صورت می گیرد.

قبل از راه اندازی و شروع کار با ماژول بهتر است ابتدا با پایه های آن آشنا شویم.

HC05 PINOUT

پایه های ماژول به چند دسته تقسیم میشن. یک سری پایه های ورودی و خروجی که میشه با AT-Command های مخصوص با اونها کار کرد. یک سری جهت برقراری ارتباط و یک سری پین های تغذیه هستن.

دقت کنیدپین هایی که برای ارتباط مستقیم USB ملاحظه کنید نیاز به فریمور مخصوص داره و من نتونستم پیداش کنم و از این پین ها استفاده ای بکنم.

PIN1: پین مربوط به ارسال اطلاعات در ارتباط UART می باشد.

PIN2: پین مربوط به دریافت اطلاعات در ارتباط UART می باشد.

PIN11: اعمال ولتاژ صفر به این پین موجب رست شدن ماژول می شود.

PIN12: تغذیه مثبت ماژول بوده و باید ولتاژ ۳٫۳ ولت به آن اعمال شود.

PIN13: تغذیه منفی ماژول بوده و به زمین مدار وصل می شود.

PIN31: فرکانس چشمک زدن LED متصل به این پایه بیانگر مد ماژول می باشد.

PIN32: LED متصل به این پایه قبل از برقراری ارتباط با دستگاه دیگر خاموش و پس از برقراری ارتباط روشن خواهد بود.

تغذیه ماژول ۳٫۳ ولت می باشد ولی پین ها تا سطح ۵ ولت سازگارن و موردی نداره. یعنی اگر میکروکنترلر شما با ۵ ولت تغذیه شده می تونید بدون مشکل پین های ارتباطی رو به ماژول بدین و مشکلی نیست اما تغذیه اصلی ماژول باید ۳٫۳ ولت باشه!

هدف ما اینکه بین دو میکروکنترلر با استفاده از ماژول بلوتوث HC05 ارتباط برقرار کنیم در نتیجه باید یکی از ماژول ها در مد مستر و دیگری در مد اسلیو باشه.

چطوری مدها رو انتخاب و تنظیم کنیم؟

ماژول HC05 دوتا مدکاری داره. یکی برای ارتباط با هسته اصلی ماژول و تنظیمات مربوطه از طریق AT-Command و مد دیگه یک مبدل بلوتوث به سریال هستش و با توجه به تنظیمات شروع به کار می کنه.

برای شروع کار باید ابتدا یکی از ماژول ها رو در مد اسلیو و دیگری رو در مد مستر کانفیگ کنیم. برای این کار ماژول ها رو از طریق یک مبدل سریال به کامپیوتر متصل می کنم و به ترتیب کامندهای لازم رو میدم. برای اشنایی با نحوه اتصال به ماژول به کامپیوتر به این لینک کنید.

دانلود نرم افزار Teraterm برای برقراری ارتباط با PC

ابتدا کانفیگ ماژول اول در مد مستر:

۱- ارسال کد AT و دریافت OK جهت اطمینان از برقراری اتصالات و عملکرد صحیح ماژول.

۲- ارسال کد AT+ORGL جهت برگرداندن تمامی تنظیمات به حالت پیشفرض کارخانه.

۳-  ارسال کد AT+ROLE=1 جهت قرار دادن ماژول در مد مستر.

۴- ارسال کد AT+PSWD=1234 جهت ست کردن پسورد ۱۲۳۴ برای ماژول.(به صورت پیشفرض پسورد ۱۲۳۴ می باشد)

۵- ارسال کد AT+CMODE=1 جهت برقراری ارتباط با هر ادرسی.

کانفیگ ماژول دوم در مد اسلیو:

۱- ارسال کد AT و دریافت OK جهت اطمینان از برقراری اتصالات و عملکرد صحیح ماژول.

۲- ارسال کد AT+ORGL جهت برگرداندن تمامی تنظیمات به حالت پیشفرض کارخانه.

۳-  ارسال کد AT+ROLE=0 جهت قرار دادن ماژول در مد مستر.

۴- ارسال کد AT+PSWD=1234 جهت ست کردن پسورد ۱۲۳۴ برای ماژول.(به صورت پیشفرض پسورد ۱۲۳۴ می باشد)

بعد از این کار با روشن کردن ماژول ها اتوماتیک به هم وصل میشن اما یادتون باشه که این ارتباط باید در مد ۲ باشه که صرفا یک پورت سریال به ما میده و rx و tx ماژول رو به پین های متناظر میکروکنترلر متصل می کنیم.

حالا می تونید به راحتی ارتباط سیمی سریال رو با استفاده از بلوتوث هایی که دارین بدون سیم انجام بدین. حتی می تونید میکروکنترلرها رو به صورت بی سیم پروگرام کنید!

اینم ویدیویی از نتیجه کار