সুচিপত্র:

অ্যান্ড্রয়েড এবং আরডুইনো এসএমএস ভিত্তিক হোম অটোমেশন: 5 টি ধাপ (ছবি সহ)
অ্যান্ড্রয়েড এবং আরডুইনো এসএমএস ভিত্তিক হোম অটোমেশন: 5 টি ধাপ (ছবি সহ)
Anonim
অ্যান্ড্রয়েড এবং আরডুইনো এসএমএস ভিত্তিক হোম অটোমেশন
অ্যান্ড্রয়েড এবং আরডুইনো এসএমএস ভিত্তিক হোম অটোমেশন
অ্যান্ড্রয়েড এবং আরডুইনো এসএমএস ভিত্তিক হোম অটোমেশন
অ্যান্ড্রয়েড এবং আরডুইনো এসএমএস ভিত্তিক হোম অটোমেশন

! ! ! N O T I C E! ! !

আমার এলাকায় স্থানীয় সেলফোন টাওয়ার আপগ্রেড করার কারণে, আমি আর এই জিএসএম মডিউল ব্যবহার করতে পারছি না। নতুন টাওয়ার আর 2G ডিভাইস সমর্থন করে না। অতএব, আমি আর এই প্রকল্পের জন্য কোন সমর্থন দিতে পারি না।

সম্প্রতি, আমি অপেক্ষাকৃত সস্তা কোয়াড ব্যান্ড জিএসএম/জিপিআরএস মডিউল পেয়েছি। এটি একটি SIM800L মডিউল, এবং একটি সিরিয়াল পোর্টের মাধ্যমে যেকোন মাইক্রোর সাথে যোগাযোগ করে। এটি একটি প্যানেল মাউন্ট অ্যান্টেনা দিয়ে সম্পূর্ণ হয়েছিল।

আমি একটি সাধারণ এসএমএস কন্ট্রোলার সিস্টেম তৈরি করার সিদ্ধান্ত নিয়েছি যা ডিভাইসগুলিকে নিয়ন্ত্রণ করতে এবং অ্যালার্ম নির্দেশ করার জন্য সংক্ষিপ্ত বার্তা পরিষেবা (এসএমএস) কমান্ড ব্যবহার করে।

ধাপ 1: এসএমএস কমান্ড

এসএমএস কমান্ড
এসএমএস কমান্ড

যেকোনো যোগাযোগ ব্যবস্থার সাথে সাথে, নির্দিষ্ট কমান্ডগুলি দূরবর্তী ডিভাইসে পাঠাতে হবে যা এটি করতে হবে। অনুরূপভাবে, রিমোট ডিভাইসকে এই কমান্ডগুলির উত্তর বা প্রতিক্রিয়া জানাতে হবে। এই প্রকল্প দুটি অংশ নিয়ে গঠিত, এসএমএস কন্ট্রোলার, এবং একটি স্ট্যান্ডার্ড সেলুলার ফোন।

ধারণা ছিল চারটি ডিজিটাল আউটপুট সহ একটি সহজ এসএমএস কন্ট্রোলার তৈরি করা। প্রাপ্ত এসএমএসের উপর নির্ভর করে, ইউনিটটি অবশ্যই পৃথক আউটপুট নিয়ন্ত্রণ করতে সক্ষম হবে।

আমি চারটি ডিজিটাল ইনপুট অন্তর্ভুক্ত করার সিদ্ধান্ত নিয়েছি। এটি অ্যালার্ম বা অন্যান্য তথ্য নির্দেশ করতে ব্যবহার করা যেতে পারে।

বিল্ড শুরু করার আগে, আমি নির্দিষ্ট ফাংশনের জন্য নির্দিষ্ট কমান্ড তৈরি করার সিদ্ধান্ত নিয়েছি। সেলুলার ফোন থেকে একটি এসএমএস ব্যবহার করে এই 'কমান্ড' পাঠানো হবে।

এসএমএস কন্ট্রোলার রিসিভ কমান্ড:

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 চালু, তারপর বন্ধ করুন

???? - ইনপুট এবং আউটপুটের স্থিতি অনুরোধ করুন

#### - সিস্টেম রিসেট করুন

মতামতের জন্য, এসএমএস কন্ট্রোলারের প্রাপ্ত কমান্ডের উত্তর দেওয়া উচিত এবং একটি এসএমএস দিয়ে উত্তর দেওয়া উচিত। আমি সিদ্ধান্ত নিয়েছি যে এই উত্তরের এসএমএসে সমস্ত I/O পিনের স্থিতি অন্তর্ভুক্ত করা উচিত।

এসএমএস কন্ট্রোলার রেসপন্স কমান্ড:

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

যেখানে x হল I/O স্ট্যাটাস, অন এর জন্য 1, অফের জন্য 0।

ধাপ 2: এসএমএস কন্ট্রোলার তৈরি করা

এসএমএস কন্ট্রোলার নির্মাণ
এসএমএস কন্ট্রোলার নির্মাণ
এসএমএস কন্ট্রোলার নির্মাণ
এসএমএস কন্ট্রোলার নির্মাণ
এসএমএস কন্ট্রোলার নির্মাণ
এসএমএস কন্ট্রোলার নির্মাণ

সরঞ্জাম প্রয়োজন:

যে কোন Arduino, অথবা একা একা ATMEGA328p একটি ব্রেডবোর্ডে

সিম 800 এল জিএসএম/জিপিআরএস মডিউল একটি সিম কার্ড সহ এসএমএস পাঠাতে এবং গ্রহণ করতে সক্ষম

ডিসি/ডিসি কনভার্টার নিচে নামান

বিঃদ্রঃ !

সিম 800 এল মডিউলটি পাওয়ার জন্য ডিসি/ডিসি কনভার্টার প্রয়োজন। এই মডিউলটি আপনার কাছে থাকা সংস্করণের উপর নির্ভর করে 3.7V এবং 5V এর মধ্যে কাজ করে। এই মডিউলের জন্য একটি পাওয়ার সাপ্লাই প্রয়োজন যা 2A পর্যন্ত সরবরাহ করতে পারে যখন মডিউল ডেটা প্রেরণ করে। এটা Arduino Uno থেকে সরাসরি চালানো যাবে না !

সার্কিটটি বেশ সহজ। আমি এটি একত্রিত করেছি এবং এটি রুটিবোর্ডে পরীক্ষা করেছি।

সার্কিটের শক্তি ডিসি/ডিসি কনভার্টারের মাধ্যমে, আউটপুট ভোল্টেজ 4.5V সেট করে। ডিজিটাল আউটপুট অনুকরণ করার জন্য চারটি এলইডি এবং ডিজিটাল ইনপুটগুলির জন্য চারটি বোতাম রয়েছে। SIM800L ATMEGA328p এর Rx/Tx পিনের সাথে সংযুক্ত।

একটি এসএমএস পাঠাতে ব্যস্ত অবস্থায় সিস্টেমটি নির্দেশ করার জন্য একটি 5 ম LED ব্যবহার করা হয়।

ধাপ 3: ATMEGA328p প্রোগ্রামিং

ATMEGA328p প্রোগ্রামিং
ATMEGA328p প্রোগ্রামিং
ATMEGA328p প্রোগ্রামিং
ATMEGA328p প্রোগ্রামিং

প্রোগ্রামিং করার আগে, INO ফাইলটি খুলুন এবং ফোন নম্বরটি সম্পাদনা করুন। আপনার নিজের সেলুলার ফোন নম্বরের সাথে XXXXXXXXXXXX লাইনকে প্রতিস্থাপন করুন। পুনরায় কম্পাইল করুন এবং ফাইলটি আপলোড করুন।

এছাড়াও, INO ফাইলে সফ্টওয়্যার সিরিয়াল পোর্ট কনফিগার করার নির্দেশাবলী পড়ুন।

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

//! ! ! বিঃদ্রঃ ! ! !

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

//

// সফ্টওয়্যার সিরিয়াল লাইব্রেরিতে বাফার 200 এ পরিবর্তন করা হবে

//

// সফ্টওয়্যার সিরিয়াল ব্যবহার করার জন্য, ব্যবহারকারীর সফটওয়্যার সিরিয়াল বাফারকে 200 এ পরিবর্তন করতে হবে।

// এটি নিম্নলিখিত ফাইলে সম্পাদনা করা আবশ্যক:

//

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

//

// নীচে বাফার পরিবর্তন করুন:

//

// #ifndef _SS_MAX_RX_BUFF

// #_ss_MAX_RX_BUFF 200 নির্ধারণ করুন

// RX বাফার সাইজ

// #যদি শেষ

//

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

একটি Arduino UNO ব্যবহার করে রুটিবোর্ডে ATMEGA328p প্রোগ্রাম করার জন্য এই নির্দেশাবলী পড়ুন।

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

ধাপ 4: এসএমএস কন্ট্রোলার ব্যবহার করা

এসএমএস কন্ট্রোলার ব্যবহার করে
এসএমএস কন্ট্রোলার ব্যবহার করে

এসএমএস কন্ট্রোলার ব্যবহার করে

এসএমএস কন্ট্রোলার স্বয়ংক্রিয়ভাবে আপনার ফোনে একটি এসএমএস পাঠাবে যদি চারটি ইনপুট চালু হয়। ট্রিগারের বিবরণ এসএমএস টেক্সটে থাকবে।

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 পর্যন্ত পরিবর্তন হয় না। যেহেতু আমি ইনপুটগুলিতে কোনও পরিবর্তন দেখতে সক্ষম হতে চেয়েছিলাম, আমি এসএমএস কন্ট্রোলারকে একটি রিসেট কমান্ড না পাঠানো পর্যন্ত ইনপুট স্থিতিতে সীলমোহর করার সিদ্ধান্ত নিয়েছি।

অ্যালার্ম রিসেট করুন

ইনপুট স্থিতি পুনরায় সেট করতে, নিম্নলিখিত কমান্ডটি পাঠান:

####, এটি ইনপুট স্থিতি পুনরায় সেট করবে।

আপনার ফোনে, আপনি নিম্নলিখিত এসএমএস পাবেন:

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

অবস্থা আপডেট

আপনি নিম্নলিখিত কমান্ডটি পাঠিয়ে যে কোনও সময় স্ট্যাটাসের অনুরোধ করতে পারেন:

????, এটি I/Os এর একটি স্ট্যাটাস আপডেটের অনুরোধ করবে।

আপনার ফোনে, আপনি নিম্নলিখিত এসএমএস পাবেন:

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

যেখানে x স্থিতি নির্দেশ করে, 1 এর জন্য 0, বন্ধের জন্য 0।

ধাপ 5: অ্যান্ড্রয়েড অ্যাপ্লিকেশন

অ্যান্ড্রয়েড অ্যাপ্লিকেশন
অ্যান্ড্রয়েড অ্যাপ্লিকেশন
অ্যান্ড্রয়েড অ্যাপ্লিকেশন
অ্যান্ড্রয়েড অ্যাপ্লিকেশন
অ্যান্ড্রয়েড অ্যাপ্লিকেশন
অ্যান্ড্রয়েড অ্যাপ্লিকেশন

MIT App Inventor 2 (https://ai2.appinventor.mit.edu/) ব্যবহার করে, আমি আমার অ্যান্ড্রয়েড সেলুলার ফোনের জন্য একটি সহজ ইউজার ইন্টারফেস তৈরি করেছি। এই অ্যাপ্লিকেশনটি আপনাকে প্রতিটি I/O এর বিবরণ কাস্টমাইজ করতে দেয়। এটি টেলিফোন নম্বর প্রবেশের অনুমতি দেয়।

চারটি বোতাম আউটপুট নিয়ন্ত্রণ করতে ব্যবহৃত হয়, যখন চেক বাক্সগুলি ইনপুট স্থিতি নির্দেশ করে।

অ্যাপ্লিকেশনটি সম্পাদনা করতে, একটি এমআইটি অ্যাপ উদ্ভাবক 2 অ্যাকাউন্ট তৈরি করুন এবং এআইএ ফাইলটি আমদানি করুন।

আপনার ফোনে অ্যাপটি ইনস্টল করতে, আপনার ফোনে APK ফাইলটি অনুলিপি করুন এবং এটি ইনস্টল করুন। আপনার ফোনের নিরাপত্তা সেটিংসের অধীনে আপনাকে "অজানা উত্স" থেকে অ্যাপ্লিকেশনগুলির ইনস্টলেশন সক্ষম করতে হবে।

প্রস্তাবিত: