آشنایی با پارامترهای لازم برای ايجاد ماموريت در ميشن پلنر (بخش اول){جلسه سی و دوم}

مقدمه

در این جلسه قصد داریم یک ماموریت را در نرم افزار میشن پلنر ایجاد کنیم. برای ماموريت با ميشن پلنر ابتدا با کلیک بر روی آیکون FLIGHT PLAN وارد این صفحه می شویم.

انجام ماموريت در فلايت كنترل APM

پس از ورود به بخش FLIGHT PLAN به قسمت Waypoints مي رويم. در اين قسمت اصطلاحات زيادي وجود دارد كه نياز است با آنها آشنا شويم. در اين جلسه با تك تك اين اصطلاحات آشنا مي شويم. دستوراتي كه در ماموريت با ميشن پلنر وجود دارند حتما به يكي از دو صورت زير هستند:

1- Navigation

2- DO

حالا دستوراتي كه در دسته Navigation قرار مي گيرند(همانند “TakeOff” و “Waypoint”) بر روي موقعيت كواكوپتر اثر مي گذارند يعني اينكه تعيين مي كنند پرنده در چه موقعيت و مكاني قرار بگيرد ولي دستوراتي كه در دسته DO قرار مي گيرند(همانند “Do-Set-Servo” و “Do-Cam-Trigg-Dist”) فقط يك عمل را انجام مي دهند و با موقعيت پرنده كاري ندارند. اين دستورات را نمي توان با هم استفاده كرد و در هر مرحله فقط يك دستور كاربرد دارد. كل دستوراتي كه در قسمت Waypoint وجود دارد به صورت زير است:

دستور Take off

با استفاده از اين دستور به كوادكوپتر مي گوييم كه دقيقا در چه ارتفاعي از سطح زمين قرار بگيرد. معمولا اين دستور در ابتداي ماموريت با ميشن پلنر است چون معمولا كوادكوپتر را ابتدا در يك ارتفاع مشخص قرار مي دهند و سپس ماموريت با ميشن پلنر آغاز مي شود.

دستور TAKEOFF در ميشن پلنر

دستور WAYPOINT

با استفاده از اين دستور كوادكوپتر در يك مسير مستقيم حركت مي كند و به مكاني كه با پارامترهاي متعدد مشخص كرده ايم مي رود. اين پارامترها كه در جلوي WAYPOINT مشخص هستند را شرح مي دهيم و مي توانيد متناسب با نياز خود آنها را تنظيم كنيد:

ايجاد ماموريت در ميشن پلنر و APM

يكي از پركاربردترين دستورات در ماموريت با ميشن پلنر دستور WAYPOINT مي باشد.

Delay: مدت زماني است كه كوادكوپتر در يك نقطه مي ماند و پس از اتمام اين زمان دستور بعدي را اجرا مي كند.

Hit Rad: با استفاده از اين گزينه مي توان ميزان دقت موقعيت كوادكوپتر را در مكان اعلام شده به دست آورد. به همين منظور يك محدوده دايره اي شكل در اطراف نقطه مورد نظر تعريف مي كنند. اين محدوده دايره شكل داراي يك شعاع است. البته به جاي آن مي توان از آيكون “WP Radius” كه در بالاي همين قسمت است استفاده كرد و يك شعاع چند متري تعريف كرد كه كوادكوپتر حركت نرم تري داشته باشد. دقت كنيد هر چه اين محدوده را تنگ تر كنيد حركات كوادكوپتر سخت تر مي شود و دقت GPS هم مد نظر قرار دهيد.

Yaw Ang: زاويه چرخش مربوط به محور Z‌ مي باشد كه براي هر نقطه مي توانيم تعريف كنيم. البته به جاي آن مي توان از CONDITION_YAW نيز استفاده كرد.

Lat, Long: اين دو عبارت به منظور تعيين طول و عرض جغرافيايي در هر نقطه به كار مي روند. Lat مخفف Latitude مي باشد و به معناي عرض جغرافيايي است و Long مخفف Longitude است و به معناي طول جغرافيايي است. چنانچه مقادير آنها را بر روي صفر قرار دهيد در همان موقعيت باقي مي مانند.

Alt: با استفاده از اين گزينه مي توان ارتفاع مورد نظر را بر حسب متر تعيين كرد. اگر مقدار صفر قرار دهيد در همان ارتفاع باقي مي ماند.

دستور Spline Waypoint

با استفاده از اين دستور مي توان كوادكوپتر را در يك مسير منحني شكل حركت داد تا حركت نرم تري در طي ماموريت با ميشن پلنر داشته باشد. به شكل زير دقت كنيد:

حركت در مسير منحني شكل براي ايجاد ماموريت در فلايت كنترل APM

همانگونه كه مشاهده مي كنيد از نقطه 1 تا 2 با يك انحنا حركت مي كند و سپس از نقطه 2 تا 3 و 3 تا 4 هم با يك انحنا حركت مي كند و از 4 تا 5 و از 5 تا 1 كه با WAYPOINT مشخص كرده ايم در يك مسير مستقيم حركت مي كند.

دستور Loiter_Time

ايجاد ماموريت در ميشن پلنر با لويتر

با استفاده از اين دستور كوادكوپتر به نقطه مورد نظر پرواز مي كند و به مدت معين كه با Times مشخص مي شود در همان مكان مي ماند. اين دستور معادل مد پروازي Loiter مي باشد. مختصات اين نقطه را مي توان با پارامترهاي زير تغيير داد.

Lat, Long: اين دو عبارت به منظور تعيين طول و عرض جغرافيايي در هر نقطه به كار مي روند. Lat مخفف Latitude مي باشد و به معناي عرض جغرافيايي است و Long مخفف Longitude است و به معناي طول جغرافيايي است. چنانچه مقادير آنها را بر روي صفر قرار دهيد در همان موقعيت باقي مي مانند.

Alt: با استفاده از اين گزينه مي توان ارتفاع مورد نظر را بر حسب متر تعيين كرد. اگر مقدار صفر قرار دهيد در همان ارتفاع باقي مي ماند.

دستور Loiter_Turns

ايجاد ماموريت در ميشن پلنر با loiter_turns

يكي ديگر از دستورهاي كاربردي در ماموريت با ميشن پلنر دستور LOITER_TURNS است. با استفاده از اين دستور مي توان به تعداد معيني كوادكوپتر را در يك مسير دايره اي شكل به دور خودش چرخاند. در كنار اين دستور پارامترهاي زير را براي يك چرخش مناسب مي توانيد تعيين كنيد:

Turn: تعداد چرخش هاي كامل در يك نقطه 

Dir: براي تعيين جهت چرخش از اين پارامتر استفاده مي كنيم. در صورتي كه 1+ گذاشته شود پرنده در جهت ساعتگرد به دور خودش مي چرخد و در صورتي كه 1- گذاشته شود در جهت پادساعتگرد به دور خودش مي چرخد.

Lat, Long: اين دو عبارت به منظور تعيين طول و عرض جغرافيايي در هر نقطه به كار مي روند. Lat مخفف Latitude مي باشد و به معناي عرض جغرافيايي است و Long مخفف Longitude است و به معناي طول جغرافيايي است. چنانچه مقادير آنها را بر روي صفر قرار دهيد در همان موقعيت باقي مي مانند.

Alt: با استفاده از اين گزينه مي توان ارتفاع مورد نظر را بر حسب متر تعيين كرد. اگر مقدار صفر قرار دهيد در همان ارتفاع باقي مي ماند.

دستور Loiter_Unlimited

ايجاد ماموريت در ميشن پلنر با loiter-unlimited

در ادامه دستورات ماموريت با ميشن پلنر به LOITER_UNLIMITED مي رسيم. با استفاده از اين دستور پرنده به نقطه مورد نظر با مشخصات خاص پرواز مي كند و به صورت نامعين در اين نقطه مي ماند.

Lat, Long: اين دو عبارت به منظور تعيين طول و عرض جغرافيايي در هر نقطه به كار مي روند. Lat مخفف Latitude مي باشد و به معناي عرض جغرافيايي است و Long مخفف Longitude است و به معناي طول جغرافيايي است. چنانچه مقادير آنها را بر روي صفر قرار دهيد در همان موقعيت باقي مي مانند.

Alt: با استفاده از اين گزينه مي توان ارتفاع مورد نظر را بر حسب متر تعيين كرد. اگر مقدار صفر قرار دهيد در همان ارتفاع باقي مي ماند.

دستور Return_To_Launch

ايجاد ماموريت در ميشن پلنر با RTL

اين دستور معادل مد پروازي RTL مي باشد. اين دستور را عموما به عنوان آخرين دستور تعيين مي كنند تا پرنده بعد از اتمام ماموريت به خانه برگردد.

دستور Land

ايجاد ماموريت در ميشن پلنر با دستور LANd

يكي ديگر از دستوراتي كه مي توانيم در ماموريت با ميشن پلنر ايجاد كنيم دستور LAND است. با استفاده از اين دستور پرنده در اين نقطه از ماموريت فرود مي آيد. پارامترهاي زير نيز در اين نقطه قابل تنظيم مي باشند.

Lat, Long: اين دو عبارت به منظور تعيين طول و عرض جغرافيايي در هر نقطه به كار مي روند. Lat مخفف Latitude مي باشد و به معناي عرض جغرافيايي است و Long مخفف Longitude است و به معناي طول جغرافيايي است. چنانچه مقادير آنها را بر روي صفر قرار دهيد در همان موقعيت باقي مي مانند.

دستور Delay

ايجاد ماموريت در ميشن پلنر با دستور delay

اين دستور هم دستور بسيار جالبي مي باشد. با استفاده از اين دستور مي توانيد به پرنده بگوييد كه در ساعت مشخصي شروع به پرواز كند و ماموريت را انجام دهد. بدين ترتيب ديگر نيازي به حضور شما در محل نيست و كافي است پرنده را در موقعيت قرار دهيد و خودش در زمان مشخص ماموريت را شروع و به پايان مي برد. براي اينكار هم دو روش در پيش رو داريد:

1- استفاده از پارامتر “Seconds”

با استفاده از “Seconds” و تعيين مدت زمان مورد نظر، پرنده به محض سپري شدن اين زمان پرواز را شروع مي كند.

2- استفاده از ساعت UTC

با استفاده از اين گزينه و زمان UTC پرنده ماموريت را شروع مي كند يعني به محض اينكه ساعت به اين زمان رسيد ماموريت شروع مي شود. براي تعيين آن هم نياز است كه “hour UTC” و  “minute UTC” را تعيين كنيد كه اول ساعت و دومي دقيقه مي باشد. براي مطالعه بيشتر زمان UTC مي توانيد از لينك زير استفاده كنيد.

UTC

نكته: در صورتي كه نمي خواستيد از هركدام استفاده كنيد كافي است كه در كادر تعيين شده عدد 1- را تايپ كنيد.

دستور DO_SET_ROI

ايجاد ماموريت در ميشن پلنر

با استفاده از اين دستور جلوي ربات دقيقا در نقطه اي قرار مي گيرد كه ما تعيين مي كنيم. مثلا در شكل بالا قصد داريم كه از نقطه 2 كه با رنگ قرمز مشخص شده است به مدت چند دقيقه فيلمبرداري كنيم بنابراين نياز است كه جلوي ربات به سمت نقطه مورد نظر قرار گيرد. البته اگر هدف فقط فيلمبرداري باشد با گيمبال چند محوره نيز مي توان اينكار را انجام داد. بحرحال با تعريف اين دستور جلوي ربات از نقطه 1 تا نقطه 3 به سمت نقطه قرمز رنگ 2 مي باشد.

دستور Condition_Delay

ايجاد ماموريت در ميشن پلنر

با استفاده از اين دستور يك تاخير را بين دو نقطه ماموريت ايجاد مي كنيم.

دستور CONDITION_DISTANCE

ايجاد ماموريت در ميشن پلنر با دستور CONDITION_DISTANCE

با استفاده از اين دستور تعيين مي كنيم كه تا زماني كه پرنده به فاصله مورد نظر تا نقطه بعدي نرسيده است دستور بعدي را اجرا نكند. براي مثال در شكل بالا تا زماني كه پرنده به فاصله 50 متري نقطه 4 نرسيده است دستور آن اجرا نمي شود.

دستور CONDITION_YAW

ماموريت در ميشن پنلر و APM

با استفاده از اين دستور مي توان با تعيين دقيق زاويه مورد نطظ و جهت مناسب جلوي ربات را به نقطه مورد نظر هدايت كرد.

Deg: زاويه مورد نظر

Dir: براي تعيين جهت چرخش از اين پارامتر استفاده مي كنيم. در صورتي كه 1+ گذاشته شود پرنده در جهت ساعتگرد به دور خودش مي چرخد و در صورتي كه 1- گذاشته شود در جهت پادساعتگرد به دور خودش مي چرخد.

rel/abs:

براي تعيين جهت جلوي پرنده به كار مي رود. چنانچه عدد 0 قرار دهيم جهت چرخش جلوي پرنده را با استفاده از مختصات كلي در نظر مي گيرد ولي اگر 1 قرار دهيم ميزان چرخش را بر اساس جهت جلوي پرنده در نظر مي گيرد.

دستور DO_JUMP

ماموريت در ميشن پلنر

با استفاده از اين دستور مي توان از يك دستور به دستور بعدي رفت. به عنوان مثال در شكل بالا پرنده به محض رسيدن به دستور 3 به دستور شماره 1 پرش مي كند و كارهاي دستور شماره 1 را انجام مي دهد و دوباره به دستور شماره 3 بر مي گردد. با استفاده از Repeat مي توان اين پرش ها را تكرار كرد. دقت كنيد كه فقط 3 بار مي توانيد اين پرش را انجام دهيد.

دستور DO_CHANGE_SPEED

ميشن پلنر

يكي از دستورات كاربردي در ماموريت با ميشن پلنر دستور DO_CHANGE_SPEED مي باشد. با استفاده از اين دستور مي توان سرعت پرنده براي رسيدن به نقطه مورد نظر را بر حسب متر بر ثانيه تعيين كرد.

دستور DO_SET_HOME

ايجاد ماموريت در ميشن پلنر

از ديگر دستورات ماموريت با ميشن پلنر دستور DO_SET_HOME مي باشد. با استفاده از اين دستور مي توان HOME را تعيين كرد. يعني نقطه اي كه براي RTL استفاده مي شود. چنانچه مقدار 0 قرار دهيم از مقاديري كه در LAT , LAN نوشته ايم براي تعيين خانه استفاده مي كند و اگر 1 قرار دهيم مكان فعلي را به عنوان خانه در نظر مي گيرد. البته اين دستور نكات ديگري هم دارد.

دستور DO_SET_CAM_TRIGG_DIST

ماموريت در ميشن پلنر

اين دستور براي فعال سازي دوربين در فاصله هاي زماني معين است. مثلا در شكل بالا دوربين در فاصله هاي 5 متري فعال مي شود. هر 5 متر كه پرنده حركت مي كند فعال مي شود.

دستور DO_SET_REPLY

ميشن پلنر

با استفاده از اين دستور مي توان پين هاي رله را HIGH و LOW نمود. در صورتي كه از PIXHAWK استفاده مي كنيد 3.3 ولت است و براي APM 5 ولت را فعال مي كند. منظورمان از رله همان پين هاي ديجيتال خروجي از فلايت كنترل مي باشد.

ستون اول شماره رله است. اگر 0 قرار دهيم رله اول و اگر 1 قرار دهيم رله دوم است.

ستون دوم مربوط به ON و OFF است. اگر 0 باشد OFF است و اگر 1 باشد ON است.

دستور DO_REAPET_REPLY

ميشن پلنر

با استفاده از اين دستور مي توان رله ها را به دفعات خاموش و روشن كرد. به عنوان مثال در شكل بالا رله شماره يك(ستون اول عدد0) به تعداد 2 بار فعال مي شود و فاصله زماني بين اين دو نيز 3ثانيه است.

ستون اول شماره رله است كه 0 به معناي رله شماره 1 و 1 به معناي رله شماره 2 است.

Repeat: تعداد تكرار

DELAY: ميزان تاخير بين هر بار اجرا

دستور DO_SET_SERVO

ماموريت با ميشن پلنر

 از ديگردستورات مهم در ماموريت با ميشن پلنر دستور DO_SET_SERVO مي باشد. با استفاده از اين دستور مي توان سروو را روي يك PWM خاص قرار داد. به عنوان مثال در شكل بالا سروو بر روي PWM با مقدار 1700 قرار مي گيرد و عمل مورد نظر را انجام مي دهد. دقت كنيد كه مقادير سروو معمولا از 1000 تا 2000 ميلي ثانيه است.

Ser No: كانالي است كه سروو به آن متصل است.

PWM: مقدار PWM كه براي سروو تنظيم مي كنيم.

دستور DO_REPEAT_SERVO

ايجاد ماموريت با ميشن پلنر

با استفاده از اين دستور سروو بين دو مقدار تعيين شده توسط ما و مقدار مياني عمل مي كند. مثلا در شكل بالا سروو ابتدا به مقدار 1700 مي رود و سپس به مقدار مياني 1500كه مياني است بر مي گردد و سپس بعد از 4 ثانيه تاخير به مقدار 1700 مي رود و سپس بعد از 4 ثانيه دوباره به مقدار 1500 باز مي گردد. اين عمل همانطور كه در شكل نوشته شده است 2 بار تكرار مي شود. عدد 8 نوشته شده هم به معناي اتصال به كانال 8 است.

دستور DO_DIGICAM_CONTROL

ماموريت با ميشن پلنر

اين دستور دوربين را فقط براي يك بار فعال مي كند و هيچ آپشن اضافي ندارد.

دستور DO_MOUNT_CONTROL

ماموريت با ميشن پلنر

اين دستور براي تعيين سه زاويه رول پيچ و ياو در گيمبال به كار مي رود و با تعيين آنها مي توان گيمبال را در يك زاويه خاص قرار داد.

 

دستور DO_GRIPPER

ماموريت با ميشن پلنر

اين دستور مخصوص گريپر است و با اتصال پين هاي سروو به فلايت كنترل مي توانيد با باز و بسته كردن گريپر يك عمل خاص را انجام دهيد. ستون اول كه GRIPP NO است شماره گريپر را مشخص مي كند و ستون دوم هم باز يا بسته بودن آن را تعيين مي كند. دقت كنيد كه در GRIPP NO چيزي ننويسيد زيرا فعلا فقط يك گريپر ساپورت مي شود. در ستون دوم هم اگر 1 قرار دهيد گريپر باز مي شود و اگر 2 قرار دهيد گريپر بسته مي شود.

مثل همیشه برای اطلاع از جلسات آینده می توانید ما را در تلگرام و اینستاگرام دنبال کنید:

ربات RHex

معرفی ربات RHex – دوست داشتنی یا تنفر برانگیز؟!

مشخصات

نام: معرفی ربات RHex

 

دسته بندی: مطالب ویژه

 

مدت زمان: حدود دو دقیقه

 

زیرنویس: نیاز به زیرنویس ندارد

 

 لینک دانلود: دانلود

 

تذکر: توضیحات تکمیلی خوانده شود.

توضیحات تکمیلی

در ادامه معرفی ربات های پیشرفته دنیا این بار میخواهیم ربات RHex را معرفی کنیم. رباتی ساخت شرکت مطرح Boston Dynamic .  ربات RHex توسط متخصصان چند رشته مختلف و در چندین دانشگاه مختلف در آمریکا طراحی و ساخته شده. از دانشگاه هایی که بر روی این پروژه کار کرده اند میتوان به  دانشگاه میشیگان، دانشگاه پرینستون ، دانشگاه کورنل و دانشگاه کالیفرنیا اشاره کرد.

برای ساخت این ربات DARPA حدود 5 میلیون دلار هزینه کرده و علاوه بر اون حدود 3 میلیون دلار هم کمک های مالی به این پروژه انجام شده.ربات RHex یک ربات 6 پاست که ذاتا تحرک بالایی در زمین های ناهمراه  داره.در این ربات اپراتور کمترین تاثیر رو روش میذاره و بیشتر حرکاتش به صورت خودکار هست. ربات گفته شده میتونه قابلیت حرکت در انواع محیط های گل و لای، شن، راه آهن و ... حرکت کنه البته این خاصیت برای ربات های ساخت Boston dynamic خیلی عجیب و غریب نیست و همشون از این خاصیت ها دارن. این ربات همچنین میتونه از صخره و راه پله هم بره بالا.

ربات RHex یک ربات کاملا پوشیده شده است که همین باعث میشه به صورت کامل در محیط های خیس، گل آلود و باتلاقی عملکرد خودش رو به صورت کامل داشته باشه و بدون هیچ مشکلی کار کنه. اپراتور میتونه این ربات رو از فاصله ای در حدود 700 متری کنترل کنه. چراغ ها و دوربین های که بر روی این ربات قرار گرفته میتونه به ربات برای حرکت به جلو دید کافی رو بدن. ضمن این که دوربین های جلو و عقب ربات دید کافی رو در اختیار پاراتور قرار می دهند.

در زیر چندین عکس از این ربات در محیط های مختلف آورده شده:

 

دیکدر سیگنال SBUS

سیگنال SBUS و كاربرد آن در گيرنده هاي راديوكنترل {بخش سوم}

سیگنال SBUS

قبل از مطالعه سیگنال SBUS در این جلسه ابتدا از طریق لینک های زیر دو جلسه گذشته را مطالعه کنید:

ُپروتکل PWM

پروتکل PPM

سیگنال SBUS یا Serial BUS یک سیگنال دیجیتال می باشد که توسط شرکت Futaba معرفی و روانه بازار شد.

معرفی سیگنال SBUS

بعدها شرکت Frsky نیز از آن به عنوان یک پروتکل مناسب استفاده کرد. سرعت سیگنال SBUS از سیگنال های PWM و PPM بیشتر است و رزولوشن بالاتری نسبت به آنها دارد بنابراین با دقت بیشتری می توان ربات را کنترل کرد. در کوادکوپترهایی که سرعت پایینی دارند به راحتی می توان از سیگنال های PPM و PWM استفاده کرد ولی در یک کوادکوپتر مسابقه ای که مثلا با سرعت 100 کیلومتر بر ساعت حرکت می کند یک تاخیر 50 میلی ثانیه ای باعث جابجایی 1.4 متر می شود و اینجاست که اهمیت سیگنال SBUS ظاهر می شود و نیاز به یک سیگنال پر سرعت پدیدار می شود.

نحوه اتصال سیگنال SBUS

پروتکل SBUS از پروتکل معروف RS232 به دست آمده است که تقریبا در بیشتر جاها کاربرد دارد. با استفاده از سیگنال SBUS می توان تا 18 کانال را با یک سیم راه اندازی کرد. تک سیمه بودن سیم سیگنال یکی از مهمترین مزایای این پروتکل محسوب می شود. با استفاده از این تک سیم حجم سیم کشی ها به شدت کاهش می یابد.

نحوه اتصال سیگنال SBUS و اتصال آن به فلایت کنترل

در شکل زیر سیگنال PWM را با سیگنال SBUS مقایسه کرده ایم که می توان تفاوت های اساسی این دو سیگنال را مشاهده کرد. همانگونه که در شکل زیر مشاهده می کنید برای یک سیگنال PWM زمان 20 میلی ثانیه ای فقط برای یک کانال است و این در صورتی است که در سیگنال PPM تمامی 18 کانال با یک زمان 7میلی ثانیه ای ارسال می شوند. بنابراین علاوه بر اینکه حجم سیم کشی ها نسبت به PWM کاهش یافته است سرعت آن نیز بسیار بیشتر می باشد.

مقایسه سیگنال SBUS و PWM 

سیگنال SBUS

برای تبدیل سیگنال SBUS به PWM یا PPM و یا سیگنال های دیگر دیکدرهایی در بازار وجود دارد که می توانید از آنها استفاده کنید. نمونه ای از آن را در زیر مشاهده می کنید:

تبدیل سیگنال SBUS

همانگونه که در گوشه دیکدر بالا مشاهده می کنید عبارتی با عنوان RSSI وجود دارد که مخفف Received Signal Strength Indicator است و به معنای نشانگر قدرت سیگنال دریافتی است. در حقیقت این پارامتر معیاری است که به شما این امکان را می دهد که آیا به اندازه کافی سیگنال مناسب را دریافت کرده اید یا خیر؟ RSSI هم همانند dBm نشانگر قدرت سیگنال است ولی با این تفاوت که RSSI یک شاخص نسبی است و dBm یک مقدار عددی است که سطح توان را بر حسب میلی وات به ما نشان می دهد.

نحوه ایجاد سیگنال SBUS

طول این پروتکل 25 بایت است و هر 14میلی ثانیه(analog mode) و یا 7 میلی ثانیه(highspeed mode) داده ها را ارسال می کند. هر بایت به صورت زیر است:

One Byte = 1 startbit + 8 databit + 1 paritybit + 2 stopbit (8E2), baudrate = 100’000 bit/s

 نحوه چینش دیتاها به صورت زیر است:

[startbyte] [data1] [data2] …. [data22] [flags][endbyte]

همانطور که مشاهده می کنید ابتدا با بیت شروع کننده شروع می شود و با پرچم و بیت پایانی تمام می شود.

startbyte = 11110000b (0xF0)

دیتاهای 1 تا 22 به صورت زیر است که تعیین کننده هر کانال می باشد:

data 1-22 = [ch1, 11bit][ch2, 11bit] …. [ch16, 11bit] (ch# = 0 bis 2047)

 

با توجه به اینکه کانال 1 به 11 بیت نیاز دارد بنابراین 8 عدد بیت را از data1 تامین می کند و 3 عدد بیت را از data2 تامین می کند. به همین ترتیب کانال 2 تعداد 5 بیت را data2 تامین می کند و 6 بیت را از data3 تامین می کند. کانال 3 تعداد 2 بیت را از data3 تامین می کند و 9بیت را از data4 تامین می کند و بقیه کانال ها هم به همین ترتیب تعداد بیت هایشان تعیین می شود.

 بقیه بیت ها هم به صورت زیر است:

flags = bit7 = ch17 = digital channel (0x80)
bit6 = ch18 = digital channel (0x40)
bit5 = Frame lost, equivalent red LED on receiver (0x20)
bit4 = failsafe activated (0x10)
bit3 = n/a
bit2 = n/a
bit1 = n/a
bit0 = n/a

endbyte = 00000000b

 

براي اطلاع از آخرين مطالب ارسالي مي توانيد از تلگرام و اينستاگرام سايت ما استفاده كنيد:

گیرنده radio linkدارای سیگنال PPM

سیگنال PPM و كاربرد آن در گيرنده هاي راديوكنترل {بخش دوم}

سیگنال PPM

سیگنال PPM كه مخفف Pulse Position Modulation مي باشد و یک سیگنال آنالوگ می باشد. قبل از مطالعه این جلسه ابتدا جلسه قبل را مطالعه کنید:

سیگنال PWM

سیگنال PPM گاهي با نام هاي PPMSUM يا CPPM هم شناخته مي شود و اساسا مجموعه اي از سيگنال هاي PWM مي باشد كه به صورت سري از طريق يك سيم ارسال مي شوند. يعني اينكه به جاي اتصال چندين سيم سيگنال كه در PWM داشتيم در اينجا فقط يك سيم سيگنال داريم. مثلا اگر بخواهيم 8 كانال را راه اندازي كنيم نياز به يك سيم سيگنال و دو سيم تغذيه داريم كه در مجموع سه سيم مي شود ولي در سيگنال PWM براي راه اندازي 8كانال نياز به 10 عدد سيم بود. پس حجم سيم كشي ها بسيار كاهش مي يابد و معمولا تا 8 كانال نيز جوابگو مي باشد. مقايسه سيگنال PPM و سيگنال PWM

شيوه كار در سيگنال PPM بدين صورت است كه اطلاعات كانال ها به صورت پشت سر هم و با يك تاخير ارسال مي شوند. همانگونه که در جلسه اول گفته شد پالس های PWM ما هر کدام 20میلی ثانیه ای بودند حالا اگر ما برای هر کانال 2میلی ثانیه در نظر بگیریم می توانیم 10 کانال را با آن راه اندازی کنیم. به همین ترتیب می توان برای تعداد 8 کانال و… نیز تقسیم بندی را انجام داد. همانطور که در شکل زیر مشاهده می کنید 4 سیگنال PWM با هم ترکیب شده اند و یک سیگنال PPM شکل گرفته است.

سیگنال PPM در کوادکوپتر

نکته: طول بازه سنکرون که برای مشخص شدن هر فریم(FRAME) است باید از بازه بزرگترین کانال بزرگتر باشد. به عنوان مثال اگر در شکل زیر کانال 4 بزرگترین بازه زمانی به مقدار 1.6 میلی ثانیه را داشته باشد زمان سنکرون حتما باید از 1.6 میلی ثانیه بزرگتر باشد. بعد از هر بازه زمانی سنکرون بازه زمان کانال 1 وجود دارد. سازندگان رادیوکنترل معمولا بر اساس فریم بحث می کنند.

هر فریم دارای سه پارامتر اصلی است:

1- بازه زمانی فریم(حداکثر زمانی است که سازندگان برای یک سیگنال PPM تعریف می کنند. این بازه زمانی تعیین کننده حداکثر تعداد کانال هایی است که می توان در یک سیگنال PPM تعریف کرد).

2- تعداد کانال های فریم(تعداد کانال هایی که بر حسب نیاز در یک بازه زمانی فریم تعیین می کنیم).

3- بازه زمانی سنکرون(فاصله بین یک فریم تا فریم بعدی را مشخص می کند).

4- زمان توقف هر کانال(در شکل زیر با Stop Pulse مشخص شده است و نشان دهنده این است که زمان کانال اول به پایان رسیده است و کانال دوم باید شروع شود).

5- بازه زمانی هر کانال(مدت زمانی است که برای هر کانال اختصاص می دهیم. این بازه زمانی به همراه زمان توقف هر کانال به هم محاسبه می شود. در شکل زیر این مطلب را نشان داده ایم).

 سیگنال PPM

گیرنده های رادیوکنترل دارای سیگنال PPM

بعضي از گيرنده ها اساسا فقط سيگنال PPM  را ساپورت مي كنند كه همانند شكل اول جلسه مي باشد. بعضي ديگر از هر دو نوع سيگنال ساپورت مي كنند يعني در كنار پين هاي سيگنال PWM پين هاي سيگنال PPM نيز قرار داده شده است. شكل زير گيرنده اي را نشان مي دهد كه هر دو نوع سيگنال را ساپورت مي كند.

سيگنال PPM در گيرنده راديوكنترل

 در فلايت كنترلرهايي همانند Pixhawk كه با ورودي هاي PPM و SBUS كار مي كنند نمي توان گيرنده هاي PWM به كار برد. به منظور رفع اين مشكل ما نياز داريم كه از انكودرهاي PPM استفاده كنيم. در اين روش با استفاده از انكودرهاي PPM سيگنال PWM دريافتي از گيرنده راديوكنترل به سيگنال PPM تبديل مي شود و با يك سيم سيگنال به فلايت كنترل متصل مي شود. شكل زير نمايي از يك انكودر 8 كاناله را نشان مي دهد.

سيگنال PPM با استفاده از انكودر PPM

شكل زير نمايي از اتصال يك انكودر 8 كانال به گيرنده راديوكنترل را نشان مي دهد.

انكودر 8كانال PPM براي فلايت كنترل Pixhawk

براي خريد انكودر مي توانيد از لينك زير كه مربوط به وب سايت آفتاب رايانه مي باشد استفاده كنيد. فروشگاه ديگري موجودي نداشت. دوستان اگر فروشگاه ديگري سراغ داشتند لينك بگذارند تا اضافه شود.

انكودر 8 كاناله PPM

براي اطلاع از آخرين مطالب ارسالي مي توانيد از تلگرام و اينستاگرام سايت ما استفاده كنيد: