প্রশ্নটির ধারাবাহিকতায় আমি এখানে জিজ্ঞাসা করেছি: স্বায়ত্তশাসিত মোডে সহজ টেকঅফ সহ কোয়াডকপ্টার অস্থিরতা ... আমি একটি এপিএম 2.6 মডিউল দ্বারা নিয়ন্ত্রিত কোয়াড্রোটারের জন্য বেসিক পিআইডি বাস্তবায়ন সম্পর্কে কয়েকটি প্রশ্ন জিজ্ঞাসা করতে চাই। (আমি 3 ডিরোবোটিক্সের একটি ফ্রেম ব্যবহার করছি)
আমি পুরো কন্ট্রোল সিস্টেমটি মাত্র দুটি পিআইডি ব্লকে নামিয়েছি, একটি রোল নিয়ন্ত্রণের জন্য এবং অন্যটি পিচ নিয়ন্ত্রণের জন্য (ইয়াও এবং সমস্ত কিছু ... আমি পরে সেগুলি সম্পর্কে চিন্তা করব)।
আমি এই সেটআপটি একটি দৃ rig়তার সাথে পরীক্ষা করছি যা একটি মুক্তভাবে ঘোরানো মরীচি সমন্বিত করে আমি কোয়াড্রোটারের দুটি হাত বেঁধে রেখেছি। অন্য দু'জন চলাচল করতে মুক্ত। সুতরাং, আমি আসলে এক সময় এক ডিগ্রি স্বাধীনতা (রোল বা পিচ) পরীক্ষা করছি।
নীচের চিত্রটি দেখুন: এখানে A, B নির্বিঘ্নে ঘোরানো মরীচি চিহ্নিত করে যার উপরে সেটআপটি মাউন্ট করা হয়েছে।
পি এবং ডি প্যারামিটারগুলির যত্ন সহকারে টিউন করার সাথে, আমি প্রায় 30 সেকেন্ডের একটি স্থির বিমানটি অর্জন করতে সক্ষম হয়েছি।
তবে 'টিকিয়ে রাখা', আমি সাধারণভাবে একটি পরীক্ষা বলতে চাইছি যেখানে ড্রোনটি একপাশে ওঠে না। রক অবিচলিত উড়োজাহাজটি এখনও চোখে পড়ার মতো কোনও জায়গা নয়, এবং 30 সেকেন্ডেরও বেশি বিমানও বেশ কঠিন দেখায়। এটি প্রথম থেকেই কাঁপছে। এটি 20 - 25 সেকেন্ডে পৌঁছার পরে এটি একদিকে ঝুঁকতে শুরু করে। 30 সেকেন্ডের মধ্যে, এটি অগ্রহণযোগ্য ব্যবধানে একদিকে ঝুঁকছে। খুব শীঘ্রই, আমি এটি উল্টে বিশ্রামে দেখতে পাচ্ছি
পিআইডি কোড নিজেই, আমি গাইরো + অ্যাক্সিলোমিটার ডেটার একটি 'প্রশংসামূলক ফিল্টার' থেকে আনুপাতিক ত্রুটি গণনা করছি। অবিচ্ছেদ্য পদটি শূন্যে সেট করা হয়েছে। পি পদটি প্রায় 0.39 এ আসে এবং ডি পদটি 0.0012 এ হয়। (আমি আরডুইনো পিআইডি লাইব্রেরিটি উদ্দেশ্য হিসাবে ব্যবহার করছি না, কেবল নিজের একটি পিআইডি এখানে প্রয়োগ করতে চাই))
এই ভিডিওটি কীভাবে কাজ করে তা যদি আপনি দেখতে চান তবে এই ভিডিওটি দেখুন।
http://www.youtube.com/watch?v=LpsNBL8ydBA&feature=youtu.be [হ্যাঁ, সেটআপটি বেশ প্রাচীন! আমি রাজী. :)]
এই পর্যায়ে স্থায়িত্বের উন্নতি করতে আমি সম্ভবত কী করতে পারি দয়া করে আমাকে জানান।
@ আইয়ান: আমি আমার সেটআপটি দিয়ে অনেকগুলি পরীক্ষার মধ্যে সিরিয়াল মনিটরের পড়া ব্যবহার করে কিছু পরীক্ষার জন্য প্লট গ্রাফ করেছি plot রোল বনাম 'মোটর 1 এবং মোটর 2 - পিডাব্লুএমএম ইনপুট' (রোলটি নিয়ন্ত্রণকারী দুটি মোটর) এর একটি নমুনা পঠন এখানে দেওয়া হয়েছে:
ইনপুট / আউটপুট হিসাবে:
ইনপুট: রোল এবং পিচ মান (ডিগ্রীতে), অ্যাক্সিলোমিটার + গাইরো এর সংমিশ্রণ দ্বারা প্রাপ্ত
আউটপুট: মোটরগুলির জন্য PWM মানগুলি, सर्वो লাইব্রেরির মোট.রাইট () ফাংশনটি ব্যবহার করে বিতরণ করা হয়
সমাধান
আমি সমস্যার সমাধান করেছি। এখানে কীভাবে:
আমি আরডুইনো প্রোগ্রামটি যেভাবে প্রয়োগ করেছি তাতে ইস্যুটির ত্রুটিটি মিথ্যা বলে। সার্ভো অ্যাঙ্গেলগুলি আপডেট করার জন্য আমি লিখন () ফাংশনটি ব্যবহার করছিলাম, যা আর্গুমেন্টের কেবলমাত্র পূর্ণসংখ্যক পদক্ষেপগুলি গ্রহণ করতে ঘটে (বা কোনওভাবে কেবল পূর্ণসংখ্যার ইনপুটকে সাড়া দেয়, 100 এবং 100.2 একই ফলাফল তৈরি করে)। আমি এটিকে লেখার জন্য মাইক্রোসেকেন্ডস () এ পরিবর্তিত করেছি এবং এটি হেলিকপ্টারটি যথেষ্ট স্থির করে তুলেছে।
আমি অন্য মোটরটিকে স্থির মূল্যে রাখার সময় একটি মোটরে আরপিএম যুক্ত করছিলাম। বিরোধী মোটর হ্রাস করার সময় আমি একটি মোটরে আরপিএম বাড়ানোর জন্য এটি পরিবর্তন করেছি। এই কিন্ডা মোট অনুভূমিক থ্রাস্টটি অপরিবর্তিত রাখে, যখন আমি যখন এই জিনিসটির উপরে উল্লম্ব উচ্চতা ধরে রাখার চেষ্টা করছি তখন তা আমাকে সাহায্য করতে পারে।
আমি আরপিএমকে সর্বাধিক সীমাতে এগিয়ে নিয়ে যাচ্ছিলাম, এ কারণেই কোয়াডকপ্টার পুরো থ্রোটলে নিয়ন্ত্রণ হারিয়ে ফেলেছিল। যখন টিল্ট লেগেছে তখন আরপিএম বাড়ানোর কোনও জায়গা ছিল না।
আমি পর্যবেক্ষণ করেছি যে মোটরটির একটি মোটরগতভাবে অন্যটির চেয়ে দুর্বল ছিল, কেন জানি না। আমি সেই মোটরগুলি পিডাব্লুএম ইনপুটটিতে একটি অফসেট হার্ডকোড করেছি।
সব সমর্থনের জন্য ধন্যবাদ.
সোর্স কোড:
আপনি যদি আগ্রহী হন তবে এখানে আমার নগ্ন হাড়ের পিআইডি প্রয়োগের উত্স কোড : পিআইডি উত্স কোড
আপনার হার্ডওয়ারে এটি নির্দ্বিধায় পরীক্ষা করুন। প্রকল্পে যে কোনও অবদান স্বাগত হবে।