সুচিপত্র:

আরডুইনো ভিত্তিক জিএসএম/এসএমএস রিমোট কন্ট্রোল ইউনিট: 16 টি ধাপ (ছবি সহ)
আরডুইনো ভিত্তিক জিএসএম/এসএমএস রিমোট কন্ট্রোল ইউনিট: 16 টি ধাপ (ছবি সহ)

ভিডিও: আরডুইনো ভিত্তিক জিএসএম/এসএমএস রিমোট কন্ট্রোল ইউনিট: 16 টি ধাপ (ছবি সহ)

ভিডিও: আরডুইনো ভিত্তিক জিএসএম/এসএমএস রিমোট কন্ট্রোল ইউনিট: 16 টি ধাপ (ছবি সহ)
ভিডিও: How to make GSM based Fire Alert and smoke alert System Call and SMS Notification using Arduino 2024, নভেম্বর
Anonim
আরডুইনো ভিত্তিক জিএসএম/এসএমএস রিমোট কন্ট্রোল ইউনিট
আরডুইনো ভিত্তিক জিএসএম/এসএমএস রিমোট কন্ট্রোল ইউনিট

! ! ! N O T I C E!

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

শখের জন্য জিএসএম মডিউলগুলির এত বিস্তৃত পরিসরের সাথে, আমরা বেশিরভাগই একটি কেনা শেষ করেছি। আমি স্থানীয়ভাবে একটি SIM800L মডিউল কিনেছি, এবং মডিউলের বিভিন্ন কমান্ডের সাথে খেলা শেষ করেছি।

Arduino Uno এবং Arduino IDE ব্যবহার করে, আমি আমার ধারণাগুলিকে বাস্তবে পরিণত করতে সক্ষম হয়েছি। এটি সহজ ছিল না, একক সবচেয়ে বড় সমস্যা শুধুমাত্র 2KB SRAM এর সীমাবদ্ধতা। ইন্টারনেট এবং বিভিন্ন ফোরামে অনেক গবেষণার পর, আমি এই সীমাবদ্ধতা অতিক্রম করতে সক্ষম হয়েছি।

বিভিন্ন প্রোগ্রামিং কৌশল, আরডুইনো কম্পাইলারের আরও ভাল বোঝা এবং অতিরিক্ত মেমরির জন্য সিম কার্ড এবং EEPROM ব্যবহার করে এই প্রকল্পটি সংরক্ষণ করা হয়েছে। কোডে কিছু পরিবর্তনের পরে, একটি স্থিতিশীল প্রোটোটাইপ তৈরি করা হয়েছিল এবং এক সপ্তাহের মধ্যে পরীক্ষা করা হয়েছিল।

সীমিত SRAM এর একটি অপূর্ণতা ছিল যে ইউনিটটি একটি ডিসপ্লে এবং ব্যবহারকারীর কী দিয়ে লাগানো যাবে না। এর ফলে কোডটির সম্পূর্ণ পুনর্লিখন ঘটে। ইউজার ইন্টারফেস না থাকায়, প্রকল্পটি চালিয়ে যাওয়ার একমাত্র বিকল্প বাকি ছিল, ইউনিট কনফিগার করার জন্য এসএমএস বার্তা ব্যবহার করা, সেইসাথে ব্যবহারকারীরা।

এটি একটি উত্তেজনাপূর্ণ প্রজেক্টে পরিণত হয়েছিল, এবং উন্নয়ন অব্যাহত থাকায় আরও ভবিষ্যত যুক্ত করা হয়েছিল।

আমার প্রধান লক্ষ্য ছিল Arduino Uno- এর সাথে থাকা, অথবা এই ক্ষেত্রে, ATMEGA328p, এবং কোনো সারফেস মাউন্ট উপাদান ব্যবহার না করা। এটি সাধারণ জনগণের জন্য ইউনিটটি অনুলিপি করা এবং তৈরি করা আরও সহজ করে তুলবে।

ইউনিটের স্পেসিফিকেশন:

  • ইউনিটে সর্বাধিক 250 ব্যবহারকারী প্রোগ্রাম করা যেতে পারে
  • চারটি ডিজিটাল আউটপুট
  • চারটি ডিজিটাল ইনপুট
  • প্রতিটি আউটপুট একটি পালস বা চালু/বন্ধ আউটপুট হিসাবে কনফিগার করা যেতে পারে
  • আউটপুট পালস সময়কাল 0.5.. 10 সেকেন্ডের মধ্যে সেট করা যেতে পারে
  • প্রতিটি ইনপুট অফ টু অন পরিবর্তনগুলি ট্রিগার করার জন্য কনফিগার করা যায়।
  • প্রতিটি ইনপুট চালু থেকে বন্ধ পরিবর্তনগুলি ট্রিগার করার জন্য কনফিগার করা যেতে পারে
  • প্রতিটি ইনপুট বিলম্বের সময় 0 সেকেন্ড এবং 1 ঘন্টার মধ্যে সেট করা যেতে পারে
  • ইনপুটগুলিতে পরিবর্তনের জন্য এসএমএস বার্তা 5 টি ভিন্ন ব্যবহারকারীর কাছে পাঠানো যেতে পারে
  • প্রতিটি ইনপুটের জন্য নাম এবং স্থিতি পাঠ্য ব্যবহারকারী দ্বারা সেট করা যেতে পারে
  • প্রতিটি আউটপুটের জন্য নাম এবং স্থিতি পাঠ্য ব্যবহারকারী দ্বারা সেট করা যেতে পারে
  • ইউএসএসডি মেসেজিং এর মাধ্যমে সিম কার্ড ব্যালেন্স মেসেজ পাওয়ার জন্য ইউনিট কনফিগার করা যায়।
  • সমস্ত ব্যবহারকারী ইউনিটের I/O স্ট্যাটাস আপডেটের জন্য অনুরোধ করতে পারেন
  • সমস্ত ব্যবহারকারী এসএমএস বার্তার মাধ্যমে পৃথক আউটপুট নিয়ন্ত্রণ করতে পারে
  • সমস্ত ব্যবহারকারী ইউনিটকে কল করে পৃথক আউটপুট নিয়ন্ত্রণ করতে পারে

নিরাপত্তা বৈশিষ্ট্য

  • ইউনিটের প্রাথমিক সেটআপ শুধুমাত্র ইউনিটে থাকা অবস্থায় করা যেতে পারে।
  • প্রাথমিক সেটআপ শুধুমাত্র মাস্টার ব্যবহারকারী দ্বারা সঞ্চালিত হতে পারে
  • প্রাথমিক সেটআপ কমান্ডগুলি দশ মিনিটের পরে স্বয়ংক্রিয়ভাবে অক্ষম হয়ে যায়।
  • শুধুমাত্র পরিচিত ব্যবহারকারীদের কল এবং এসএমএস বার্তাগুলি ইউনিট নিয়ন্ত্রণ করতে পারে
  • ব্যবহারকারীরা শুধুমাত্র মাস্টার ব্যবহারকারীর দ্বারা নির্ধারিত আউটপুটগুলি পরিচালনা করতে পারে

অন্যান্য বৈশিষ্ট্য

  • এই ইউনিটে কলগুলি বিনামূল্যে, কারণ কলটি কখনও উত্তর দেয় না।
  • যখন ইউনিটকে বলা হয়, কলটি 2 সেকেন্ড পরেই নেমে যাবে। এটি কলকারীর নিশ্চিতকরণ যে ইউনিট কলটিতে সাড়া দিয়েছে।
  • যদি সিম কার্ড পরিষেবা প্রদানকারী ইউএসএসডি বার্তাগুলিকে সমর্থন করে, তাহলে ব্যালেন্স অনুসন্ধান মাস্টার ব্যবহারকারীর দ্বারা করা যেতে পারে। ব্যালেন্স সম্বলিত USSD বার্তা, তারপর মাস্টার ব্যবহারকারীর কাছে পাঠানো হবে।

ধাপ 1: বিদ্যুৎ সরবরাহ

পাওয়ার সাপ্লাই
পাওয়ার সাপ্লাই

ইউনিটটিকে স্ট্যান্ডার্ড সিকিউরিটি সিস্টেম (অ্যালার্ম সিস্টেম, ইলেকট্রিক গ্যারেজ ডোর, ইলেকট্রিক গেট মোটর) এর সাথে সংযুক্ত করা যেতে পারে, এই ইউনিটটি 12V ডিসি থেকে চালিত হবে যা সাধারণত এই ধরনের সিস্টেমে পাওয়া যায়।

12V IN এবং 0V টার্মিনালে পাওয়ার প্রয়োগ করা হয় এবং এটি 1A ফিউজ দ্বারা সুরক্ষিত। অতিরিক্ত 12V আউট টার্মিনাল পাওয়া যায়, এবং ফিউজ দ্বারা সুরক্ষিত।

ডায়োড ডি 1 ইউনিটকে 12V লাইনে বিপরীত মেরু সংযোগের বিরুদ্ধে রক্ষা করে।

ক্যাপাসিটর C1 এবং C2 12V সাপ্লাই লাইনে উপস্থিত কোন গোলমাল ফিল্টার করে। 12V সরবরাহটি ইউনিটের রিলেগুলিকে পাওয়ার করতে ব্যবহৃত হয়।

5V সরবরাহ একটি LM7805L ভোল্টেজ রেগুলেটর নিয়ে গঠিত, এবং SIM800L GSM মডিউল, সেইসাথে মাইক্রো প্রসেসরের জন্য প্রয়োজনীয় একটি স্থিতিশীল +5V আউটপুট। ক্যাপাসিটার C3 এবং C4 +5V সাপ্লাই লাইনে উপস্থিত হতে পারে এমন যেকোনো শব্দকে ফিল্টার করে। আপেক্ষিক বড় আকারের ইলেক্ট্রোলাইটিক ক্যাপাসিটার ব্যবহার করা হয়েছিল, কারণ SIM800L GSM মডিউল ট্রান্সমিট করার সময় বেশ কিছুটা শক্তি ব্যবহার করে।

ভোল্টেজ রেগুলেটরে কোন হিট সিংকের প্রয়োজন নেই।

ধাপ 2: ডিজিটাল ইনপুট

ডিজিটাল ইনপুট
ডিজিটাল ইনপুট
ডিজিটাল ইনপুট
ডিজিটাল ইনপুট

ডিজিটাল ইনপুট সিগন্যাল সব 12V, এবং 5V মাইক্রো কন্ট্রোলার সঙ্গে interfaced করা আবশ্যক। এর জন্য, 5V সিস্টেম থেকে 12V সংকেত বিচ্ছিন্ন করতে অপ্টো কাপলার ব্যবহার করা হয়।

1K ইনপুট প্রতিরোধক ইনপুট বর্তমানকে অপ্টো কাপলারে 10mA পর্যন্ত সীমাবদ্ধ করে।

স্থান সীমাবদ্ধতার কারণে, পিসি বোর্ডে 5V পুল-আপ প্রতিরোধকগুলির জন্য কোন স্থান উপলব্ধ ছিল না। মাইক্রো কন্ট্রোলারটি ইনপুট পিনগুলিকে দুর্বল পুল-আপ সক্ষম করতে সেট আপ করা হয়েছে।

অপ্টো কাপলারের ইনপুটে (LOW) কোন সিগন্যাল না থাকায়, অপটো কাপলার LED এর মাধ্যমে কোন কারেন্ট প্রবাহিত হবে না। এইভাবে অপটো কাপলার ট্রানজিস্টর বন্ধ থাকে। মাইক্রো কন্ট্রোলারের দুর্বল টান আপ সংগ্রাহককে প্রায় 5V পর্যন্ত টেনে আনবে এবং মাইক্রো কন্ট্রোলার দ্বারা এটিকে যুক্তি হিসাবে উচ্চ হিসাবে দেখা হবে।

অপটো কাপলারের ইনপুটে 12V প্রয়োগ (উচ্চ) সহ, প্রায় 10mA অপ্টো কাপলার LED এর মাধ্যমে প্রবাহিত হবে। এইভাবে অপটো কাপলার ট্রানজিস্টর চালু হবে। এটি সংগ্রাহককে প্রায় 0V এ নামিয়ে আনবে এবং মাইক্রো কন্ট্রোলার দ্বারা এটি একটি যুক্তি হিসাবে কম দেখা যাবে।

লক্ষ্য করুন যে মাইক্রো কন্ট্রোলার দ্বারা দেখা ইনপুট 12V ইনপুটের তুলনায় উল্টো।

ইনপুট পিন পড়ার জন্য সাধারণ কোডটি দেখতে নিম্নরূপ:

বুলিয়ান ইনপুট = ডিজিটাল রিড (ইনপুটপিন);

উল্টানো সিগন্যালের জন্য সংশোধন করতে, নিম্নলিখিত কোডটি ব্যবহার করুন:

বুলিয়ান ইনপুট =! ডিজিটাল রিড (ইনপুটপিন); // দ্রষ্টব্য! পড়ার সামনে

এখন, মাইক্রো কন্ট্রোলার দ্বারা দেখা ইনপুট 12V ইনপুটের ইনপুটের সাথে মিলবে।

চূড়ান্ত ইনপুট সার্কিট 4 টি ডিজিটাল ইনপুট নিয়ে গঠিত। প্রতিটি ইনপুট পিসি বোর্ডের টার্মিনালে সংযুক্ত।

ধাপ 3: ডিজিটাল আউটপুট

ডিজিটাল আউটপুট
ডিজিটাল আউটপুট
ডিজিটাল আউটপুট
ডিজিটাল আউটপুট
ডিজিটাল আউটপুট
ডিজিটাল আউটপুট

সাধারনত, একটি সার্কিট দিয়ে শুধুমাত্র ন্যূনতম সংখ্যক রিলে চালানো হয়, সবচেয়ে ভালো উপায় হল ট্রানজিস্টর ড্রাইভার সার্কিট ব্যবহার করা। এটি সহজ, কম খরচে এবং কার্যকর।

প্রতিরোধক মাটিতে টান-ডাউন, এবং ট্রানজিস্টার বেস বর্তমান সীমাবদ্ধতা প্রদান করে। ট্রানজিস্টার একটি রিলে চালানোর জন্য উপলব্ধ বর্তমান বৃদ্ধি করতে ব্যবহৃত হয়। মাইক্রো কন্ট্রোলার পিন থেকে মাত্র 1mA টানলে ট্রানজিস্টর 100mA লোড পরিবর্তন করতে পারে। বেশিরভাগ ধরণের রিলেগুলির জন্য যথেষ্ট বেশি। ডায়োড হল একটি ফ্লাই-ব্যাক ডায়োড, যা রিলে সুইচিংয়ের সময় সার্কিটকে হাই ভোল্টেজ স্পাইক থেকে রক্ষা করে। এই সার্কিট ব্যবহার করার অতিরিক্ত সুবিধা হল, রিলে অপারেটিং ভোল্টেজ মাইক্রো কন্ট্রোলারের ভোল্টেজ থেকে আলাদা হতে পারে। এইভাবে, 5V রিলে ব্যবহারের পরিবর্তে, কেউ 48V পর্যন্ত যেকোনো ডিসি ভোল্টেজ ব্যবহার করতে পারে।

ULN2803 প্রবর্তন

একটি প্রকল্পের জন্য যত বেশি রিলে প্রয়োজন, কম্পোনেন্টের সংখ্যা তত বেশি। এটি পিসিবি ডিজাইনকে আরও কঠিন করে তুলবে এবং মূল্যবান পিসিবি স্থান ব্যবহার করতে পারে। কিন্তু ULN2803 এর মত একটি ট্রানজিস্টার অ্যারে ব্যবহার করলে অবশ্যই PCB আকার ছোট রাখতে সাহায্য করবে ULN2803 আদর্শভাবে একটি মাইক্রো কন্ট্রোলার থেকে 3.3V এবং 5V ইনপুটের জন্য উপযুক্ত, এবং 48V ডিসি পর্যন্ত রিলে চালাতে পারে। এই ULN2803 এর 8 টি পৃথক ট্রানজিস্টার সার্কিট রয়েছে, প্রতিটি সার্কিট একটি রিলে সুইচ করার জন্য প্রয়োজনীয় সমস্ত উপাদান দিয়ে লাগানো।

চূড়ান্ত আউটপুট সার্কিট একটি ULN3803 গঠিত, 4 12V ডিসি আউটপুট রিলে ড্রাইভিং। রিলে প্রতিটি যোগাযোগ পিসি বোর্ড টার্মিনালে পাওয়া যায়।

ধাপ 4: মাইক্রো কন্ট্রোলার অসিলেটর

মাইক্রো কন্ট্রোলার অসিলেটর
মাইক্রো কন্ট্রোলার অসিলেটর
মাইক্রো কন্ট্রোলার অসিলেটর
মাইক্রো কন্ট্রোলার অসিলেটর
মাইক্রো কন্ট্রোলার অসিলেটর
মাইক্রো কন্ট্রোলার অসিলেটর

অসিলেটর সার্কিট

মাইক্রো কন্ট্রোলার সঠিকভাবে কাজ করার জন্য একটি অসিলেটর প্রয়োজন। Arduino Uno ডিজাইনে রাখার জন্য, সার্কিটটি স্ট্যান্ডার্ড 16MHz দোলক ব্যবহার করবে। দুটি বিকল্প উপলব্ধ:

ক্রিস্টাল

এই পদ্ধতি দুটি লোডিং ক্যাপাসিটরের সাথে সংযুক্ত একটি স্ফটিক ব্যবহার করে। এটি সবচেয়ে সাধারণ বিকল্প।

অনুরণনকারী

একটি রেজোনেটর মূলত একটি স্ফটিক এবং দুটি লোডিং ক্যাপাসিটর একটি একক 3-পিন প্যাকেজে থাকে। এটি উপাদানগুলির পরিমাণ হ্রাস করে এবং পিসি বোর্ডে উপলব্ধ স্থান বাড়ায়।

কম্পোনেন্টের সংখ্যা যতটা সম্ভব কম রাখার জন্য, আমি একটি 16MHz রেজোনেটর ব্যবহার করতে পছন্দ করেছি।

ধাপ 5: ইঙ্গিত LEDs

ইঙ্গিত LEDs
ইঙ্গিত LEDs
ইঙ্গিত LEDs
ইঙ্গিত LEDs

কিছু এলইডি ছাড়া কোন সার্কিট কি হবে? পিসি বোর্ডে 3 মিমি এলইডির বিধান করা হয়েছিল।

LED এর মাধ্যমে কারেন্টকে 5mA এর কম সীমাবদ্ধ করতে 1K রোধক ব্যবহার করা হয়, যখন 3mm উচ্চ-উজ্জ্বল LEDs ব্যবহার করে, উজ্জ্বলতা চমৎকার।

স্থিতি LEDs এর সহজ ব্যাখ্যার জন্য, দুটি রং ব্যবহার করা হয়। ফ্ল্যাশিং ইঙ্গিতগুলির সাথে দুটি এলইডি একত্রিত করে, কেবল দুটি এলইডি থেকে প্রচুর তথ্য পাওয়া যায়।

লাল LED

লাল LED ফল্ট শর্ত, দীর্ঘ বিলম্ব, কোন ভুল আদেশ নির্দেশ করতে ব্যবহৃত হয়।

সবুজ LED

সবুজ LED স্বাস্থ্যকর এবং/অথবা সঠিক ইনপুট এবং কমান্ড নির্দেশ করতে ব্যবহৃত হয়।

ধাপ 6: মাইক্রো প্রসেসর সার্কিট রিসেট করুন

মাইক্রো প্রসেসর রিসেট সার্কিট
মাইক্রো প্রসেসর রিসেট সার্কিট

নিরাপত্তার কারণে, ইউনিটটির কিছু ফাংশন শুধুমাত্র ইউনিটটি পাওয়ার করার পর প্রথম 10 মিনিটের মধ্যে পাওয়া যায়।

একটি রিসেট বোতাম দিয়ে, ইউনিটটি পুনরায় সেট করার জন্য ইউনিটের পাওয়ার বন্ধ করার দরকার নেই।

কিভাবে এটা কাজ করে

10K রোধ রিসেট লাইন 5V এর কাছাকাছি রাখবে। যখন বোতামটি চাপানো হয়, তখন রিসেট লাইনটি 0V এ টানা হবে, এইভাবে মাইক্রো কন্ট্রোলারকে রিসেটে রাখা হবে। যখন বোতামটি রিলিজ করা হয়, তখন RESET লাইনটি মাইক্রো কন্ট্রোলার পুনরায় চালু করে %v এ ফিরে আসে।

ধাপ 7: SIM800L মডিউল

SIM800L মডিউল
SIM800L মডিউল
SIM800L মডিউল
SIM800L মডিউল
SIM800L মডিউল
SIM800L মডিউল

ইউনিটের হৃদয় হল SIM800L GSM মডিউল। এই মডিউলটি মাইক্রো কন্ট্রোলারে মাত্র 3 I/O পিন ব্যবহার করে।

মডিউলটি একটি স্ট্যান্ডার্ড সিরিয়াল পোর্টের মাধ্যমে মাইক্রো কন্ট্রোলারে ইন্টারফেস করে।

  • স্ট্যান্ডার্ড AT কমান্ড ব্যবহার করে ইউনিটের সমস্ত কমান্ড সিরিয়াল পোর্টের মাধ্যমে পাঠানো হয়।
  • একটি ইনকামিং কল দিয়ে, অথবা যখন একটি এসএমএস পাওয়া যায়, তথ্যটি মাইক্রো কন্ট্রোলারের কাছে পাঠানো হয় সিরিয়াল পোর্টের মাধ্যমে ASCII পাঠ্য ব্যবহার করে।

স্থান বাঁচাতে, জিএসএম মডিউল 7-পিন হেডারের মাধ্যমে পিসি বোর্ডের সাথে সংযুক্ত। এটি জিএসএম মডিউল সরানো সহজ করে তোলে। এটি ব্যবহারকারীকে মডিউলের নীচে সহজেই সিম কার্ড সন্নিবেশ/অপসারণ করতে সক্ষম করে।

একটি সক্রিয় সিম কার্ড প্রয়োজন, এবং সিম কার্ড অবশ্যই এসএমএস বার্তা পাঠাতে এবং গ্রহণ করতে সক্ষম হবে।

SIM800L GSM মডিউল সেটআপ

ইউনিটকে শক্তিশালী করার সময়, জিএসএম মডিউল রিসেট পিন এক সেকেন্ডের জন্য কম টানা হয়। এটি নিশ্চিত করে যে জিএসএম মডিউল কেবল বিদ্যুৎ সরবরাহ স্থিতিশীল হওয়ার পরে শুরু হয়। জিএসএম মডিউলটি পুনরায় বুট করতে কয়েক সেকেন্ড সময় নেয়, তাই মডিউলে কোনও AT কমান্ড পাঠানোর আগে 5 সেকেন্ড অপেক্ষা করুন।

জিএসএম মডিউলটি মাইক্রো কন্ট্রোলারের সাথে সঠিকভাবে যোগাযোগ করার জন্য কনফিগার করা হয়েছে তা নিশ্চিত করার জন্য, স্টার্টআপের সময় নিম্নলিখিত AT কমান্ডগুলি ব্যবহার করা হয়:

এটি

একটি GSM মডিউল পাওয়া যায় কিনা তা নির্ধারণ করতে ব্যবহৃত হয়

AT+CREG?

জিএসএম মডিউল সেলফোন নেটওয়ার্কে নিবন্ধিত না হওয়া পর্যন্ত এই কমান্ডটি ভোট দিন

AT+CMGF = 1

SMS বার্তা মোড ASCII এ সেট করুন

AT+CNMI = 1, 2, 0, 0, 0

যদি এসএমএস পাওয়া যায়, জিএসএম মডিউল সিরিয়াল পোর্টে এসএমএস বিবরণ পাঠান

AT+CMGD = 1, 4

সিম কার্ডে সংরক্ষিত যেকোন এসএমএস বার্তা মুছে দিন

AT+CPBS = / "SM

জিএসএম মডিউলের ফোন বইটি সিম কার্ডে সেট করুন

AT+COPS = 2, তারপর AT+CLTS = 1, তারপর AT+COPS = 0

জিএসএম মডিউল সময় সেলফোন নেটওয়ার্ক সময় সেট করুন

সময় সেট হওয়ার জন্য 5 সেকেন্ড অপেক্ষা করুন

AT+CUSD = 1

ইউএসএসডি মেসেজিং ফাংশন সক্ষম করুন

ধাপ 8: মাইক্রো কন্ট্রোলার

মাইক্রো কন্ট্রোলার
মাইক্রো কন্ট্রোলার
মাইক্রো কন্ট্রোলার
মাইক্রো কন্ট্রোলার
মাইক্রো কন্ট্রোলার
মাইক্রো কন্ট্রোলার

মাইক্রো কন্ট্রোলার হল একটি স্ট্যান্ডার্ড AtMega328p, যা Arduino Uno তে ব্যবহৃত হয়। কোড এইভাবে উভয়ের সাথে তুলনীয়। সহজে অন-বোর্ড প্রোগ্রামিং করার অনুমতি দিতে, পিসি বোর্ডে একটি 6-পিন প্রোগ্রামিং হেডার পাওয়া যায়।

ইউনিটের বিভিন্ন বিভাগগুলি মাইক্রো প্রসেসরের সাথে সংযুক্ত, এবং নিম্নলিখিতগুলি অন্তর্ভুক্ত করে:

  • চারটি ডিজিটাল ইনপুট
  • চারটি ডিজিটাল আউটপুট
  • দোলক
  • দুটি ইঙ্গিত LEDs
  • সার্কিট রিসেট করুন
  • SIM800L GSM মডিউল

জিএসএম মডিউল থেকে এবং সমস্ত যোগাযোগ সফটওয়্যার সিরিয়াল () ফাংশন ব্যবহার করে সম্পন্ন করা হয়। বিকাশের পর্যায়ে Arduino IDE এর জন্য প্রধান সিরিয়াল পোর্ট মুক্ত করার জন্য এই পদ্ধতিটি ব্যবহার করা হয়েছিল।

শুধুমাত্র 2KB SRAM, এবং 1KB EEPROM এর সাথে, ইউনিটের সাথে সংযুক্ত করা যেতে পারে এমন একাধিক ব্যবহারকারীর সঞ্চয় করার জন্য পর্যাপ্ত মেমরি নেই। SRAM মুক্ত করতে, ব্যবহারকারীর সমস্ত তথ্য জিএসএম মডিউলে সিম কার্ডে সংরক্ষণ করা হয়। এই ব্যবস্থার সাথে, ইউনিটটি 250 জন ব্যবহারকারীর জন্য পূরণ করতে পারে।

ইউনিটের কনফিগারেশন ডেটা EEPROM- এ সংরক্ষিত থাকে, এভাবে ব্যবহারকারীর ডেটা এবং সিস্টেম ডেটা একে অপরের থেকে আলাদা করে।

এখনও বেশ কয়েকটি অতিরিক্ত I/O পিন পাওয়া যায়, যাইহোক, SoftWareSerial () দ্বারা প্রাপ্ত বাফারগুলি গ্রহণ এবং প্রেরণ করার কারণে প্রচুর পরিমাণে SRAM ব্যবহার করার কারণে LCD ডিসপ্লে এবং/অথবা কীবোর্ড যুক্ত করার বিকল্পটি সম্ভব ছিল না, ইউনিটে কোনো ধরনের ইউজার ইন্টারফেস না থাকার কারণে, সব সেটিংস এবং ব্যবহারকারীরা এসএমএস বার্তা ব্যবহার করে প্রোগ্রাম করা হয়।

ধাপ 9: SRAM মেমরি অপ্টিমাইজ করা

SRAM মেমরি অপ্টিমাইজ করা
SRAM মেমরি অপ্টিমাইজ করা

ডেভেলপমেন্ট পর্যায়ে বেশ প্রথম দিকে, কোড কম্পাইল করার সময় Arduino IDE কম SRAM মেমরি রিপোর্ট করেছে। এটি কাটিয়ে উঠতে বেশ কয়েকটি পদ্ধতি ব্যবহার করা হয়েছিল।

সিরিয়াল পোর্টে প্রাপ্ত ডেটা সীমিত করুন

জিএসএম মডিউল মাইক্রো কন্ট্রোলারকে সিরিয়াল পোর্টে সমস্ত বার্তা রিপোর্ট করবে। কিছু এসএমএস বার্তা গ্রহণ করার সময়, প্রাপ্ত বার্তার মোট দৈর্ঘ্য 200 অক্ষরের বেশি হতে পারে। এটি AtMega চিপে উপলব্ধ সমস্ত SRAM দ্রুত গ্রাস করতে পারে এবং স্থিতিশীলতার সমস্যা সৃষ্টি করবে।

এটি প্রতিরোধ করার জন্য, জিএসএম মডিউল থেকে প্রাপ্ত যেকোনো বার্তার প্রথম 200 টি অক্ষর ব্যবহার করা হবে। নীচের উদাহরণ দেখায় যে ভেরিয়েবল কাউন্টারে প্রাপ্ত অক্ষরগুলি গণনা করে এটি কীভাবে করা হয়।

// সফ্টওয়্যার সিরিয়াল পোর্ট থেকে ডেটা স্ক্যান করুন

// ----------------------------------------------- RxString = ""; কাউন্টার = 0; যখন (SSerial.available ()) {বিলম্ব (1); // বাফারে নতুন ডেটা রাখার জন্য সময় দিতে অল্প বিলম্ব // নতুন অক্ষর পান RxChar = char (SSerial.read ()); // স্ট্রিংয়ে প্রথম 200 অক্ষর যোগ করুন যদি (কাউন্টার <200) {RxString.concat (RxChar); কাউন্টার = কাউন্টার + 1; }}

Serial.print () কোড কমানো

যদিও উন্নয়নের সময় সহজ, Arduino সিরিয়াল মনিটর অনেক SRAM ব্যবহার করতে পারে। কোডটি যতটা সম্ভব Serial.print () কোড ব্যবহার করে তৈরি করা হয়েছিল। কোডের একটি অংশ কাজ করার জন্য পরীক্ষা করা হয়েছে, কোডের সেই অংশ থেকে সমস্ত Serial.print () কোড সরানো হয়েছে।

Serial.print (F (("")) কোড ব্যবহার করে

Arduino সিরিয়াল মনিটরে সাধারনত প্রদর্শিত অনেক তথ্য বর্ণনা যোগ করা হলে আরো বেশি বোধগম্য হয়। নিম্নলিখিত উদাহরণ নিন:

Serial.println ("নির্দিষ্ট কর্মের জন্য অপেক্ষা করা");

স্ট্রিং "নির্দিষ্ট ক্রিয়ার জন্য অপেক্ষা করা" ঠিক করা হয়েছে, এবং পরিবর্তন করা যাবে না।

কোড সংকলনের সময়, কম্পাইলার ফ্ল্যাশ মেমরিতে "নির্দিষ্ট কর্মের জন্য অপেক্ষা" স্ট্রিং অন্তর্ভুক্ত করবে।

উপরন্তু, কম্পাইলার দেখেন যে স্ট্রিংটি একটি ধ্রুবক, যা "Serial.print" বা "Serial.println" নির্দেশ দ্বারা ব্যবহৃত হয়। মাইক্রো বুট-আপ করার সময়, এই ধ্রুবকটি SRAM মেমরিতেও স্থাপন করা হয়।

Serial.print () ফাংশনে "F" উপসর্গ ব্যবহার করে, এটি কম্পাইলারকে বলে যে এই স্ট্রিংটি শুধুমাত্র ফ্ল্যাশ মেমরিতে পাওয়া যায়। এই উদাহরণের জন্য, স্ট্রিংটিতে 28 টি অক্ষর রয়েছে। এটি 28 বাইট যা SRAM এ মুক্ত করা যায়।

Serial.println (F ("নির্দিষ্ট কর্মের জন্য অপেক্ষা করা"));

এই পদ্ধতিটি SoftwareSerial.print () কমান্ডের ক্ষেত্রেও প্রযোজ্য। যেহেতু জিএসএম মডিউল AT কমান্ডে কাজ করে, কোডটিতে অসংখ্য SoftwareSerial.print ("xxxx") কমান্ড রয়েছে। "F" উপসর্গ ব্যবহার করলে SRAM এর প্রায় 300 বাইট মুক্ত হয়।

হার্ডওয়্যার সিরিয়াল পোর্ট ব্যবহার করবেন না

কোড ডিবাগ করার পরে, ALL Serial.print () কমান্ডগুলি সরিয়ে হার্ডওয়্যার সিরিয়াল পোর্ট অক্ষম করা হয়েছিল। এটি SRAM এর কয়েকটি অতিরিক্ত বাইট মুক্ত করে।

কোডে কোন সিরিয়াল.প্রিন্ট () কমান্ড ছাড়াই, SRAM এর একটি অতিরিক্ত 128 বাইট উপলব্ধ করা হয়েছিল। কোড থেকে হার্ডওয়্যার সিরিয়াল পোর্ট সরিয়ে এটি করা হয়েছিল। এটি 64 বাইট ট্রান্সমিট এবং 64 বাইট বাফার গ্রহণ করে।

// Serial.begin (9600); // হার্ডওয়্যার সিরিয়াল পোর্ট নিষ্ক্রিয়

স্ট্রিং এর জন্য EEPROM ব্যবহার করা

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

মোট 8 টি I/O চ্যানেল সহ, তাদের হবে

  • চ্যানেলের নাম সম্বলিত 8 টি স্ট্রিং, প্রতিটি 10 টি অক্ষর দীর্ঘ
  • 8 টি স্ট্রিং চ্যানেল ধারণ করে বর্ণনায়, প্রতিটি 10 অক্ষর দীর্ঘ
  • 8 টি স্ট্রিং চ্যানেল অফ বিবরণ ধারণ করে, প্রতিটি 10 অক্ষর দীর্ঘ

এই বিজ্ঞাপন SRAM এর 240 বাইট পর্যন্ত। SRAM এ এই স্ট্রিংগুলি সংরক্ষণ করার পরিবর্তে, সেগুলি EEPROM- এ সংরক্ষণ করা হয়। এটি SRAM এর অতিরিক্ত 240 বাইট মুক্ত করে।

সঠিক দৈর্ঘ্যের সাথে স্ট্রিং ঘোষণা করা

পরিবর্তনশীল সাধারণত কোডের শুরুতে ঘোষণা করা হয়। একটি স্ট্রিং ভেরিয়েবল ঘোষণার সময় একটি সাধারণ ভুল হল, আমরা সঠিক অক্ষর দিয়ে স্ট্রিং ঘোষণা করি না।

স্ট্রিং GSM_Nr = "";

স্ট্রিং GSM_Name = ""; স্ট্রিং GSM_Msg = "";

স্টার্টআপের সময়, মাইক্রো কন্ট্রোলার এই ভেরিয়েবলের জন্য SRAM- এ মেমরি বরাদ্দ করবে না। এই স্ট্রিংগুলি ব্যবহার করা হলে এটি পরে অস্থিরতা সৃষ্টি করতে পারে।

এটি রোধ করার জন্য, সফ্টওয়্যারে স্ট্রিং ব্যবহার করা অক্ষরের সঠিক সংখ্যার সঙ্গে স্ট্রিংগুলি ঘোষণা করুন।

স্ট্রিং GSM_Nr = "1000000000";

স্ট্রিং GSM_Name = "2000000000"; স্ট্রিং GSM_Msg = "3000000000";

লক্ষ্য করুন কিভাবে আমি একই অক্ষর দিয়ে স্ট্রিং ঘোষণা করিনি। যদি আপনি এই স্ট্রিংগুলিকে "1234567890" বলে ঘোষণা করেন, কম্পাইলার তিনটি ভেরিয়েবলে একই স্ট্রিং দেখতে পাবে এবং শুধুমাত্র একটি স্ট্রিংয়ের জন্য SRAM এ যথেষ্ট মেমরি বরাদ্দ করবে।

ধাপ 10: সফটওয়্যার সিরিয়াল বাফার সাইজ

সফটওয়্যার সিরিয়াল বাফার সাইজ
সফটওয়্যার সিরিয়াল বাফার সাইজ

নিম্নলিখিত কোডে, আপনি লক্ষ্য করবেন যে সফ্টওয়্যার সিরিয়াল পোর্ট থেকে 200 অক্ষর পর্যন্ত পড়া যাবে।

// সফ্টওয়্যার সিরিয়াল পোর্ট থেকে ডেটা স্ক্যান করুন

// ----------------------------------------------- RxString = ""; কাউন্টার = 0; যখন (SSerial.available ()) {বিলম্ব (1); // বাফারে নতুন ডেটা রাখার জন্য সময় দিতে অল্প বিলম্ব // নতুন অক্ষর পান RxChar = char (SSerial.read ()); // স্ট্রিংয়ে প্রথম 200 অক্ষর যোগ করুন যদি (কাউন্টার <200) {RxString.concat (RxChar); কাউন্টার = কাউন্টার + 1; }}

এর জন্য সফ্টওয়্যার সিরিয়াল পোর্টের জন্য কমপক্ষে 200 বাইটের বাফার প্রয়োজন। ডিফল্টরূপে, সফ্টওয়্যার সিরিয়াল পোর্ট বাফার মাত্র 64 বাইট। এই বাফার বাড়াতে, নিম্নলিখিত ফাইলটি অনুসন্ধান করুন:

SoftwareSerial.h

একটি টেক্সট এডিটর দিয়ে ফাইলটি খুলুন এবং বাফারের সাইজ 200 এ পরিবর্তন করুন।

/******************************************************************************

*সংজ্ঞা ************************************************** ********************************/ #ifndef _SS_MAX_RX_BUFF #define _SS_MAX_RX_BUFF 200 // RX বাফার সাইজ #endif

ধাপ 11: পিসি বোর্ড তৈরি করা

পিসি বোর্ড তৈরি করা
পিসি বোর্ড তৈরি করা

পিসি বোর্ড কেডসফট agগলের ফ্রিওয়্যার সংস্করণ ব্যবহার করে ডিজাইন করা হয়েছিল (আমি বিশ্বাস করি নাম পরিবর্তিত হয়েছে)।

  • পিসি বোর্ড একটি একতরফা নকশা।
  • কোনো সারফেস মাউন্ট উপাদান ব্যবহার করা হয় না।
  • সিম 800 এল মডিউল সহ সমস্ত উপাদান পিসি বোর্ডে মাউন্ট করা হয়েছে।
  • কোন বাহ্যিক উপাদান বা সংযোগের প্রয়োজন নেই
  • একটি পরিষ্কার চেহারা জন্য তারের jumpers উপাদান নীচে লুকানো হয়।

পিসি বোর্ড তৈরির জন্য আমি নিম্নলিখিত পদ্ধতিটি ব্যবহার করি:

  • পিসি বোর্ড ইমেজ প্রেস-এন-পিল একটি লেজার প্রিন্টার ব্যবহার করে মুদ্রিত হয়।
  • প্রেস-এন-পিল তারপর পিসি বোর্ডের একটি পরিষ্কার অংশের উপরে রাখা হয় এবং কিছু টেপ দিয়ে সুরক্ষিত করা হয়।
  • পিসি বোর্ড ইমেজটি প্রেস-এন-পিল থেকে ল্যামিনেটরের মাধ্যমে বোর্ড পাস করে ফাঁকা পিসি বোর্ডে স্থানান্তরিত হয়। আমার জন্য, 10 পাস সেরা কাজ করে।
  • পিসি বোর্ড ঘরের তাপমাত্রায় ঠান্ডা হওয়ার পরে, প্রেস-এন-পিল ধীরে ধীরে বোর্ড থেকে তুলে নেওয়া হয়।
  • পিসি বোর্ড তারপর গরম পানিতে দ্রবীভূত অ্যামোনিয়াম পারসালফেট স্ফটিক ব্যবহার করে খোদাই করা হয়।
  • খনন করার পরে, নীল প্রেস-এন-পিল এবং কালো টোনার কিছু এসিটোন দিয়ে খচিত পিসি বোর্ড পরিষ্কার করে মুছে ফেলা হয়।
  • বোর্ড তারপর একটি Dremel সঙ্গে আকারে কাটা হয়
  • সমস্ত থ্রু-হোল উপাদানগুলির জন্য 1 মিমি ড্রিল বিট ব্যবহার করে ছিদ্র করা হয়।
  • টার্মিনাল স্ক্রু সংযোগকারীগুলি 1.2 মিমি ড্রিল বিট ব্যবহার করে ড্রিল করা হয়।

ধাপ 12: পিসি বোর্ডের সমাবেশ

পিসি বোর্ডের সমাবেশ
পিসি বোর্ডের সমাবেশ
পিসি বোর্ডের সমাবেশ
পিসি বোর্ডের সমাবেশ
পিসি বোর্ডের সমাবেশ
পিসি বোর্ডের সমাবেশ
পিসি বোর্ডের সমাবেশ
পিসি বোর্ডের সমাবেশ

অ্যাসেম্বলিটি প্রথমে ছোট উপাদানগুলি যোগ করে এবং সবচেয়ে বড় উপাদানগুলিতে আপনার কাজ করে।

SIM800 মডিউল ব্যতীত এই নির্দেশিকাতে ব্যবহৃত সমস্ত উপাদান আমার স্থানীয় সরবরাহকারীর কাছ থেকে নেওয়া হয়েছিল। তাদের কাছে সবসময় স্টক থাকার কথা মনে হয়। দয়া করে তাদের দক্ষিণ আফ্রিকার ওয়েবসাইট দেখুন:

www.shop.rabtron.co.za/catalog/index.php

বিঃদ্রঃ! প্রথমে ATMEGA328p IC এর নিচে অবস্থিত দুটি জাম্পার সোল্ডারিং।

আদেশটি নিম্নরূপ:

  • প্রতিরোধক এবং ডায়োড
  • রিসেট বোতাম
  • আইসি সকেট
  • ভোল্টেজ নিয়ন্ত্রক
  • হেডার পিন
  • ছোট ক্যাপাসিটার
  • এলইডি
  • ফিউজ ধারক
  • টার্মিনাল ব্লক
  • রিলে
  • ইলেক্ট্রোলাইটিক ক্যাপাসিটার

আইসি insোকানোর আগে, ইউনিটটিকে 12V এর সাথে সংযুক্ত করুন এবং সমস্ত ভোল্টেজ সঠিক হতে পরীক্ষা করুন।

অবশেষে, কিছু স্পষ্ট বার্ণিশ ব্যবহার করে, পিসি বোর্ডের তামার দিকটি উপাদানগুলি থেকে রক্ষা করার জন্য coverেকে দিন।

যখন বার্ণিশ শুকিয়ে যায়, ICs ertোকান, কিন্তু AtMega প্রোগ্রাম করা না হওয়া পর্যন্ত GSM মডিউল ছেড়ে দিন।

ধাপ 13: AtMega328p প্রোগ্রামিং

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

# # ফার্মওয়্যার সংস্করণ 3.02 এ আপগ্রেড করুন # #

ডিভাইসে বিদ্যুৎ পুনরুদ্ধার করা হলে মাস্টার ব্যবহারকারীর কাছে এসএমএস পাঠানো হবে।

আমি ইউনিট প্রোগ্রাম করার জন্য একটি প্রোগ্রামিং ieldাল সহ একটি Arduino Uno ব্যবহার করছি। কিভাবে একটি Arduino Uno কে প্রোগ্রামার হিসাবে ব্যবহার করবেন সে সম্পর্কে আরও তথ্যের জন্য, এই নির্দেশযোগ্য পড়ুন:

Arduino UNO AtMega328P প্রোগ্রামার হিসেবে

প্রোগ্রামিং হেডারে অ্যাক্সেস পাওয়ার জন্য পিসি বোর্ড থেকে জিএসএম মডিউলটি সরানো প্রয়োজন। জিএসএম মডিউল অপসারণের সময় অ্যান্টেনা তারের ক্ষতি না করার জন্য যত্ন নিন।

পিসি বোর্ডে প্রোগ্রামিং হেডার ব্যবহার করে প্রোগ্রামার এবং ইউনিটের মধ্যে প্রোগ্রামিং কেবল সংযুক্ত করুন এবং ইউনিটে স্কেচ আপলোড করুন।

ইউনিট প্রোগ্রাম করার জন্য বাহ্যিক 12V সরবরাহের প্রয়োজন নেই। পিসি বোর্ড প্রোগ্রামিং ক্যাবলের মাধ্যমে আরডুইনো থেকে চালিত হবে।

Arduino IDE তে সংযুক্ত ফাইলটি খুলুন এবং এটি ইউনিটে প্রোগ্রাম করুন।

প্রোগ্রামিং করার পর, প্রোগ্রামিং কেবলটি সরান, এবং জিএসএম মডিউল োকান।

ইউনিটটি এখন ব্যবহারের জন্য প্রস্তুত।

ধাপ 14: ইউনিট সংযুক্ত করা

ইউনিট সংযুক্ত করা হচ্ছে
ইউনিট সংযুক্ত করা হচ্ছে
ইউনিট সংযুক্ত করা হচ্ছে
ইউনিট সংযুক্ত করা হচ্ছে
ইউনিট সংযুক্ত করা হচ্ছে
ইউনিট সংযুক্ত করা হচ্ছে

ইউনিটের সমস্ত সংযোগ স্ক্রু টার্মিনালের মাধ্যমে তৈরি করা হয়।

ইউনিট পাওয়ারিং

নিশ্চিত করুন যে আপনি জিএসএম মডিউলে একটি নিবন্ধিত সিম কার্ড haveুকিয়েছেন এবং সিম কার্ডটি এসএমএস বার্তা পাঠাতে এবং গ্রহণ করতে সক্ষম।

12V ডিসি পাওয়ার সাপ্লাই 12V IN এবং 0V টার্মিনালের যে কোন একটিতে সংযুক্ত করুন। একবার চালিত হলে, পিসি বোর্ডে লাল LED চালু হবে। প্রায় এক মিনিটের মধ্যে, জিএসএম মডিউলটি সেলফোন নেটওয়ার্কের সাথে সংযুক্ত হওয়া উচিত ছিল। লাল LED বন্ধ হয়ে যাবে, এবং GSM মডিউলে একটি লাল LED দ্রুত ফ্ল্যাশ করবে।

একবার এই পর্যায়ে পৌঁছে গেলে, ইউনিট কনফিগার করার জন্য প্রস্তুত।

ইনপুট সংযোগ

ডিজিটাল ইনপুট 12V এ কাজ করে। একটি ইনপুট চালু করতে, 12V ইনপুটে প্রয়োগ করতে হবে। 12V সরালে ইনপুট বন্ধ হয়ে যাবে।

আউটপুট সংযোগ

প্রতিটি আউটপুট একটি পরিবর্তন-ওভার যোগাযোগ নিয়ে গঠিত। প্রয়োজনে প্রতিটি পরিচিতিকে ওয়্যার আপ করুন।

ধাপ 15: প্রাথমিক সেটআপ

প্রাথমিক সেটআপ
প্রাথমিক সেটআপ

সমস্ত প্যারামিটার ফ্যাক্টরি ডিফল্টে সেট করা আছে তা নিশ্চিত করার জন্য ইউনিটটির প্রাথমিক সেটআপ করা আবশ্যক, এবং সঠিক ফরম্যাটে ব্যবহারকারীর তথ্য গ্রহণের জন্য কনফিগার করা সিম কার্ড।

যেহেতু সমস্ত কমান্ড এসএমএস ভিত্তিক, সেটআপটি সম্পাদনের জন্য আপনার অন্য ফোনের প্রয়োজন হবে।

প্রাথমিক সেটআপের জন্য, আপনাকে ইউনিটে থাকতে হবে।

মাস্টার ব্যবহারকারীর টেলিফোন নম্বর সেট করুন

যেহেতু শুধুমাত্র মাস্টার ব্যবহারকারী ইউনিট কনফিগার করতে পারে, তাই এই পদক্ষেপটি প্রথমেই করা উচিত।

  • ইউনিট চালিত হতে হবে।
  • রিসেট বোতাম টিপুন এবং ছেড়ে দিন, এবং পিসি বোর্ডে লাল LED বন্ধ হওয়ার জন্য অপেক্ষা করুন।
  • জিএসএম মডিউলে নেট এলইডি দ্রুত ফ্ল্যাশ করবে।
  • ইউনিট এখন প্রাথমিক সেটআপ কমান্ড গ্রহণ করার জন্য প্রস্তুত। এটি 10 মিনিটের মধ্যে সম্পন্ন করা আবশ্যক।
  • ইউনিট টেলিফোন নম্বরে মাস্টার, বর্ণনা সহ একটি এসএমএস বার্তা পাঠান।
  • যদি প্রাপ্ত হয়, পিসি বোর্ডে সবুজ LED দুবার ফ্ল্যাশ করবে।
  • মাস্টার ব্যবহারকারী এখন প্রোগ্রাম করা হয়েছে।

ইউনিটটিকে ফ্যাক্টরি ডিফল্টে পুনরুদ্ধার করুন

মাস্টার ইউজার প্রোগ্রাম করার পরে, ইউনিটের সেটিংস অবশ্যই ফ্যাক্টরি ডিফল্টে সেট করতে হবে।

  • ইউনিট টেলিফোন নম্বরে শুধুমাত্র CLEARALL সহ একটি এসএমএস বার্তা পাঠান।
  • যদি প্রাপ্ত হয়, পিসি বোর্ডে সবুজ এবং লাল LED বিকল্পভাবে প্রতি সেকেন্ডে একবার ফ্ল্যাশ করবে। কারখানা ডিফল্ট সেটিংস সহ ইউনিটটি পুনরুদ্ধার করা হয়েছে।
  • সমস্ত সেটিংস কারখানার ডিফল্টে পুনরুদ্ধার করা হয়েছে।
  • ইউনিট রিবুট করতে রিসেট বোতাম টিপুন এবং ছেড়ে দিন।

সিম কার্ড ফরম্যাট করা

শেষ ধাপ হল সিম কার্ডে সংরক্ষিত সমস্ত তথ্য মুছে ফেলা এবং এই ইউনিটে ব্যবহারের জন্য কনফিগার করা।

  • রিসেট বোতাম টিপুন এবং ছেড়ে দিন, এবং পিসি বোর্ডে লাল LED বন্ধ হওয়ার জন্য অপেক্ষা করুন।
  • GSM মডিউলে NET LED দ্রুত ফ্ল্যাশ করবে।
  • ইউনিট এখন প্রাথমিক সেটআপ কমান্ড গ্রহণ করার জন্য প্রস্তুত। এটি 10 মিনিটের মধ্যে সম্পন্ন করা আবশ্যক।
  • ইউনিট টেলিফোন নম্বরে শুধুমাত্র ERASESIM সহ একটি এসএমএস বার্তা পাঠান।
  • যদি প্রাপ্ত হয়, পিসি বোর্ডে সবুজ LED গাছের সময় ফ্ল্যাশ করবে।

ইউনিটটি এখন কনফিগার করা হয়েছে, এবং ব্যবহারের জন্য প্রস্তুত।

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

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

ইউনিট দ্বারা ব্যবহৃত তিনটি ভিন্ন ধরণের কমান্ড রয়েছে। সমস্ত কমান্ড এসএমএস এর মাধ্যমে প্রেরণ করা হয়, এবং সবগুলি নিম্নলিখিত বিন্যাসে রয়েছে:

কমান্ড,,,,

  • নরমাল ইউজার কমান্ড ব্যতীত সমস্ত কমান্ড কেস সংবেদনশীল।
  • প্যারামিটারগুলি কেস সংবেদনশীল নয়।

প্রাথমিক সেটআপ কমান্ড

মাস্টার, নাম

এসএমএস প্রেরকের ফোন নম্বর মাস্টার ব্যবহারকারীর ফোন নম্বর হিসেবে ব্যবহৃত হয়। ইউনিটের বর্ণনা এখানে যোগ করা যেতে পারে।

সব পরিষ্কার করে দাও

ইউনিটকে ফ্যাক্টরি ডিফল্টে রিসেট করুন

ক্লিয়ারসিম

সিম কার্ড থেকে সমস্ত ডেটা মুছুন

রিসেট

ইউনিট রিবুট করুন

মাস্টার ব্যবহারকারী ইউনিট কনফিগার করার জন্য কমান্ড

OUTMODE, c, m, t নোট! ! ! এখনো বাস্তবায়িত না

PULSED, TIMED বা LATCHING আউটপুট রাখার জন্য নির্দিষ্ট চ্যানেল সেট করুন। T TIMED আউটপুটের জন্য মিনিটের মধ্যে সময়কাল

পালস, সিসিসি

PULSED আউটপুটে নির্দিষ্ট চ্যানেল সেট করুন। সেট না করা হলে, চ্যানেলগুলি LATCHING আউটপুট হিসাবে সেট করা হবে।

PULSETIME, t স্পন্দিত আউটপুট সময়কাল সেকেন্ডে সেট করে (0.. 10 সেকেন্ড)

ইনপুটন, সিসিসি

যে চ্যানেলগুলি ট্রিগার করতে হবে সেট করুন, এবং একটি এসএমএস বার্তা পাঠান যখন রাষ্ট্রটি OFF থেকে ON তে পরিবর্তিত হয়

INPUTOFF, cccc

যে চ্যানেলগুলি ট্রিগার করতে হবে সেট করুন, এবং একটি এসএমএস বার্তা পাঠান যখন রাজ্য চালু থেকে বন্ধ হয়ে যায়

INTIME, c, t

সেকেন্ডে স্থিতি পরিবর্তনগুলি সনাক্ত করার জন্য ইনপুট বিলম্বের সময় নির্ধারণ করে

INTEXT, ch, name, on, off

প্রতিটি ইনপুট চ্যানেলের নাম, পাঠ্য এবং পাঠ্য বন্ধ করুন

OUTTEXT, ch, name, on, off

প্রতিটি আউটপুট চ্যানেলের নাম, পাঠ্য এবং পাঠ্য বন্ধ করুন

যোগ করুন, অবস্থান, নম্বর, কল আউটপুট, এসএমএস আউটপুট, ইনপুট

ব্যবহারকারীকে নির্ধারিত আউটপুট এবং ইনপুট চ্যানেল সহ মেমরি 'লোকেশনে' সিম কার্ডে ব্যবহারকারী যুক্ত করুন

দেল, অবস্থান

সিম কার্ড মেমোরির 'লোকেশন' থেকে ব্যবহারকারীকে মুছুন

চ্যানেলের নাম

ChannelName নাম দিয়ে আউটপুট পালস করবে

ChannelName, onText, অথবা ChannelName, offText

ChannelName এবং onText/offText নামের সাথে আউটপুট চালু/বন্ধ করবে

ইউনিট নিয়ন্ত্রণের জন্য সাধারণ ব্যবহারকারী কমান্ড

???? I/O স্ট্যাটাস আপডেটের অনুরোধ করুন। স্ট্যাটাস এসএমএস প্রেরককে পাঠানো হবে।

চ্যানেলের নাম

ChannelName নাম দিয়ে আউটপুট পালস করবে

চ্যানেলনাম, টেক্সট

ChannelName এর নাম দিয়ে আউটপুট চালু করবে এবং টেক্সট এর স্ট্যাটাস টেক্সট করবে

ChannelName, offText ChannelName এর নাম দিয়ে আউটপুট বন্ধ করে দেবে, এবং স্ট্যাটাস টেক্সট বন্ধ করবে

কমান্ডগুলির আরও বিশদ বিবরণের জন্য, দয়া করে সংযুক্ত পিডিএফ ডকুমেন্টটি পড়ুন।

প্রস্তাবিত: