সুচিপত্র:

সময়মত তাপমাত্রা সহ একটি এসএমএস পাঠায়: 5 টি ধাপ (ছবি সহ)
সময়মত তাপমাত্রা সহ একটি এসএমএস পাঠায়: 5 টি ধাপ (ছবি সহ)

ভিডিও: সময়মত তাপমাত্রা সহ একটি এসএমএস পাঠায়: 5 টি ধাপ (ছবি সহ)

ভিডিও: সময়মত তাপমাত্রা সহ একটি এসএমএস পাঠায়: 5 টি ধাপ (ছবি সহ)
ভিডিও: ✨A Will Eternal EP 01 - 106 Full Version [MULTI SUB] 2024, জুলাই
Anonim
সময়মত তাপমাত্রা সহ একটি এসএমএস পাঠায়
সময়মত তাপমাত্রা সহ একটি এসএমএস পাঠায়

আমার বাবার বাড়ি থেকে একটি টেম্পারেটর এসএমএস পাওয়ার ধারণা।

কিছুই অভিনব না শুধু দ্রুত একসঙ্গে অংশ রাখা।

অংশগুলি হল:

  • Geekcreit® ATmega328P Nano V3 কন্ট্রোলার বোর্ড সামঞ্জস্যপূর্ণ Arduino
  • DIY ন্যানো আইও শিল্ড V1. O Arduino জন্য সম্প্রসারণ বোর্ড
  • DS1307 ভিত্তিক RTC IIC / I2C রিয়েল টাইম ক্লক মডিউল এবং DS18b20
  • SIM800L কোয়াড-ব্যান্ড GSM / GPRS
  • LM2596 মিনি ডিসি-ডিসি কনভার্টার অ্যাডজাস্টেবল স্টেপ ডাউন পাওয়ার সাপ্লাই মডিউল
  • থার্মিস্টর NTC MF52AT তাপমাত্রা

প্রথমে পড়া এবং অনুসন্ধান করা অনেকটা বন্ধ।

কারণ আমি অবশেষে Geekcreit® Nano ব্যবহার করি, আমি একটি Arduino Uno দিয়ে সমস্ত অংশ পরীক্ষা করি।

ধাপ 1: SIM800l কাজে লাগান

SIM800l কাজে লাগান
SIM800l কাজে লাগান

একটি প্রধান বিষয় হল সিম 800 এল এর শক্তি।

আমি একটি LM2596 মিনি ডিসি-ডিসি কনভার্টার ব্যবহার করি, 3.7 ভোল্টের সাথে সামঞ্জস্য করা এবং একটি পৃথক বিদ্যুৎ সরবরাহ।

AT+ কমান্ডের সাথে সংযোগ পরীক্ষা করার জন্য এই দিকটি খুবই ব্যবহারযোগ্য:

Arduino সহ Quickstart SIM800 (SIM800L)

কমান্ডে জিএসএম মডেম ব্যবহার করে পিন কোড অক্ষম করুন আমি সিম পিন কোডের যাত্রা পেয়েছি।

পরবর্তী বিবেচনা কোন লাইব্রেরি। ইন্টারনেট বিভিন্ন সমাধান দেয়।

আমার সমাধান হল Mattias Aabmets থেকে লাইব্রেরি: AspenSIM800

তার উদাহরণ: Send_SMS.ino আমি মৌলিক প্রোগ্রাম হিসাবে ব্যবহার করেছি এবং একের পর এক অন্যান্য অংশগুলিকে একসাথে সংযুক্ত করে।

Tx পিন এবং Rx পিন কোড:

Arduino এর RX_PIN 10। SIM800 মডিউলের TX পিনের সাথে সংযুক্ত থাকতে হবে। Arduino এর TX_PIN 11। SIM800 মডিউলের RX পিনের সাথে সংযুক্ত থাকতে হবে।

লাইব্রেরিতে *.ccp এবং *.h ফাইলগুলি পড়া সবসময় ভাল ধারণা।

তারা অনেক আকর্ষণীয় ইঙ্গিত এবং জ্ঞান ধারণ করে।

ধাপ 2: DS18B20 সেন্সরের সাহায্যে RTC DS1307 পান

DS18B20 সেন্সরের সাহায্যে RTC DS1307 পান
DS18B20 সেন্সরের সাহায্যে RTC DS1307 পান

আমি এই দিকটি ব্যবহার করেছি: simtronyx - DS1307 এবং DS18B20 এর জন্য ব্লগ।

ঘড়িটির একটি I2C বাস সংযোগ রয়েছে এবং এটি Arduino Uno: A4 (SDA) - A5 (SCL)

DS18B20 আমি D3 এর সাথে সংযুক্ত।

আমি পড়েছি যে একটি এসএমএস -এ আপনি ফ্লোটসকে কেবল স্ট্রিং পাঠাতে পারবেন না, তাই আমাকে ফ্লোটে স্ট্রিং -এ অনুবাদ করতে হয়েছিল।

আমি এই কোড স্নিপেটের সাথে যা করেছি তা পেয়েছি:

n

MyString1 = স্ট্রিং (currentTemp, 2); // ফ্লোটকে স্ট্রিং এ রূপান্তর করুন

MyString1 = (MyString1 + "C - RoomTemperatur:)");

// এখানে স্ট্রিং থেকে স্ট্রিং রূপান্তর করুন

// দৈর্ঘ্য (নাল টার্মিনেটরের জন্য একটি অতিরিক্ত অক্ষর সহ)

int str_len1 = MyString1.length () + 1; // অক্ষর অ্যারে প্রস্তুত করুন (বাফার)

char char_array1 [str_len1]; // এটি অনুলিপি করুন

MyString1.toCharArray (char_array1, str_len1); // রূপান্তর স্ট্রিং তার শেষ

আমি সৎ হব আমি এটা কিভাবে কাজ করে না, কিন্তু এটি কাজ করে।

ধাপ 3: থার্মিস্টার NTC MF52AT কাজে লাগান

থার্মিস্টর NTC MF52AT কাজে লাগান
থার্মিস্টর NTC MF52AT কাজে লাগান

আমি একটি থার্মিস্টারের সাথে কাজ করেছি তাই এটি সহজ অংশ।

কিন্তু এখানেও আপনি বিভিন্ন সমাধান খুঁজে পেতে পারেন।

চূড়ান্ত কোডে আপনি আমার খুঁজে পেতে পারেন।

তার আপনি ফ্লোটস থেকে স্ট্রিং এর অনুবাদও খুঁজে পেতে পারেন।

থার্মিস্টারে কিছু তার এবং 10 কে ওহম প্রতিরোধক বিক্রি করে।

ধাপ 4: সবাই একসাথে কাজ করুন

তাই আমি সব প্রোগ্রামার অংশ একসাথে লিখেছি।

এখন আমাকে একই সময়ে প্রতিদিন একটি করে এসএমএস পাঠাতে হবে।

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

কিন্তু আমি arduino ফোরামে একটি সহজ সমাধান খুঁজে পেয়েছি:

if (now.hour () == 8 && now.minute () == 00 && now.second () == 59)

{

SIM.smsSend (addr, char_array); // থার্মিস্টার

বিলম্ব (500); SIM.smsSend (addr, char_array1); // DS18B20}

কিন্তু এখন কেন সেকেন্ড = 59 কারণ এটি একটি সম্পূর্ণ মিনিট এসএমএস পাঠায়। এটা আমার জন্য করে কিন্তু নিজেকে চেষ্টা করে দেখুন।

কিছু পরীক্ষার পর আমি Geekcreit® Nano তে প্রোগ্রাম আপলোড করলাম।

এটি সম্ভবত সেরা প্রোগ্রামিং লেখা নয়:) কিন্তু এটি পছন্দসই করে।

যেহেতু Geekcreit® ATmega328P ন্যানোতে কিছু Arduino IDE সমস্যা আছে, আমি টার্মিনাল দ্বারা আপলোড করি (লিনাক্স মিন্ট) USBtinyisp নিক্ষেপ করে এর সাথে: avrdude -c usbtiny -p atmega328p -U flash: w: SomeHexFile.hex

ধাপ 5: এটি কাজ করেছে

হ্যাঁ এটি কাজ করেছে এবং এটি বাড়িতে স্থাপন করা হয়েছে।

প্রতিদিন সকাল:00: at০ টেম্পারেটরের সাথে আমি একটি এসএমএস পাই।

প্রস্তাবিত: