অ্যানালগকে ডিজিটাল রূপান্তর করা (অ্যানালগ রিড সিরিয়াল) - আরডুইনো বেসিক্স

অ্যানালগকে ডিজিটাল রূপান্তর করা (অ্যানালগ রিড সিরিয়াল) - আরডুইনো বেসিক্স

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

অ্যানালগ পড়ুন সিরিয়াল

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

একটি আরডুইনো একই রকম পরিবর্তিত প্রতিরোধের পড়তে এবং সনাক্ত করতে একটি পেন্টিওমিটার থেকে ভোল্টেজের পরিমাণটি পরিমাপ করার জন্য ব্যবহার করা যেতে পারে। এটি একটি অ্যানালগ মান হিসাবে আরডুইনো এনালগ ইনপুট পোর্টে ভোল্টেজ খাওয়ানোর মাধ্যমে করা যায়।



এখানে আমরা দেখতে পাব যে আরডুইনো এবং লিঙ্কযুক্ত কম্পিউটার জুড়ে সিরিয়াল যোগাযোগ স্থাপনের পরে উপরেরটি কীভাবে প্রয়োগ করা হয়।

হার্ডওয়্যার প্রয়োজনীয়

আরডুইনো বোর্ড

10 কিলোহোম পেন্টিওমিটার

সার্কিট অপারেশন

উপরের চিত্রটিতে যেমন চিত্রিত হয়েছে, পাত্র থেকে আপনার আরডুইনো বন্দরে তিনটি তারের নকশাকরণ করুন।

পাত্রের বাইরের সীসাগুলির মধ্যে একটি থেকে তারের স্থল বা বোর্ডের নেতিবাচক লাইনের সাথে বরাদ্দ করা হয়।

অন্যান্য নিখরচায় বহিরাগত শেষ সীসা বোর্ডের + 5V এর সাথে সংযুক্ত হয়ে যায়।

যা অবশিষ্ট আছে তা হ'ল পাত্রের কেন্দ্রের সীসা, যা আরডুইনো বোর্ডের অ্যানালগ ইনপুটটিতে সমাপ্ত হয়।

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

উদাহরণস্বরূপ, যখন স্লাইডার বাহুটি 5 5 লিডের দিকে ঘোরানো হয়, কেন্দ্রের সীসা 5V এর কাছাকাছি যায় এবং 5V নির্ধারিত সীসা স্পর্শ করার সাথে সাথে পুরো মানটি অর্জন করে। একইভাবে যখন স্লাইডার শ্যাফ্ট স্থল পাত্রের সীসার দিকে সরানো হয় তখন কেন্দ্রের সীসা শূন্যের সম্ভাবনা অর্জন করতে ঝোঁক।

পাত্রের কেন্দ্রের সীসাতে উপরের রৈখিকভাবে পরিবর্তিত সরবরাহের ভোল্টেজটি পাত্রটির সাথে তুলনামূলকভাবে পরিবর্তিত প্রতিরোধের সাথে ব্যাখ্যা করার জন্য আরডুইনো অ্যানালগ ইনপুট দ্বারা পড়ে।

আরডুইনো একটি অভ্যন্তরীণ অ্যানালগ-থেকে-ডিজিটাল রূপান্তরকারী সার্কিটিকে আবদ্ধ করে যা উপরের পট আন্দোলনের কার্যকরভাবে ব্যাখ্যা করে এবং 0 এবং 1023 এর মধ্যে সংখ্যায় রূপান্তর করে।

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

উল্লিখিত প্রোগ্রামে সেটআপ ফাংশনটি কেবলমাত্র সিরিয়াল যোগাযোগের সূচনা করার জন্য ট্রিগার করা প্রয়োজন, আপনার আরডুইনো বোর্ড এবং কম্পিউটার জুড়ে রেটটি প্রতি সেকেন্ডে 9600 বিটের ডেটা।

প্রত্যাশিত কমান্ডটি ফর্মটিতে রয়েছে:

সিরিয়াল.বেগিন (9600)

এরপরে, আপনার কোডের মূল লুপে, পাত্রের লিডগুলি থেকে প্রাপ্ত প্রতিরোধের মানটি (যা 0 এবং 1023 এর মধ্যে আলোচিত হবে, কেবল কোনও ডাটা টাইপের জন্য উপযুক্ত) ঠিক করতে আমরা একটি পরিবর্তনশীল প্রয়োগ করি:

int সেন্সরভ্যালু = এনালগ রিড (A0)

উপসংহারে, এই তথ্যটি আপনার সিরিয়াল উইন্ডোটিতে দশমিক (ডিসি) মান হিসাবে মুদ্রণ করুন। কোডের শেষ লাইনে এটি প্রয়োগের জন্য আপনি Serial.println () কমান্ডটি ব্যবহার করতে পারেন:

সিরিয়াল.প্রিন্টলন (সেন্সরভ্যালু, ডিসি)

এর পরে, যখনই সিরিয়াল মনিটর আরডুইনো ডেভলপমেন্ট ডোমেনে শুরু করা হয় (প্রোগ্রামটির শিরোনামে 'আপলোড' বোতামের ডানদিকে তত্ক্ষণাত বোতামটি ক্লিক করে এটি করা হয়)।

আমরা 0-1023 থেকে চলমান সংখ্যার ধারাবাহিক শৃঙ্খলা দেখতে পাবো, পাত্র শ্যাফটের বিভিন্ন পরিবর্তনের ঘোরের সাথে মিল রেখে।

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

কোড

/ *
অ্যানালগ রিডসারিয়াল
পিন 0 এ অ্যানালগ ইনপুট পড়ুন, ফলাফলটি সিরিয়াল মনিটরে মুদ্রণ করে।
A0 পিন করতে কোনও পেন্টিওমিটারের সেন্টার পিন এবং বাইরের পিনগুলি + 5 ভি এবং গ্রাউন্ডে সংযুক্ত করুন।

এই উদাহরণ কোডটি পাবলিক ডোমেনে।
* /

// আপনি রিসেট টিপুন একবার সেটআপ রুটিন চলে:
অকার্যকর সেটআপ() {
// প্রতি সেকেন্ডে 9600 বিটে সিরিয়াল যোগাযোগ শুরু করুন:
সিরিয়াল.বেগিন (9600)
}

// লুপের রুটিন বারবার চিরকাল চলে:
অকার্যকর লুপ () {
// এনালগ পিন 0 ইনপুট পড়ুন:
int সেন্সরভ্যালু = এনালগ রিড (A0)
// আপনি যে মূল্য পড়েছেন তা মুদ্রণ করুন:
সিরিয়াল.প্রিন্টলন (সেন্সরভ্যালু)
স্থিতির জন্য পঠন (1) // এর মধ্যে বিলম্ব
}




পূর্ববর্তী: মনিটরিং স্টেট অফ অফ সুইচ (ডিজিটাল রিড সিরিয়াল) - আরডুইনো বেসিক্স পরবর্তী: 1.25V থেকে 120 ভি মেইনগুলি অ্যাডজাস্টেবল ভোল্টেজ নিয়ন্ত্রক সার্কিট