সুচিপত্র:

ArDrone 2.0 Quadcopter কন্ট্রোল ইউনিট MPU6050 এবং ESP8266 মডিউল: 7 ধাপ
ArDrone 2.0 Quadcopter কন্ট্রোল ইউনিট MPU6050 এবং ESP8266 মডিউল: 7 ধাপ

ভিডিও: ArDrone 2.0 Quadcopter কন্ট্রোল ইউনিট MPU6050 এবং ESP8266 মডিউল: 7 ধাপ

ভিডিও: ArDrone 2.0 Quadcopter কন্ট্রোল ইউনিট MPU6050 এবং ESP8266 মডিউল: 7 ধাপ
ভিডিও: Backflip and Frontflip with your Parrot AR Drone 2.0 🔥😎 #shorts #parrot #drone #backflip 2024, নভেম্বর
Anonim
Image
Image
ESP8266 কে Ar Drone 2.0 Access Point এর সাথে সংযুক্ত করা হচ্ছে
ESP8266 কে Ar Drone 2.0 Access Point এর সাথে সংযুক্ত করা হচ্ছে

ওয়াই-ফাইয়ের আকার, মূল্য এবং প্রাপ্যতা আপনাকে ESP8266 মডিউলে (AliExpress, Gearbest- এ দাম) ArDrone 2.0 quadrocopter এর জন্য বাজেট কন্ট্রোল ইউনিট তৈরি করতে দেয়। নিয়ন্ত্রণের জন্য, আমরা MPU6050 চিপে (Gyroscope, accelerometer) Gy-521 মডিউল ব্যবহার করব।

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

ধাপ 1: ESP8266 কে আর ড্রোন 2.0 অ্যাক্সেস পয়েন্টের সাথে সংযুক্ত করা

সক্রিয় করা হলে, এআর। ড্রোন একটি SSIS অ্যাক্সেস পয়েন্ট "ardrone_XX_XX" তৈরি করে। পাসওয়ার্ড ছাড়াই সংযোগ করা হচ্ছে।

চলুন AR কমান্ড ব্যবহার করে Ar. Dron অ্যাক্সেস পয়েন্টের সাথে সংযোগ করার চেষ্টা করি।

Arduino IDE, সিরিয়াল পোর্ট মনিটরটি খুলুন এবং ESP বোর্ডে AT কমান্ড পাঠান (কোয়াডকপ্টারটি সক্ষম করতে হবে)

ধাপ 2: AR এর সাথে যোগাযোগ। AT কমান্ড ব্যবহার করে ড্রোন করা হয়।

এআর -তে কমান্ড পাঠানো হয়। UDP বা TCP প্যাকেট হিসাবে ড্রোন;

একটি একক UDP প্যাকেটে কমপক্ষে একটি সম্পূর্ণ কমান্ড বা তার বেশি থাকা আবশ্যক; যদি প্যাকেজে একাধিক কমান্ড থাকে, তাহলে 0x0A অক্ষরটি কমান্ডগুলি পৃথক করতে ব্যবহৃত হয়।

স্ট্রিংগুলি 8-বিট ASCII অক্ষর হিসাবে এনকোড করা হয়;

সর্বাধিক কমান্ড দৈর্ঘ্য 1024 অক্ষর;

কমান্ডের মধ্যে 30 এমএস বিলম্ব আছে।

কমান্ড নিয়ে গঠিত

AT * [কমান্ড নাম] = [একটি স্ট্রিং হিসাবে কমান্ড ক্রম সংখ্যা] [, যুক্তি 1, যুক্তি 2…]

AR নিয়ন্ত্রণের জন্য প্রধান AT কমান্ডের তালিকা। ড্রোন:

AT * REF- টেকঅফ, ল্যান্ডিং, রিসেট এবং ইমার্জেন্সি স্টপের জন্য ব্যবহৃত;

AT*PCMD- এই কমান্ডটি AR নিয়ন্ত্রণ করতে ব্যবহৃত হয়। ড্রোন চলাচল;

AT*FTRIM - অনুভূমিক সমতলে;

AT*CONFIG- কনফিগারিং AR। ড্রোন পরামিতি;

AT*LED- এআর এ LED অ্যানিমেশন সেট করে। ড্রোন;

এআর*এএনআইএম-ইনস্টল করা ফ্লাইট অ্যানিমেশন। ড্রোন।

AT * COMWDG- ওয়াচডগ রিসেট কমান্ড-আমরা ক্রমাগত কোয়াডকপটারে পাঠাই।

নিম্নলিখিত পোর্টগুলি যোগাযোগের জন্য ব্যবহৃত হয়:

পোর্ট 5556-UDP- AR এ কমান্ড পাঠাচ্ছে। ড্রোন;

এআর থেকে পোর্ট 5554-ইউডিপি-প্রাপ্ত ডেটা প্যাকেট। ড্রোন;

পোর্ট 5555-এআর থেকে ভিডিও প্যাকেট স্ট্রিম করুন। ড্রোন;

পোর্ট 5559-টিসিপি প্যাকেটগুলি সমালোচনামূলক তথ্যের জন্য যা সাধারণত হারিয়ে যেতে পারে না, সাধারণত কনফিগারেশনের জন্য।

ক্লায়েন্ট শেষ কমান্ড পাঠানোর পর 2 সেকেন্ড বিলম্বের পর UDP পোর্ট থেকে সংযোগ বিচ্ছিন্ন করে !!! - অতএব, আপনাকে প্রয়োজনে ক্রমাগত কমান্ড পাঠাতে হবে- AT*COMWDG।

ARDrone (পোর্ট 5554-UDP) থেকে নেভিগেশন ডেটা পাওয়ার কথা বিবেচনা করুন। ডেমো মোডে নেভিগেশন ডেটা প্যাকেট 500 বাইট দীর্ঘ। যদি কিছু ভুল হয়, ড্রোন একটি 32-এবং 24-বাইট প্যাকেট পাঠাতে পারে। যদি প্যাকেটটি 24 বাইট লম্বা হয় তবে এর মানে হল যে 5554 পোর্টটি বুটস্ট্র্যাপ মোডে রয়েছে এবং আপনাকে ডেমো মোডে স্যুইচ করতে পোর্টে পুনরায় সংযোগ করতে হবে ARDrone ক্লায়েন্টকে দুটি ফর্মের মাধ্যমে নেভিগেশন ডেটা প্রেরণ করতে পারে:

সংক্ষিপ্ত (বা ডেমো), আকারে 500 বাইট। সম্পূর্ণ

ডেমো ডেটা পেতে, প্রথমে চার বাইট 0x01, 0x00, 0x00, 0x00 পোর্ট 5554 এ পাঠান, এবং তারপর 5556 পোর্টে কমান্ড পাঠান

AT*CONFIG = "+(seq ++)+", "general: navdata_demo", / "TRUE \" যেখানে seq হল কমান্ডের ক্রমিক সংখ্যা।

নেভিগেশন ডেটা প্যাকেজের গঠন। প্যাকেজের শুরুতে 4 টি নাম রয়েছে:

32-বিট প্যাকেট হেডার: হেলিকপ্টার অবস্থা 32 বিট পতাকা;

ক্লায়েন্ট 32 বিট দ্বারা হেলিকপ্টারে পাঠানো শেষ কমান্ডের ক্রম সংখ্যা;

দৃষ্টি পতাকা 32 বিট। পরবর্তী-নেভাদা বিকল্প হেডার: 20-23।

Navdata বিকল্পে নিম্নলিখিত ক্ষেত্র রয়েছে:

ব্যাটারি = 24; শতাংশ হিসাবে ব্যাটারি চার্জ;

পিচ = 28; অনুদৈর্ঘ্য অক্ষ বরাবর প্রবণতা কোণ;

রোল = 32; ট্রান্সভার্স অক্ষের সাথে সম্পর্কিত প্রবণতার কোণ;

YAW = 36; উল্লম্ব অক্ষের সাথে ঘূর্ণন কোণ;

ALTITUDE = 40; উচ্চতা;

ভিএক্স = 44; x- অক্ষ গতি;

VY = 48; y- অক্ষ গতি;

ভিজেড = 52; z অক্ষে গতি।

ধাপ 3: Nokia 5110 ডিসপ্লেকে ESP8266 বোর্ডের সাথে সংযুক্ত করা

ESP8266 বোর্ডে Nokia 5110 ডিসপ্লে সংযুক্ত করা হচ্ছে
ESP8266 বোর্ডে Nokia 5110 ডিসপ্লে সংযুক্ত করা হচ্ছে

নোকিয়া 5110 ডিসপ্লেটি ESP8266 মডিউলের সাথে সংযুক্ত করুন এবং এটিতে এবং সিরিয়াল পোর্ট মনিটরে কিছু নেভিগেশন ডেটা আউটপুট করুন

ধাপ 4: ন্যাভিগেশন ডেটা পাওয়া এবং এটি Nokia5110 ডিসপ্লেতে প্রদর্শন করা

ন্যাভিগেশন ডেটা পাওয়া এবং এটি Nokia5110 ডিসপ্লেতে প্রদর্শন করা
ন্যাভিগেশন ডেটা পাওয়া এবং এটি Nokia5110 ডিসপ্লেতে প্রদর্শন করা

ডাউনলোড করুন (ardrone_esp8266_01। Ino), এবং সিরিয়াল পোর্ট এবং ডিসপ্লে স্ক্রিনে নেভিগেশন ডেটার আউটপুট পর্যবেক্ষণ করুন।

ধাপ 5: টেকঅফ এবং ল্যান্ডিং কমান্ড পাঠানো

এখন আমরা আমাদের প্রকল্পে রিমোট কন্ট্রোল থেকে কমান্ড দিয়ে কোয়াডকপটারের টেকঅফ এবং অবতরণ যোগ করব। বন্ধ করতে, আপনাকে একটি কমান্ড পাঠাতে হবে

AT*REF = [সিকোয়েন্স নম্বর], 290718208

অবতরণের জন্য

AT*REF = [সিকোয়েন্স নম্বর], 290717696

টেক অফ করার আগে, আপনাকে অবশ্যই অনুভূমিক ক্রমাঙ্কনের জন্য একটি কমান্ড পাঠাতে হবে, অন্যথায় আর ড্রোন ফ্লাইট চলাকালীন স্থিতিশীল হতে পারবে না।

AT * F TRIM = [সিকোয়েন্স নম্বর]

ESP8266 বোর্ডে ardrone_esp8266_02.ino () স্কেচ আপলোড করুন, আর ড্রোন 2.0 কোয়াডকপ্টার চালু করুন এবং বোতাম অপারেশন চেক করুন। যখন আপনি ক্লিক-টেকঅফ করবেন, পরের বার যখন আপনি ক্লিক করবেন-অবতরণ, ইত্যাদি।

ধাপ 6: Ardrone 2.0 নিয়ন্ত্রণ করতে MPU6050 সংযুক্ত করা হচ্ছে

Ardrone 2.0 নিয়ন্ত্রণ করতে MPU6050 সংযুক্ত করা হচ্ছে
Ardrone 2.0 নিয়ন্ত্রণ করতে MPU6050 সংযুক্ত করা হচ্ছে
Ardrone 2.0 নিয়ন্ত্রণ করতে MPU6050 সংযুক্ত করা হচ্ছে
Ardrone 2.0 নিয়ন্ত্রণ করতে MPU6050 সংযুক্ত করা হচ্ছে

মহাকাশে অবস্থান নির্ধারণের জন্য সেন্সরগুলি চতুর্ভুজ নিয়ন্ত্রণের জন্য ব্যবহৃত হয়। MPU6050 চিপে একটি অ্যাকসিলরোমিটার এবং বোর্ডে একটি জাইরোস্কোপ, পাশাপাশি একটি তাপমাত্রা সেন্সর রয়েছে। MPU6050 Gy-531 মডিউলের প্রধান উপাদান (চিত্র 15.44)। এই চিপ ছাড়াও, মডিউল বোর্ডে প্রয়োজনীয় MPU6050 বাঁধাই রয়েছে, যার মধ্যে রয়েছে I2C ইন্টারফেসের পুল-আপ প্রতিরোধক, পাশাপাশি একটি ছোট ভোল্টেজ ড্রপ সহ 3.3-ভোল্ট ভোল্টেজ স্টেবিলাইজার (যখন 3.3 ভোল্টে চালিত হয়, আউটপুট স্টেবিলাইজার হবে 3 ঠিক ভোল্ট) ফিল্টার ক্যাপাসিটরের সাথে।

I2C প্রোটোকল ব্যবহার করে মাইক্রোকন্ট্রোলারের সাথে সংযোগ স্থাপন।

ধাপ 7: MPU6050 ব্যবহার করে চতুর্ভুজ নিয়ন্ত্রণ

MPU6050 ব্যবহার করে চতুর্ভুজ নিয়ন্ত্রণ
MPU6050 ব্যবহার করে চতুর্ভুজ নিয়ন্ত্রণ

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

ফ্লাইট নিয়ন্ত্রণের জন্য আর ড্রোনে পাঠানোর আদেশ

AT*REF = [Sequence number], [Flag bit-field], [Roll], [Pitch], [Gaz], [Yaw]

রোল এবং পিচের মান -1 থেকে 1 এর মধ্যে টেবিল const int float থেকে নেওয়া হয়, সূচকটি mu6050 সেন্সর ডেটা থেকে গণনা করা বিচ্যুতির কোণের সাথে মিলে যায়।

Ardrone_esp8266_03.ino স্কেচটি ESP8266 বোর্ডে আপলোড করুন, AR Drone 2.0 quadrocopter চালু করুন এবং রিমোটের অপারেশন পরীক্ষা করুন।

প্রস্তাবিত: