সুচিপত্র:

Arduino জন্য DIY লেজার স্টিয়ারিং মডিউল: 14 ধাপ (ছবি সহ)
Arduino জন্য DIY লেজার স্টিয়ারিং মডিউল: 14 ধাপ (ছবি সহ)

ভিডিও: Arduino জন্য DIY লেজার স্টিয়ারিং মডিউল: 14 ধাপ (ছবি সহ)

ভিডিও: Arduino জন্য DIY লেজার স্টিয়ারিং মডিউল: 14 ধাপ (ছবি সহ)
ভিডিও: 01 কিভাবে ক্ষুদ্র পিকআপ ট্রাক শেভ্রোলেট D10 বা C10 তৈরি করবেন 2024, জুলাই
Anonim
Image
Image

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

এই প্রকল্পের সম্পূর্ণ XY কন্ট্রোল সহ Arduino লেজার শো এবং রিয়েল Galvos এর সাথে Arduino লেজার শো এর মিল আছে কিন্তু আমি বিশ্বাস করি যে প্রথম সস্তা সোলেনয়েড সহ 3D মুদ্রিত ডিজাইন ব্যবহার করা হয়েছে। আমি সমস্ত ডিজাইন ফাইলগুলিকে GPLv3 এর অধীনে রাখছি যাতে নকশাটি উন্নত এবং উন্নত করা যায়।

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

ধাপ 1: নন-ডি মুদ্রিত অংশগুলি সংগ্রহ করুন

লেজার সমাবেশ নিম্নলিখিত অংশ নিয়ে গঠিত:

  • 4 মাইক্রো সোলেনয়েড
  • এক 1/2 ইঞ্চি আয়না
  • চার M3 স্ক্রু

আমি যে বিশেষ সোলেনয়েড ব্যবহার করেছি তা ইবেতে $ 1.45 ডলারে কেনা হয়েছিল। গোল আয়নাটি হবিলবিতে কারুশিল্পের আইলে পাওয়া গিয়েছিল - 25 টির একটি প্যাকেটের দাম আমাকে 3 ডলারেরও কম। আপনি ইবেতে আয়নাও খুঁজে পেতে পারেন।

আপনার ইবে থেকে আবার একটি সস্তা লেজার পয়েন্টারও প্রয়োজন হবে। এই প্রকল্পের জন্য একটি ভায়োলেট লেজারের সাথে একটি গ্লো-ইন-দ্য-ডার্ক শীট একটি চমৎকার কম্বো!

সাহায্যের হাতের একটি সেট প্রয়োজন হয় না, কিন্তু লেজার পয়েন্টার ধরে রাখা এবং অবস্থানের জন্য খুব দরকারী হবে। পাওয়ার বাটন চেপে ধরার জন্য একটি বড় বাইন্ডার ক্লিপ ব্যবহার করা যেতে পারে।

আপনার একটি Arduino (আমি একটি Arduino Nano ব্যবহার করেছি) এবং সোলেনয়েড চালানোর একটি উপায় প্রয়োজন হবে। যেমন VajkF মন্তব্যগুলিতে বলেছে, আপনি L-288 বা L9110 এর উপর ভিত্তি করে প্রাক-তৈরি এইচ-ব্রিজ ব্যবহার করতে পারেন। এগুলি ইবেতে কয়েক টাকায় সহজেই পাওয়া যায় এবং ড্রাইভিং মোটর এবং রোবোটিক্স প্রকল্পের জন্যও ব্যবহার করা যেতে পারে।

যেহেতু আমার কাছে এইচ-ব্রিজ ছিল না, তাই আমি আমার নিজস্ব ড্রাইভারকে আলাদা উপাদান থেকে তৈরি করেছি:

  • চারটি এনপিএন বাইপোলার ট্রানজিস্টর (আমি একটি MPS3704 ব্যবহার করেছি)
  • চারটি প্রতিরোধক (আমি 1.2k ওহম প্রতিরোধক ব্যবহার করেছি)
  • চারটি ডায়োড (আমি 1N4004 ব্যবহার করেছি)
  • একটি 9V ব্যাটারি এবং ব্যাটারি সংযোগকারী

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

ধাপ 2: 3D প্রিন্ট দ্য মিরর স্টিয়ারিং মডিউল

3D মিরর স্টিয়ারিং মডিউল প্রিন্ট করুন
3D মিরর স্টিয়ারিং মডিউল প্রিন্ট করুন
3D মিরর স্টিয়ারিং মডিউল প্রিন্ট করুন
3D মিরর স্টিয়ারিং মডিউল প্রিন্ট করুন

লেজার স্টিয়ারিং মডিউল দুটি 3D মুদ্রিত অংশ নিয়ে গঠিত: চারটি সোলেনয়েড বসানোর জন্য একটি বেস এবং আয়নার জন্য একটি স্পষ্ট প্ল্যাটফর্ম।

আমি আপনার জন্য দুটি STL ফাইল 3D প্রিন্টের সাথে সংযুক্ত করেছি, সেইসাথে FreeCAD ফাইলগুলি যদি আপনার ডিজাইন পরিবর্তন করতে হয়। সমস্ত বিষয়বস্তু GPLv3 এর অধীনে, তাই আপনি আপনার উন্নতি করতে এবং ভাগ করতে মুক্ত!

ধাপ 3: লেজার মডিউল একত্রিত করুন

লেজার মডিউল একত্রিত করুন
লেজার মডিউল একত্রিত করুন
লেজার মডিউল একত্রিত করুন
লেজার মডিউল একত্রিত করুন
লেজার মডিউল একত্রিত করুন
লেজার মডিউল একত্রিত করুন
  • নিচের অংশে চারটি সোলেনয়েড লাগানোর জন্য গরম আঠা ব্যবহার করুন।
  • উপরের অংশের কেন্দ্রে আয়না লাগানোর জন্য গরম আঠা ব্যবহার করুন।
  • সোলেনয়েডগুলিতে ধাতব পিস্টনগুলি সন্নিবেশ করান এবং তারপরে উপরের অংশটি পোস্টগুলিতে রাখুন (তবে এটিকে নিচে ফেলবেন না)। উপরের টুকরাটি সামান্য ঘোরান এবং একটি ছোট স্ক্রু ড্রাইভার ব্যবহার করে, প্রতিটি পিস্টনকে অবস্থানে তুলুন। ডিস্কের ঠোঁট পিস্টনের খাঁজে স্লাইড করা উচিত। সতর্ক থাকুন, কারণ 3D মুদ্রিত কব্জাগুলি খুব ভঙ্গুর। ধৈর্য এবং সম্ভবত কয়েকটি ব্যর্থ প্রচেষ্টার সাথে, আপনি চারটি পিস্টনকে মোচড়ানো বা কব্জায় চাপ না দিয়ে অবস্থান করতে সক্ষম হবেন।
  • একবার সব পিস্টন স্থাপিত হলে, আংশিকভাবে M3 স্ক্রু ertোকান, কিন্তু তাদের শক্ত করার আগে, প্রতিটি পিস্টনের উপর আলতো করে চাপ দিন এবং নিশ্চিত করুন যে আয়নাটি অবাধে কাত হয়ে আছে। যদি এটি অবাধে না যায় বা ধরতে না পারে, তাহলে উপরের প্লেটটি সরানোর প্রয়োজন হতে পারে, এক বা একাধিক সোলেনয়েড আলগা বন্ধ করুন এবং এটি সামান্য বাহ্যিক কোণে পুনরায় সংযুক্ত করুন (এটি এবং কেন্দ্রীয় পোস্টের মধ্যে স্পেসার লাগাতে সাহায্য করতে পারে) ।

ধাপ 4: লেজার পয়েন্টার কলার প্রিন্ট করুন

লেজার পয়েন্টার কলার প্রিন্ট করুন
লেজার পয়েন্টার কলার প্রিন্ট করুন
লেজার পয়েন্টার কলার প্রিন্ট করুন
লেজার পয়েন্টার কলার প্রিন্ট করুন

লেজার পয়েন্টার কলার মাথার উপর লেজার পয়েন্টার কলার ফিট করে। তারপরে আপনি কলারটি ধরার জন্য সাহায্যের হাতের একটি সেট ব্যবহার করতে পারেন এবং আপনাকে আপনার বেঞ্চে লেজারের অবস্থান ঠিক করতে পারবেন।

ধাপ 5: ড্রাইভিং সার্কিট একত্রিত করুন

ড্রাইভিং সার্কিট একত্রিত করুন
ড্রাইভিং সার্কিট একত্রিত করুন

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

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

  • পিন 9: সোলেনয়েড উপরে
  • পিন 3: ডাউন সোলেনয়েড
  • পিন 11: বাম সোলেনয়েড
  • পিন 10: ডান সোলেনয়েড

চারটি সোলেনয়েড ড্রাইভার সার্কিট চালানোর জন্য একটি একক 9V ব্যাটারি ব্যবহার করা যেতে পারে অথবা আপনি একটি বেঞ্চটপ পাওয়ার সাপ্লাই ব্যবহার করতে পারেন। আরডুইনো ইউএসবি পাওয়ার বন্ধ করবে এবং 9V ব্যাটারির ইতিবাচক দিকের সাথে সংযুক্ত করা উচিত নয়। যাইহোক, ব্যাটারির নেতিবাচক দিকটি গ্রাউন্ড-রেফারেন্স হিসাবে ব্যবহৃত হয় এবং এটি Arduino এর GND পিনের পাশাপাশি ট্রানজিস্টরের এমিটার পিনের সাথে যুক্ত করা উচিত।

ধাপ 6: নমুনা কোড আপলোড করুন

নমুনা কোড আপলোড করুন
নমুনা কোড আপলোড করুন

নমুনা কোডটি নিম্নলিখিত বৈশিষ্ট্যগুলির সাথে আপডেট করা হয়েছে:

  • PWM ফ্রিকোয়েন্সি এমনভাবে সামঞ্জস্য করে যে প্রক্রিয়াটি কম গতিতে প্রায় নীরব থাকে। মোশন টেস্ট ১ -এ গুঞ্জন পুরোপুরি চলে গেছে!
  • সোলিমোডের অ-রৈখিক প্রতিক্রিয়াকে "লিনিয়ারাইজ" করার জন্য শিম্পফের কাগজের উপর ভিত্তি করে ভোল্টেজ সমীকরণ হিসাবে যুক্ত করা হয়।

আমি এই ব্লগের কোডের উপর ভিত্তি করে একটি লরেঞ্জ অ্যাট্রেক্টরের বাস্তবায়নও অন্তর্ভুক্ত করেছি।

ফলাফলের বিশ্বস্ততা কাঙ্ক্ষিত হওয়ার জন্য কিছুটা ছেড়ে যায়, তবে আমি এখনও এটি নিয়ে কাজ করছি!:)

পরবর্তী ধাপগুলি কোডে ব্যবহৃত কিছু কৌশল ব্যাখ্যা করে।

ধাপ 7: ভলিউম কমিয়ে দেওয়া

আমার মোশন টেস্ট ১ -এ, আপনি বিশেষ করে আপ এবং ডাউন মুভমেন্টের সময় একটি জোরে গুঞ্জন শুনতে পারেন। দেখা যাচ্ছে যে এটি Arduino এর ডিফল্ট PWM চপিং ফ্রিকোয়েন্সি শ্রবণযোগ্য পরিসরের মধ্যে থাকার কারণে ঘটেছে। কুণ্ডলী ভোল্টেজ চালু এবং বন্ধ করার দ্রুত পরিবর্তন তাদের সেই ফ্রিকোয়েন্সিতে কম্পন সৃষ্টি করবে, যা তাদেরকে ছোট ছোট লাউডস্পিকারে পরিণত করবে।

এই সমস্যা সমাধানের জন্য, আমি কোডে PWM ফ্রিকোয়েন্সি বাড়িয়েছি:

#PWM_FREQ_31372Hz 0x01 // PWM ফ্রিকোয়েন্সি 31372.55 Hz সেট করে #PWM_FREQ_3921Hz 0x02 নির্ধারণ করে // PWM ফ্রিকোয়েন্সি 3921.16 Hz সেট করে & 0b11111000) | ফ্রিকোয়েন্সি; // সেট টাইমার 1 (পিন 9 এবং 10) ফ্রিকোয়েন্সি TCCR2B = (TCCR2B & 0b11111000) | ফ্রিকোয়েন্সি; // টাইমার 2 সেট করুন (পিন 3 এবং 11) ফ্রিকোয়েন্সি}

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

ধাপ 8: বিকৃতি কমাতে ভোল্টেজ টিউন করা

বিকৃতি কমাতে ভোল্টেজ টিউন করা
বিকৃতি কমাতে ভোল্টেজ টিউন করা

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

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

সিস্টেমটি টিউন করার জন্য এবং ফলে ট্রেসগুলির চেহারা উন্নত করতে আমি যে প্রক্রিয়ার মধ্য দিয়ে গিয়েছিলাম তার মাধ্যমে আপনাকে কী পদক্ষেপগুলি অনুসরণ করে!

ধাপ 9: সফ্টওয়্যারটি পারফেক্ট করা, গণিতের সাথে

গণিত সহ সফ্টওয়্যারটি নিখুঁত করা
গণিত সহ সফ্টওয়্যারটি নিখুঁত করা
গণিত সহ সফ্টওয়্যারটি নিখুঁত করা
গণিত সহ সফ্টওয়্যারটি নিখুঁত করা

ইস্টার্ন ওয়াশিংটন ইউনিভার্সিটির পল এইচ শিম্পফের "A Detailed Explanation of Solenoid Force" নামে একটি চমৎকার গবেষণাপত্র হয়ে উঠেছে সিস্টেম টিউন করার রহস্য (লিঙ্ক)। বিশেষ করে, 17 সমীকরণ আমাকে বিভিন্ন পদে সোলেনয়েড বল দিয়েছে।

নিম্নলিখিত পদগুলি পরিমাপ করা সহজ ছিল:

  • আর - আমার সোলেনয়েডের প্রতিরোধ
  • l - সোলেনয়েডের দৈর্ঘ্য
  • x - সোলেনয়েডে পিস্টনের স্থানচ্যুতি
  • V - সোলেনয়েড জুড়ে ভোল্টেজ

আমি আরও জানতাম যে সোলেনয়েড দ্বারা বাহিত বাহিনীকে দ্বৈত-অক্ষের আয়নাতে 3D মুদ্রিত স্প্রিংস থেকে শক্তি সামঞ্জস্য করতে হবে। একটি বসন্তের শক্তি হুকের আইন দ্বারা পরিচালিত হয়, যা নিম্নরূপ বলা হয়েছে:

F = -kx

যদিও আমি k এর মান জানতাম না, আমি অন্তত জানতাম যে শিম্পফের কাগজ থেকে আমি যে সমীকরণ 17 থেকে বেরিয়ে এসেছি তাকে হুকের আইন থেকে বলের সমান করতে হবে।

আলফা (α) এর মান একটি চতুর ছিল। যদিও 13 এবং 14 সমীকরণগুলি দেখিয়েছে কিভাবে সোলেনয়েড (এ), পালা সংখ্যা (এন) এবং চৌম্বকীয় ব্যাপ্তিযোগ্যতা মান (μ) এর ক্ষেত্র থেকে এই মানগুলি গণনা করা যায়, আমি গণনা করার জন্য একটি সোলেনয়েডকে ছিঁড়ে ফেলতে চাইনি পালা সংখ্যা, অথবা আমি যে উপাদান থেকে আমার সোলেনয়েডের মূল তৈরি হয়েছিল তা জানতাম না।

ধাপ 10: একটি সস্তা কম্পোনেন্ট পরীক্ষক দিন বাঁচায়

একটি সস্তা কম্পোনেন্ট পরীক্ষক দিন বাঁচায়!
একটি সস্তা কম্পোনেন্ট পরীক্ষক দিন বাঁচায়!
একটি সস্তা কম্পোনেন্ট পরীক্ষক দিন বাঁচায়!
একটি সস্তা কম্পোনেন্ট পরীক্ষক দিন বাঁচায়!
একটি সস্তা কম্পোনেন্ট পরীক্ষক দিন বাঁচায়!
একটি সস্তা কম্পোনেন্ট পরীক্ষক দিন বাঁচায়!

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

পুরোপুরি ertedোকানো আর্মচার দিয়ে এটি পরিমাপ করা আমাকে L (0) এর মান দিয়েছে।

আমার সোলেনয়েডের দৈর্ঘ্য ছিল 14 মিমি, তাই আমি পাঁচটি অবস্থানে আর্মচারের সাথে ইন্ডাক্ট্যান্স পরিমাপ করেছি এবং এটি আমাকে L (x) এর জন্য বিভিন্ন মান দিয়েছে:

  • এল (0.0) = 19.8 এমএইচ
  • এল (3.5) = 17.7 এমএইচ
  • এল (7.0) = 11.1 এমএইচ
  • এল (10.5) = 9.3 এমএইচ
  • এল (14) = 9.1 এমএইচ

আমি তখন একটি স্প্রেডশীট ব্যবহার করে আমার মান বনাম সমীকরণ 15 এবং 16 এর মান, ar এর একটি বিশেষ পছন্দের জন্য এবং তারপর আমার পছন্দের বৈচিত্র্য না হওয়া পর্যন্ত আমি একটি ভাল মিল খুঁজে পাই। যখন গ্রাফে দেখানো হয়েছে μr 2.9 ছিল তখন এটি ঘটেছিল।

ধাপ 11: বসন্ত ধ্রুবক কে খুঁজুন, সমস্যার সমাধান করুন

Image
Image
বর্তমান সমস্যা এবং সম্ভাব্য সমাধান বিশ্লেষণ
বর্তমান সমস্যা এবং সম্ভাব্য সমাধান বিশ্লেষণ

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

স্ট্রোকের সময় বিভিন্ন অবস্থানে সোলেনয়েডের টান গণনা করার জন্য আমার এখন প্রয়োজনীয় মান ছিল। হুকের আইন থেকে F (x) বসন্ত বলের সমান করে, আমি প্রয়োজনীয় ভোল্টেজ V এর জন্য সমাধান করতে পারি।

গ্রাফটি সোলেনয়েডকে যে কোনও পছন্দসই অবস্থানে নিয়ে যাওয়ার জন্য প্রয়োজনীয় ভোল্টেজ দেখায় x।

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

এই সম্পর্কটি অবশ্যই অ-রৈখিক, কিন্তু শিম্পফের কাগজ থেকে সমীকরণের সাথে, আমি সঠিক ভোল্টেজ আউটপুট করার জন্য আমার আরডুইনো কোড লিখতে পারি যাতে বিমের বিচ্যুতি রৈখিক হয়:

float positionToVoltage (float x) {

// কাঙ্ক্ষিত x এ হিংস (হুকের আইন) দ্বারা প্রয়োগ করা শক্তি পুনরুদ্ধার। const float spring_F = -spring_K * (x - spring_X0); // ভোল্টেজ যেমন সোলেনয়েডের টান বাহিনী মেলে // কব্জা ফিরিয়ে আনার শক্তি sqrt (-2*R*R*(-spring_F)*solenoid_len/(a*L_0*exp (-a*x/solenoid_len)))); }

এটি আমার মূল গতি পরীক্ষার চেয়ে অনেক বেশি বৃত্তাকার সর্পিলের দিকে নিয়ে যায়। কার্যোদ্ধার!

ধাপ 12: বিচ্ছিন্ন উপাদান ব্যবহার করে ড্রাইভার সার্কিট সম্পর্কে প্রশ্ন এবং উত্তর

কেন আমি সোলেনয়েডকে সরাসরি আরডুইনোতে সংযুক্ত করতে পারি না?

এটি একটি বিষয় যে Arduino ক্ষতি বজায় না রেখে কতটা প্রদান করতে পারে। এটি প্রতি পিনে প্রায় 40mA। Arduino 5V এ কাজ করে জেনেও, লোডের প্রয়োজনীয় ন্যূনতম প্রতিরোধের হিসাব করতে আমরা ওহমের আইন ব্যবহার করতে পারি (এই ক্ষেত্রে, সোলেনয়েড)। 5 ভোল্টকে 0.040 amps দ্বারা ভাগ করলে আমাদের 125 ওহম পাওয়া যায়। যদি লোডের একটি বৃহত্তর প্রতিরোধ ক্ষমতা থাকে, আমরা এটিকে সরাসরি Arduino এর সাথে সংযুক্ত করতে পারি, অন্যথায় আমরা তা করতে পারি না। একটি ছোট সোলেনয়েডের সাধারণত 50 ওহমের প্রতিরোধ ক্ষমতা থাকে, তাই আমরা এটি সরাসরি আরডুইনো থেকে চালাতে পারি না। যদি আমরা তা করি, এটি 100mA টানবে, যা স্পষ্টভাবে খুব বেশি।

কেন আপনি সোলেনয়েডের জন্য 9V ব্যবহার করেন, কিন্তু আরডুইনোর জন্য 5V?

Arduino 5V এ চলে, কিন্তু এটি একটি সোলেনয়েডের জন্য খুব সামান্য। একটি ট্রানজিস্টর ব্যবহার করে আমরা সোলেনয়েডের জন্য একটি ভোল্টেজ বাছাই করতে পারি যা Arduino এর জন্য ব্যবহৃত 5V থেকে স্বাধীন।

ট্রানজিস্টর এই প্রকল্পের জন্য উপযুক্ত কিনা তা আমি কিভাবে জানব?

আরডুইনোর মতোই, প্রধান প্রয়োজন হল সোলেনয়েডের মধ্য দিয়ে প্রবাহিত ট্রানজিস্টরের (বিশেষত, সংগ্রাহক কারেন্ট) সর্বোচ্চ রেটিং অতিক্রম করবেন না। আমরা সহজেই সোলেনয়েডের প্রতিরোধের পরিমাপ এবং তার দ্বারা সরবরাহের ভোল্টেজ ভাগ করে সবচেয়ে খারাপ পরিস্থিতির হিসাব করতে পারি। সোলেনয়েডগুলির জন্য 9V সরবরাহের বর্তমান ক্ষেত্রে এবং 50 ওহমের সোলেনয়েড প্রতিরোধের ক্ষেত্রে, সবচেয়ে খারাপ পরিস্থিতি আমাদের 180mA এ রাখে। MPS3704, উদাহরণস্বরূপ, সর্বাধিক কালেক্টর বর্তমানের জন্য 600 mA রেট দেওয়া হয়েছে, যা আমাদের প্রায় 3 এর মার্জিন দেয়।

Arduino এর আউটপুট এবং ট্রানজিস্টারের বেসের মধ্যে রাখা প্রতিরোধের ন্যূনতম মান কিভাবে নির্ধারণ করব?

আরডুইনোর আউটপুট বাইপোলার ট্রানজিস্টরের বেস লেগকে একটি বর্তমান সীমাবদ্ধ প্রতিরোধকের মাধ্যমে সংযুক্ত করবে। যেহেতু Arduino 5V এ কাজ করে, তাই আমরা 40mA এর নীচে বর্তমানকে সীমাবদ্ধ করার জন্য প্রয়োজনীয় প্রতিরোধের গণনা করতে ওহমের আইন ব্যবহার করতে পারি। অর্থাৎ, কমপক্ষে 125 ওহমের মান পেতে 5 ভোল্টকে 0.04 অ্যাম্পিয়ার দিয়ে ভাগ করুন। উচ্চতর প্রতিরোধক মান বর্তমান হ্রাস করবে, এইভাবে আমাদের আরও বেশি নিরাপত্তা মার্জিন দেবে।

সেই প্রতিরোধের সর্বোচ্চ মান আছে যা আমার অতিক্রম করা উচিত নয়?

দেখা যাচ্ছে, হ্যাঁ। একটি ট্রানজিস্টর যা বর্তমান লাভ হিসাবে পরিচিত। উদাহরণস্বরূপ, যদি লাভ 100 হয়, এর মানে হল যে যদি আমরা বেসে 1mA রাখি, তাহলে 100mA পর্যন্ত ট্রানজিস্টর নিয়ন্ত্রণের লোড দিয়ে প্রবাহিত হবে। যদি আমরা বেসে 1.8mA রাখি, তাহলে 180mA পর্যন্ত লোডের মধ্য দিয়ে প্রবাহিত হবে। যেহেতু আমরা আগে হিসাব করেছিলাম যে 9V এ, 180mA সোলেনয়েডের মধ্য দিয়ে প্রবাহিত হয়, তখন 1.8mA এর একটি বেস কারেন্ট হল "মিষ্টি স্পট", এবং কম এবং আমাদের সোলেনয়েড সম্পূর্ণভাবে চালু হবে না।

আমরা জানি আরডুইনো 5V বের করে এবং আমরা 1.8mA কারেন্ট প্রবাহিত করতে চাই, তাই আমরা প্রতিরোধের গণনা করতে ওহমের আইন (R = V/I) ব্যবহার করি (R = V/I)। 5V 1.8mA দ্বারা বিভক্ত 2777 ohms একটি প্রতিরোধ দেয়। সুতরাং আমরা যে অনুমান করেছি তা দিয়ে, আমরা আশা করি যে প্রতিরোধ 125 এবং 2777 এর মধ্যে থাকতে হবে - 1000 ওহমের মতো কিছু নির্বাচন করা আমাদের উভয় ক্ষেত্রেই মোটামুটি ভাল নিরাপত্তা মার্জিন দেয়।

ধাপ 13: বর্তমান সমস্যা এবং সম্ভাব্য সমাধান বিশ্লেষণ

বর্তমান সমস্যা এবং সম্ভাব্য সমাধান বিশ্লেষণ
বর্তমান সমস্যা এবং সম্ভাব্য সমাধান বিশ্লেষণ

বর্তমান প্রোটোটাইপ সম্ভাব্য দেখায়, কিন্তু বেশ কয়েকটি সমস্যা রয়ে গেছে:

  1. X এবং Y অক্ষ বরাবর গতি লম্ব বলে মনে হয় না।
  2. যখন আয়না দিক পরিবর্তন করে তখন একটি লাফ পড়ে।
  3. রেজোলিউশন বেশ কম এবং দৃশ্যমান সিঁড়ি ধাপের নিদর্শন রয়েছে।
  4. উচ্চ গতিতে, লেজারের পথ কম্পন এবং রিং দ্বারা বিকৃত হয়।

সমস্যা 1) 3D মুদ্রিত নমনীয় কব্জার নকশার কারণে হতে পারে যা এক অক্ষ বরাবর গতি লম্ব অক্ষের দিকে প্রেরণ করছে।

ইস্যু 2) ড্রাইভিং পিস্টন এবং মিরর প্ল্যাটফর্মের মধ্যে সংযোগে স্ল্যাকের কারণে, এটি আয়নাকে ঝাঁকুনি দেয় এবং X এবং Y অক্ষের মধ্যে স্থানান্তর এড়িয়ে যায়। এই আকস্মিক নড়াচড়া একটি অন্ধকারাচ্ছন্ন X আকৃতির ফাঁকে নিয়ে যায় যেখানে লেজার বিন্দু একটি দ্রুত অনিয়ন্ত্রিত পদক্ষেপ নিচ্ছে।

সমস্যা 3) ঘটে কারণ ডিফল্ট Arduino PWM- এর মাত্র 255 মাত্রা রয়েছে এবং ভোল্টেজ কার্ভের আকৃতির কারণে তাদের মধ্যে বেশ কয়েকটি নষ্ট হয়ে যায়। টাইমার 1 ব্যবহার করে এটি উল্লেখযোগ্যভাবে উন্নত করা যেতে পারে, যা 16-বিট এবং 65536 অনন্য মানগুলিতে সক্ষম হবে।

সমস্যা 4) ঘটে কারণ আয়না এবং সোলেনয়েডের স্লাইডিং আর্মচার (পিস্টন) একটি উল্লেখযোগ্য পরিমাণে চলমান ভর গঠন করে।

যেহেতু সমস্যা 1) এবং 2) যান্ত্রিক নকশা সম্পর্কিত, একটি সম্ভাবনা ধাতব পিস্টনগুলি সরানো এবং সেগুলি ছোট বিরল-পৃথিবীর চুম্বক দিয়ে প্রতিস্থাপিত করা যেতে পারে যা সরাসরি কাত প্লেটে লেগে থাকে। সোলেনয়েডগুলি একটি খোলা কুণ্ডলী হবে যা শারীরিক যোগাযোগ না করেই চুম্বককে আকৃষ্ট করবে বা তাড়িয়ে দেবে। এটি মসৃণ গতিতে নেতৃত্ব দেবে এবং ঝাঁকুনির সম্ভাবনা দূর করবে, যখন মোট ভর হ্রাস পাবে।

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

  • "মোশন কন্ট্রোল প্রোফাইলের গণিত", চাক লেউইন (লিঙ্ক)
  • "জার্ক নিয়ন্ত্রিত গতি ব্যাখ্যা করা হয়েছে", (লিঙ্ক)

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

ধাপ 14: ভবিষ্যতের কাজ এবং সম্ভাব্য অ্যাপ্লিকেশন

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

  • ডিজে এবং ভিজে -র জন্য একটি সস্তা লেজার শো।
  • Vectrex এর মতো একটি মদ্যপ আর্কেড গেমের জন্য একটি ইলেক্ট্রো-মেকানিক্যাল ভেক্টর ডিসপ্লে।
  • একটি DIY রজন-টাইপ SLA 3D প্রিন্টার যা RepRap আন্দোলনের চেতনায়, তার নিজস্ব লেজার স্টিয়ারিং মডিউল প্রিন্ট করতে পারে।
  • ক্যামেরার জন্য ডিজিটাল প্যানিং বা অপটিক্যাল ইমেজ স্টেবিলাইজেশন।
Arduino প্রতিযোগিতা 2017
Arduino প্রতিযোগিতা 2017
Arduino প্রতিযোগিতা 2017
Arduino প্রতিযোগিতা 2017

Arduino প্রতিযোগিতা 2017 সালে দ্বিতীয় পুরস্কার

প্রস্তাবিত: