مهندس موفق الکترونیک

کنترل لوازم خانگی با بلوتوث – بلوتوث کنترلر 2 و 4 کانال

پروژه یا مدار الکترونیکی کنترل لوازم خانگی با بلوتوث، تفاوت اصلی خانه های هوشمند با خانه های معمولی در این است که همه ی وسایل در خانه های هوشمند به یکدیگر متصل هستند و با یک دستگاه مرکزی کنترل می شوند. کنترل آب و هوا، چراغ ها، لوازم، قفل ها و انواع مختلفی از دوربین ها و مانتیورهایی که می توانند به خانه های هوشمند و خودکار اضافه شوند از هر جای خانه و حتی دور از خانه قابل کنترل می باشند.
کنترل لوازم خانگی با بلوتوث

ایجاد این اتصالات از روش گوناگون قابل انجام است. سیستم های اختصاصی ای وجود دارند که ویژه ی خانه های هوشمند ساخته شده اند مانند Z-Wave Zigbee ،KNX  و Control4 .

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

فیلم عملکرد مدار

طرز کار مدار کنترل لوازم خانگی با بلوتوث

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

کنترل لوازم خانگی با بلوتوث

قطعات و اجزای مورد استفاده در پروژه

میکروکنترلر ATmega8 ، ماژول بلوتوث HC-05 ، نرم افزار اندروید BT Device Control ، رگولاتور LF33ABV ،     ترانزیستور 2N2222 ، دیود 1N4007 ، رله 5 ولت ، ال ای دی، سلف، مقاومت، سوئیچ، ترمینال و…

مطلب پیشنهادی:  آموزش ساخت تابلو روان گردان

میکروکنترلر ATmega8

ATmega8 یک میکروکنترلر 8 بیتی CMOS با توان مصرفی پایین بر مبنای ساختار AVR RISC می باشد. با استفاده از اجرای ساختار های قدرتمند در یک دوره ی Single Clock ، ATmega8 به حد اکثر عملکرد 1 MIPS در هر مگاهرتز می رسد که اجازه می دهد طراح سیستم اجازه می دهد مصرف انرژی را بازای افزایش سرعت پردازش بهینه سازی نماید

ویژگی ها و اطلاعات بیشتر در مورد میکروکنترلر ATMEGA8

هسته Atmel®AVR® ترکیبی از یک ساختار قدرتمند با مجموعه ای از 32 هدف جامع رجیستر فرآیند می باشد. همه 32 رجیستر به طور مستقیم به واحد حساب و منطق (ALU) متصل است که اجازه می دهد دو رجیستر مستقل به یک ساختار اجرا شده در یک سیکل زمانی دسترسی داشته باشند. ساختار حاصل شده زمانی کارآمدتر می باشد که حداکثر ظرفیت تا ده برابر سریع تر از میکروکنترلرهای CISC مرسوم می باشد.

  • دو تایمر /کانتر 8 بیتی با Prescaler جدا ، یک حالت مقایسه COMPARE
  • یک تایمر/کانتر 16 بیتی با Prescaler جدا، مقایسه نحوه COMPARE، و CAPTURE
  • نوسان ساز زمان واقعی کانتر RTC -REAL TIME CLOCK
  • سه کانال PWM
  • 8کانال مبدل آنالوگ به دیجیتال دربسته بندی TQFP و MLF
  • شش کانال با دقت 10 بیتی
  • دو کانال با دقت 8 بیتی
  • 6 کانال مبدل آنالوگ به دیجیتال در بسته بندی PDIP
  • چهار کانال با دقت 10 بیتی
  • دو کانال با دقت 8 بیتی
  • بایت گرا دو سیم رابط سریال
  • قابلیت برنامه ریزی USART
  • قابلیت برنامه ریزی با تایمر WATCHDOG جدا بر روی چیپ نوسان ساز
  • یک مقایسه کننده آنالوگ داخلی
مطلب پیشنهادی:  پروژه Diag خودرو

ولتاژهای عامل (کاری)

  • 2.7 تا 5.5 ولت ATmega8L
  • 4.5 تا 5.5 ولت ATMEGA8

• فرکانس های کاری

  • 8 – 0 مگاهرتز ATmega8L
  • 0 – 16 مگاهرتز ATmega8

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

ماژول بلوتوث HC-05 یک ماژول استاندارد Bluetooth با خروجی سریال می باشد. این ماژول برای ارتباط بین میکروکنترلر و موبایل و تبلت و نیز دو میکرو با یکدیگر با سرعت بالا انتخاب خوبی به شمار می رود. همچنین میتوان با استفاده از این ماژول بین پروژه های ساخته شده با میکرو و lap top های دارای پورت USB و PC های دارای دانگل بلوتوث نیز یک لینک ارتباطی بیسیم از نوع ارتباط سریال برقرار کرد.


نکته مهم::

بعضی از ماژول ها کلاک کاریشون فرق میکنه بعضی ها 38400 هستن و بعضی ها 9600 که توی کد پیش فرض روی 9600 گذاشتم ولی اگر کار نکرد تیکه کد بالاش که کانمتش کردم را فعال و پایینی را غیر فعال کنید.

برای 38400 :

//// USART initialization
//// Communication Parameters: 8 Data, 1 Stop, No Parity
//// USART Receiver: On
//// USART Transmitter: On
//// USART Mode: Asynchronous
//// USART Baud Rate: 38400
//UCSRA=0x00;
//UCSRB=0x98;
//UCSRC=0x86;
//UBRRH=0x00;
//UBRRL=0x0C;

برای 9600 :

// USART initialization
// Communication Parameters: 8 Data, 1 Stop, No Parity
// USART Receiver: On
// USART Transmitter: On
// USART0 Mode: Asynchronous
// USART Baud Rate: 9600
UCSR0A=0x00;
UCSR0B=0x98;
UCSR0C=0x06;
UBRR0H=0x00;
UBRR0L=0x33;

ورژن 2 رله ای با ماژول HC05 از نوع برد آماده

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

کنترل لوازم خانگی با بلوتوث - بلوتوث کنترلر 2 و 4 کانال یکسری تغییرات در این مدل اتفاق افتاده ولی خیلی هم تغییر ندادیم که با سورس قبلی سازگار باشه،  2تا رله 2 عدد LED گذاشتیم و مدل ماژول را از SMD به حالت هدر آماده ( هر چی شما اسمشو بذارین) تغییر دادیم و البته میکروکنترلر را بنا به درخواست مجبور شدیم ATMEGA32A بذاریم. میدونم کار درستی نیست ولی حق انتخاب نداشتیم. از این بابت دوستان حرفه ای ببخشن. مدار بازم طبق معمول خیلی ساده است. و شما میتونین حتی با تغییر سورس آن را خیلی کوچولو بسازین میدونین که از این بابت ما مشکلی نداریم.

مطلب پیشنهادی:  پروژه مولد مو ج سینوسی

کنترل لوازم خانگی با بلوتوث - بلوتوث کنترلر 2 و 4 کانال

میکروکنترلر روی فرکانس 8مگاهرتز داخلی تنظیم شده ( قابل تغییر است از داخل نرم افزار کدویژن و بعد از تغییر دوباره کامپایلش کنید.). میدونین که برای تغییر کلاک کاری باید فیوز بیت ها را تغییر بدید. برای دیدن و تغییر فرکانس کاری میکروکنترلر، پروژه را در  نرم افزار کدویژن باز کنید و از منو Project گزینه configure را انتخاب کنید و در صفحه ظاهر شده میتونید ببینید. نمونه فیوز بیت های میکروکنترلر تنظیم شده روی 8مگاهرتز داخلی با نرم افزار progisp را در شکل زیر میبینید:فیوز بیت

نکته مهم: سورس پروژه 2 رله ای فقط برای گزینه دوم قابل دسترسی است. در ضمن پروژه 2 رله ای توضیحات ندارد. و تقریبا شبیه 4 رله است. پروژه 2 رله ای شامل : سورس برنامه نویسی، شماتیک مدار بصورت فایل PDF با کیفیت، فایل PCB مدار طراحی شده در آلتیوم دیزاینر است. برنامه اندریدی هر دو پروژه یکی است. هر سوالی داشتین در قسمت نظرات مطرح کنید.

دانلود:

این محتوا فقط برای کاربران وارد شده است.لطفا برای مشاهده این مطلب وارد شوید.

توضیحات کامل در داخل فایل توضیحات مدار هستش و همچنین فایل های زیر :

  • فایل توضیحات کامل مدار
  • فایل شماتیک با کیفیت مدار
  • فایل سورس برنامه نویسی
  • فایل apk برنامه اندرویدی
  • فایل PCB مدار

اگر سوالی داشتین در قسمت کامنت ها ⇓ مطرح کنید.

اگر این نوشته‌ برایتان مفید بود لطفا کامنت بنویسید.

21 دیدگاه

  1. مرسی از پروژه خوبتون
    زبان برنامه نویسی این پروژه چیه؟

  2. سلام ایا سورس برنامه اندروید را هم دارید؟

  3. سلام خسته نباشید
    من مدارمو بستم ماژول بلوتوثم وصله و مانند فیلم عملکرد فلاش میزنه.
    ولی رله ها عمل نمیکنه
    امکان داره مشکل از برنامه باشه؟؟

    • میلاد جهاندیده

      سلام . در مورد برنامه که ده ها بار خودم مدار را بستم فقط دو نکته بنظرم میرسه یکی اینکه درست پرگرام نمیشه و دوم اینکه ماژول در مد درست نیست.اگر میتونید بغل ماژول پین هدر گذاشتم برای usart تا ماژول به سیستم وصل بشه … اگر مبدل usb به سریال دارید ماژول را به کامپیوتر وصل کنید و توسط برنامه زیر چک کنید ببیند خروجی usart درست هست یا نه ؟!
      http://bit.ly/2kGFALQ

  4. amirhosein

    سلام
    من پروژه رو دانلود کردم اما فایل کدویژن باز نمیشه error میده مشکل کجاس؟

  5. amirhosein

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

  6. سلام.وقت بخیر.من پروژه رو خریداری کردم.باید اول روی برد برد میبستم تا …. .طبق شماتیک روی برد برد بستم ولی به جای رله و ترانزیستور ،led گذاشتم با مقاومت.با کلاک های 1 و 2 و 4 و8 مگا آیسی رو پروگرم کردم .ماژول رو هم کانفیگ کردم با ترمینال.گوشی با ماژول ارتباط میگیره چون سرعت چشمک تغییر میکنه ولی هیچ کدوم از خروجی ها روشن نمیشن.گفتم شاید active low باشن ولی وقتی برنامه رو دیدم ،فهمیدم با یک روشن میشه.
    اول اینکه بفرمایید با چه کلاکی پروگرام کنم چون فک میکنم روی baudrate تاثیر گذاره.
    دوم اینکه مشکل از کجا میتونه باشه.تغذیه میکرو 5 و تغذیه ماژول هم 3.3 رعایت شده.تقسیم ولتاژمقاومتی برای پایه ی سریال ماژول هم درسته.جابه جا ام نزدم.با ولتمتر هم تغذیه و خروجی ها رو چک کردم

    • میلاد جهاندیده

      سلام . بعضی از ماژول ها کلاک کاریشون فرق میکنه بعضی ها 38400 هستن و بعضی ها 9600 که توی کد پیش فرض روی 9600 کذاشتم ولی اگر کار نکرد تیکه کد بالاش که کانمتش کردم را فعال و پایینی را غیر فعال کنید.

      برای 38400 :
      //// USART initialization
      //// Communication Parameters: 8 Data, 1 Stop, No Parity
      //// USART Receiver: On
      //// USART Transmitter: On
      //// USART Mode: Asynchronous
      //// USART Baud Rate: 38400
      //UCSRA=0x00;
      //UCSRB=0x98;
      //UCSRC=0x86;
      //UBRRH=0x00;
      //UBRRL=0x0C;
      برای 9600 :
      // USART initialization
      // Communication Parameters: 8 Data, 1 Stop, No Parity
      // USART Receiver: On
      // USART Transmitter: On
      // USART0 Mode: Asynchronous
      // USART Baud Rate: 9600
      UCSR0A=0x00;
      UCSR0B=0x98;
      UCSR0C=0x06;
      UBRR0H=0x00;
      UBRR0L=0x33;

  7. سلام استاد عزیز خسته نباشید.لطفا یک شماره موبایل لطف کنید .من کارتون دارم ممنون

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

    • میلاد جهاندیده

      سلام، فایل شماتیک مدار را ببینید تمامی قطعات هستش و عکس مدار را هم دقت کنید که با لیست تطابق داشته باشه از نظر اندازه و نوع پکیج قطعه…بازم سوالی در مورد مدار و قطعات بود بپرسین در خدمتون هستم.

  9. چرا نمیشه فایل رو خریداری کرد

  10. سلام
    چه تغییراتی باید بدیم برای اینکه بشه برای اتمگا ۸ استفاده کرد؟

    • میلاد جهاندیده

      سلام، روش ساده این است که کد مدل 4 رله ای را ویرایش کنید و 2 رله ای کنید. روش دیگرش اینکه که میکروکنترلر ATMEGA8 را جایگزین کنید در شماتیک و پایه هایش را توی کد تغییر بدید و کلا تنظیمات پروژه در کدویژن را تغییر بدید در مورد رجیسترهای میکروکنترلر الان یادم نمیاد نیازه یا نه ولی یکبار اگر میتونید مجدد کد رجیسترها را با CodeWizard تولید کنید.

  11. با عرض سلام ایا می شه در این مدار از ماژول های بلوتوث بالاتر یعنی HC_05 یا HC_08 استفاده کنیم