فهرست مطالب:

Android و Arduino SMS مبتنی بر اتوماسیون خانگی: 5 مرحله (همراه با تصاویر)
Android و Arduino SMS مبتنی بر اتوماسیون خانگی: 5 مرحله (همراه با تصاویر)

تصویری: Android و Arduino SMS مبتنی بر اتوماسیون خانگی: 5 مرحله (همراه با تصاویر)

تصویری: Android و Arduino SMS مبتنی بر اتوماسیون خانگی: 5 مرحله (همراه با تصاویر)
تصویری: Главная Автоматизация с помощью SMS - Использование и коды использования GSM-клавиатуры Arduino 2024, جولای
Anonim
Android و Arduino SMS مبتنی بر اتوماسیون خانگی
Android و Arduino SMS مبتنی بر اتوماسیون خانگی
Android و Arduino SMS مبتنی بر اتوماسیون خانگی
Android و Arduino SMS مبتنی بر اتوماسیون خانگی

! ! ! اطلاع ! ! !

به دلیل ارتقاء برج تلفن همراه محلی در منطقه من ، دیگر نمی توانم از این ماژول GSM استفاده کنم. برج جدیدتر دیگر از دستگاه های 2G پشتیبانی نمی کند. بنابراین ، من دیگر نمی توانم از این پروژه پشتیبانی کنم

اخیراً ، ماژول Quad Band GSM/GPRS نسبتاً ارزان را برای بازی دریافت کردم. این ماژول SIM800L است و از طریق یک پورت سریال با هر میکرو ارتباط برقرار می کند. به همراه آنتن پانل نصب شد.

من تصمیم گرفتم یک سیستم ساده SMS Controller بسازم که از دستورات سرویس پیام کوتاه (SMS) برای کنترل دستگاه ها و نشان دادن آلارم ها استفاده می کند.

مرحله 1: دستورات SMS

دستورات پیام کوتاه
دستورات پیام کوتاه

در مورد هر سیستم ارتباطی ، دستورات خاصی باید به یک دستگاه از راه دور ارسال شود تا به او بگوید چه کار کند. به همین ترتیب ، دستگاه از راه دور باید به این دستورات پاسخ دهد یا واکنش نشان دهد. این پروژه شامل دو قسمت SMS Controller و یک تلفن همراه استاندارد است.

ایده ایجاد یک SMS Controller ساده با چهار خروجی دیجیتالی بود. بسته به پیامک های دریافتی ، واحد باید بتواند خروجی های فردی را کنترل کند.

من همچنین تصمیم گرفتم چهار ورودی دیجیتال را در بر بگیرم. این می تواند برای نشان دادن زنگ هشدار یا سایر اطلاعات استفاده شود.

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

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

o1: 1 - خروجی را 1 روشن کنید

o1: 0 - خروجی را 1 خاموش کنید

o1: p - خروجی پالس 1 روشن ، سپس خاموش کنید

o2: 1 - خروجی را 2 روشن کنید

o2: 0 - خروجی را 2 خاموش کنید

o2: p - خروجی پالس 2 روشن ، سپس خاموش کنید

o3: 1 - خروجی را 3 روشن کنید

o3: 0 - خروجی را 3 خاموش کنید

o3: p - خروجی پالس 3 روشن ، سپس خاموش کنید

o4: 1 - خروجی را 4 روشن کنید

o4: 0 - خروجی را 4 خاموش کنید

o4: p - خروجی پالس 4 روشن ، سپس خاموش کنید

؟؟؟؟ - درخواست وضعیت ورودی ها و خروجی ها

#### - تنظیم مجدد سیستم

برای بازخورد ، کنترل کننده پیامک باید به دستورات دریافتی پاسخ دهد و با پیامک پاسخ دهد. من تصمیم گرفتم که این پیامک پاسخ باید شامل وضعیت همه پین های ورودی/خروجی باشد.

دستورات پاسخگویی کنترل کننده پیامک:

i1: x i2: x i3: x i4: x o1: x o2: x o3: x o4: x

جایی که x وضعیت ورودی/خروجی است ، 1 برای روشن ، 0 برای خاموش.

مرحله 2: ساخت کنترل کننده پیامک

ساخت کنترل کننده پیامک
ساخت کنترل کننده پیامک
ساخت کنترل کننده پیامک
ساخت کنترل کننده پیامک
ساخت کنترل کننده پیامک
ساخت کنترل کننده پیامک

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

هر آردوینو یا ATMEGA328p مستقل روی یک تخته نان

ماژول SIM800L GSM/GPRS با سیم کارت قادر به ارسال و دریافت پیامک

گام به گام مبدل DC/DC

توجه داشته باشید !

مبدل DC/DC برای تغذیه ماژول SIM800L مورد نیاز است. این ماژول بسته به نسخه ای که دارید بین 3.7 ولت تا 5 ولت کار می کند. این ماژول همچنین به منبع تغذیه ای نیاز دارد که بتواند در هنگام انتقال اطلاعات ماژول حداکثر تا 2A را تحویل دهد. نمی توان آن را مستقیماً از Arduino Uno تغذیه کرد !

مدار بسیار ساده است. من آن را روی تخته نان جمع کرده و آزمایش کرده ام.

تغذیه مدار از طریق مبدل DC/DC و ولتاژ خروجی روی 4.5 ولت تنظیم شده است. چهار LED برای شبیه سازی خروجی های دیجیتال و چهار دکمه برای ورودی های دیجیتال وجود دارد. SIM800L به پین های Rx/Tx ATMEGA328p متصل است.

از LED پنجم برای نشان دادن زمان مشغول بودن سیستم در ارسال پیامک استفاده می شود.

مرحله 3: برنامه نویسی ATMEGA328p

برنامه نویسی ATMEGA328p
برنامه نویسی ATMEGA328p
برنامه نویسی ATMEGA328p
برنامه نویسی ATMEGA328p

قبل از برنامه نویسی ، فایل INO را باز کرده و شماره تلفن را ویرایش کنید. xxxxxxxxxx را با شماره تلفن همراه خود در خط 46 جایگزین کنید. فایل را مجدداً کامپایل کرده و بارگذاری کنید.

همچنین ، دستورالعمل های مربوط به نحوه پیکربندی پورت سریال نرم افزار در فایل INO را بخوانید.

//=============================================================================//

//! ! ! توجه داشته باشید ! ! !

// ================

//

// بافر در کتابخانه سریال نرم افزاری به 200 تغییر می کند

//

// برای استفاده از سریال نرم افزار ، کاربر همچنین باید نرم افزار سریال BUFFER را به 200 تغییر دهد.

// این باید در فایل زیر ویرایش شود:

//

// C:/Program Files/Arduino x.x.x/Hardware/Arduino/AVR/Libraries/SoftwareSerial/src/SoftWareSerial.h

//

// تغییر بافر به شکل زیر:

//

// #ifndef _SS_MAX_RX_BUFF

// #تعریف_SS_MAX_RX_BUFF 200

// اندازه بافر RX

// #endif

//

//=============================================================================

برای برنامه نویسی ATMEGA328p روی نانبرد با استفاده از Arduino UNO به این دستورالعمل مراجعه کنید.

www.instructables.com/id/Arduino-UNO-as-AtM…

مرحله 4: استفاده از کنترل کننده پیامک

استفاده از کنترل کننده پیامک
استفاده از کنترل کننده پیامک

استفاده از کنترل کننده پیامک

در صورت فعال شدن هر یک از چهار ورودی ، کنترل کننده پیامک به طور خودکار پیامکی را به تلفن شما ارسال می کند. جزئیات ماشه در متن پیامک موجود است.

پیام ها و دستورات SMS را می توان بر اساس نیاز خود در فایل INO ویرایش کرد.

آزمایش خروجی های کنترل کننده پیامک

از طریق تلفن همراه خود ، دستورات زیر را به شماره سیم کارت SIM800L خود ارسال کنید:

o1: 1 ، این خروجی 1 را روشن می کند.

پیامک زیر را در تلفن خود دریافت خواهید کرد:

i1: 0 i2: 0 i3: 0 i4: 0 o1: 1 o2: 0 03: 0 o4: 0

01: 0 ، با این کار خروجی 1 خاموش می شود.

پیامک زیر را در تلفن خود دریافت خواهید کرد:

i1: 0 i2: 0 i3: 0 i4: 0 o1: 0 o2: 0 03: 0 o4: 0

01: p ، این خروجی 1 را برای 1 ثانیه روشن می کند ، سپس خروجی 1 را دوباره خاموش می کند (پالس).

پیامک زیر را در تلفن خود دریافت خواهید کرد:

i1: 0 i2: 0 i3: 0 i4: 0 o1: 0 o2: 0 03: 0 o4: 0

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

در کنترل کننده پیامک ، دکمه 1 را به طور مختصر فشار دهید

پیامک زیر را به صورت خودکار در تلفن خود دریافت خواهید کرد:

i1: 1 i2: 0 i3: 0 i4: 0 o1: 0 o2: 0 03: 0 o4: 0

در کنترل کننده پیامک ، دکمه 2 را به طور مختصر فشار دهید

پیامک زیر را به صورت خودکار در تلفن خود دریافت خواهید کرد:

i1: 1 i2: 1 i3: 0 i4: 0 o1: 0 o2: 0 03: 0 o4: 0

در کنترل کننده پیامک ، دکمه 3 را به طور مختصر فشار دهید

پیامک زیر را به صورت خودکار در تلفن خود دریافت خواهید کرد:

i1: 1 i2: 1i3: 1 i4: 0 o1: 0 o2: 0 03: 0 o4: 0

همانطور که در پیامک دریافتی مشاهده می شود ، خروجی ها با توجه به دستورات دریافتی تغییر می کند. با این حال ، ورودی ها پس از فشار دادن دکمه ها از 1 به 0 تغییر نمی کند. از آنجا که می خواستم بتوانم هرگونه تغییر در ورودی ها را ببینم ، تصمیم گرفتم تا زمانی که فرمان تنظیم مجدد به کنترلر SMS ارسال نشود ، وضعیت ورودی را مهر و موم کنم.

بازنشانی زنگ هشدارها

برای بازنشانی وضعیت ورودی ، دستور زیر را ارسال کنید:

#### ، با این کار وضعیت ورودی بازنشانی می شود.

پیامک زیر را در تلفن خود دریافت خواهید کرد:

i1: 0 i2: 0 i3: 0 i4: 0 o1: 0 o2: 0 03: 0 o4: 0

به روز رسانی وضعیت

همچنین می توانید در هر زمان با ارسال دستور زیر وضعیت را درخواست کنید:

؟؟؟؟ ، با این کار درخواست به روزرسانی وضعیت ورودی/خروجی می شود.

پیامک زیر را در تلفن خود دریافت خواهید کرد:

i1: x i2: x i3: x i4: x o1: x o2: x 03: x o4: x

جایی که x وضعیت را نشان می دهد ، 1 برای روشن ، 0 برای خاموش.

مرحله 5: برنامه Android

برنامه اندروید
برنامه اندروید
برنامه اندروید
برنامه اندروید
برنامه اندروید
برنامه اندروید

با استفاده از MIT App Inventor 2 (https://ai2.appinventor.mit.edu/) ، یک رابط کاربری ساده برای تلفن همراه اندرویدی خود ایجاد کردم. این برنامه به شما امکان می دهد توضیحات هر ورودی/خروجی را سفارشی کنید. همچنین اجازه می دهد تا شماره تلفن را وارد کنید.

چهار دکمه برای کنترل خروجی ها استفاده می شود ، در حالی که چک باکس وضعیت ورودی را نشان می دهد.

برای ویرایش برنامه ، یک حساب MIT App Inventor 2 ایجاد کرده و فایل AIA را وارد کنید.

برای نصب برنامه روی تلفن خود ، فایل APK را در تلفن خود کپی کرده و نصب کنید. باید برنامه ها را از "منابع ناشناخته" در تنظیمات امنیتی تلفن خود فعال کنید.

توصیه شده: