সুচিপত্র:

CircuitPython এবং TinyLiDAR: সহজ উদাহরণ: 3 টি ধাপ
CircuitPython এবং TinyLiDAR: সহজ উদাহরণ: 3 টি ধাপ

ভিডিও: CircuitPython এবং TinyLiDAR: সহজ উদাহরণ: 3 টি ধাপ

ভিডিও: CircuitPython এবং TinyLiDAR: সহজ উদাহরণ: 3 টি ধাপ
ভিডিও: মেকার পাই RP2040 ইনস্টলেশন ও বৈধকরণ 2024, নভেম্বর
Anonim
CircuitPython এবং TinyLiDAR: সহজ উদাহরণ
CircuitPython এবং TinyLiDAR: সহজ উদাহরণ

MicroElectronicDesign tinyLiDAR হল একটি ST VL53L0X ভিত্তিক টাইম-অফ-ফ্লাইট (ToF) রেঞ্জ মডিউল যার একটি i2c বাস সংযোগ রয়েছে। অ্যাডাফ্রুট মাইক্রোকন্ট্রোলার বোর্ডগুলি সহজেই এই সেন্সরের সাথে সংযুক্ত থাকে কারণ তারা তাদের ডেটা পিনের উপর i2c প্রোটোকল বলতে পারে।

M0/M4 সিরিজের অন্যান্য বোর্ডের উপর সুবিধা আছে কারণ তারা পাইথনের একটি উপসেট সমর্থন করে যা একটি Arduino এ C এর চেয়ে বৃহত্তর শ্রোতাদের জন্য প্রোগ্রামিংকে আরো সহজলভ্য করে তোলে। এটি একটি সহজ উদাহরণ একটি Gemma M0 বোর্ডে CircuitPython ব্যবহার করে একটি tinyLiDAR থেকে দূরত্বের মানগুলি পড়তে এবং অন-বোর্ড RGB LED এর উজ্জ্বলতা পরিবর্তনের মাধ্যমে দূরত্ব নির্দেশ করে। পাইথন সাপোর্টের জন্য বোর্ড অবশ্যই M0 সংস্করণ হতে হবে।

দ্রষ্টব্য: Adafruit এছাড়াও VL53L0X ভিত্তিক একটি সহ বিভিন্ন দূরত্ব সেন্সিং বোর্ড তৈরি করে।

ধাপ 1: সার্কিটপাইথন কোড

  1. Lib/adafruit_dotstar.mpy এবং lib/adafruit_bus_device/i2c_device.mpy ডাউনলোড করুন যদি আপনার কাছে ইতিমধ্যেই না থাকে। এগুলি alচ্ছিক লাইব্রেরি বান্ডেলের অংশ, এইগুলি কীভাবে ইনস্টল করবেন তার নোটগুলির জন্য সার্কিটপাইথন I2C এর প্রথম বিভাগটি দেখুন। এই ফাইলগুলি অবশ্যই Gemma M0 তে lib এবং lib/adafruit_bus_device ডিরেক্টরিতে যেতে হবে।
  2. Gemma-m0-tinylidar-simple.py ডাউনলোড করুন, main.py এ নাম পরিবর্তন করুন এবং Gemma M0 এর রুট ডিরেক্টরিতে অনুলিপি করুন।

প্রোগ্রামটি সিরিয়াল কনসোলে আউটপুট লেখার পাশাপাশি পড়া দূরত্বের অনুপাতে Gemma MO RGB LED এর উজ্জ্বলতার তারতম্য করে। Gemma M0 নেতৃত্বে বিকল্পগুলি পড়ার জন্য চালু এবং বন্ধের মধ্যে রয়েছে তাই প্রায় 5Hz এ ফ্ল্যাশ হবে এবং tinyLiDAR বোর্ডের ডিফল্ট আচরণ হল 10Hz এ তার কমান্ড প্রতি নীল নেতৃত্বে ফ্ল্যাশ করা।

বাস 100kHz এ চালিত হয় যা এই ক্ষেত্রে ভাল কাজ করে। যেকোনো বাসের মতো, যোগাযোগের গতি যোগাযোগের গতি সঞ্চালন লাইনের বৈশিষ্ট্য দ্বারা সীমাবদ্ধ তাই দৈর্ঘ্য, ক্যাপাসিট্যান্স এবং অন্যান্য বিষয়গুলিতে মনোযোগ দেওয়া উচিত।

ধাপ 2: TinyLiDAR কে একটি Gemma M0 এর সাথে সংযুক্ত করা

TinyLiDAR কে একটি Gemma M0 এর সাথে সংযুক্ত করা হচ্ছে
TinyLiDAR কে একটি Gemma M0 এর সাথে সংযুক্ত করা হচ্ছে

ছবিটি TinyLiDAR কে Gemma M0 বোর্ডের সাথে সংযুক্ত করার জন্য একটি কার্যকরী কিন্তু অকার্যকর অস্থায়ী সেটআপ দেখায়। TinyLiDAR এর "Grove" 4pin ইউনিভার্সাল কানেক্টরটি একটি Seeed Grove রূপান্তর তারের মাধ্যমে ব্যবহার করা হচ্ছে, একটি অতিরিক্ত হেডার এবং কুমিরের ক্লিপগুলি Gemma M0 এর সাথে সংযোগ স্থাপন করতে। হেডারের পিনের মধ্যে কিছু বিচ্ছেদ একটি অনিচ্ছাকৃত শর্টের ঝুঁকি দূর করে। সংযোগগুলি হল:

  • কালো: gnd থেকে gnd
  • লাল: +V থেকে 3Vo
  • সাদা: SDA থেকে D0 (তথ্য)
  • হলুদ: এসসিএল থেকে ডি 2 (ঘড়ি)

অ্যাডাফ্রুট বোর্ডগুলির কিছু পিন রয়েছে যা হার্ডওয়্যারে দক্ষতার সাথে i2c প্রোটোকল সমর্থন করে। Gemma M0 এর ক্ষেত্রে, এগুলি অবশ্যই ব্যবহার করতে হবে, D0 ডেটার জন্য এবং D2 ঘড়ির জন্য।

একটি i2c বাসের ডেটা এবং ক্লক লাইনে একটি পুল-আপ রোধের প্রয়োজন। এই ক্ষেত্রে, tinyLiDAR কিছু 4.7K অন-বোর্ড প্রতিরোধক সরবরাহ করে। যদি লাইনগুলি কেটে সার্কিট থেকে এগুলি সরানো হয় তবে সার্কিটে সমতুল্য যোগ করতে হবে।

ধাপ 3: সিরিয়াল আউটপুট

সিরিয়াল আউটপুট
সিরিয়াল আউটপুট

প্রোগ্রামটি সিরিয়াল কনসোলে আউটপুট লিখে থাকে যা পরিমাপ করা দূরত্ব দেখায়, এখানে একটি টার্মিনালের একটি উদাহরণ স্ক্রিনশট যা একটি বস্তুকে সেন্সর থেকে দূরে সরে যাচ্ছে।

প্রস্তাবিত: