সুচিপত্র:

রাস্পবেরি পাই সহ স্বায়ত্তশাসিত লাইন অনুসরণকারী ড্রোন: 5 টি পদক্ষেপ
রাস্পবেরি পাই সহ স্বায়ত্তশাসিত লাইন অনুসরণকারী ড্রোন: 5 টি পদক্ষেপ

ভিডিও: রাস্পবেরি পাই সহ স্বায়ত্তশাসিত লাইন অনুসরণকারী ড্রোন: 5 টি পদক্ষেপ

ভিডিও: রাস্পবেরি পাই সহ স্বায়ত্তশাসিত লাইন অনুসরণকারী ড্রোন: 5 টি পদক্ষেপ
ভিডিও: মেকার পাই RP2040 ইনস্টলেশন ও বৈধকরণ 2024, জুলাই
Anonim
রাস্পবেরি পাই সহ স্বায়ত্তশাসিত লাইন অনুসরণকারী ড্রোন
রাস্পবেরি পাই সহ স্বায়ত্তশাসিত লাইন অনুসরণকারী ড্রোন

এই টিউটোরিয়ালটি দেখায় যে আপনি কীভাবে শেষ পর্যন্ত লাইন ফলোয়ার ড্রোন তৈরি করতে পারেন।

এই ড্রোনের একটি "স্বায়ত্তশাসিত মোড" সুইচ থাকবে যা ড্রোনে মোডে প্রবেশ করবে। সুতরাং, আপনি এখনও আপনার ড্রোনটি আগের মতো উড়তে পারেন।

অনুগ্রহ করে সচেতন থাকুন যে এটি নির্মাণ করতে সময় নেবে এবং সামঞ্জস্য করতে আরও বেশি সময় লাগবে। কিন্তু চূড়ান্ত… এটি আপনাকে মূল্যবান মনে করে।

আপনার নিজস্ব স্বায়ত্তশাসিত লাইন ট্র্যাকার ড্রোন তৈরি শুরু করতে, নিশ্চিত করুন যে আপনার আছে;

  • এসএসএইচ অ্যাক্সেস সহ রাসবেরি পাই 3 বা রাস্পবেরি পাই জিরো ডাব্লু
  • APM বা Pixhawk ফ্লাইট কন্ট্রোলারের সাহায্যে রেডি-টু-ফ্লাই ড্রোন
  • Arduino Leonardo বা দ্রুত ঘড়ির গতি সহ অন্য Arduino
  • কমপক্ষে 6 সিএইচ ট্রান্সমিটার
  • ইউএসবি ওয়েবক্যাম যা রাস্পবেরি পাই এবং ওপেনসিভি সমর্থন করে
  • একটি পিসি
  • 6 সাধারণ উদ্দেশ্য ট্রানজিস্টর
  • তারের তারের

ধাপ 1: আইডিয়া এবং সংযোগ

আইডিয়া এবং সংযোগ
আইডিয়া এবং সংযোগ

APM, ওরফে ArduPilot, Arduino মেগা ভিত্তিক একটি ফ্লাইট কন্ট্রোলার। এর মানে হল যে আমরা এটি আমাদের ক্ষেত্রে সর্বোত্তম হতে পরিবর্তন করতে পারি। কিন্তু যেহেতু আমার কাছে এটি করার তথ্য নেই, তাই আমি অন্য উপায় অনুসরণ করতে যাচ্ছি।

রাস্পবেরি পাই, দুর্ভাগ্যক্রমে, সময়-সংবেদনশীল নয় যার অর্থ পিপিএম সংকেতগুলি মোকাবেলা করতে পারে না।

এজন্য আমাদের অতিরিক্ত আরডুইনো বোর্ড দরকার।

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

রাস্পবেরি পাই সনাক্তকরণ লাইনের পাশাপাশি টেলিমেট্রি ট্রান্সমিটার হিসাবে আচরণ করবে।

ছবিতে প্রয়োজনীয় সার্কিট দেখানো হয়েছে। আমি পরবর্তী ধাপে ব্যাখ্যা করা চালিয়ে যাব।

ধাপ 2: রাস্পবেরি পাই সংযোগ এবং কনফিগারেশন

রাস্পবেরি পাই সংযোগ এবং কনফিগারেশন
রাস্পবেরি পাই সংযোগ এবং কনফিগারেশন
রাস্পবেরি পাই সংযোগ এবং কনফিগারেশন
রাস্পবেরি পাই সংযোগ এবং কনফিগারেশন

রাস্পবেরি পাই ওয়াই-ফাই অ্যাডাপ্টার (alচ্ছিক), ইউএসবি ওয়েবক্যাম, ইউএসবি এর মাধ্যমে আরডুইনো লিওনার্দো, বিল্ট-ইন সিরিয়াল ইন্টারফেসের মাধ্যমে এপিএম-এর সাথে সংযুক্ত থাকবে। এপিএম - ছবিতে বিশদ বিবরণ সহ RPI সংযোগ দেখানো হয়েছে।

কনফিগার করার জন্য, আপনার কাছে দুটি বিকল্প আছে: প্রয়োজনীয় প্যাকেজ সহ বিশুদ্ধ রাস্পবিয়ান বা APSync নামক MAVLink সংযোগের জন্য বিশেষ চিত্র। আপনি যদি রাস্পবিয়ান ব্যবহার করতে যাচ্ছেন, নিশ্চিত করুন যে আপনি এই প্যাকেজগুলি ইনস্টল করেছেন:

sudo apt- আপডেট পান

sudo apt-get install -y screen python-wxgtk3.0 python-matplotlib sudo apt-get install -y python-opencv python-pip python-numpy python-dev sudo apt-get install -y libxml2-dev libxslt-dev python- lxml sudo pip ভবিষ্যতে pymavlink mavproxy pyserial ইনস্টল করুন

রাস্পবেরি পাই এর অন্তর্নির্মিত সিরিয়াল ইন্টারফেস ব্যবহার করার জন্য, আপনাকে অবশ্যই এটি ব্যবহার না করতে OS কে বলতে হবে। এটি করতে, টাইপ করুন

sudo raspi-config

এবং ইন্টারফেসিং বিকল্প> সিরিয়াল ইন্টারফেস অনুসরণ করুন

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

এই মুহুর্তে, বাকিগুলি রাস্পবিয়ান এবং এপি সিঙ্ক উভয়ের জন্য উপযুক্ত।

হোম ডিরেক্টরিতে, তিনটি ফাইল তৈরি করুন: রিবুট স্ক্রিপ্ট এবং ইমেজ প্রসেসর স্ক্রিপ্ট। দ্বিতীয় লাইন রিবুট স্ক্রিপ্ট এক্সিকিউটেবল করে তোলে।

reboot.sh image_processor.py স্পর্শ করুন

chmod +x reboot.sh

রাস্পবেরি পাইতে আপনার হোম ডিরেক্টরিতে (/হোম/পাই) নীচে দেওয়া ফাইলগুলির সমস্ত লাইন অনুলিপি করুন।

রিবুট স্ক্রিপ্টে ট্রিগার থাকবে যা ইমেজ প্রসেসর এবং টেলিমেট্রি স্ক্রিপ্টগুলিকে ট্রিগার করবে। এছাড়াও কয়েকটি সেটিংস। মনে রাখবেন যে আপনি যদি টেলিমেট্রি বৈশিষ্ট্যটি না চান তবে সেই লাইনের আগে # যোগ করুন।

nano reboot.sh

#!/বিন/ব্যাশ

python3 /home/pi/image_processor.py

এটি CTRL+O দিয়ে সংরক্ষণ করুন এবং CTRL+X দিয়ে প্রস্থান করুন। এটি সম্পর্কে শেষ ধাপটি ওএস স্টার্টআপ ফাইল, rc.local এ নিবন্ধন করা

সুডো ন্যানো /etc/rc.local

প্রস্থান 0 এর উপরে এই লাইনটি যুক্ত করুন:

/home/pi/reboot.sh

আমাদের রিবুট স্ক্রিপ্ট প্রতিটি বুটে কার্যকর করা হবে।

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

রাস্পবেরি পাই সিরিয়াল পোর্টের মাধ্যমে তার ইমেজ প্রসেসিং আউটপুট Arduino (আমার ক্ষেত্রে Arduino Leonardo) পাঠাবে। Arduino সেই ইনপুট থেকে PPM সিগন্যাল তৈরি করবে এবং জাম্পার তারের মাধ্যমে ফ্লাইট কন্ট্রোলারে পাঠাবে। এই সব রাস্পবেরি পাই জন্য।

চলুন পরবর্তী ধাপে এগিয়ে যাই।

ধাপ 3: এপিএম সংযোগ এবং কনফিগারেশন

এপিএম সংযোগ এবং কনফিগারেশন
এপিএম সংযোগ এবং কনফিগারেশন

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

আপনার গ্রাউন্ড সফটওয়্যারে, আমার ক্ষেত্রে মিশন প্ল্যানার, ফ্লাইট কন্ট্রোলারের প্যারামিটার তালিকা চেক করুন এবং বাউড্রেটস খুঁজে বের করুন। উদাহরণস্বরূপ, SERIAL_BAUD হল USB baudrate এবং SERIAL_BAUD1 হল APM এর জন্য TELEM port baudrate। মনে রাখবেন যে মান।

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

ARD 4 ↔ APM INPUT 1

ARD 5 ↔ APM INPUT 2

ARD 6 ↔ APM INPUT 3

ARD 7 ↔ APM INPUT 4

ARD 8 ↔ APM INPUT 5

ARD 9 ↔ APM INPUT 6

APM ইনপুটের সমস্ত 5V পিনের সাথে Arduino Leonardo 5V পিনের সংযোগ করুন। একইভাবে সমস্ত APM ইনপুট GND পিনগুলিকে Arduino Leonardo GND পিনের সাথে সংযুক্ত করুন।

ধাপ 4: Arduino Leonardo কনফিগারেশন

আমরা লিওনার্দোর জন্য সমস্ত তারের সংযোগ করেছি তাই কেবল কোড বাকি আছে।

নীচের প্রদত্ত কোডটি আপনার Arduino Leonardo- এ আপলোড করুন। Baudrates মনোযোগ দিন।

ধাপ 5: প্রথম ফ্লাইট

যখন আপনি সমস্ত পূর্ববর্তী পদক্ষেপগুলি সম্পন্ন করেন, তার মানে আপনি প্রস্তুত।

সমস্ত কার্ড পাওয়ার আপ করুন এবং SSH এর সাথে রাস্পবেরি পাই এর সাথে সংযুক্ত করুন। টার্মিনালে টাইপ করুন:

সুডো সু

mavproxy.py --master =/dev/[সিরিয়াল ইন্টারফেস] -বাউডারেট [টেলিম পোর্ট বাউডারেট] -এয়ারক্রাফট [কাস্টম নাম

ডিফল্ট রাস্পবেরি পাই অন্তর্নির্মিত সিরিয়াল ইন্টারফেস হল ttyS0 (/dev/ttyS0)

ডিফল্ট APM TELEM পোর্ট বাডরেট হল 57600

ডিফল্ট এপিএম ইউএসবি পোর্ট বাডরেট হল 115200

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

যদি সবকিছু ঠিক থাকে, এখন VNC এর মাধ্যমে আপনার রাস্পবেরি পাই এর সাথে সংযোগ করুন, যাতে আপনি ড্রোনটি রিয়েল টাইমে কী দেখেন তা দেখতে পারেন।

এখন, আপনি আপনার ড্রোনকে অস্ত্র দিতে পারেন। উত্তেজনাপূর্ণ, তাই না?

আপনার ড্রোনটি বন্ধ করুন, এবং লাইন ট্র্যাকের উপরে উড়ে যান। এখন, আপনি CH6 সুইচ ব্যবহার করে লাইন ট্র্যাকিং মোড সক্রিয় করতে পারেন।

প্রস্তাবিত: