সুচিপত্র:

আরডুইনো সুমো রোবট: ৫ টি ধাপ
আরডুইনো সুমো রোবট: ৫ টি ধাপ

ভিডিও: আরডুইনো সুমো রোবট: ৫ টি ধাপ

ভিডিও: আরডুইনো সুমো রোবট: ৫ টি ধাপ
ভিডিও: Sumo robot arduino 2024, জুলাই
Anonim
আরডুইনো সুমো রোবট
আরডুইনো সুমো রোবট

আমরা শুরু করার আগে

সুমো রোবট কি?

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

"সুমো" নামটি একটি পুরানো জাপানি খেলা থেকে এসেছে, যা দুটি প্রতিপক্ষ একটি রিংয়ে লড়াই করছে, তাদের প্রত্যেকেই অন্য প্রতিপক্ষকে এটি থেকে বের করে দেওয়ার চেষ্টা করছে, এবং রোবটদের সুমো রোবোটিক্স প্রতিযোগিতায়ও এটি করা উচিত, যেখানে দুটি রিংয়ে রাখা রোবট এবং একে অপরকে তার প্রতিপক্ষকে ধাক্কা দেওয়ার চেষ্টা করছে।

বুদ্ধিটা:

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

সুতরাং আসুন সুমো রোবট প্রতিযোগিতা আইনগুলি দেখুন:

আমি আপনার নিজের SUMO তৈরির সময় আপনার বিবেচনা করা উচিত এমন কিছু গুরুত্বপূর্ণ ভূমিকা ব্যাখ্যা করব এটি গভীর বিশদে না গিয়ে আপনার নিজস্ব আইডিয়া কল্পনা এবং উদ্ভাবনকে সাহায্য করতে পারে।

1. মাত্রা: সর্বোচ্চ প্রস্থ 20 সেমি, সর্বোচ্চ দৈর্ঘ্য 20 সেমি, উচ্চতা নির্দিষ্ট নয়।

2. আকৃতি: দৌড় শুরু করার পর রোবটের আকৃতি পরিবর্তনশীল হতে পারে, কিন্তু অবিচ্ছেদ্য অংশ ছাড়া একটি কেন্দ্রীয় বস্তু হিসেবে বজায় রাখা যায়।

3. ওজন: 3 কেজি অতিক্রম করে না।

4. রোবটকে অবশ্যই আত্ম-নিয়ন্ত্রক হতে হবে।

ধাপ 1: উপাদান

Image
Image
প্রতিটি উপাদান জন্য ব্যবহার করে
প্রতিটি উপাদান জন্য ব্যবহার করে

1 Arduino Ano3

2 ডিসি মোটর

Arduino এর জন্য 1 L298N Dual H Bridge

1 অতিস্বনক সেন্সর

2 IR TCRT5000

1 ব্যাটারি 9v

AA ব্যাটারি 4 * 1.5 v টুকরা + ব্যাটারি হাউস

4 রোবট চাকা

জাম্পার তার

ধাপ 2: প্রতিটি উপাদান জন্য ব্যবহার করে

প্রতিটি উপাদান জন্য ব্যবহার করে
প্রতিটি উপাদান জন্য ব্যবহার করে
প্রতিটি উপাদান জন্য ব্যবহার করে
প্রতিটি উপাদান জন্য ব্যবহার করে

এখন আমাদের প্রয়োজনীয় উপাদানগুলি রয়েছে, তাই আসুন বিস্তারিতভাবে জেনে নেওয়া যাক কী জন্য ব্যবহৃত হয়..

1- Arduino Ano3

এটি একটি প্রধান বোর্ড যা সমস্ত অংশ নিয়ন্ত্রণ করে এবং একে একে সংযুক্ত করে

2- ডিসি মোটর

যা রোবটকে কৌশলে এবং প্রতিযোগিতার রিং এর মধ্যে চলতে সাহায্য করে

4- Arduino এর জন্য L298N Dual H Bridge

এটি একটি ছোট প্যানেল যা মোটরগুলিকে ধ্রুবক ভোল্টেজ প্রদান করে, সেইসাথে চলাচল এবং ভোল্টেজের ভাল নিয়ন্ত্রণের সাথে Arduino প্লেট সমর্থন করে।

5- অতিস্বনক সেন্সর

অতিস্বনক সেন্সরটি প্রতিপক্ষের রোবট সনাক্ত করতে ব্যবহৃত হয় এবং সাধারণত রোবটের শীর্ষে স্থাপন করা হয়।

6- IR TCRT5000

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

7- ব্যাটারি 9v

এটি গুরুত্বপূর্ণ ভোল্টেজ সহ প্রধান বোর্ড (Arduino) সমর্থন করে।

8- AA ব্যাটারি 4 * 1.5 v টুকরা + ব্যাটারি হাউস

এটি গুরুত্বপূর্ণ ভোল্টেজের সাথে দুটি মোটর (ডিসি মোটর) সমর্থন করে এবং চাকার জন্য পূর্ণ শক্তি দিতে এটি আলাদা করা আবশ্যক।

9- জাম্পার তার

ধাপ 3: নকশা

নকশা
নকশা
নকশা
নকশা

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

এবং আমি প্রতিযোগিতার আইনের সাথে সুনির্দিষ্ট পরিমাপের বিষয়টি বিবেচনা করি, তাই আরো সৃজনশীল নকশায় চিন্তা করার চেষ্টা করুন এবং আপনার নিজের মডেল করুন।

রোবটের ওজন সম্পর্কে আরও সংবেদনশীল হওয়ার জন্য বা তারপরে রোবটের আকারে 45 ডিগ্রি কোণে সামনের ieldাল সহ ব্যাটারিগুলিকে রোবটের সামনের অংশে রাখুন।

ডিজাইন 1 ডাউনলোড করুন এখান থেকে

ডিজাইন 2 এখান থেকে ডাউনলোড করুন

আপনি কাগজ মডেল টেমপ্লেট ডাউনলোড করতে পারেন

Adobe Acrobat Reader (প্রস্তাবিত সফটওয়্যার) দিয়ে PDF ফাইল খুলুন

ধাপ 4: কৌশল খেলুন

Image
Image
কৌশল খেলুন
কৌশল খেলুন

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

খেলার কৌশল (1):

· আমরা ক্রমাগত নিজের চারপাশে রোবট তৈরি করব।

· রোবট ঘূর্ণনের সময় সর্বদা ক্রমাগত দূরত্ব পরিমাপ করে থাকে।

Measured যদি প্রতিপক্ষের দূরত্ব পরিমাপ করা হয় (উদাহরণস্বরূপ 10cm), তার মানে প্রতিপক্ষ সরাসরি আমাদের রোবটের সামনে।

· রোবটকে অবশ্যই ঘোরানো বন্ধ করতে হবে এবং তারপর আক্রমণ শুরু করতে হবে (দ্রুত পুরো শক্তি নিয়ে এগিয়ে যেতে হবে)।

· রোবটকে সবসময় আইআর সেন্সর থেকে রিডিং নিতে হবে যাতে আমরা রিং সীমান্ত অতিক্রম না করি।

White যদি সাদা রঙের আইআর উপস্থিতি পড়ে, তাহলে অবশ্যই রোবটটিকে সরাসরি সেন্সরের বিপরীত দিকে নিয়ে যেতে হবে (উদাহরণস্বরূপ: যদি সামনের সেন্সর, যা রোবটের সাদা রঙের ইঙ্গিত দেয়, তা পিছিয়ে যায়)!

খেলার কৌশল (2):

Rob শুরুতে রোবট সামনের দূরত্ব পরিমাপ করে।

· রোবট একই পরিমাপ দূরত্ব ফিরে সরানো।

· রোবট ঘোরানো বন্ধ করে তারপর হঠাৎ আক্রমণ শুরু করে (পুরো শক্তি নিয়ে এগিয়ে যান)।

Opp প্রতিপক্ষের ক্ষেত্রে অ্যাটাচ রোবটকে degrees৫ ডিগ্রি ঘুরাতে হবে যখন রিং থেকে পড়ে গেলে নিজেকে বাঁচতে হবে।

· রোবটকে সবসময় আইআর সেন্সর থেকে রিডিং নিতে হবে যাতে আমরা রিং সীমানা অতিক্রম না করি।

Read যদি সাদা রঙের আইআর উপস্থিতি পড়ে, তাহলে অবশ্যই রোবটটিকে সরাসরি সেন্সরের বিপরীত দিকে নিয়ে যেতে হবে (উদাহরণস্বরূপ: সামনের সেন্সর, যা রোবটের সাদা রঙের ইঙ্গিত দেয় তা পিছনে চলে যায়)!

ধাপ 5: প্রোগ্রামিং

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

সার্কিট এবং কোড চেক করুন

* 2019-03-26 আপডেট করুন

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

github.com/ErickSimoes/Ultrasonic/blob/mas…

/*

আহমেদ আজুজ দ্বারা

www.instructables.com/id/How-to-Make-Ardu…

প্রথমে এখান থেকে lib ডাউনলোড করুন

github.com/ErickSimoes/Ultrasonic/blob/ma…

*/

#Ultrasonic.h অন্তর্ভুক্ত করুন

অতিস্বনক অতিস্বনক (4, 3);

const int IN1 = 5;

const int IN2 = 6; const int IN3 = 9; const int IN4 = 10; #সংজ্ঞায়িত IR_sensor_front A0 // সামনের সেন্সর #সংজ্ঞায়িত IR_sensor_back A1 // পিছনের সেন্সন int দূরত্ব;

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

{Serial.begin (9600); বিলম্ব (5000); // সুমো কম্প্যাট ভূমিকা অনুযায়ী} অকার্যকর লুপ () {int IR_front = analogRead (IR_sensor_front); int IR_back = analogRead (IR_sensor_back); দূরত্ব = ultrasonic.read (); ঘোরান (200); // rotate শুরু করুন যদি (দূরত্ব <20) {Stop (); যখন (দূরত্ব 650 || IR_back> 650) {বিরতি;} বিলম্ব (10); } যদি (IR_front <650) // <650 মানে সাদা রেখা {Stop (); বিলম্ব (50); ব্যাকওয়ার্ড (255); বিলম্ব (500); } যদি (IR_back <650) // {Stop (); বিলম্ব (50); ফরওয়ার্ড (255); বিলম্ব (500); } /* ----------- ডিবাগিং ---------------- Serial.print (ultrasonic. Ranging (CM)); Serial.println ("cm"); Serial.println ("IR সামনে:"); Serial.println (IR_front); Serial.println ("IR ফিরে:"); Serial.println (IR_back); */

} //--------------------------------------------

void FORWARD (int Speed) {// যখন আমরা মোটরকে এগিয়ে যেতে দিতে চাই, // শুধু লুপ বিভাগে এই অংশটি বাতিল করুন। analogWrite (IN1, গতি); analogWrite (IN2, 0); analogWrite (IN3, 0); analogWrite (IN4, গতি); } // -------------------------------------------- অকার্যকর ব্যাকওয়ার্ড (int Speed) {// যখন আমরা মোটরকে এগিয়ে যেতে দিতে চাই, // শুধু লুপ বিভাগে এই অংশটি বাতিল করুন। analogWrite (IN1, 0); analogWrite (IN2, গতি); analogWrite (IN3, গতি); analogWrite (IN4, 0); } // -------------------------------------------- অকার্যকর ঘূর্ণন (int Speed) {// যখন আমরা মোটরকে ঘুরতে দিতে চাই, // শুধু লুপ বিভাগে এই অংশটি বাতিল করুন। analogWrite (IN1, গতি); analogWrite (IN2, 0); analogWrite (IN3, গতি); analogWrite (IN4, 0); } // -------------------------------------------- অকার্যকর বন্ধ () {// যখন আমরা মোটর বন্ধ করতে চাই, // শুধু লুপ বিভাগে এই অংশটি বাতিল করুন। analogWrite (IN1, 0); analogWrite (IN2, 0); analogWrite (IN3, 0); analogWrite (IN4, 0); }

প্রস্তাবিত: