সুচিপত্র:

রোডরনার: 5 টি ধাপ
রোডরনার: 5 টি ধাপ

ভিডিও: রোডরনার: 5 টি ধাপ

ভিডিও: রোডরনার: 5 টি ধাপ
ভিডিও: How To Use Roadrunner App | Roadrunner | Foodpanda | Best Food In Bangladesh 2024, নভেম্বর
Anonim
রোডরনার
রোডরনার

রোডরুনার একটি ছোট স্বয়ংক্রিয় যান, যা তৃষ্ণার্ত ব্যবহারকারীদের পানীয়ের ক্যান পরিবহনের কাজ করে।

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

ধাপ 1: সরঞ্জাম এবং উপকরণ

সরঞ্জাম এবং উপকরণ
সরঞ্জাম এবং উপকরণ
সরঞ্জাম এবং উপকরণ
সরঞ্জাম এবং উপকরণ

ধাপ 2: হার্ডওয়্যার সমাবেশ

হার্ডওয়্যার সমাবেশ
হার্ডওয়্যার সমাবেশ
হার্ডওয়্যার সমাবেশ
হার্ডওয়্যার সমাবেশ
হার্ডওয়্যার সমাবেশ
হার্ডওয়্যার সমাবেশ

1. শরীর

শরীরের জন্য আমরা একটি অ্যালুমিনিয়াম প্লেট ব্যবহার করতাম, যা আমরা কাটতাম এবং যে আকৃতিটি চেয়েছিলাম তা দিয়ে বাঁকতাম। আমরা স্ক্রুগুলির জন্য প্রয়োজনীয় সমস্ত গর্ত তৈরি করেছি।

2. চাকা

আমরা একটি মেকানো গেমের ২ টি চাকা ব্যবহার করেছি যা আমাদের রোবটের সাথে পুরোপুরি মানানসই। সার্ভগুলি স্ক্রুগুলির সাহায্যে সংযুক্ত প্লেটের নীচে যায়। সামনের চাকার জন্য আমরা একটি "বিনামূল্যে" চাকা ব্যবহার করেছি, তাই এটি সহজেই যে কোন দিকে যেতে পারে।

3. ফটোসেন্সর

আরডিএল ফটোসেন্সরগুলির জন্য আমরা একটি সার্কিট বোর্ড ব্যবহার করেছি এবং আমরা সার্কিটটি welালাই করেছি, এতে একটি প্রতিরোধ, এলডিআর, একটি ইতিবাচক, নেতিবাচক এবং সংকেত রয়েছে।

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

আমরা স্ক্রু ব্যবহার করে প্লেটে Arduino বোর্ড সংযুক্ত করেছি। তারপরে আমরা কেবল সমস্ত সার্কিটকে এর সাথে সংযুক্ত করেছি। বোর্ড সরবরাহ করার জন্য আমরা 2 9V ব্যাটারি ব্যবহার করেছি, যা আমরা একত্রিত করেছি এবং আরডুইনোতে প্লাগ করেছি।

5. শীর্ষ প্লেট

উপরের প্লেটের জন্য আমরা পিএমএমএ কাটার জন্য লেজার কাট মেশিন ব্যবহার করেছি। আমরা এই আকৃতিটি অটোক্যাড দিয়ে ডিজাইন করেছি। এটি একটি বড় প্লেট, 3 টি বৃত্তাকার রিং এবং একটি বৃত্তাকার টুকরো যা রিংগুলিতে ফিট করে। আমরা প্লেটে জায়গা দিয়েছি যাতে আমরা একটি বোতাম ফিট করতে পারি।

ধাপ 3: বৈদ্যুতিক সংযোগ

বৈদ্যুতিক সংযোগ
বৈদ্যুতিক সংযোগ

1. Servomotors সংযোগ:

Servomotors তিনটি তারের গঠিত; সংকেতের জন্য একটি হলুদ বা কমলা, ক্ষমতার জন্য লাল (Vcc) এবং মাটির জন্য কালো বা বাদামী (GND)। লাল এবং বাদামী একটি Arduino (5V এবং GND) এর অনুযায়ী পিনের সাথে সংযুক্ত। একটি সার্ভো PWM পিন 10 এবং অন্যটি PWM পিন 11 এ সংযুক্ত করা হয়।

2. সংযোগকারী বোতাম:

বৈদ্যুতিন বোতামগুলি কিছুটা অদ্ভুত উপায়ে কাজ করে; পিন জুড়ে ভোল্টেজকে তির্যকভাবে পাস করার অনুমতি দিন, অর্থাৎ, যদি আমাদের চারটি পিন থাকে, তাহলে আমাদের ইনপুট এবং আউটপুটকে কেবল দুটি পিনের মধ্যে সংযোগ করতে হবে, 1-4 বা 2-3 কাজ করতে। উদাহরণস্বরূপ, যদি আমরা 1-4 পিন নির্বাচন করি, আমরা গ্রাউন্ডকে (GND) 4 পিনে সংযুক্ত করব, এবং আউটপুটটি PWM 9 পিনের সাথে সংযুক্ত হবে এবং, পরিবর্তে, 1kOhm এর প্রতিরোধের সাথে, এটি 5V (Vcc)।

3. সংযোগকারী ফটোসেন্সর:

ফটোসেন্সরগুলিকে সংযুক্ত করতে, আমাদের অবশ্যই একটি পা সরাসরি Vcc সাপ্লাইতে স্থাপন করতে হবে, এবং অন্যটি একই সময়ে এটিকে একটি এনালগ পিন (এই ক্ষেত্রে পিন A0 এবং A1) এবং মাটিতে GND এর সাথে সংযুক্ত করতে হবে 1kOhm এর প্রতিরোধ।

বিঃদ্রঃ:

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

ধাপ 4: Arduino প্রোগ্রামিং

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

কোড

#Servo myservoL অন্তর্ভুক্ত করুন;

Servo myservoR;

int inPin = 7;

int buttonVal = 1;

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

// সার্ভোমোটর

myservoL.attach (10);

myservoR.attach (11);

Serial.begin (9600); }

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

int LDR_L = analogRead (A2);

int LDR_R = analogRead (A1);

buttonVal = digitalRead (inPin);

// প্যাক বাম

যদি (LDR_L> 590 && buttonVal == 0) {

myservoL.write (180);

// সিরিয়াল.প্রিন্টলন (এলডিআর_এল); }

অন্য {

myservoL.write (92);

// সিরিয়াল.প্রিন্টলন (এলডিআর_এল);

}

// প্যাক অধিকার

যদি (LDR_R> 750 && buttonVal == 0) {

myservoR.write (-270);

// সিরিয়াল.প্রিন্টলন (এলডিআর_আর); }

অন্য {

myservoR.write (92);

// সিরিয়াল.প্রিন্টলন (এলডিআর_আর); }

}

প্রস্তাবিত: