সুচিপত্র:

সার্টার বিন - আপনার আবর্জনা সনাক্ত করুন এবং সাজান: 9 টি ধাপ
সার্টার বিন - আপনার আবর্জনা সনাক্ত করুন এবং সাজান: 9 টি ধাপ

ভিডিও: সার্টার বিন - আপনার আবর্জনা সনাক্ত করুন এবং সাজান: 9 টি ধাপ

ভিডিও: সার্টার বিন - আপনার আবর্জনা সনাক্ত করুন এবং সাজান: 9 টি ধাপ
ভিডিও: অনলাইনে ছবি বিক্রি করে আয় করুন | Good Income Part Time Job | Work From Home | Shutterstock Earning 2024, জুলাই
Anonim
Image
Image
কিভাবে এটা কাজ করে
কিভাবে এটা কাজ করে

আপনি কি কখনও এমন কাউকে দেখেছেন যিনি পুনর্ব্যবহার করছেন না বা এটি খারাপ পথে করছেন?

আপনি কি কখনও এমন মেশিনের জন্য কামনা করেছেন যা আপনার জন্য পুনর্ব্যবহারযোগ্য?

আমাদের প্রকল্পটি পড়তে থাকুন, আপনি এতে অনুশোচনা করবেন না!

সার্টার বিন একটি প্রকল্প যা বিশ্বে পুনর্ব্যবহারে সহায়তা করার একটি স্পষ্ট প্রেরণা রয়েছে। যেহেতু এটি সুপরিচিত, পুনর্ব্যবহারের অভাব আমাদের গ্রহে গুরুতর সমস্যা সৃষ্টি করছে, যেমন কাঁচামাল হারিয়ে যাওয়া এবং সমুদ্র দূষণ, অন্যদের মধ্যে।

সেই কারণে, আমাদের দল একটি ছোট আকারে একটি প্রকল্প বিকাশের সিদ্ধান্ত নিয়েছে: একটি সার্টার বিন যা উপাদানটি ধাতু বা অ-ধাতুর উপর নির্ভর করে বিভিন্ন প্রাপকদের মধ্যে আবর্জনা আলাদা করতে সক্ষম। ভবিষ্যতের সংস্করণগুলিতে, সেই সার্টার বিনটিকে বড় আকারে বহির্মুখী করা যেতে পারে, যা আবর্জনাকে বিভিন্ন ধরণের উপাদান (কাঠ, প্লাস্টিক, ধাতু, জৈব …) এর মধ্যে ভাগ করার অনুমতি দেয়।

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

পরবর্তী বিভাগগুলিতে, এই প্রকল্পটি ধাপে ধাপে ব্যাখ্যা করা হবে।

ধাপ 1: এটি কিভাবে কাজ করে

কিভাবে এটা কাজ করে
কিভাবে এটা কাজ করে
কিভাবে এটা কাজ করে
কিভাবে এটা কাজ করে

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

একবার যে প্রক্রিয়া শুরু হয়েছে সবুজ LED আলো। তারপর আল্ট্রাসনিক সেন্সর, একটি সমর্থন মাধ্যমে উপরের প্লেট সংযুক্ত, বাক্সের ভিতরে কোন বস্তু আছে কিনা তা নির্ধারণের জন্য তাদের কাজ শুরু করে।

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

যখন বাক্সটি স্ট্রোকের শেষে আসে এবং বস্তুটি সঠিক প্রাপকের মধ্যে ফেলে দেওয়া হয়, তখন বাক্সটি প্রাথমিক অবস্থানে ফিরে যাবে। অবশেষে, প্রাথমিক অবস্থানে বাক্সের সাথে, হলুদ LED বন্ধ হয়ে যাবে। সার্টার একই পদ্ধতিতে আবার শুরু করার জন্য প্রস্তুত হবে। শেষ অনুচ্ছেদে বর্ণিত এই প্রক্রিয়াটি ধাপ 6: প্রোগ্রামিং -এ সংযুক্ত ওয়ার্কফ্লো চার্টের ছবিতেও দেখানো হয়েছে।

ধাপ 2: উপকরণ বিল (BOM)

যান্ত্রিক অংশ:

  • নিচের কাঠামোর জন্য যন্ত্রাংশ কিনেছেন

    • ধাতব কাঠামো [লিঙ্ক]
    • ধূসর বাক্স [লিঙ্ক]
  • 3D প্রিন্টার

    সমস্ত মুদ্রিত অংশের জন্য পিএলএ (অন্যান্য উপকরণও ব্যবহার করা যেতে পারে, যেমন এবিএস)

  • লেজার কাটার মেশিন

    • MDF 3 মিমি
    • প্লেক্সিগ্লাস 4 মিমি
  • লিনিয়ার বিয়ারিং সেট [লিঙ্ক]
  • লিনিয়ার বিয়ারিং [লিঙ্ক]
  • খাদ [লিঙ্ক]
  • খাদ ধারক (x2) [লিঙ্ক]

ইলেক্ট্রনিক অংশ:

  • মোটর

    লিনিয়ার স্টেপার মোটর নেমা 17 [লিঙ্ক]

  • ব্যাটারি

    12 v ব্যাটারি [লিঙ্ক]

  • সেন্সর

    • 2 অতিস্বনক সেন্সর HC-SR04 [লিঙ্ক]
    • 2 প্ররোচক সেন্সর LJ30A3-15 [লিঙ্ক]
  • মাইক্রোকন্ট্রোলার

    1 আরডুইনো ইউএনও বোর্ড

  • অতিরিক্ত উপাদান

    • DRV8825 ড্রাইভার
    • 3 LEDs: লাল, সবুজ এবং কমলা
    • 1 বোতাম
    • কিছু জাম্পিং তার, তার এবং সোল্ডার প্লেট
    • ব্রেডবোর্ড
    • ইউএসবি কেবল (আরডুইনো-পিসি সংযোগ)
    • ক্যাপাসিটর: 100uF

ধাপ 3: যান্ত্রিক নকশা

Image
Image
যান্ত্রিক নকশা
যান্ত্রিক নকশা
যান্ত্রিক নকশা
যান্ত্রিক নকশা

আগের ছবিগুলিতে, সমাবেশের সমস্ত অংশ দেখানো হয়েছে।

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

লেজার কাটা অংশ:

  • MDF 3 মিমি

    • স্তম্ভ
    • শীর্ষ প্লেট
    • অতিস্বনক সেন্সর সমর্থন
    • প্ররোচিত সেন্সর সমর্থন করে
    • আবর্জনার বাক্স
    • ব্যাটারি সাপোর্ট
    • ব্রেডবোর্ড এবং আরডুইনো সাপোর্ট
  • প্লেক্সিগ্লাস 4 মিমি

    প্ল্যাটফর্ম

3D মুদ্রিত অংশ:

  • স্তম্ভের ভিত্তি
  • স্টেপার মোটর থেকে লিনিয়ার মুভমেন্ট ট্রান্সমিশন উপাদান
  • স্টেপার মোটর এবং ভারবহন সমর্থন করে
  • আবর্জনা বাক্সের জন্য দেয়াল স্থিরকরণ অংশ

এই অংশগুলির প্রতিটি তৈরির জন্য, সেই উদ্দেশ্যে ব্যবহৃত মেশিনের উপর নির্ভর করে. STEP ফাইলগুলি সঠিক বিন্যাসে আমদানি করা উচিত। এই ক্ষেত্রে,.dxf ফাইলগুলি লেজার কাট মেশিনের জন্য এবং.gcode ফাইলগুলি 3D প্রিন্টারের জন্য (আল্টিমেকার 2) ব্যবহার করা হয়েছে।

এই প্রকল্পের যান্ত্রিক সমাবেশ এই বিভাগে সংযুক্ত. STEP ফাইলে পাওয়া যাবে।

ধাপ 4: ইলেকট্রনিক্স (কম্পোনেন্ট চয়েস)

