সুচিপত্র:

ব্লুটুথের মাধ্যমে এসডি কার্ড মডিউল সহ আরডুইনো থেকে অ্যান্ড্রয়েড ফোনে তাপমাত্রা এবং আর্দ্রতা ডেটা লগার: 5 টি ধাপ
ব্লুটুথের মাধ্যমে এসডি কার্ড মডিউল সহ আরডুইনো থেকে অ্যান্ড্রয়েড ফোনে তাপমাত্রা এবং আর্দ্রতা ডেটা লগার: 5 টি ধাপ

ভিডিও: ব্লুটুথের মাধ্যমে এসডি কার্ড মডিউল সহ আরডুইনো থেকে অ্যান্ড্রয়েড ফোনে তাপমাত্রা এবং আর্দ্রতা ডেটা লগার: 5 টি ধাপ

ভিডিও: ব্লুটুথের মাধ্যমে এসডি কার্ড মডিউল সহ আরডুইনো থেকে অ্যান্ড্রয়েড ফোনে তাপমাত্রা এবং আর্দ্রতা ডেটা লগার: 5 টি ধাপ
ভিডিও: Transform Your Hot Wheels into a micro FPV RC Car! 2024, জুলাই
Anonim
তাপমাত্রা এবং আর্দ্রতা ডেটা লগার ব্লুটুথের মাধ্যমে এসডি কার্ড মডিউল সহ আরডুইনো থেকে অ্যান্ড্রয়েড ফোনে
তাপমাত্রা এবং আর্দ্রতা ডেটা লগার ব্লুটুথের মাধ্যমে এসডি কার্ড মডিউল সহ আরডুইনো থেকে অ্যান্ড্রয়েড ফোনে

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

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

  • সেন্সর (DHT 11) থেকে ডেটা অর্জন - তাপমাত্রা এবং আর্দ্রতা সেন্সর।
  • এসডি কার্ড মডিউল দিয়ে এসডি কার্ডে অর্জিত ডেটা সংরক্ষণ করা।
  • ব্লুটুথ ব্যবহার করে ওয়্যারলেস ডেটা একটি কাস্টম তৈরি অ্যান্ড্রয়েড অ্যাপে স্থানান্তর করা।
  • প্রাপ্ত সেন্সর মানগুলিকে টেক্সট ফাইল (.txt ফাইল) হিসাবে সংরক্ষণ করা।

ধাপ 1: উপাদান তালিকা

উপাদান তালিকা
উপাদান তালিকা
উপাদান তালিকা
উপাদান তালিকা
উপাদান তালিকা
উপাদান তালিকা

আসুন এই অসাধারণ প্রকল্পটি তৈরির জন্য সৈন্য সংগ্রহ করি।

  • Arduino Uno (অন্য কোন arduino এছাড়াও উপযুক্ত হবে)
  • মাইক্রো এসডি কার্ড মডিউল।
  • এসডি কার্ড মডিউল (আমি যেটি ব্যবহার করছি তা হল 8 জিবি, এটি ব্যবহার করার পরামর্শ দেওয়া হচ্ছে> = 32 জিবি)
  • HC05 - ব্লুটুথ মডিউল
  • DHT11 (তাপমাত্রা এবং আর্দ্রতা সেন্সর)
  • জাম্পারের গুচ্ছ।
  • অ্যান্ড্রয়েড ফোন

ধাপ 2: সংযোগ:

সংযোগ
সংযোগ

প্রকল্পের জন্য একত্রিত করা এবং উপাদানগুলিকে সংযুক্ত করা অর্ধেক হয়ে গেছে। উল্লিখিত পণ্যগুলি বেশিরভাগ খুচরা ইলেকট্রনিক স্টোর এবং অ্যামাজনের মতো অনলাইন সাইটে সহজেই পাওয়া যায়।

Arduino - HC05 সংযোগ (ব্লুটুথ):

  • +5V - Vcc
  • Gnd - Gnd
  • পিন 0 - Tx
  • পিন 1 - Rx

Arduino - SDcard মডিউল সংযোগ:

  • +5V - Vcc
  • Gnd - Gnd
  • পিন 11 - MOSI (মাস্টার আউট স্লেভ ইন)
  • পিন 12 - MISO (মাস্টার ইন স্লেভ আউট)
  • পিন 13 - SCk (ঘড়ি সিঙ্ক্রোনাস)
  • পিন 4 - সিএস (চিপ নির্বাচন)

Arduino - HC05 সংযোগ (ব্লুটুথ):

  • +5V - Vcc
  • Gnd - Gnd
  • পিন A0 - সংকেত

ধাপ 3: পদ্ধতি

পদ্ধতি
পদ্ধতি

আগের ধাপে উল্লিখিত সমস্ত অংশগুলিকে সংযুক্ত করুন, এর সাহায্যে আমরা আমাদের লক্ষ্যে পৌঁছানোর জন্য Arduino Ide এ কোড লিখতে পারি।

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

ধাপ 4: Arduino কোড:

Arduino কোড দেওয়া হয়েছে এবং নীচে ব্যাখ্যা করা হয়েছে।

আরডুইনো কোডটি বেশিরভাগ এসডি কার্ড লাইব্রেরি এবং ডিএইচটি 11 লাইব্রেরির সাথে স্ব -ব্যাখ্যামূলক। ব্লুটুথ হার্ডওয়্যার সিরিয়াল ব্যবহার করে যা arduino এর pin0 এবং pin1 তাই ব্লুটুথ ট্রান্সফার সিরিয়াল প্রিন্ট () ফাংশনগুলির সাথে ঘটে যা I2C প্রোটোকল ব্যবহার করে এবং SD কার্ড মডিউল SPI প্রোটোকল ব্যবহার করে এর সাথে যোগাযোগের জন্য।

/*

* এসপিআই বাসের সাথে সংযুক্ত এসডি কার্ড নিম্নরূপ:

** MOSI - পিন 11 ** MISO - পিন 12 ** CLK - পিন 13 ** CS - পিন 4 (MKRZero SD: SDCARD_SS_PIN এর জন্য) * * HC 05 মডিউল সংযোগ: ** TX - পিন 0 (ডিফল্ট) [হতে পারে সফ্টওয়্যারসিরিয়াল ব্যবহার করা হলে পরিবর্তিত] ** RX - পিন 1 (ডিফল্ট) [সফ্টওয়্যারসিরিয়াল ব্যবহার করা হলে পরিবর্তন করা যেতে পারে]

*/

#অন্তর্ভুক্ত

#অন্তর্ভুক্ত #অন্তর্ভুক্ত

ফাইল myFile;

dht DHT; #DHT11_PIN A0 সংজ্ঞায়িত করুন

অকার্যকর সেটআপ() {

// সিরিয়াল যোগাযোগ খুলুন এবং পোর্ট খোলার জন্য অপেক্ষা করুন: Serial.begin (9600); Serial.println ("প্রকার, / tStatus, / tHumidity (%), / t তাপমাত্রা (C)"); while (! সিরিয়াল) {; // সিরিয়াল পোর্ট সংযোগের জন্য অপেক্ষা করুন। শুধুমাত্র স্থানীয় USB পোর্টের জন্য প্রয়োজন} DHTAcq (); sdCardWrite ("test3.txt"); sdCardRead ("test3.txt");

}

অকার্যকর DHTAcq ()

{Serial.println ("DHT11, / t"); int chk = DHT.read11 (DHT11_PIN); সিরিয়াল.প্রিন্ট (DHT. আর্দ্রতা, 1); সিরিয়াল.প্রিন্ট (", / t"); Serial.print (DHT.temperature, 1); বিলম্ব (2000); }

অকার্যকর sdCardWrite (স্ট্রিং fileNameStr)

{Serial.println ("SD কার্ড শুরু করা"); যদি (! SD.begin (4)) {Serial.println ("সূচনা ব্যর্থ হয়েছে।"); প্রত্যাবর্তন; } Serial.println ("সূচনা সম্পন্ন!"); // ফাইলটি খুলুন। মনে রাখবেন যে একবারে কেবল একটি ফাইল খোলা যেতে পারে, // তাই অন্যটি খোলার আগে আপনাকে এটি বন্ধ করতে হবে। myFile = SD.open (fileNameStr, FILE_WRITE); // যদি ফাইলটি ঠিকঠাক খোলা থাকে, তাতে লিখুন: if (myFile) {myFile.println ("DHT11, / t"); int chk = DHT.read11 (DHT11_PIN); myFile.print (DHT.humidity, 1); myFile.print (", / t"); myFile.print (DHT.temperature, 1); myFile.close (); Serial.println ("সম্পন্ন!"); বিলম্ব (200); /*Serial.print ("test.txt লেখা …"); myFile.println ("1, 2, 3. টেস্টিং"); // ফাইল বন্ধ করুন: myFile.close (); Serial.println ("সম্পন্ন।"); */} অন্য {// যদি ফাইলটি না খোলে, একটি ত্রুটি মুদ্রণ করুন: Serial.println ("ত্রুটি খোলার test.txt"); }}

অকার্যকর sdCardRead (স্ট্রিং ফাইলের নাম)

{// পড়ার জন্য ফাইলটি আবার খুলুন: myFile = SD.open (fileName); যদি (myFile) {Serial.println ("test.txt:"); // ফাইল থেকে পড়ুন যতক্ষণ না এতে আর কিছু না থাকে: while (myFile.available ()) {Serial.write (myFile.read ()); } // ফাইল বন্ধ করুন: myFile.close (); } অন্যথায় {// যদি ফাইলটি না খোলে, একটি ত্রুটি মুদ্রণ করুন: Serial.println ("ত্রুটি খোলার test.txt"); }}

অকার্যকর লুপ () {

// সেটআপ করার পরে কিছুই হয় না // সিরিয়াল.প্রিন্টলন ("পরীক্ষা 1.. 2.. 3"); // বিলম্ব (1000); }

ধাপ 5: অ্যান্ড্রয়েড অ্যাপ:

অ্যান্ড্রয়েড অ্যাপ
অ্যান্ড্রয়েড অ্যাপ
অ্যান্ড্রয়েড অ্যাপ
অ্যান্ড্রয়েড অ্যাপ

ড্র্যাগ অ্যান্ড ড্রপ প্রোগ্রামিং সহ থানক্যাবল অ্যাপ্লিকেশন দিয়ে অ্যান্ড্রয়েড অ্যাপটি তৈরি করা হয়েছে। এটি স্ক্রিনে লেবেলে ডেটা লগ ইন করবে এবং একবার স্টোর ডেটা বোতামটি লোকেশন AppInventor/Data এ ফাইলের নাম দিয়ে চাপানো হবে যা কোড দেওয়া হয়েছে।

কাঙ্ক্ষিত সেন্সর মডিউল দিয়ে প্রতিস্থাপন করে আমরা যে সেন্সর ডেটা চাই তা অফলাইন স্টোরেজ করার জন্য প্রকল্পটি বাড়ানো যেতে পারে এবং অ্যাপ্লিকেশনটি স্টোরেজ থেকে ডেটা পুনরুদ্ধার এবং অ্যাপ্লিকেশন অনুসারে ম্যানিপুলেট করার জন্য বাড়ানো যেতে পারে।

প্রস্তাবিত: