انجام پروژه با آردوینو, پروژه با آردوینو

اتصال ماژول بلوتوث (HC-05) با آردوینو Uno

در مورد این پروژه اتصال ماژول بلوتوث (HC-05) با آردوینو Uno :


بلوتوث یکی از نمونه های عالی برای اتصال بی سیم است که در بسیاری از زمینه ها استفاده می شود. بلوتوث انرژی بسیار کمی مصرف می کند. آیا در مورد ربات یا ماشین کنترل شده با گوشی هوشمند می دانید. معمولا یکی از این دو فناوری بی سیم در ربات های کنترل شده با گوشی هوشمند استفاده می شود. یکی WIFI و دیگری بلوتوث می باشد. و یکی دیگر از فناوری‌های بی‌سیم متداول برای کنترل ربات ماشین RF است. که همان ریموت و گیرنده ای است که در پهپادها استفاده می شود. در اینجا ما یک ماژول بلوتوث (HC-05) را با آردوینو Uno وصل می کنیم. و هر خط کد را شرح می دهیم. سپس LED داخلی آردوینو Uno را از طریق بلوتوث از گوشی هوشمند کنترل می کنیم.

اقلام مورد نیاز:

آردوینو یونو Arduino UNO

ماژول تغذیه برد بورد با ورودی USB

برد برد سایز متوسط breadboard

سیم برد بردی 10 تایی دو سر نری

ماژول بلوتوث سریال HC-05 همراه با برد کمکی

پک اقلام مورد نیاز:

قبل از شروع باید در مورد HC-05 بدانیم.

ماژول بلوتوث HC-05:

HC-05 یک ماژول بلوتوث است که می تواند به دو صورت ارتباط برقرار کند. یعنی فول دوبلکس یا کاملا دو رشته ای است. ما می توانیم آن را با اکثر میکرو کنترلرها استفاده کنیم. زیرا پروتکل پورت سریال (SSP) را اجرا می کند. این ماژول با کمک USART (گیرنده/فرستنده سنکرون/ناهمزمان جهانی) با نرخ baud 9600 ارتباط برقرار می‌کند و از نرخ baud دیگر نیز پشتیبانی می‌کند. baud واحد سرعت انتقال برابر با تعداد دفعاتی که سیگنال در هر ثانیه حالت را تغییر می دهد. برای یک baud معادل یک بیت در ثانیه است.

بنابراین ما می توانیم این ماژول را با هر میکروکنترلری که از USART پشتیبانی می کند،وصل کنیم. HC-05 می تواند در دو حالت کار کند. یکی حالت داده و دیگری حالت فرمان AT است. هنگامی که پین ​​فعال “پایین” است، HC-05 در حالت داده است. اگر آن پین به عنوان “HIGH” تنظیم شود، ماژول در حالت فرمان AT است. در اینجا ما این ماژول را در حالت داده کار می کنیم.

مشخصات فنی:

ولتاژ کاری: 4 تا 6 ولت (معمولاً 5 ولت)
جریان عملیاتی: 30 میلی آمپر
برد: <100 متر
با ارتباط سریال (USART) و سازگار با TTL کار می کند.
می توان به راحتی با لپ تاپ یا تلفن های همراه با بلوتوث ارتباط برقرار کرد.
اطلاعات بیشتر در مورد ماژول را می توانید در دیتاشیت مشاهده کنید.

زمان شروع است.

مرحله – 1

ابتدا می خواهم یک طرح برای Arduino Uno ایجاد کنم تا اتصال HC-05 را ایجاد کند.

Arduino IDE را باز کنید.

در اینجا ما این پروژه را بدون هیچ کتابخانه ای می سازیم. ابتدا متغیری به نام “inputByte” را به عنوان نوع داده char اعلام کنید. یا می توانید از هر نام متغیری استفاده کنید. در اینجا از کاراکتر برای کنترل LED استفاده می کنیم. و مقدار اولیه “inputByte” را “z” تنظیم کنید (حروف کوچک است). چرا “ز” است؟ جدول رشته را ببینید. برای تنظیم حالت اولیه LED به عنوان “LOW” استفاده می شود (وقتی آردوینو روشن می شود، LED را تنظیم کنید خاموش است).

char inputByte='z';

مرحله – 2

بعد باید قسمت setup را کدنویسی کنیم. HC-05 از ارتباط سریال استفاده کنید. بنابراین ارتباط سریال را با استفاده از تابع “Serial.begin()” آغاز کنید. نرخ baud را روی 9600 تنظیم کنید. سپس پایه دیجیتال 13 را به عنوان پایه “OUTPUT” تنظیم کنید. زیرا این پینی است که در داخل به LED داخلی متصل می شود.

void setup(){
Serial.begin(9600);
pinMode(13,OUTPUT);
}

قسمت راه اندازی کامل شد.

مرحله – 3

سپس قسمت حلقه را کدنویسی می کنیم. از حلقه while و تابع “Serial.available()” استفاده کنید. این تابع تعداد بایت های موجود برای خواندن را برمی گرداند. قسمت بدنه حلقه while فقط “Serial.available()” بزرگتر از 0 است. سپس داده های موجود در پورت سریال را بخوانید. برای آن، من از تابع “Serial.read()” استفاده می کنیم. سپس آن را در “inputByte” ذخیره کنید. سپس از یک شرط “اگر” استفاده کنید. اگر “inputByte” “Z” (حروف بزرگ) باشد، پین 13 را “HIGH” کنید. زیرا وقتی دکمه در حالت روشن است، برنامه “z” را ارسال می کند. این برای روشن کردن LED است. در مرحله بعد از شرط “اگر دیگر” برای خاموش کردن LED استفاده می کنیم. شرط خاموش کردن LED “inputByte==z” (حروف کوچک) است. زیرا برنامه زمانی که دکمه در حالت OFF باشد، “Z” را ارسال می کند. برای اطلاعات بیشتر جدول رشته را ببینید.

void loop() {
while(Serial.available()>0){
  inputByte= Serial.read();
  Serial.println(c);
  if (inputByte=='Z'){
  digitalWrite(13,HIGH);
  }
  else if (inputByte=='z'){
  digitalWrite(13,LOW);
  } 
  }
}

قسمت حلقه تکمیل شده است. کد کامل را می توانید در قسمت کد این مقاله مشاهده کنید. سپس کد را در آردوینو Uno آپلود کنید.

لطفاً مطمئن شوید که پین ​​Rx و Tx HC-05 هنگام آپلود از Arduino Uno حذف شده است. در غیر این صورت ممکن است برای آپلود کد با مشکلی مواجه شوید.
مرحله – 4

اتصالات:

Arduino Uno HC-05

Rx – Tx

Tx – Rx

5 ولت – + 5 ولت

GND – GND

اتصال کامل شد. پس از روشن کردن Arduino Uno، LED نشانگر در HC-05 به طور مداوم شروع به چشمک زدن می کند.

پیکربندی برنامه:

اکنون باید یک برنامه را در گوشی هوشمند نصب کنید. می توانید برنامه را از اینجا دانلود کنید. پس از نصب برنامه را باز کنید سپس می توانید جدول رشته ها را ببینید. که کاراکتر مربوط به هر دکمه را نشان می دهد. روی “next” کلیک کنید و سپس روی “Finish” کلیک کنید. سپس می توانید یک دکمه اسکن را ببینید. روی آن کلیک کنید و HC-05 را با تلفن خود جفت کنید. می توانید از کلید “1234” استفاده کنید. پس از جفت شدن دوباره به برنامه و روشن کردن “Switch 1”.

پس از جداسازی تراشه نشانگر LED در HC-05 چشمک زدن مداوم متوقف می شود و همان LED با کمی تاخیر چشمک می زند.

“Z” نشان دهنده وضعیت روشن سوئیچ 1 و “z” نشان دهنده وضعیت خاموش سوئیچ 1 است. می توانید اطلاعات بیشتری را در جدول رشته ها مشاهده کنید.

شما می توانید از هر برنامه ای استفاده کنید، در مورد ارسال رشته به HC-05 و رشته در عبارت شرط دقت کنید. برنامه اندروید مورد استفاده در اینجا توسعه داده نشده است. با استفاده از MIT App Inventor می توانید اپلیکیشن اندروید خود را بسازید. که به شدت به آن توصیه می شود.

فیلم:

فیلم

کد:

//sketch created by Akshay Joseph
char inputByte;
void setup() {
 Serial.begin(9600);
 pinMode(13,OUTPUT);

}

void loop() {
while(Serial.available()>0){
  inputByte= Serial.read();
  Serial.println(inputByte);
  if (inputByte=='Z'){
  digitalWrite(13,HIGH);
  }
  else if (inputByte=='z'){
  digitalWrite(13,LOW);
  } 
  }
}

شماتیک ها:

شماتیک

اتصال ماژول بلوتوث (HC-05) با آردوینو Uno


منبع این مطالب:

create.arduino.cc

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

For security, use of Google's reCAPTCHA service is required which is subject to the Google Privacy Policy and Terms of Use.

I agree to these terms.