এই বিভাগে, ব্যবহৃত বৈদ্যুতিন উপাদানগুলির একটি সংক্ষিপ্ত বিবরণ এবং উপাদানগুলির পছন্দগুলির একটি ব্যাখ্যা করা হবে।

আরডুইনো ইউএনও বোর্ড (মাইক্রোকন্ট্রোলার হিসাবে):

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

মোটর (লিনিয়ার স্টেপার মোটর নেমা 17):

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

মডেলটি বেছে নেওয়ার জন্য আপনি একটি নিরাপত্তা ফ্যাক্টর যুক্ত করার জন্য সর্বাধিক টর্কের কিছু গণনা করেছেন। ফলাফল সম্পর্কে, আমরা এমন মডেল কিনেছি যা মূলত গণনা করা মানকে কভার করে।

DRV8825 ড্রাইভার:

এই বোর্ড একটি বাইপোলার স্টেপার মোটর নিয়ন্ত্রণ করতে ব্যবহৃত হয়। এটির একটি সামঞ্জস্যযোগ্য বর্তমান নিয়ন্ত্রণ রয়েছে যা আপনাকে একটি পোটেন্টিওমিটারের পাশাপাশি সর্বোচ্চ ছয়টি ধাপের রেজোলিউশনের সাথে সর্বাধিক বর্তমান আউটপুট সেট করতে দেয়: পূর্ণ-পদক্ষেপ, অর্ধ-পদক্ষেপ, 1/4-পদক্ষেপ, 1/8-পদক্ষেপ, 1/16- ধাপ, এবং 1/32-ধাপ (আমরা অবশেষে পূর্ণ-পদক্ষেপ ব্যবহার করেছি কারণ আমরা মাইক্রোস্টিপিং-এ যাওয়ার কোন প্রয়োজন খুঁজে পাইনি কিন্তু এটি এখনও আন্দোলনের মান উন্নত করতে ব্যবহার করা যেতে পারে)।

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

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

যদিও এই সেন্সরের আউটপুট একটি মান (দূরত্ব), একটি বস্তু উপস্থিত আছে কিনা তা নির্ধারণের জন্য একটি থ্রেশহোল্ড স্থাপন করে, আমরা রূপান্তর করি

প্ররোচিত সেন্সর:

ফ্যারাডে আইনের উপর ভিত্তি করে, এটি নন-কন্টাক্ট ইলেকট্রনিক প্রক্সিমিটি সেন্সর বিভাগের অন্তর্গত। আমরা তাদের চলমান বাক্সের নীচে, প্লেক্সিগ্লাস প্ল্যাটফর্মের নীচে স্থাপন করেছি যা বস্তুটিকে সমর্থন করে। তাদের লক্ষ্য হল ধাতু এবং অ-ধাতব বস্তুর মধ্যে পার্থক্য করা যা ডিজিটাল আউটপুট দেয় (0/1)।

LEDs (সবুজ, হলুদ, লাল):

তাদের মিশন হল ব্যবহারকারীর সাথে যোগাযোগ করা:

-সবুজ LED চালু: রোবট একটি বস্তুর জন্য অপেক্ষা করছে।

-লাল LED চালু: মেশিন কাজ, আপনি কোন বস্তু নিক্ষেপ করতে পারবেন না।

-হলুদ LED চালু: একটি বস্তু সনাক্ত করা হয়েছে

12V ব্যাটারি বা 12V পাওয়ার সোর্স + 5V ইউএসবি পাওয়ার:

সেন্সর এবং স্টেপার মোটরকে পাওয়ার জন্য একটি ভোল্টেজ উৎস প্রয়োজন। আরডুইনোকে পাওয়ার জন্য একটি 5V পাওয়ার সোর্স প্রয়োজন। এটি 12V ব্যাটারির মাধ্যমে করা যেতে পারে কিন্তু Arduino এর জন্য একটি পৃথক 5V পাওয়ার সোর্স থাকা ভাল (যেমন একটি USB তারের এবং ফোন অ্যাডাপ্টারের সাথে একটি পাওয়ার সোর্স বা কম্পিউটারের সাথে সংযুক্ত)।

আমরা যে সমস্যাগুলি পেয়েছি:

  • প্ররোচিত সেন্সর সনাক্তকরণ, আমরা কাঙ্ক্ষিত নির্ভুলতা পাইনি কারণ কখনও কখনও একটি ধাতব বস্তু খারাপ অবস্থানে অনুভূত হয় না। এটি 2 সীমাবদ্ধতার কারণে:

    • বর্গাকার প্ল্যাটফর্মের মধ্যে সেন্সর দ্বারা আচ্ছাদিত এলাকাটি এর 50% এর কম প্রতিনিধিত্ব করে (তাই ছোট বস্তু সনাক্ত করা যায় না)। এর সমাধানের জন্য আমরা or০ বা in০ টির বেশি ইনডাকটিভ সেন্সর ব্যবহার করার পরামর্শ দিচ্ছি যাতে 70০% এর বেশি এলাকা আচ্ছাদিত থাকে।
    • সেন্সরগুলির সনাক্তকরণ দূরত্ব 15 মিমি পর্যন্ত সীমাবদ্ধ তাই আমরা নিজেদেরকে একটি সূক্ষ্ম প্লেক্সিগ্লাস প্ল্যাটফর্ম ব্যবহার করতে বাধ্য করেছি। এটি একটি অদ্ভুত আকৃতির বস্তু সনাক্ত করার আরেকটি সীমাবদ্ধতাও হতে পারে।
  • অতিস্বনক সনাক্তকরণ: আবার, একটি জটিল উপায়ে আকৃতির বস্তু সমস্যা দেয় কারণ সেন্সর দ্বারা নির্গত সংকেত খারাপভাবে প্রতিফলিত হয় এবং সেন্সরের চেয়ে পরে ফিরে আসে।
  • ব্যাটারি: ব্যাটারি দ্বারা সরবরাহিত বর্তমানকে নিয়ন্ত্রণ করার জন্য আমাদের কিছু সমস্যা আছে এবং এটি সমাধান করার জন্য আমরা অবশেষে একটি শক্তির উৎস ব্যবহার করেছি। যাইহোক, ডায়োড ব্যবহার করার মতো অন্যান্য সমাধানগুলি করা যেতে পারে।

ধাপ 5: ইলেকট্রনিক্স (সংযোগ)

ইলেকট্রনিক্স (সংযোগ)
ইলেকট্রনিক্স (সংযোগ)
ইলেকট্রনিক্স (সংযোগ)
ইলেকট্রনিক্স (সংযোগ)

এই অংশটি সম্পূর্ণরূপে রাখা বিভিন্ন উপাদানগুলির ওয়্যারিং দেখায়। এটি দেখায় যে Arduino- এ প্রতিটি উপাদান কোন পিনের সাথে সংযুক্ত।

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

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

এই বিভাগটি বিন সাজানোর মেশিনের পিছনে প্রোগ্রামিং যুক্তি ব্যাখ্যা করবে।

প্রোগ্রামটি 4 টি ধাপে বিভক্ত, যা নিম্নরূপ:

  1. সিস্টেম শুরু করুন
  2. বস্তুর উপস্থিতি পরীক্ষা করুন
  3. উপস্থিত বস্তুর ধরন চেক করুন
  4. মুভ বক্স

প্রতিটি ধাপের বিস্তারিত বিবরণের জন্য, নীচে দেখুন:

ধাপ 1 সিস্টেম শুরু করুন

LED প্যানেল (3) - ক্যালিব্রেটিং LED (লাল) উচ্চ, প্রস্তুত LED (সবুজ) কম, বস্তু বর্তমান (হলুদ) কম সেট করুন

স্টেপার মোটর চেক করুন প্রাথমিক অবস্থানে

  • পাশ থেকে বক্স প্রাচীরের দূরত্ব পরিমাপ করতে অতিস্বনক সেন্সর পরীক্ষা চালান

    • প্রাথমিক অবস্থান == 0 >> প্রস্তুত LED হাই এবং ক্যালিব্রেটিং LED LOW এর মান আপডেট করুন -> ধাপ 2
    • প্রাথমিক অবস্থান! = 0 >> অতিস্বনক সেন্সরের ডিজিটাল পড়ার মান এবং সেন্সরের মানগুলির উপর ভিত্তি করে:

      • মোটর চলমান LED উচ্চ মান আপডেট।
      • চালান বাক্স চালান যতক্ষণ না উভয় অতিস্বনক সেন্সরের মান <থ্রেশহোল্ড মান।

প্রারম্ভিক অবস্থানের মান আপডেট করুন = 1 >> LED রেডি হাই এবং মোটরের গতি কম এবং ক্যালিব্রেট করার মান আপডেট করুন >> ধাপ 2

ধাপ ২

বস্তুর উপস্থিতি পরীক্ষা করুন

অতিস্বনক বস্তু সনাক্তকরণ চালান

  • অবজেক্ট প্রেজেন্ট == 1 >> অবজেক্ট প্রেজেন্ট LED হাই এর মান আপডেট করুন >> ধাপ 3
  • বস্তু বর্তমান == 0 >> কিছুই করবেন না

ধাপ 3

উপস্থিত বস্তুর ধরন চেক করুন

প্ররোচক সেন্সর সনাক্তকরণ চালান

  • inductiveState = 1 >> ধাপ 4
  • inductiveState = 0 >> ধাপ 4

ধাপ 4

মুভ বক্স

মোটর অপারেশন চালান

  • inductiveState == 1

    আপডেট মোটর চলন্ত LED উচ্চ >> মোটর বাম সরান, (আপডেট প্রাথমিক অবস্থান = 0) বিলম্ব এবং ডান দিকে ফিরে যান >> ধাপ 1

  • inductiveState == 0

    আপডেট মোটর মুভিং LED উচ্চ >> মোটর ডানদিকে সরান, (প্রাথমিক অবস্থান = 0 আপডেট করুন), বিলম্ব করুন এবং বাম দিকে ফিরে যান >> ধাপ 1

কার্যাবলী

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

ধাপ 4 এর পরে, প্রোগ্রামটি সম্পূর্ণভাবে কার্যকর হয়েছে এবং আবার চালানোর আগে ধাপ 1 এ ফিরে যাবে।

মূল শরীরে ব্যবহৃত ফাংশনগুলি নীচে সংজ্ঞায়িত করা হয়েছে।

তারা যথাক্রমে:

  • inductiveTest ()
  • moveBox (inductiveState)
  • অতিস্বনক বস্তু সনাক্তকরণ ()

// বস্তুটি ধাতব কিনা তা পরীক্ষা করুন

bool inductiveTest () {if (digitalRead (inductiveSwitchRight) == 1 || digitalRead (inductiveSwitchLeft == 0)) {রিটার্ন ট্রু; অন্যথায় {মিথ্যা প্রত্যাবর্তন; }} void moveBox (bool inductiveState) {// বক্স বাম দিকে যায় যখন ধাতু ধরা পড়ে এবং inductiveState = true যদি (inductiveState == 0) {stepper.moveTo (ধাপ); // এলোমেলো অবস্থান stepper.runToPosition () পরীক্ষার জন্য শেষ; বিলম্ব (1000); stepper.moveTo (0); stepper.runToPosition (); বিলম্ব (1000); } অন্যথায় যদি (inductiveState == 1) {stepper.moveTo (-steps); // এলোমেলো অবস্থান stepper.runToPosition () পরীক্ষার জন্য শেষ; বিলম্ব (1000); stepper.moveTo (0); // এলোমেলো অবস্থান stepper.runToPosition () পরীক্ষার জন্য শেষ; বিলম্ব (1000); }} বুলিয়ান অতিস্বনক বস্তু সনাক্তকরণ () {দীর্ঘ সময়কাল 1, দূরত্ব 1, সময়কাল // দীর্ঘ দূরত্ব নিতে পরিমাপের সংখ্যা নির্ধারণ করুন সর্বোচ্চ = 0; দীর্ঘ দূরত্ব মিনিট = 4000; দীর্ঘ দূরত্ব মোট = 0; জন্য (int i = 0; i distanceMax) {distanceMax = distanceTemp; } if (distanceTemp <distanceMin) {distanceMin = distanceTemp; } distanceTotal+= distanceTemp; } Serial.print ("Sensor1 maxDistance"); Serial.print (distanceMax); Serial.println ("mm"); Serial.print ("Sensor1 minDistance"); Serial.print (distanceMin); Serial.println ("mm"); // রিডিং থেকে গড় দূরত্ব নিন গড় দূরত্ব 1 = দূরত্ব মোট/10; Serial.print ("Sensor1 averageDistance1"); সিরিয়াল.প্রিন্ট (গড় দূরত্ব 1); Serial.println ("mm"); // ভুল রিডিং এড়ানোর জন্য পরিমাপের সর্বোচ্চ ও সর্বনিম্ন মান সরান গড় দূরত্ব অলিম্পিয়ান 1 = গড় দূরত্ব টেম্প/8; Serial.print ("Sensor1 averageDistanceOlympian1"); সিরিয়াল.প্রিন্ট (গড় দূরত্ব অলিম্পিয়ান 1); Serial.println ("mm");

// টেম্প ভ্যালু রিসেট করুন

দূরত্ব মোট = 0; দূরত্ব সর্বোচ্চ = 0; দূরত্ব মিনিট = 4000; দীর্ঘ সময় 2, দূরত্ব 2, গড় দূরত্ব 2, গড় দূরত্ব অলিম্পিয়ান 2; // পরিমাপের সংখ্যা নির্ধারণ করুন (int i = 0; i distanceMax) {distanceMax = distanceTemp; } if (distanceTemp <distanceMin) {distanceMin = distanceTemp; } distanceTotal+= distanceTemp; } Serial.print ("Sensor2 maxDistance"); Serial.print (distanceMax); Serial.println ("mm"); Serial.print ("Sensor2 minDistance"); Serial.print (distanceMin); Serial.println ("mm"); // রিডিং থেকে গড় দূরত্ব নিন গড় দূরত্ব 2 = দূরত্ব মোট/10; Serial.print ("Sensor2 averageDistance2"); সিরিয়াল.প্রিন্ট (গড় দূরত্ব 2); Serial.println ("mm"); // ভুল রিডিং এড়ানোর জন্য পরিমাপের সর্বোচ্চ ও সর্বনিম্ন মান সরান গড় দূরত্ব অলিম্পিয়ান 2 = গড় দূরত্ব টেম্প/8; Serial.print ("Sensor2 averageDistanceOlympian2"); সিরিয়াল.প্রিন্ট (গড় দূরত্ব অলিম্পিয়ান 2); Serial.println ("mm"); // টেম্প মান দূরত্ব টোটাল = 0 রিসেট করুন; দূরত্ব সর্বোচ্চ = 0; দূরত্ব মিনিট = 4000; যদি (averageDistanceOlympian1 + averageDistanceOlympian2 <emptyBoxDistance) {সত্যিকারের রিটার্ন; } অন্যথায় {মিথ্যা প্রত্যাবর্তন; }}

আসল অংশ

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

সতর্কবাণী

ধ্রুবকগুলি খুঁজে বের করার জন্য অনেক পরীক্ষা করা হয়েছিল: খালি বাক্স দূরত্ব, পদক্ষেপ এবং সর্বাধিক গতি এবং সেটআপের ত্বরণ।

ধাপ 7: সম্ভাব্য উন্নতি

সম্ভাব্য উন্নতি
সম্ভাব্য উন্নতি

- শুরুতে বস্তুটি বাছাই করার জন্য এটি সবসময় সঠিক অবস্থানে আছে তা নিশ্চিত করার জন্য আমাদের বাক্সের অবস্থান সম্পর্কে প্রতিক্রিয়া প্রয়োজন। সমস্যা সমাধানের জন্য বিভিন্ন অপশন পাওয়া যায় কিন্তু বক্সের পথের এক প্রান্তে সুইচ ব্যবহার করে আমরা 3D প্রিন্টারে যে সিস্টেমটি পাই তা অনুলিপি করা সহজ।

-অতিস্বনক সনাক্তকরণের সাথে আমরা যে সমস্যাগুলি পেয়েছি তার কারণে, আমরা সেই ফাংশনের জন্য কিছু বিকল্প সন্ধান করতে পারি: কেওয়াই -008 লেজার এবং লেজার ডিটেক্টর (চিত্র), ক্যাপাসিটিভ সেন্সর।

ধাপ 8: সীমাবদ্ধ কারণগুলি

এই প্রকল্পটি নির্দেশাবলীতে বর্ণিত হিসাবে কাজ করে তবে নিম্নলিখিত পদক্ষেপগুলির সময় বিশেষ যত্ন নেওয়া উচিত:

অতিস্বনক সেন্সরগুলির ক্রমাঙ্কন

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

শক্তির উৎস

স্টেপার মোটর ড্রাইভার DRV8825 এর জন্য প্রয়োজনীয় শক্তি 12V এবং 0.2 এবং 1 Amp এর মধ্যে। Arduino- এ জ্যাক ইনপুট ব্যবহার করে সর্বাধিক 12V এবং 0.2 Amp দ্বারা চালিত হতে পারে। আরডুইনো এবং স্টেপার মোটর চালক উভয়ের জন্য একই পাওয়ার সোর্স ব্যবহার করলেও বিশেষ যত্ন নেওয়া উচিত। উদাহরণস্বরূপ একটি 12V/2A AC/DC অ্যাডাপ্টার পাওয়ার সাপ্লাই ব্যবহার করে একটি সাধারণ পাওয়ার সকেট থেকে চালিত হলে, আরডুইনো এবং স্টেপার মোটর ড্রাইভারে পাওয়ার খাওয়ার আগে সার্কিটে একটি ভোল্টেজ রেগুলেটর এবং ডায়োড থাকা উচিত।

বক্স হোমিং

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

স্টেপার ড্রাইভার DRV8825 টিউনিং

স্টেপার মোটর দিয়ে কাজ করার জন্য স্টেপার ড্রাইভারের টিউনিং প্রয়োজন। এটি ডিআরভি 8825 চিপে পোটেন্টিওমিটার (স্ক্রু) ঘুরিয়ে পরীক্ষামূলকভাবে করা হয় যাতে মোটরকে যথাযথ পরিমাণে কারেন্ট সরবরাহ করা হয়। সুতরাং, পটেন্টিওমিটার স্ক্রু সামান্য ঘুরিয়ে দিন যতক্ষণ না মোটর একটি পাতলা ভাবে কাজ করে।

ধাপ 9: ক্রেডিট

এই প্রকল্পটি ইউনিভার্সিটি লিবার ডি ব্রুক্সেলস (ইউএলবি) -ব্রিজে ইউনিভার্সিটি ব্রাসেল (ভিইউবি) -এ ব্রুফাস মাস্টারের জন্য 2018-2019 শিক্ষাবর্ষে মেকাট্রনিক্স কোর্সের অংশ হিসাবে করা হয়েছিল।

লেখকরা হলেন:

ম্যাক্সিম ডেক্লেয়ার

লিডিয়া গোমেজ

মার্কাস পোডার

অ্যাড্রিয়ানা পুয়েন্টেস

নারজিস স্নোসি

আমাদের সুপারভাইজার অ্যালবার্ট ডি বিয়ারকে বিশেষ ধন্যবাদ, যিনি আমাদের পুরো প্রকল্পেও সাহায্য করেছেন।

প্রস্তাবিত: