সুচিপত্র:
- ধাপ 1: সরঞ্জাম এবং যন্ত্রাংশ
- ধাপ 2: ব্রেডআউট বোর্ড হ্যাকিং
- ধাপ 3: 0805 LED সোল্ডারিং
- ধাপ 4: এন-চ্যানেল MOSFET সোল্ডারিং
- ধাপ 5: সেন্সর অ্যারে তারের
- ধাপ 6: সেন্সর অ্যারে সম্পন্ন করা
- ধাপ 7: ডেটা পাওয়া
- ধাপ 8: লেজার ট্রেসার (বিক্ষোভ)
- ধাপ 9: Poopeyes স্টারিং (বিক্ষোভ)
ভিডিও: আরডুইনো সহ স্টেশনারি রাডার (LIDAR) অ্যারে: 10 টি ধাপ (ছবি সহ)
2024 লেখক: John Day | [email protected]. সর্বশেষ পরিবর্তিত: 2024-01-30 08:00
যখন আমি একটি বাইপড রোবট তৈরি করছি, তখন আমি সবসময় চিন্তা করছিলাম যে এমন কিছু শীতল গ্যাজেট আছে যা আমার প্রতিপক্ষকে ট্রেস করতে পারে এবং এর সাথে আক্রমণ চালাতে পারে। রাডার/লিডার প্রকল্পের গুচ্ছগুলি ইতিমধ্যে এখানে বিদ্যমান। যাইহোক, আমার উদ্দেশ্য জন্য কিছু সীমাবদ্ধতা আছে:
- অতিস্বনক তরঙ্গ সেন্সর মডিউলগুলি বেশ বড়। প্রতিটি রোবট দেখতে হবে ওয়াল-ই।
- বর্তমান রাডার প্রকল্পগুলির মধ্যে রয়েছে একটি সেন্সর (হয় অতিস্বনক তরঙ্গ, IR, লেজার,…), এবং মাঝখানে একটি সার্ভো মোটর। পরিবেশ স্ক্যান করার জন্য সার্ভোকে একপাশে সরানোর প্রয়োজন হয়। জিনিসগুলিকে পিছনে সরানো গতিবেগ পরিবর্তন করে, যা দ্বিপদ ভারসাম্য এবং হাঁটার জন্য খারাপ।
- সার্ভার গতি দ্বারা স্ক্যানিং ফ্রিকোয়েন্সি সীমাবদ্ধ। শুধুমাত্র বেশ কয়েকটি হার্টজ অর্জন করতে পারে, সম্ভবত। এমনকি যদি কিছু সুপার-সার্ভো দ্বারা স্ক্যানিং ফ্রিকোয়েন্সি বাড়ানো যায়, তবে এর ফলে ভারী কম্পন হবে।
- [সেন্ট্রাল সার্ভো মোটর - সেন্সর] ব্যবস্থা এছাড়াও মাউন্ট এবং নকশা জন্য অবস্থান সীমিত। মাথা ব্যতীত অন্য জিনিসটি মাউন্ট করা কঠিন। যা আমার বাইপডকে প্রতিবার ঝাঁকুনি-মাথা ওয়াল-ই এর মতো করে তোলে। ভালো না!
- [সার্ভো-সেন্সর] ব্যবস্থাটিও [মোটর-সেন্সর] শৈলী হিসাবে তৈরি করা যেতে পারে। সেন্সর (বা সেন্সর) ক্রমাগত একটি মোটর অক্ষ বরাবর ঘুরছে। এটি গতি ঝাঁকুনি এবং কম স্ক্যানিং ফ্রিকোয়েন্সি সমস্যা দূর করতে পারে, কিন্তু ধড় নকশা সীমাবদ্ধতা নয়। তারের অসুবিধাও যথেষ্ট বৃদ্ধি পাবে।
অনুসন্ধান করার পর, ST থেকে এই ক্ষুদ্র সেন্সর VL53L0X আমার চোখে ছিটকে পড়ে। "ওয়ার্ল্ড স্মলেস্ট" টাইম-অফ-ফ্লাইট রেঞ্জার সেন্সর দাবি করে মাত্রা মাত্র 4.4 x 2.4 x 1.0 মিমি। ফিচারিং
- চিপ আইআর লেজার এমিটার এবং ডিটেক্টরে
- 2 মিটার পরিসীমা (দ্রুত মোডে 1.2 মিটার)
- প্রোগ্রামযোগ্য I2C ঠিকানা
- একটি GPIO বাধা আউটপুট পিন
- চোখ নিরাপদ
VL53L0X সেন্সরগুলির একটি অ্যারে কাজ করতে পারলে এই সমস্ত বিশেষ বৈশিষ্ট্যগুলি সম্মিলিতভাবে আমাকে উপরের সমস্যাগুলি কাটিয়ে উঠতে সক্ষম করে। মূলত, আমি ভেবেছিলাম এই রাডারটিকে সলিড স্টেট রাডার বলা হবে, কিন্তু জানতে পারলাম যে এই শব্দটি অন্য কিছুর জন্য ব্যবহার করা হয়েছে। অতএব শিরোনামে "স্টেশনারি" শব্দের অর্থ এই রাডার গ্যাজেটে কোন চলন্ত অংশ নেই। এছাড়াও, যখন LIDAR (হালকা সনাক্তকরণ এবং পরিসীমা) এই চিপের জন্য টেকনিক্যালি সঠিক শব্দ, RADAR এখানে আরো সাধারণ শব্দ হিসাবে উল্লেখ করা হয়েছে।
প্রোগ্রামযোগ্য I2C ঠিকানা এবং GPIO আউটপুট পিন কেন এই প্রকল্পের জন্য গুরুত্বপূর্ণ তা পরে ব্যাখ্যা করা হয়েছে।
ধাপ 1: সরঞ্জাম এবং যন্ত্রাংশ
সরঞ্জাম
এই প্রকল্পে নিম্নলিখিত সরঞ্জামগুলির প্রয়োজন:
- তাতাল
- সোল্ডারিং সাহায্যের হাত
- ডুপন্ট ক্রাইম টুল
- 1.5 মিমি হেক্স ড্রাইভার
- তারের আবরণ অপসারণ সরঞ্জাম
- তার কর্তনকারী
- গরম আঠা বন্দুক
- টুইজার
- ম্যাগনিফায়ার (আপনার ফোনে ফিজিক্যাল বা অ্যাপস)
- সমতল নাকের প্লায়ার
যন্ত্রাংশ
এই প্রকল্পে নিম্নলিখিত অংশগুলি ব্যবহার করা হয়:
- 10x VL53L0X GY-530 ব্রেকআউট বোর্ড
- একটি Arduino (Uno, Nano, Mega, Zero, Mini, … etc)
- একটি রুটিবোর্ড এবং কিছু রুটিবোর্ডের তার
- AWG #26 বিভিন্ন রঙের তার
- AWG #30 একক কোর তার
- 5x Dupont পুরুষ সংযোগকারী
- 5x একক পিন Dupont housings
- 10x 3D মুদ্রিত ব্রেকআউট বোর্ড হোল্ডার
- 1x 3D মুদ্রিত বৃত্তাকার ফ্রেম
- 10x M2x10 ফ্ল্যাট হেড স্ক্রু
- 10x 0804 LED (নীল পুনরায় প্রস্তাবিত)
- 10x SOT-23 AO3400 N-Channel MOSFET
- একটি ছোট ক্যাপাসিটর (10 ~ 100uF)
ব্রেকআউট বোর্ড
আমার ব্যবহৃত VL53L0X ব্রেকআউট বোর্ড হল GY-530। এছাড়াও Adafruit সংস্করণ এবং Pololu সংস্করণ পাওয়া যায়। যদি সম্ভব হয়, আমি অ্যাডাফ্রুট বা পোলোলুর পণ্য ব্যবহার করার সুপারিশ করি কারণ তারা দুর্দান্ত পণ্য, দুর্দান্ত টিউটোরিয়াল এবং দুর্দান্ত সফ্টওয়্যার লাইব্রেরি তৈরি করে। আমি Adafruit এর VL53L0X লাইব্রেরিতে পরীক্ষা করেছি এবং Pololu এর VL53L0X লাইব্রেরির একটি পরিবর্তিত সংস্করণ ব্যবহার করেছি।
ডুপন্ট সংযোগকারী
ডুপন্ট সংযোগকারীগুলি রুটিবোর্ডের জন্য ব্যবহৃত হয়। আপনার হাতে থাকা অন্য কোন ধরনের সংযোগ ব্যবহার করতে পারেন।
স্ক্রু এবং 3D মুদ্রিত অংশ
M2 স্ক্রু, হোল্ডার এবং বৃত্তাকার ফ্রেম একটি বৃত্তাকার বিন্যাসে সেন্সর স্থাপন করতে ব্যবহৃত হয়। আপনি অন্য কোন পদ্ধতি ব্যবহার করতে পারেন, যেমন কার্ড বোর্ড, মডেল উডস, কাদামাটি, অথবা ক্যানের উপর গরম আঠা।
ধাপ 2: ব্রেডআউট বোর্ড হ্যাকিং
সনাক্তকরণের শঙ্কু
সনাক্তকরণের শঙ্কু আঁকতে আমি একটি একক মডিউল ব্যবহার করেছি। বেশিরভাগ 3D মুদ্রিত রোবটকে টার্গেট হিসাবে ব্যবহার করা। দূরত্ব LED ডিসপ্লেতে দেখানো হয়, এবং মোটামুটি পরিমাপ করা হয়। পরিমাপকৃত তথ্য একটি মাইক্রোসফট এক্সেল ফাইলে রেকর্ড করা হয় এবং কার্ভ ফিটিং ফাংশন ব্যবহার করা হয়। সেরা ফিট হল একটি প্রাকৃতিক লগারিদম বক্ররেখা, যার কার্যকরী দূরত্ব 3 সেমি থেকে আনুমানিক 100 সেমি।
60 সেন্টিমিটারে, একক সেন্সরের সনাক্তকরণ বক্ররেখা প্রায় 22 সেমি। 20 সেন্টিমিটার প্রশস্ত টার্গেটের সাথে, রাডার অ্যারের জন্য 10 ~ 15 ডিগ্রির একটি বৃত্তাকার বিভাজন একটি গ্রহণযোগ্য স্ক্যানিং রেজোলিউশন প্রদান করবে।
I2C ঠিকানা
যদিও VL53L0X I2C ডিভাইসের ঠিকানা প্রোগ্রামযোগ্য, মাইক্রো-কন্ট্রোলার দ্বারা XSHUT পিনের সম্পূর্ণ নিয়ন্ত্রণ প্রয়োজন। এটি করার ক্রম হল:
- AVDD তে পাওয়ার প্রয়োগ করা হয়।
- সমস্ত VL53L0X চিপগুলি তাদের সমস্ত XSHUT পিন কমিয়ে HW স্ট্যান্ডবাই (রিসেট) অবস্থায় আনা হয়।
- প্রতিটি চিপ একবারে রিসেট অবস্থা থেকে বের করা হয়। বুট করার পরে ডিফল্ট I2C ঠিকানা হল 0x52।
- I2C কমান্ডের মাধ্যমে চিপ ঠিকানাটি নতুন ঠিকানায় পরিবর্তন করা হয়। উদাহরণস্বরূপ, 0x52 0x53 তে পরিবর্তিত হয়েছে।
- সমস্ত চিপের জন্য ধাপ 3 এবং 4 পুনরাবৃত্তি করুন।
তাত্ত্বিকভাবে, 7-বিট ঠিকানা পরিসরের জন্য একই বাসে সর্বাধিক 126 ইউনিট চালানো যেতে পারে। যাইহোক, ব্যবহারিক ক্ষেত্রে, মাইক্রো-কন্ট্রোলারের বাস ক্যাপাসিট্যান্স এবং ডুবে যাওয়া বর্তমান সীমাবদ্ধতা সর্বোচ্চ ডিভাইস সংখ্যা সীমাবদ্ধ করতে পারে/উচিত।
নতুন I2C ঠিকানা VL53L0X চিপে পাওয়ার ডাউন বা রিসেটের বিরুদ্ধে সংরক্ষিত নেই। এইভাবে এই প্রক্রিয়াটি প্রতিটি পাওয়ার আপের উপর একবার করতে হবে। এর অর্থ রাডার অ্যারের প্রতিটি ইউনিটের জন্য একটি মূল্যবান পিন প্রয়োজন। 10+ বা 20+ ইউনিট সহ রাডার বেল্টের জন্য এটি ওয়্যারিং এবং পিন-ব্যবহারের জন্য খুব বন্ধুত্বপূর্ণ।
STEP1 এ উল্লেখ করা হয়েছে, এটা ভাগ্যবান যে VL53L0X চিপে একটি GPIO1 পিন আছে, যা মূলত বাধা দেওয়ার জন্য ব্যবহৃত হয়, কাজটি করতে পারে।
GPIO-XSHUTN ডেইজি চেইন
জিপিআইও আউটপুট বুট করার সময় উচ্চ প্রতিবন্ধক অবস্থায় থাকে এবং সক্রিয় অবস্থায় কম ড্রেন খোলা থাকে। GPYO এবং XSHUT পিনগুলি GY-530 ব্রেকআউট বোর্ডে AVDD তে উঁচু করে টেনে আনা হয়, যেমন ডেটশীটে সুপারিশ করা হয়েছে। সমস্ত VL53L0X চিপকে Hw স্ট্যান্ডবাই স্টেটে (XSHUT কম চালানো) নির্ভরযোগ্যভাবে রাখার জন্য, আমাদের প্রতিটি XSHUT পিনের জন্য একটি লজিক নট গেট (ইনভার্টার) দরকার। তারপর আমরা একটি চিপের জিপিআইও আউটপুট (Nth চিপ), XSHUTN (XSHUT-NOT) ডাউনস্ট্রিম চিপ (N+1 চিপ) এর সাথে সংযুক্ত করি।
পাওয়ার চালু হলে, সমস্ত জিপিআইও পিন (নিষ্ক্রিয়) টেনে তোলা হয়, পরবর্তী সমস্ত XSHUT পিনগুলি নট গেট দ্বারা কম চালিত হয় (খুব মুষ্টি চিপ ছাড়া যেখানে এর XSHUTN পিন মাইক্রো-কন্ট্রোলারের সাথে সংযুক্ত থাকে)। I2C ঠিকানা পরিবর্তন এবং ডাউনস্ট্রিম চিপের XSHUT রিলিজ সফটওয়্যারে করা হয়, একে একে।
আপনি যদি বিভিন্ন ব্রেকআউট বোর্ড ব্যবহার করেন, তাহলে আপনাকে নিশ্চিত করতে হবে যে পুল-আপ প্রতিরোধকগুলি জায়গায় আছে কি না, এবং উপযুক্ত সমন্বয় করুন।
একটি LED যোগ করা হচ্ছে
পরবর্তী ধাপে, একটি ছোট 0805 SMD LED ব্রেকআউট বোর্ডে যুক্ত করা হবে, যা XSHUT প্যাড থেকে সংলগ্ন ক্যাপাসিটরের GND টার্মিনালে সংযুক্ত হবে। যদিও LED নিজেই মডিউলের ক্রিয়াকলাপকে প্রভাবিত করে না, এটি আমাদের XSHUT লজিক স্তরে একটি ভাল চাক্ষুষ ইঙ্গিত দেয়।
XSHUT পিনে পুল-আপ প্রতিরোধক (আমার ক্ষেত্রে 10k) সহ সিরিজের LED হুকিং একটি ভোল্টেজ ড্রপ চালু করবে। 3.3v উচ্চ যুক্তি স্তরের পরিবর্তে, একটি লাল 0805 LED এর জন্য ফরোয়ার্ড ভোল্টেজ ড্রপ 1.6v পরিমাপ করা হয়। যদিও এই ভোল্টেজটি ডেটশীটে উচ্চ লজিক লেভেল (1.12v) এর চেয়ে বেশি, এই হ্যাকের জন্য নীল LED ভাল। নীল LED এর জন্য ফরোয়ার্ড ভোল্টেজ ড্রপ প্রায় 2.4v পরিমাপ করা হয়, যা চিপের লজিক লেভেলের উপরে নিরাপদে থাকে।
N-MOS বৈদ্যুতিন সংকেতের মেরু বদল যোগ করা (যুক্তি নয় গেট)
একটি ছোট SOT-23 N- চ্যানেল MOSFET আমাদের যোগ করা LED তে স্ট্যাক করা আছে। দুটি টার্মিনাল (ডি, এস) ব্রেকআউট বোর্ডে সোল্ডার করা প্রয়োজন, এবং অবশিষ্ট টার্মিনাল (জি) #26 ওয়্যার ব্যবহার করে আপস্ট্রিম বোর্ড জিপিআইও পিনের সাথে সংযুক্ত।
SMD কম্পোনেন্ট যুক্ত করার নোট
একটি ব্রেকআউট বোর্ডে এসএমডি উপাদানগুলি সোল্ডারিং করা সহজ কাজ নয়। আপনি যদি 0805, SMD, SOT-23 এর কথা না শুনে থাকেন, তাহলে সম্ভাবনা আছে যে আপনি আগে সেই ছোট ছোট উপাদানগুলো বিক্রি করেননি। হাত দিয়ে এই ছোট উপাদানগুলি পরিচালনা করার সময়, এটি খুব সাধারণ যে:
- ছোট জিনিসটি সবেমাত্র পড়ে গেছে এবং অদৃশ্য হয়ে গেছে, চিরতরে,
- ছোট জিনিসের উপর ছোট ছোট প্যাডগুলি খালি হয়ে গেছে।
- ছোট্ট জিনিসের ছোট্ট পা শুধু ভেঙে গেছে।
- সোল্ডারিং টিনটি কেবল একটি ব্লোবে জড়ো হয়েছিল এবং আলাদা করা যায়নি।
- এবং আরো…
আপনি যদি এখনও এই রাডারটি তৈরি করতে চান তবে আপনি করতে পারেন:
- উপাদানগুলিকে বড় প্যাকেজে পরিবর্তন করুন, যেমন ডিআইপি স্টাইল।
- অনুশীলন এবং ব্যবহারের জন্য ন্যূনতম প্রয়োজনের চেয়ে বেশি উপাদান পান।
ধাপ 3: 0805 LED সোল্ডারিং
Soldering 0805 SMD LED
এসএমডির জন্য ডিজাইন করা হয়নি এমন একটি ব্রেকআউট বোর্ডে হাত দিয়ে 0805 এলইডি বিক্রি করা মোটেও সহজ কাজ নয়। নিচের ধাপগুলো হল LED সোল্ডার করার জন্য আমার সুপারিশ।
- আপনার ব্রেকআউট বোর্ড ধরে রাখতে সহায়ক হাত ব্যবহার করুন।
- SMD ক্যাপাসিটরের প্রান্তে এবং "XSHUT" প্যাডের কিছু সোল্ডারিং পেস্ট রাখুন।
- ক্যাপাসিটরের প্রান্তে কিছু অতিরিক্ত সোল্ডার লাগানোর জন্য সোল্ডারিং লোহা ব্যবহার করুন।
- 0805 LED এর উভয় প্রান্তে কিছু সোল্ডারিং পেস্ট রাখুন।
- 0805 LED এর উভয় প্রান্তে কিছু টিন লাগানোর জন্য সোল্ডারিং লোহা ব্যবহার করুন।
- ফটোতে দেখানো হিসাবে LED স্থাপন করতে টুইজার ব্যবহার করুন ক্যাথোডের শেষে সাধারণত একটি চিহ্নিত লাইন থাকে। আমার উদাহরণে, ক্যাথোড প্রান্তে একটি সবুজ রেখা আছে। ক্যাপাসিটরের শেষের দিকে ক্যাথোড প্রান্ত রাখুন।
- ক্যাপাসিটরের দিকে এলইডির উপর হালকা চাপ যোগ করতে এবং একই সময়ে ক্যাপাসিটরের প্রান্তে তাপ যোগ করে এলইডি কে ক্যাপাসিটরের শেষের দিকে সোল্ডার করতে টুইজার ব্যবহার করুন। LED তে শক্ত করে চাপবেন না। তাপ এবং অতিরিক্ত চাপে এর আবরণ ভেঙ্গে যেতে পারে। সোল্ডারিংয়ের পরে, LED সাইডওয়ার্ডে মৃদু চাপ যোগ করুন, এলইডি জায়গায় সোল্ডার আছে কিনা তা পরীক্ষা করার জন্য।
- এখন XSHUT ডিপ প্যাডে LED সোল্ডার করুন। এই পদক্ষেপটি সহজ হওয়া উচিত।
দ্রষ্টব্য: ছবিতে দেখানো ক্যাপাসিটরের শেষটি এই ব্রেকআউট বোর্ডের গ্রাউন্ড টার্মিনাল। এবং ডিপ প্যাড XSHUT একটি প্রতিরোধক দ্বারা টানা হয়।
LED পরীক্ষা করা হচ্ছে
যখন আপনি ব্রেকআউট বোর্ডে পাওয়ার (e.x. 5V) এবং গ্রাউন্ড লাগাবেন তখন LED জ্বলবে।
ধাপ 4: এন-চ্যানেল MOSFET সোল্ডারিং
AO3400 N-Channel MOSFET সোল্ডারিং
এই MOSFET SOT-23 প্যাকেজে রয়েছে। আমাদের এটিকে LED তে "স্ট্যাক" করতে হবে এবং পাশাপাশি একটি তার যুক্ত করতে হবে:
- কিছু সোল্ডারিং পেস্ট এবং তিনটি তিনটি টার্মিনাল টিন রাখুন।
- 0805 LED এর উপরে MOSFET রাখার জন্য টুইজার ব্যবহার করুন। এস টার্মিনালটি ক্যাপাসিটরের শীর্ষে স্পর্শ করা উচিত
- ক্যাপাসিটরের শেষের সাথে এস টার্মিনালটি সোল্ডার করুন, যেমন ছবিতে দেখানো হয়েছে।
- একটি ছোট অংশ AWG #30 একক কোর তার কেটে দিন এবং প্রায় 1 সেমি লেপটি সরান।
- নিচের থেকে XSHUT গর্তে সোল্ডার গলানোর জন্য সোল্ডারিং লোহা ব্যবহার করুন, এবং ছবিতে দেখানো হিসাবে, উপরে থেকে #30 তারটি োকান।
- MOSFET D টার্মিনালে তারের উপরের প্রান্তে সোল্ডারিং।
- অতিরিক্ত তার কেটে দিন।
দ্রষ্টব্য: ছবিতে দেখানো মোসফেট এস টার্মিনালটি ক্যাপাসিটরের শেষের সাথে সংযুক্ত। এই প্রান্তটি গ্রাউন্ড টার্মিনাল। MOSFET D টার্মিনালটি মূল XSHUT পিনের সাথে সংযুক্ত।
টার্মিনাল জি এই মুহূর্তে সংযুক্ত নয়। এর অবস্থান কিছু পুল-আপ প্রতিরোধকের ঠিক উপরে। নিশ্চিত করুন যে তাদের মধ্যে একটি ফাঁক আছে (এন-এমওএস এবং প্রতিরোধক) এবং একে অপরের সাথে যোগাযোগ করে না।
ধাপ 5: সেন্সর অ্যারে তারের
সাধারণ বাস ওয়্যারিং
সাধারণ বাসের মধ্যে রয়েছে:
- Vcc শক্তি। ছবিতে লাল। আমি 5v যুক্তি দিয়ে arduino ন্যানো ব্যবহার করছি। ব্রেকআউট বোর্ডে এলডিও এবং লেভেল-শিফটার রয়েছে। তাই ভিন হিসাবে 5v ব্যবহার করা নিরাপদ।
- গ্রাউন্ড। ছবিতে কালো।
- এসডিএ। ছবিতে সবুজ।
- এসসিএল। ছবিতে হলুদ।
এই চার লাইন সাধারণ লাইন। তারের যথাযথ দৈর্ঘ্য কাটুন এবং সমান্তরালভাবে সোল্ডার করুন, সমস্ত সেন্সর মডিউলে। আমি arduino থেকে প্রথম সেন্সর পর্যন্ত 20 সেমি এবং তারপরে 5 সেমি ব্যবহার করেছি।
XSHUTN এবং GPIO ওয়্যারিং
আরডুইনো কন্ট্রোল পিন থেকে প্রথম সেন্সরের XSHUTN পিন পর্যন্ত 20 সেমি সাদা তার। এটি প্রথম VL53L0X চিপ রিসেট থেকে বের করে আনার জন্য এবং I2C ঠিকানা পরিবর্তন করার জন্য প্রয়োজনীয় নিয়ন্ত্রণ লাইন।
প্রতিটি মডিউলের মধ্যে 5 সেমি সাদা তারের ডেইজি চেইন কন্ট্রোল লাইন। আপস্ট্রিম চিপ (উদাহরণস্বরূপ, চিপ #3) GPIO প্যাড, ডাউনস্ট্রীমের সাথে সংযুক্ত (উদাহরণস্বরূপ, চিপ #4) XSHUTN লেগ (N-Channel MOSFET G টার্মিনাল)।
সতর্কতা অবলম্বন করুন নিচের প্রতিরোধকের সাথে জি টার্মিনাল যোগাযোগ যেন না হয়। আপনি ফাঁক একটি অন্তরণ টেপ যোগ করতে পারেন। সাধারণত VL53L0X চিপ দিয়ে সরবরাহ করা সুরক্ষা লাইনার এখানে ব্যবহার করা যেতে পারে।
কন্ট্রোল তারে আটকে তাপ বন্দুক ব্যবহার করুন।
গরম আঠা
আপনি ফটোতে দেখতে পাচ্ছেন, এন-এমওএস জি টার্মিনালের কাছে সাদা কন্ট্রোল তারের উপর গরম আঠালো একটি ব্লব রয়েছে। এই পদক্ষেপটি খুবই গুরুত্বপূর্ণ এবং একেবারে প্রয়োজনীয়। SMD কম্পোনেন্টের পায়ে সরাসরি ভাসমান সোল্ডারিং খুবই দুর্বল। এমনকি তারের উপর একটি ছোট চাপ পা ভেঙ্গে যেতে পারে। এই পদক্ষেপটি আলতো করে করুন।
LED পরীক্ষা করা হচ্ছে
যখন আপনি সেন্সর অ্যারেতে পাওয়ার (প্রাক্তন 3.3v-5v) এবং গ্রাউন্ড প্রয়োগ করেন, তখন প্রথম মডিউলের LED XSHUTN ওয়্যার লজিক লেভেলের সাথে সাড়া দেবে। যদি আপনি XSHUTN কে যুক্তি উচ্চ (যেমন 3.3v-5v) এর সাথে সংযুক্ত করেন, LED বন্ধ হওয়া উচিত। যদি আপনি XSHUTN তারের কম (স্থল) সংযোগ করেন, প্রথম মডিউল LED চালু করা উচিত।
পরবর্তী সমস্ত মডিউলের জন্য, LED বন্ধ হওয়া উচিত।
Arduino এর সাথে সংযোগ করার আগে এই পরীক্ষাটি করা হয়।
ধাপ 6: সেন্সর অ্যারে সম্পন্ন করা
ডেইজি চেইন টেস্টিং
এখন আমরা পরীক্ষা করতে চাই যদি I2C ঠিকানা পরিবর্তন অ্যারের সমস্ত সেন্সরের জন্য কাজ করে। উল্লিখিত হিসাবে, প্রথম চিপটি আরডুইনো দ্বারা নিয়ন্ত্রিত হয়। দ্বিতীয় চিপ প্রথম চিপ দ্বারা নিয়ন্ত্রিত হয়, এবং তাই।
- রুটি বোর্ড সেটআপ করুন। 5V এবং গ্রাউন্ড রেল অ্যাড্রিয়ানো 5V এবং স্থল থেকে সরাসরি সংযুক্ত। প্রতিটি সেন্সরের বর্তমান খরচ ডেটশীটে 19ma রেট করা হয়েছে।
- ভিনকে স্থিতিশীল করতে সহায়তা করার জন্য পাওয়ার রেলের উপর একটি ক্যাপাসিটর যুক্ত করুন।
- সেন্সর অ্যারে থেকে পাওয়ার রেল পর্যন্ত ভিন এবং গ্রাউন্ড সংযোগ করুন।
- SDA কে arduino Nano pin A4 (অন্যান্য মাইক্রো-কন্ট্রোলারের জন্য ভিন্ন হতে পারে) এর সাথে সংযুক্ত করুন।
- এসসিএলকে আরডুইনো ন্যানো পিন A5 এর সাথে সংযুক্ত করুন (অন্যান্য মাইক্রো-কন্ট্রোলারের জন্য ভিন্ন হতে পারে)।
- আরডুইনো ন্যানো পিন D2 এর সাথে XSHUTN তারের সংযোগ করুন। (এটি স্কেচে পরিবর্তন করা যেতে পারে)।
- Github https://github.com/FuzzyNoodle/Fuzzy-Radar এ যান এবং লাইব্রেরি ডাউনলোড করুন।
- "Daisy_Chain_Testing" উদাহরণটি খুলুন এবং স্কেচ আপলোড করুন।
যদি সবকিছু কাজ করে, তাহলে আপনাকে দেখতে হবে স্ট্যাটাস এলইডি একের পর এক আলোকিত হচ্ছে, উপরের ভিডিও ক্লিপের মতো।
আপনি সিরিয়াল উইন্ডোও খুলতে পারেন, এবং প্রারম্ভিক অগ্রগতি দেখতে পারেন। আউটপুট এই মত প্রদর্শিত হবে:
পোর্ট ওপেন স্টার্টিং স্কেচ। রিসেট মোডে চিপ 0 সেট করুন। সমস্ত স্থিতি LEDs বন্ধ করা উচিত। এখন সেন্সর কনফিগার করুন। LED একে একে জ্বলতে হবে। চিপ 0 কনফিগার করা - I2C ঠিকানা 83 তে রিসেট করুন - সেন্সরটি চালু করুন। চিপ 1 কনফিগার করা - I2C ঠিকানা 84 তে রিসেট করুন - সেন্সরটি চালু করুন। চিপ 2 কনফিগার করা - I2C ঠিকানা 85 তে রিসেট করুন - সেন্সর শুরু করুন। রাডার অ্যারে কনফিগারেশন সম্পন্ন হয়েছে।
হোল্ডার এবং ফ্রেম একত্রিত করুন
- প্রতিটি GY-530 মডিউল সাবধানে M2x10 স্ক্রু সহ ধারকের উপর রাখুন। MOSFET চাপবেন না বা XSHUTN তারগুলি টানবেন না।
- প্রতিটি ধারককে বৃত্তাকার ফ্রেমে রাখুন। অংশগুলি বন্ধ করতে কিছু গরম আঠালো ব্যবহার করুন।
আবার, M2 স্ক্রু, হোল্ডার এবং বৃত্তাকার ফ্রেম সেন্সরগুলিকে একটি বৃত্তাকার বিন্যাসে রাখার জন্য ব্যবহার করা হয়। আপনি অন্য কোন পদ্ধতি ব্যবহার করতে পারেন, যেমন কার্ড বোর্ড, মডেল উডস, কাদামাটি, অথবা ক্যানের উপর গরম আঠা।
আমার ব্যবহৃত 3D মুদ্রিত ফাইলগুলি নিচে দেওয়া হল। বৃত্তাকার ফ্রেমে 9 টি মডিউল রয়েছে এবং প্রতিটি 10 ডিগ্রি দ্বারা পৃথক করা হয়েছে। আপনার যদি তীক্ষ্ণ চোখ থাকে তবে আগের ফটোতে 10 টি মডিউল ছিল। কারন? নীচে ব্যাখ্যা করা হয়েছে…
প্রতিরক্ষামূলক লাইনার সরান
আপনি যদি শুরু থেকে ধাপগুলো অনুসরণ করেন, তাহলে VL53L0X চিপের প্রতিরক্ষামূলক লাইনার অপসারণ করার এখনই উপযুক্ত সময়। আমার আগের ফটোগুলিতে, সেগুলি ইতিমধ্যে সরানো হয়েছে কারণ আমাকে মডিউলগুলি পরীক্ষা করতে হবে এবং এই নির্দেশাবলী পোস্ট করার আগে ধারণাটি কাজ করে তা নিশ্চিত করতে হবে।
প্রতিরক্ষামূলক লাইনার সম্পর্কে, ডেটশীটে বলা হয়েছে: "কভার গ্লাস লাগানোর ঠিক আগে গ্রাহককে এটি সরিয়ে ফেলতে হবে"। VL53L0X চিপের দুটি ক্ষুদ্র ছিদ্র (এমিটার এবং রিসিভার) দূষণের ঝুঁকিপূর্ণ, যেমন ধুলো, গ্রীস, গরম আঠা ইত্যাদি …
একবার দূষিত হলে, পরিসীমা হ্রাস করা যেতে পারে, এবং রিডিংগুলি সুস্পষ্ট পরিমাণে বন্ধ হতে পারে। আমার পরীক্ষার একটি মডিউল দুর্ঘটনাক্রমে আঠালো কাদামাটি দ্বারা দূষিত হয়, পরিসীমা 40cm এ হ্রাস করা হয়, এবং দূরত্ব পড়ার ভুলভাবে 50%দ্বারা বৃদ্ধি করা হয়। তাই সতর্কতা অবলম্বন করা!
ধাপ 7: ডেটা পাওয়া
Raw_Data_Serial_Output উদাহরণ ব্যবহার করে
এখন আমরা সত্যিই আমাদের সেন্সর অ্যারে থেকে ডেটা দেখতে পছন্দ করি। GitHub এ arduino লাইব্রেরিতে:
https://github.com/FuzzyNoodle/Fuzzy-Radar
Raw_Data_Serial_Output নামে একটি উদাহরণ আছে। এই উদাহরণটি সেন্সর অ্যারে থেকে কাঁচা ডেটা আউটপুট প্রদর্শন করে। আউটপুট মান মিলিমিটারে হয়।
সেন্সরগুলি আরম্ভ করার পরে, যখন আপনি সেন্সরের মাধ্যমে আপনার হাত নাড়াবেন তখন সিরিয়াল উইন্ডোতে এরকম কিছু দেখতে হবে:
একটি লাইভ বিক্ষোভের জন্য ভিডিও ক্লিপ দেখুন।
Fuzzy_Radar_Serial_Output উদাহরণ ব্যবহার করে
পরবর্তী ধাপ হল এই দূরত্ব রিডিং থেকে দরকারী ডেটা বের করা। আমরা একটি রাডার থেকে যা চেয়েছিলাম তা হল লক্ষ্য বস্তুর দূরত্ব এবং কোণ।
- দূরত্ব মিলিমিটারে, সেন্সর পৃষ্ঠের সাথে সম্পর্কিত। 0 রিটার্ন করা মানে টার্গেট সীমার বাইরে।
- কোণটি ডিগ্রিতে, অনুভূমিক সমতলে। কোডটি বর্তমানে প্রত্যাশিত সেন্সরগুলি সমানভাবে দূরত্বে রয়েছে। 0 ডিগ্রী ফিরে আসার অর্থ লক্ষ্যটি অ্যারের কেন্দ্রস্থলে।
কিছু ফিল্টারিং অ্যালগরিদম লাইব্রেরিতে প্রয়োগ করা হয়:
-
শব্দদূষণ অপসারণ:
- সংক্ষিপ্ত (নমুনা গণনার পরিপ্রেক্ষিতে) রিডিংগুলি গোলমাল হিসাবে বিবেচিত হয় এবং সরানো হয়।
- গড় মূল্য থেকে অনেক দূরে থাকা রিডিংগুলি সরানো হয়।
-
ওজন কোণ গণনা (উপরের চিত্র দেখুন)
- লক্ষ্য বস্তু একটি সমতল পৃষ্ঠ বলে মনে করা হয়
- যদি একাধিক সেন্সর একই সময়ে বস্তুটি সনাক্ত করে, প্রতিটি সেন্সরের জন্য একটি ওজন গণনা করা হয়।
- প্রতিটি সেন্সরের ওজন তার দূরত্বের সাথে বিপরীতভাবে সম্পর্কিত।
- ফলাফল দেবদূত প্রতিটি সেন্সরের ওজনযুক্ত কোণ থেকে গণনা করা হয়।
-
প্রাথমিক লক্ষ্য নির্বাচন:
- যদি একাধিক রিডিং গ্রুপ থাকে, তবে সবচেয়ে বিস্তৃত (বেশি সেন্সর রিডিং কাউন্ট সহ) গ্রুপ থাকবে।
- উদাহরণস্বরূপ, যদি আপনি সেন্সর অ্যারের সামনে দুই হাত রাখেন, তবে আরো সেন্সর দ্বারা সনাক্ত করা হাতটি রয়ে যায়।
-
নিকটতম লক্ষ্য নির্বাচন:
- যদি একই প্রস্থের সাথে একাধিক সনাক্তকৃত গোষ্ঠী থাকে, তবে নিকটতম দূরত্বের গোষ্ঠীটি রয়ে যায়।
- উদাহরণস্বরূপ, যদি আপনি সেন্সর অ্যারের সামনে দুই হাত রাখেন এবং দুটি সনাক্ত করা গোষ্ঠীর একই সেন্সর গণনা থাকে, সেন্সরের কাছাকাছি থাকা গ্রুপটি রয়ে যায়।
আউটপুট দূরত্ব এবং কোণ কম পাস ফিল্টারের মাধ্যমে মসৃণ করা হয়।
Raw_Data_Serial_Output- এ, কাঁচা দূরত্বের রিডিংগুলি দূরত্ব এবং কোণ মানতে রূপান্তরিত হয়। একবার আপনি স্কেচ আপলোড করলে, আপনি এর অনুরূপ ফলাফল দেখতে সিরিয়াল উইন্ডো খুলতে পারেন:
কোন বস্তু সনাক্ত করা হয়নি কোন বস্তু সনাক্ত করা হয়নিকোন বস্তু সনাক্ত করা যায়নি। দূরত্ব = 0056 কোণ = 017 দূরত্ব = 0066 কোণ = 014 দূরত্ব = 0077 কোণ = 011 দূরত্ব = 0083 কোণ = 010 দূরত্ব = 0081 কোণ = 004 দূরত্ব = 0082 কোণ = 000 দূরত্ব = 0092 কোণ = 002 দূরত্ব = 0097 কোণ = 001 দূরত্ব = 0096 কোণ = 001 দূরত্ব = 0099 কোণ = 000 দূরত্ব = 0101 কোণ = -002 দূরত্ব = 0092 কোণ = -004 দূরত্ব = 0095 কোণ = -007 দূরত্ব = 0101 কোণ = -008 দূরত্ব = 0112 কোণ = -014 দূরত্ব = 0118 কোণ = -017 দূরত্ব = 0122 কোণ = -019 দূরত্ব = 0125 কোণ = -019 দূরত্ব = 0126 কোণ = -020 দূরত্ব = 0125 কোণ = -022 দূরত্ব = 0124 কোণ = -024 দূরত্ব = 0133 কোণ = -027 দূরত্ব = 0138 কোণ = - 031 দূরত্ব = 0140 কোণ = -033 দূরত্ব = 0136 কোণ = -033 দূরত্ব = 0125 কোণ = -037 দূরত্ব = 0120 কোণ = -038 দূরত্ব = 0141 কোণ = -039 কোন বস্তু সনাক্ত হয়নি। কোন বস্তু সনাক্ত করা যায়নি। কোন বস্তু সনাক্ত করা যায়নি।
তাই এখন, আপনার একটি রাডার (LIDAR) আছে:
- অতিস্বনক সেন্সর মডিউলের চেয়ে ছোট
- কোনো চলন্ত যন্ত্রাংশ নেই
- 40 Hz এ স্ক্যান।
- একটি বেল্টের মত আকৃতির, একটি বৃত্তাকার ফ্রেমে মাউন্ট করা যেতে পারে
- শুধুমাত্র তিনটি কন্ট্রোল তার, প্লাস পাওয়ার এবং গ্রাউন্ড ব্যবহার করুন।
- 30 মিলিমিটার থেকে 1000 মিলিমিটার পর্যন্ত পরিসীমা রয়েছে।
নিম্নলিখিত পদক্ষেপগুলিতে, আমরা আপনাকে কিছু দুর্দান্ত প্রদর্শন দেখাব!
ধাপ 8: লেজার ট্রেসার (বিক্ষোভ)
এটি পূর্ববর্তী ধাপ থেকে আমরা যে স্টেশনারি রাডার তৈরি করেছি তার একটি উদাহরণ। এই ধাপটি বিস্তারিতভাবে লেখা হয়নি, কারণ এটি রাডারের প্রদর্শক। সাধারণভাবে, এই বিক্ষোভ প্রকল্পটি তৈরি করতে আপনার এই অতিরিক্ত আইটেমগুলির প্রয়োজন:
- দুটি সার্ভো
- একটি লেজার কলম নির্গত মাথা
- লেজার হেড আউটপুট নিয়ন্ত্রণের জন্য একটি MOSFET বা NPN ট্রানজিস্টর
- Servos জন্য একটি শক্তি উৎস। এটি মাইক্রো-কন্ট্রোলার থেকে আলাদা করা উচিত।
কোডটি এখানে ডাউনলোড করা যাবে।
দয়া করে দেওয়া ভিডিওটি দেখুন।
ধাপ 9: Poopeyes স্টারিং (বিক্ষোভ)
বস্তুর অবস্থান এবং দূরত্ব ট্র্যাক করার জন্য রাডার দূরে ব্যবহার করার প্রদর্শন।
প্রস্তাবিত:
7 সেগমেন্ট ডিসপ্লে অ্যারে: 6 ধাপ (ছবি সহ)
7 সেগমেন্ট ডিসপ্লে অ্যারে: আমি একটি arduino ন্যানো দ্বারা নিয়ন্ত্রিত 144 7 সেগমেন্ট ডিসপ্লে থেকে তৈরি একটি LED ডিসপ্লে তৈরি করেছি। বিভাগগুলি 18 MAX7219 আইসি দ্বারা নিয়ন্ত্রিত হয় যা 64 টি পৃথক এলইডি বা 8 7 সেগমেন্ট ডিসপ্লে নিয়ন্ত্রণ করতে পারে। অ্যারেটিতে 144 টি ডিসপ্লে রয়েছে যা প্রত্যেকটি নিয়ে গঠিত
আরডুইনো ন্যানো এবং সিরিয়াল প্লটার ব্যবহার করে অতিস্বনক রাডার: 10 টি ধাপ
আরডুইনো ন্যানো এবং সিরিয়াল প্লটার ব্যবহার করে অতিস্বনক রাডার: এই নির্দেশে আমরা একটি সার্ভার লাইব্রেরির মূল বিষয়গুলি জানার পাশাপাশি অতিস্বনক সেন্সর স্থাপন করব এবং এটিকে রাডার হিসাবে ব্যবহার করব। এই প্রকল্পের আউটপুট সিরিয়াল প্লটার মনিটরে দৃশ্যমান হবে
আরডুইনো ব্যবহার করে আল্ট্রাসোনিক রাডার সিস্টেম: 3 টি ধাপ
আরডুইনো ব্যবহার করে আল্ট্রাসোনিক রাডার সিস্টেম: এখানে বর্ণিত সার্কিট একটি অতিস্বনক ভিত্তিক রাডার সিস্টেমের কাজ প্রদর্শন করে। এটি একটি বস্তু সনাক্ত করার জন্য অতিস্বনক সেন্সর ব্যবহার করে এবং তার দূরত্ব পরিমাপ করে এবং সার্ভো মোটর অনুযায়ী ঘোরায়।
বাচ্চাদের জন্য আলাদা কনটেইনার স্টেশনারি পাউচ: ১১ টি ধাপ
বাচ্চাদের জন্য আলাদা কনটেইনার স্টেশনারি পাউচ: হাই বন্ধুরা, এই নির্দেশাবলীতে আমি আপনার সাথে আমার তৈরি একটি দরকারী জিনিস শেয়ার করতে চাই, এবং আমি মনে করি এটি একটি সাধারণ জিনিস যা প্লাস্টিকের বোতল ব্যবহার করে তৈরি করা হয়েছে কিন্তু সামান্য পরিবর্তিত এবং সৃজনশীল
দেয়ালের মধ্য দিয়ে চলা: গুগল স্ট্রিট ভিউ স্টেশনারি বাইক ইন্টারফেস: ১২ টি ধাপ (ছবি সহ)
দেয়ালের মধ্য দিয়ে রাইডিং: গুগল স্ট্রিট ভিউ স্টেশনারি বাইক ইন্টারফেস: দ্য রাইডিং থ্রু ওয়ালস: গুগল স্ট্রিট ভিউ স্টেশনারি বাইক ইন্টারফেস আপনাকে আপনার বসার ঘরের আরাম থেকে গুগল স্ট্রিট ভিউ দিয়ে সাইকেল চালাতে দেয়। কিছু সাধারণ ইলেকট্রনিক্স ব্যবহার করে, একটি আরডুইনো, একটি স্থির সাইকেল, একটি কম্পিউটার এবং প্রজেক্টর বা টিভি