কীভাবে বাড়িতে রোবট তৈরি করবেন (ছবি সহ)

সুচিপত্র:

কীভাবে বাড়িতে রোবট তৈরি করবেন (ছবি সহ)
কীভাবে বাড়িতে রোবট তৈরি করবেন (ছবি সহ)

ভিডিও: কীভাবে বাড়িতে রোবট তৈরি করবেন (ছবি সহ)

ভিডিও: কীভাবে বাড়িতে রোবট তৈরি করবেন (ছবি সহ)
ভিডিও: [২য় পর্ব] সেরা কয়েকটি দৃষ্টিভ্রম | Top optical and sound illusion bangla| 2024, নভেম্বর
Anonim

আপনি কি আপনার নিজের রোবট তৈরি করতে শিখতে চান? অনেক রকমের রোবট আছে, যেগুলো আপনি নিজেই তৈরি করতে পারেন। বেশিরভাগ মানুষ একটি রোবটকে পয়েন্ট A থেকে B তে যাওয়ার সহজ কাজ করতে চায়। আপনার নিজের রোবট তৈরি করা ইলেকট্রনিক্স এবং কম্পিউটার প্রোগ্রামিং শেখার একটি দুর্দান্ত উপায়।

ধাপ

5 এর 1 ম অংশ: রোবট একত্রিত করা

1123333 1
1123333 1

পদক্ষেপ 1. আপনার উপাদানগুলি একত্রিত করুন।

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

  • Arduino Uno (বা অন্যান্য মাইক্রোকন্ট্রোলার)
  • 2 servos 360 ডিগ্রী
  • 2 চাকা মেলে সার্ভো
  • 1 বিনামূল্যে চাকা
  • 1 টেস্ট বোর্ড (ব্রেডবোর্ড বা প্রজেক্ট বোর্ড) যা বিক্রি হয়নি
  • 1 প্রক্সিমিটি সেন্সর (চার পিন সংযোগকারী তারের সাথে)
  • 1 পুশ বোতাম সুইচ
  • 1 প্রতিরোধক 10kΩ
  • 1 ইউএসবি এ থেকে বি ক্যাবল
  • ব্রেকযোগ্য হেডারের 1 সেট
  • 1 6 x AA ব্যাটারি হোল্ডার 9V ডিসি। পাওয়ার সকেট
  • 22 এর 1 প্যাক।জাম্পার কেবল বা একক তার
  • অন্তরক পিছনে (ডবল টেপ) বা আঠালো বন্দুক
1123333 2
1123333 2

ধাপ 2. ব্যাটারির বগিটি ঘুরিয়ে দিন যাতে এর সমতল পিঠটি মুখোমুখি হয়।

আপনি বেস হিসাবে ব্যাটারি কম্পার্টমেন্ট ব্যবহার করে রোবট বডি তৈরি করবেন।

1123333 3
1123333 3

ধাপ the. ব্যাটারি বে এর শেষে একই দিকের মুখোমুখি দুটি সার্ভার সাজান।

এই প্রান্তটি সেই প্রান্ত যেখানে ব্যাটারি থেকে তারের বেরিয়ে আসে। Servos নীচের স্পর্শ করা উচিত, এবং প্রতিটি servo এর ঘূর্ণন প্রক্রিয়া ব্যাটারি কম্পার্টমেন্টের দিক থেকে মুখোমুখি হওয়া উচিত। এটি গুরুত্বপূর্ণ যে এই সার্ভগুলি সঠিকভাবে সাজানো হয়েছে যাতে চাকা সোজা থাকে। সার্ভোর জন্য তারগুলি অবশ্যই ব্যাটারি বগির পিছন থেকে বেরিয়ে আসতে হবে।

1123333 4
1123333 4

ধাপ 4. আপনার অন্তরণ বা আঠালো সঙ্গে servos আঠালো।

ব্যাটারি কম্পার্টমেন্টের সাথে সার্ভো দৃ attached়ভাবে সংযুক্ত আছে তা নিশ্চিত করুন। সার্ভোর পিছনে ব্যাটারি কম্পার্টমেন্টের পিছনের সাথে সামঞ্জস্য থাকতে হবে।

এখন, servos ব্যাটারি বে পিছনে অর্ধেক জায়গা নিতে হবে।

1123333 5
1123333 5

ধাপ ৫। ব্যাটারি কম্পার্টমেন্টে অবশিষ্ট জায়গার উপর লম্বালম্বি টেস্ট বোর্ড মেনে চলুন।

এই টেস্ট বোর্ডটি ব্যাটারির কম্পার্টমেন্টের সামনের দিকে কিছুটা ঝুলে থাকবে এবং উভয় পাশে প্রসারিত হবে। পরীক্ষা করার আগে নিশ্চিত হয়ে নিন যে পরীক্ষার বোর্ডটি শক্ত। "A" সারিটি সার্ভোর সবচেয়ে কাছাকাছি হওয়া উচিত।

1123333 6
1123333 6

ধাপ 6. Servo এর শীর্ষে Arduino মাইক্রোকন্ট্রোলার সংযুক্ত করুন।

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

1123333 7
1123333 7

ধাপ 7. servos উপর চাকা ইনস্টল করুন।

ঘূর্ণায়মান সার্ভো মেকানিজমের উপর চাকাগুলি দৃ press়ভাবে চাপুন। এর জন্য যথেষ্ট শক্তির প্রয়োজন হতে পারে কারণ চাকাগুলি এমনভাবে তৈরি করা হয়েছে যাতে সার্ভো টিপের আকৃতির সাথে ঠিক মেলে।

1123333 8
1123333 8

ধাপ 8. পরীক্ষা বোর্ডের নীচে বিনামূল্যে চাকা ইনস্টল করুন।

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

যদি আপনি একটি কিট কিনে থাকেন, তাহলে ফ্রি হুইলের কিছু ওয়েজ থাকতে পারে যা আপনি চাকাটি মাটি স্পর্শ করার জন্য নিশ্চিত করতে ব্যবহার করতে পারেন।

5 এর অংশ 2: রোবট তারের

1123333 9
1123333 9

পদক্ষেপ 1. দুটি 3-পিন হেডার কাটা।

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

1123333 10
1123333 10

ধাপ 2. পরীক্ষা বোর্ডে দুটি হেডার পিন 1-3 এবং 6-8 সারিতে ই সন্নিবেশ করান।

নিশ্চিত করুন যে তারা দৃly়ভাবে বা দৃly়ভাবে োকানো হয়েছে।

1123333 11
1123333 11

ধাপ 3. বাম পাশের কালো তারের (পিন 1 এবং 6) সঙ্গে হেডারের সাথে সার্ভো তারের সংযোগ করুন।

এটি সার্ভারটিকে টেস্ট বোর্ডের সাথে সংযুক্ত করবে। নিশ্চিত করুন যে বাম সার্ভোটি বাম হেডারের সাথে সংযুক্ত এবং ডান সার্ভোটি ডান হেডারের সাথে সংযুক্ত।

1123333 12
1123333 12

ধাপ 4. পিন C2 এবং C7 থেকে লাল রাম পিন (ধনাত্মক) থেকে লাল জাম্পার তারের সাথে সংযুক্ত করুন।

পরীক্ষা বোর্ডের পিছনে লাল রোলের ব্যবহার নিশ্চিত করুন (বাকি রোবট শরীরের কাছাকাছি)।

1123333 13
1123333 13

ধাপ ৫। ব্ল্যাক জাম্পার ওয়্যার পিন B1 এবং B6 থেকে নীল রেল পিন (গ্রাউন্ড) এর সাথে সংযুক্ত করুন।

আপনি পরীক্ষা বোর্ডের পিছনে নীল রেল ব্যবহার করেছেন তা নিশ্চিত করুন। লাল রেল পিনের সাথে কেবলটি সংযুক্ত করবেন না।

1123333 14
1123333 14

পদক্ষেপ 6. আরডুইনোতে 12 এবং 13 পিন থেকে সাদা জাম্পার তারগুলি A3 এবং A8 এ সংযুক্ত করুন।

এটি আরডুইনোকে সার্ভো নিয়ন্ত্রণ করতে এবং চাকা ঘুরানোর অনুমতি দেবে।

1123333 15
1123333 15

ধাপ 7. পরীক্ষা বোর্ডের সামনে সেন্সর সংযুক্ত করুন।

সেন্সরটি পরীক্ষা বোর্ডে বহিরাগত পাওয়ার রেলটিতে মাউন্ট করা হয় না, তবে প্রথম দুটি সারির পিন লেটার (জে)। প্রতিটি পাশে সমান সংখ্যক খালি পিনের সাহায্যে আপনি এটি ঠিক মাঝখানে রাখুন তা নিশ্চিত করুন।

1123333 16
1123333 16

ধাপ 8. পেন্স I14 থেকে কালো জাম্পার তারের সাথে সেন্সরের বাম দিকে প্রথম নীল রেল পিন সংযুক্ত করুন।

এটি সেন্সরকে গ্রাউন্ড করবে।

1123333 17
1123333 17

ধাপ 9. পিন I17 থেকে লাল জাম্পার তারের সাথে সেন্সরের ডানদিকে প্রথম লাল রেল পিন সংযুক্ত করুন।

এটি সেন্সরকে শক্তি সরবরাহ করবে।

1123333 18
1123333 18

ধাপ 10. সাদা জাম্পার তারগুলি পিন I15 থেকে পিন 9 থেকে আরডুইনোতে এবং I16 থেকে 8 পিনে সংযুক্ত করুন।

এটি সেন্সর থেকে মাইক্রোকন্ট্রোলারের তথ্য সরবরাহ করবে।

5 এর 3 অংশ: পাওয়ার কেবল ইনস্টল করা

1123333 19
1123333 19

ধাপ 1. রোবটটি ঘুরিয়ে দিন যাতে আপনি ব্যাটারির কম্পার্টমেন্টটি ভিতরে দেখতে পারেন।

ব্যাটারির কম্পার্টমেন্টটি সাজান যাতে ক্যাবলটি নিচের বাম দিক দিয়ে বেরিয়ে যায়।

1123333 20
1123333 20

পদক্ষেপ 2. নীচে বাম থেকে দ্বিতীয় বসন্তের সাথে লাল তারের সংযোগ করুন।

নিশ্চিত করুন যে ব্যাটারির বগি সঠিকভাবে সারিবদ্ধ বা সঠিক দিকের মুখোমুখি।

1123333 21
1123333 21

ধাপ the। নিচের ডানদিকের শেষ বসন্তের সাথে কালো তারের সংযোগ করুন।

এই দুটি তারের Arduino সঠিক ভোল্টেজ প্রদান করতে সাহায্য করবে।

1123333 22
1123333 22

ধাপ 4. টেস্ট বোর্ডের পিছনে ডান পাশে লাল এবং নীল পিনের সাথে লাল এবং কালো তারের সংযোগ করুন।

কালো তারের পিন 30 এ নীল রেল পিনে যেতে হবে। লাল তারের পিন 30 এ লাল রেল পিনে যেতে হবে।

1123333 23
1123333 23

ধাপ 5. আরডুইনোতে GND পিন থেকে কালো রেলটিকে নীল রেলের পিছনে সংযুক্ত করুন।

নীল রেলে 28 টি পিনের সাথে তারের সংযোগ করুন।

1123333 24
1123333 24

ধাপ 6. নীল রেলের পিছন থেকে কালো তারের সংযোগ দিন উভয় রেলের জন্য পিন 29 এ নীল রেলের সামনে।

লাল রেল সংযোগ করবেন না কারণ আপনি Arduino ক্ষতি করতে পারে।

1123333 25
1123333 25

ধাপ 7. পিন 30 এ লাল রেলের সামনের দিক থেকে লাল তারের সাথে আরডুইনোতে 5V পিনের সাথে সংযোগ করুন।

এটি আরডুইনোকে শক্তি সরবরাহ করবে।

1123333 26
1123333 26

ধাপ 8. 24-26 পিনের মধ্যবর্তী স্থানে পুশবাটন সুইচ োকান।

এই সুইচটি আপনাকে বিদ্যুৎ বন্ধ না করে রোবটটি বন্ধ করার অনুমতি দেবে।

1123333 27
1123333 27

ধাপ 9. সেন্সরের ডানদিকে পরবর্তী খালি পিনে H24 থেকে লাল রেলে লাল তারের সাথে সংযোগ করুন।

এটি বোতামে শক্তি সরবরাহ করবে।

1123333 28
1123333 28

ধাপ 10. নীল রেলের সাথে H26 সংযোগ করতে একটি প্রতিরোধক ব্যবহার করুন।

আপনি কেবল আগের ধাপে সংযুক্ত কালো তারের পাশে সরাসরি পিনের সাথে সংযুক্ত করুন।

1123333 29
1123333 29

ধাপ 11. G26 থেকে সাদা তারের সংযোগ দিন Arduino এ 2 পিন করুন।

এটি Arduino কে pushbuttons সনাক্ত করতে দেবে।

5 এর 4 ম অংশ: Arduino সফটওয়্যার ইনস্টল করা

1123333 30
1123333 30

ধাপ 1. Arduino IDE ডাউনলোড করুন এবং বের করুন।

এখানেই Arduino ডেভেলপ করা হয়েছে এবং আপনাকে প্রোগ্রাম নির্দেশাবলীর অনুমতি দেয় যা আপনি আপনার Arduino মাইক্রোকন্ট্রোলারে আপলোড করতে পারেন। আপনি এটি arduino.cc/en/main/software থেকে বিনামূল্যে ডাউনলোড করতে পারেন। ফাইলটিতে ডাবল ক্লিক করে ডাউনলোড করা ফাইলটি আনজিপ করুন এবং এতে থাকা ফোল্ডারটি সহজে প্রবেশযোগ্য স্থানে সরান। আপনি আসলে প্রোগ্রামটি ইনস্টল করবেন না, পরিবর্তে আপনি এটি একটি ফোল্ডার থেকে চালাবেন যা arduino.exe এ ডাবল ক্লিক করে বের করা হয়েছিল।

1123333 31
1123333 31

পদক্ষেপ 2. Arduino এর সাথে ব্যাটারি বগি সংযুক্ত করুন।

ব্যাটারির পিছনের সকেটটি আরডুইনোতে সংযোগকারীতে powerোকান যাতে এটি শক্তি পায়।

1123333 32
1123333 32

পদক্ষেপ 3. USB এর মাধ্যমে আপনার কম্পিউটারে Arduino োকান।

সম্ভাবনা হল, উইন্ডোজ ডিভাইসটিকে চিনবে না।

1123333 33
1123333 33

ধাপ 4. টিপুন।

জয়+আর এবং টাইপ করুন devmgmt.msc।

এই কমান্ডটি ডিভাইস ম্যানেজার খুলবে।

1123333 34
1123333 34

ধাপ 5. অন্যান্য ডিভাইসের অধীনে অজানা ডিভাইসে ডান ক্লিক করুন এবং ড্রাইভার সফটওয়্যার আপডেট করুন নির্বাচন করুন।

যদি আপনি এই বিকল্পটি দেখতে না পান, বৈশিষ্ট্যগুলিতে ক্লিক করুন, ড্রাইভার ট্যাবটি নির্বাচন করুন এবং তারপরে ড্রাইভার আপডেট করুন ক্লিক করুন।

1123333 35
1123333 35

ধাপ 6. ড্রাইভার সফটওয়্যারের জন্য আমার কম্পিউটার ব্রাউজ করুন নির্বাচন করুন।

এটি আপনাকে আরডুইনো আইডিই দিয়ে আসা অন্তর্নির্মিত ড্রাইভারগুলি নির্বাচন করার অনুমতি দেবে।

1123333 36
1123333 36

ধাপ 7. ব্রাউজ -এ ক্লিক করুন, তারপরে আপনি যে ফোল্ডারটি আগে বের করেছেন তা খুলুন।

আপনি এতে ড্রাইভার ফোল্ডারটি পাবেন।

1123333 37
1123333 37

ধাপ 8. ড্রাইভার ফোল্ডার নির্বাচন করুন এবং ঠিক আছে ক্লিক করুন।

নিশ্চিত করুন যে আপনি যদি অজানা সফ্টওয়্যার সম্পর্কে সতর্ক হন তবে আপনি চালিয়ে যেতে চান।

5 এর 5 ম অংশ: প্রোগ্রামিং রোবট

1123333 38
1123333 38

ধাপ 1. IDE ফোল্ডারে arduino.exe ফাইলে ডাবল ক্লিক করে Arduino IDE খুলুন।

আপনাকে একটি ফাঁকা প্রকল্প দিয়ে স্বাগত জানানো হবে।

1123333 39
1123333 39

পদক্ষেপ 2. আপনার রোবটকে উন্নত করার জন্য নিচের কোডটি আটকান বা আটকান।

নিচের কোডটি আপনার Arduino কে চালিয়ে দেবে।

#অন্তর্ভুক্ত // এটি প্রোগ্রামে "Servo" লাইব্রেরি যোগ করে // নিম্নলিখিত কমান্ড দুটি servo অবজেক্ট তৈরি করে Servo leftMotor; Servo rightMotor; অকার্যকর সেটআপ () {leftMotor.attach (12); // যদি আপনি দুর্ঘটনাক্রমে আপনার সার্ভোর জন্য পিন নম্বরগুলি অদলবদল করেন, তাহলে আপনি এখানে নম্বরগুলি অদলবদল করতে পারেন rightMotor.attach (13); } অকার্যকর লুপ () {leftMotor.write (180); // 360 ডিগ্রী ঘূর্ণন (ক্রমাগত ঘূর্ণন) সহ, 180 নম্বরটি সার্ভোকে পূর্ণ গতিতে "এগিয়ে" যাওয়ার নির্দেশ দেয়। rightMotor.write (0); // যদি উভয় মান 180 হয়, তাহলে রোবট একটি বৃত্তে ঘুরবে কারণ সার্ভো বিপরীত। "0" রোবটকে পূর্ণ গতিতে "পিছনের দিকে" যেতে বলে। }

1123333 40
1123333 40

পদক্ষেপ 3. প্রোগ্রামটি তৈরি করুন এবং আপলোড করুন।

সংযুক্ত আরডুইনোতে একটি প্রোগ্রাম তৈরি এবং আপলোড করতে উপরের বাম কোণে ডান তীর বোতামটি ক্লিক করুন।

আপনি রোবটটিকে পৃষ্ঠ থেকে তুলে নিতে চাইতে পারেন কারণ প্রোগ্রামটি আপলোড হওয়ার পর রোবট এগিয়ে যেতে থাকবে।

1123333 41
1123333 41

ধাপ 4. একটি স্টপ সুইচ ফাংশন যোগ করুন (কিল সুইচ)।

"Write ()" ফাংশনের উপরে একটি স্টপ সুইচ ফাংশন যোগ করতে আপনার কোডের "void loop ()" বিভাগে নিম্নলিখিত কোডটি যোগ করুন।

আর যদি // "90" হল servo- এর জন্য নিরপেক্ষ অবস্থান, যা servo- কে ডানদিকে ঘুরানো বন্ধ করতে বলে। }}

1123333 42
1123333 42

ধাপ 5. আপলোড করুন এবং আপনার কোড চেক করুন।

ইতিমধ্যে যোগ করা স্টপ সুইচ কোডটি দিয়ে, আপনি কোডটি আপলোড করতে পারেন এবং রোবটটি পরীক্ষা করতে পারেন। যতক্ষণ না আপনি স্টপ সুইচ বোতাম টিপবেন ততক্ষণ রোবটটি এগিয়ে চলতে হবে যার ফলে রোবটটি থেমে যাবে। সম্পূর্ণ কোড এই মত দেখাবে:

#অন্তর্ভুক্ত // নিম্নলিখিত কমান্ড দুটি Servo leftMotor servo অবজেক্ট তৈরি করে; Servo rightMotor; অকার্যকর সেটআপ () {leftMotor.attach (12); rightMotor.attach (13); } void loop () {if (digitalRead (2) == HIGH) {while (1) {leftMotor.write (90); rightMotor.write (90); }} leftMotor.write (180); rightMotor.write (0); }

উদাহরণ

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

#Servo leftMotor অন্তর্ভুক্ত করুন; Servo rightMotor; const int serialPeriod = 250; // এই কোডটি কনসোল আউটপুট টাইম ল্যাগ দেয় প্রতি 1/4 সেকেন্ড (250 ms) স্বাক্ষরবিহীন দীর্ঘ সময় সিরিয়ালডিলে = 0; const int loopPeriod = 20; // এই কোডটি সেন্সর পড়ার ফ্রিকোয়েন্সি 20 ms সেট করে, যা 50 Hz স্বাক্ষরবিহীন দীর্ঘ সময় লুপড্লে = 0; // এই কোডটি Arduino- এর পিনগুলিতে TRIG এবং ECHO ফাংশন নির্ধারণ করে। আপনি যদি সংখ্যাগুলিকে অন্যভাবে সংযুক্ত করেন তাহলে এখানে সমন্বয় করুন const int ultrasonic2TrigPin = 8; const int ultrasonic2EchoPin = 9; int ultrasonic2Distance; int ultrasonic2 মেয়াদ; // এই কোডটি দুটি সম্ভাব্য রোবট রাজ্যের সংজ্ঞা দেয়: এগিয়ে যান বা বাম দিকে যান #ডিফাইন DRIVE_FORWARD 0 #ডিফাইন TURN_LEFT 1 int state = DRIVE_FORWARD; // 0 = এগিয়ে যান (ডিফল্ট), 1 = বাম অকার্যকর সেটআপ চালু করুন () {Serial.begin (9600); // এই সেন্সর পিন কনফিগারেশন pinMode (ultrasonic2TrigPin, OUTPUT) নির্ধারণ করে; pinMode (ultrasonic2EchoPin, INPUT); // এটি Arduino পিন leftMotor.attach (12) এ মোটর বরাদ্দ করে; rightMotor.attach (13); } void loop () {if (digitalRead (2) == HIGH) // এই কোডটি একটি '' স্টপ '' সনাক্ত করে {যখন (1) {leftMotor.write (90); rightMotor.write (90); }} debugOutput (); // এই কোডটি সিরিয়াল কনসোলে ডিবাগ বার্তা প্রিন্ট করে যদি (মিলিস () - timeLoopDelay> = loopPeriod) {readUltrasonicSensors (); // এই কোডটি সেন্সরকে পরিমাপ করা দূরত্ব স্টেটম্যাচিন () সম্পর্কে তথ্য পড়তে এবং সংরক্ষণ করতে নির্দেশ দেয়; timeLoopDelay = মিলিস (); }} void stateMachine () {if (state == DRIVE_FORWARD) // যদি কোন বাধা ধরা না পড়ে {if (ultrasonic2Distance> 6 || ultrasonic2Distance <0) // যদি রোবটের সামনে কিছু না থাকে। যদি কোনো বাধা না থাকে তবে কিছু আল্ট্রাসোনিকের জন্য দূরত্ব নেতিবাচক হবে {// ড্রাইভ ফরওয়ার্ড rightMotor.write (180); leftMotor.write (0); } অন্য // যদি আমাদের সামনে কোন বস্তু থাকে {state = TURN_LEFT; }} অন্যথায় যদি (state == TURN_LEFT) // যদি কোনো বাধা ধরা পড়ে, তাহলে বাম দিকে যান {স্বাক্ষর না করা long timeToTurnLeft = 500; // 90 ডিগ্রী ঘুরতে প্রায় 0.5 সেকেন্ড লাগে। স্বাক্ষরবিহীন লম্বা turnStartTime = millis () উদাহরণে আপনার চাকার আকার থেকে আকারে ভিন্ন হলে আপনাকে এই মানটি সামঞ্জস্য করতে হতে পারে; // যখন রোবট ঘুরতে শুরু করবে তখন শর্তটি রাখুন রোবট ঘুরবে। rightMotor.write (180); leftMotor.write (180); } রাষ্ট্র = DRIVE_FORWARD; }} অকার্যকর readUltrasonicSensors () {// এটি অতিস্বনক 2 এর জন্য। যদি আপনি অন্য কোনো সেন্সর ব্যবহার করেন তাহলে আপনাকে এই কমান্ড পরিবর্তন করতে হতে পারে। digitalWrite (ultrasonic2TrigPin, HIGH); বিলম্ব মাইক্রোসেকেন্ড (10); // কমপক্ষে 10 মাইক্রোসেকেন্ড ডিজিটালওয়াইটের জন্য TRIG পিনটি বেশি টানুন (ultrasonic2TrigPin, LOW); ultrasonic2Duration = pulseIn (ultrasonic2EchoPin, HIGH); ultrasonic2Distance = (ultrasonic2Duration/2)/29; } // কনসোলে ত্রুটিগুলি ডিবাগ করার জন্য নিম্নলিখিত। void debugOutput () {if ((millis () - timeSerialDelay)> serialPeriod) {Serial.print ("ultrasonic2Distance:"); Serial.print (ultrasonic2Distance); সিরিয়াল.প্রিন্ট ("সেমি"); Serial.println (); timeSerialDelay = মিলিস (); }}

প্রস্তাবিত: