مکانیک

خرید بک لینک

کلید واژه ها : چپ کردن , دینامیک جانبی , سیمولینک , متلب  ,شبیه سازی ,  مدل غلتشی خودر.و .

خلاصه :

در این پایان نامه تاثیر پارامترهایی نظیر وزن طولی , مانور های مختلف فرمان , مانورهای مختلف سرعت , انواع مدل تایر و ... برای تعیین تاثیر در گرایش خودرو به چپ کردن مورد بررسی قرار گرفته است . . هدف از این کار استفاده از شبیه سازی خودرو و مقایسه پاسخ ها با نتایج حاصل از آزمایشها می باشد. برای این کار از یک مدل سه درجه آزادی  خودرو و مدل لحظه ای و حالت پایدار roll  و دینامیک yaw برای بدست آوردن دینامیک واقعی خودرو  استفاده شده . عملیات

شبیه سازی توسط نرم افزار Matlab/Simulink صورت گرفته است  

مقدمه :

از آنجایی که در کشور ما تحقیقات در زمینه شبیه سازی و تحلیل دینامیکی خودرو خصوصاً در زمینه چپ کردن [1] خودرو بسیار اندک بود یا اصلاً وجود نداشت , بر آن شدیم که در حد توان تحقیقی را در این زمینه انجام دهیم . به همین علت تصمیم به استفاده از نرم افزار Matlab/simulink  برای انجام شبیه سازی را گرفتیم . نرم افزار سیمولینک به علت محدودیت های خاص خود قادر به انجام شبیه سازی نبود . این نرم افزار به خاطر مواجهه با حلقه های جبری پاسخ های دقیقی از خود نشان نمی داد یا پاسخ های کندی را ارایه می کرد . حلقه های جبری را می توان از بین برد و نرم افزار سیمولینک راه حل هایی را برای برطرف کردن این مشکل ارایه کرده است نظیر: استفاده از بلوک حافظه , تغییر و تصحیح زمان های نمونه برداری [2], استفاده از گزینه   state port بلوک integrator در غیر این صورت با تغییر روش های حل معادله می توان به پاسخ صحیح دست یافت . با وجود این راه حل ها به خاطر پیچیدگی معادلات باز هم نتوانستیم به پاسخ صحیح دست بیابیم . به همین خاطر برنامه نویسی در محیط Matlab را دنبال کردیم . نتایج حاصل را می توانید  در فصل های بعد بیابید که در چهار فصل گردآوری شده است. درفصل اول پیشینه و ادبیات تحقیق و عوامل موثر بر حادثه چپ کردن در فصل دوم مدلسازی و شبیه سازی دینامیکی خودرو , در فصل سوم مختصری در خصوص برنامه نویسی در محیط Matlab توضیح داده شده و در فصل چهارم عملیات شبیه سازی به صورت گام به گام توضیح داده شده است .

تشکر و قدردانی ویژه از آقای دکترخاجوی به خاطر راهنمایی های ارزنده و تلاش های بی شائبه  ایشان در امر فراگیری من و تشویق های دلسوزانه اش , را وظیفه خود می دانم .همچنین از آقای ویلیام تراویس[3] به خاطر پاسخگویی به نامه های ارسالی و راهنمایی های وی و نیز تمامی اعضای خانواده و فامیل وآشنایانی که درهدایت این تحقیق مرا یاری دادند تشکر و قدر دانی می کنم



[1] - rollover

[2] - sample time

[3] ـWilliam Travis

مکانیک...

ما را در سایت مکانیک دنبال می‌کنید

برچسب: نویسنده: ارشک بازدید: 483 تاريخ: شنبه 2 ارديبهشت 1391 ساعت: 18:06

فصل اول

 

 

 

 

       
 
 
   
 

 


ادبیات و پیشینه تحقیق

 

 

 

 

 

 

 

 

 

 

 

دینامیک خودرو و ویژگی هایی که بر روی چپ کردن خودرو تاثیر می گذارند از سالها پیش مورد بررسی قرار گرفته است . در زیر نمونه ای از چند مقاله که در زمینه چپ کردن و ایمنی خودرو ها کار کرده اند آمده است .

ویژگی های چپ کردن:

نتایج آماری نشان می دهدکه24% تصادفاتی که منجر به چپ کردن خودرو می شوند هنگام برخورد خودرو با یک شیء رخ می دهند و این بدان معنی است که چپ کردن با برخورد یا تصادف رابطه مستقیمی دارد. تحقیقات نشان می دهدکه82% در حومه شهر و فقط 18% چپ کردن درشهرها رخ می دهد.

66 % از چپ کردن ها در هنگام مانورهایی نظیر ترمزگیری یا لغزش خودرو رخ می دهند . علت های اصلی ناشی از سرعت خودرو ، پوشش جاده و تغییر اصطکاک می باشند.60% چپ کردن ها در هنگام رانندگی در جاده هایی نظیرخاکریزها و بلندی ها رخ می دهند.

 توسط نرم افزارهای ADAMS وMADYMO می توان چنین وضعیت هایی راشبیه سازی کرد.

شکل 1-1

 

 

شکل 2-1

 

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

    وضعیت چپ کردن                      پارامتر

1.  سرعت لغزش خطرناک                   سرعت

2.  تغییر مسیر                         جرم یا بار خودرو

3.  خاکریز                             زاویهRoll

4.  تست شیب(پیچ)                       ویژگی های فنرها

5.  برجستگی های مسیر گردش (ازروبرو)             ویژگی های کمک فنر

6.  برجستگی مسیرگردش(از پهلو)              تایرها

7.  چپ کردن استاتیکی                   محدودیت ها و موانع هندسی

8.     FMVSS208(شیب23درجه)               شرایط جاده

         

 تست های استاتیکی چپ کردن از دینامیک لحظه ای خودرو و دینامیک تایر ها که تغییرات سریع در سرعت و زاویه فرمان قبل از تصادف را اعمال می کنند , شامل می شوند .

باید توجه داشت که خصوصیات سیستم تعلیق هنگامی که می خواهیم پایداری خودرو را در تست های دینامیکی مشخص کنیم خیلی مهم می باشند واز آنجایی که تایرها غیر خطی می باشند نیروهای جانبی تایرها در طول مانورهای مختلف اشباع می گردند .

در سال 1990 (NHTSA)[1] برای درجه بندی بر اساس تعداد ستاره برای ایمنی خودرو فقط از SSF[2] برای تعیین گرایش  چپ کردن خودرو استفاده می کرد .

 

شکل3-1

 به خاطر افزایش تلفات ناشی از چپ کردن مجلس (TREAD)[3] را تصویب کرد . TREAD هدایت تست درجه بندی مقاومت دینامیکی خودرو در مقابل چپ کردن را به NHTSA واگذار کرد و NHTSA هم به نوبه خود آن را جزو برنامه ارزیابی خودروهای جدید خود قرار داد. برای این کار NHTSA به عنوان اولین کاندیدا اجرای بررسی آزمایشات چپ کردن مانورهای فرمان را برگزید . نمونه ای از مانور فرمان برگرفته از سایت NHTSA در زیر آمده است .

شکل4-1

 

برای تست دینامیکی , گرایش چپ کردن خودرو از بالاترین سرعتی که خودرو می تواند مانور انتخابی را بدون رسیدن به مرحله بلند شدن جفت چرخها سپری می کند مشخص می شود . در سال 2004 NHTSA نتایج تست های دینامیکی را نیز به درجه بندی گرایش خودروها به چپ کردن اضافه کرد .

شکل5-1

با توسعه درجه بندی کردن rollover موسسه راه و ترابری آمریکا راههای دیگری را برای ایمنی بیشتر مورد بررسی داد . در سال 2004 به دستور (DOT)[4] همه خودرو ها بایستی دارای نشانگر فشار باد برای هر تایر وسیستم هشدار دهنده باد تایر برای راننده می شدند .

به طور ساده اندازه چپ شدن توسط شتاب جانبی(g.s) سنجیده می شود که این مقدار قبل از کج شدن(بلندشدن یکی از تایرها) محاسبه می شود. بالاتر بودن این مقدار، میزان پایداری بیشتر آن خودرو را نشان می دهد . مقادیر محاسبه شده در محدوده (0.52-0.26) قرار دارند . در حالی که در قراردادهای رسمی این مقداربین ( 0.4-.0.26) فرض می شود. به خاطر داشته باشید که دومین آستانه چپ شدن نشان داده شده مربوط به میزان بلندی وارتفاع خودرو از سطح جاده در صحنه تصادف می باشد.

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

Roll و yowاز حرکت هایی می باشند که ممکن است سبب ناپایداری گردند و منجر به کج شدن یا لغزش خودرو می گردد.را ننده دو وظیفه اصلی را برعهده دارد و ظیفه هدایت خودرودر مسیر مورد نظر ونگهداری پایداری دینامیک های داخلی خودرو می باشند و به عنوان وظیفه کاهش اختلال نیز نامیده می شوند.

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

درحال حاضرسیستم کنترل پایداری الکترونیکی(ESC)[5]جدیدترین تکنولوژی درصنایع خودرو   می باشد.اداره حمل ونقل جاده ای وترافیک ملی آمریکا(NHTSA)منتشرکرده کهESC  به میزان67% تصادفات عادی و64% تصادفات خطر ناک خودرو هارا کاهش داده است.

تاثیراتESC  آن قدر ازاهمیت برخورداراست که شرکت های دایملرکراسلیر،فورد و جنرال موتورز درگیر این موضوع می باشند؛ به گونه ای که قصددارند تا سال2007 بر روی خودروهای شاسی بلند

(SUV)[6] ها ESC به عنوان استاندارد برای همه خودروها درنظرگرفته شود.

در جایی دیگر  یک سیستم کنترل پیچش فعال بر روی یک سیستم تعلیق غیر فعال[7] برای نوع نیمه کشنده قرار داده شده . این سیستم ازمیله های ضدغلتش فعال همراه با عملگرهای هیدرولیکی برای کنترل حرکت پیچشی هراکسل استفاده کرده است .

سیستم کنترل لغزش فعال از یک ساختارکنترلرتوزیع شده بهره می برد.یک ریز پردازنده براساس کنترلر های محلی عملکردهای انفرادی را کنترل می کند ویک کامپیوتر شخصی بر اساس کنترلر های محلی وعمودی ازطریق شبکهBUS به یکدیگر مرتبط هستند. ساختار توزیع شده نصب را ساده می کند،عملکرد را بهبود می بخشد و نمونه اساسی را تسریع می بخشد.

شبیه سازی های عملکرد  Rollوyaw یک تراکتور نیمه کشنده که مجهز به سیستم کنترل غلتش فعال می باشد، نشان می دهد که سیستم پیشرفت 25درصدی را درجلوگیری از چپ کردن خودرو و پایداری آن در حالت های لحظه ای وپایدار فراهم کرده است. این سیستم از ابزارهای ساده ای برای اندازه گیری شتاب جانبی ونرخ پیچش کشنده ها یا ترایلرها استفاده کرده است.

مطالعات نشان می دهدکه چپ کردن اغلب در خودرو های سنگین ودر بزرگراه ها رخ می دهد.سه فاکتوراساسی که درچپ کردن خودرونقش دارند به قرارزیر می باشند؛

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

(2) سرعت بیش از حد در سر پیچ ها و

(3) تعویض و جابجایی بار.

در مقاله ای دیگر اینگونه آمده است :

یک شانسی بزرگی برای بهبودی ایمنی خودروهای کنونی به وجودآمده که می تواند از چپ کردن خودرو جلوگیری کند. GPS های جدید که بر پایه تکنولوژی و سنسورها و عملگرها واستفاده از شیوه های بهبودکنترل غیرخطی ساخته می شوند سبب توانمند شدن آنها می گردد. اگرچه مطالعات شبیه سازی ازنظرجامع بودن در راس  می باشند.نتایج جدیدنشان می دهد که عملکرد این شیوه ها دلگرم کننده می باشد.آن ها نشان  می دهند که اگر مسیر ورودی کاملا شناخته شده باشد از طریق سیستم فرمان با سیم(Steer-by-wire)وترمز گیری دیفرانسیلی برای ردیابی نیت راننده بسیار نزدیک درحالی که از زاویه ایمن ومطمئنRoll مراقبت می کند.آنها همچنین نشان می دهند.این امر یعنی ردیابی و شناسایین نیت راننده در زمان واقعی بدون دانش و اطلاع از دستورات بعدی فرمان دهی ممکن است.

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

آستانه استاتیکی چپ کردن(SRT)[8]بیشترین کاربردرا درمشخص کردن پایداری پیچشی خودرو دارد و اینگونه تعریف شده است:سطحی از شتاب جانبی ثابت و پایدار بر حسبg که خودرو بدون رنج بردن از ناپایداری پیچشی(چپ کردن)در حالت اصلی خود،ثابت باقی می ماند.

در تحقیقی دیگر برای جلوگیری از چپ کردن خودرو کنترل ترمزگیری و فرمان مورد استفاده قرارگرفته است. شیوه کنترلی به کارگرفته شده متشکل از 3حلقه بازخوردی است؛عملیات پیوسته کنترل فرمان،کنترل اضطراری فرمان وکنترل اضطراری ترمز. در عملیات پیوسته نرخ  Rollو شتاب Roll توسط بهره زمان بندی شده سرعت برای زاویه فرمان چرخ های جلوبه عنوان بازخورد درنظرگرفته شده اند. به همین علت کاهش  Rollدر خودرو،برای محدوده وسیعی ازسرعت وارتفاع مرکز جرم،شدیداً بهبود پیدا  می کند. مقادیر دومی ممکن است درکامیون ها مختلف با هم متفاوت باشد. ضریب چپ کردن اساساً اینگونه تعریف شده که وابسته به شتاب جانبی مرکز جرم،جرم فنر بندی شده دارد. برای مقادیر بحرانی نظیر ترمز و فرمان اضطراری این متغیر فعال است. ضریب چپ کردن همچنین برای بازخورد غیرخطی زاویه فرمان چرخ های جلو به کارمی رود. شیوه ی کنترل با تحلیل خطی حساسیت وشبیه سازی محاسبه شده است.به علاوه پایداری مطلق شیوه کنترل فرمان توسط( معیارپوپوف ) تغییر پیدا کرده است.

ضریب چپ کردن ؛

شکل پایین مفروضات مورد نیازبرای ضریب چپ کردن را نشان می دهد.

شکل6-1

 

بارهای عمودی تایر با علامت های ونشان داده شده اند.از تعادل بارهای عمودی وتعادل گشتاورهای پیچشی ضریب چپ کردن اینگونه تعریف می شود.

تفاوت های زیادی درمورد ویژگی های  SUVهای وخودروهای معمولی وجود دارد و آگاهی از این مورد در طراحی یک سیستم ایمنی درخودرو از اهمیت خاصی برخورداراست.10.376 مورد تلفات جانبی و229000 مورد آسیب بدنی در سال 2003 ناشی از تصادف و چپ کردن گزارش شده است.

[Fars2005]. به همین خاطر طراحی سیستمی که گرایش کمی به چپ کردن دارد از نظر اقتصادی نیز به صرفه است.

تصادفات وسیله نقیه موتوری به میزان231 بیلیون دلار به اقتصاد آمریکا صدمه زده است .

همچنین اطلاعات آماری جامعی در مورد چپ کردن درمتن پایان نامه خانم   Snehal sarvanda برای اخذ مدرک فوق لیسانس آمده که تمامی تلفات ناشی ازچپ کردن وعلت وعوامل آن ها در بین سالهای(2000-1988) در ایالت فلوریدای آمریکا گردآوری شده است. در قسمت منابع می توانید نام و آدرس این مقاله را بیابید .

 

 



ما را در سایت مکانیک دنبال می‌کنید

برچسب: نویسنده: ارشک بازدید: 397 تاريخ: شنبه 2 ارديبهشت 1391 ساعت: 18:05

فصل دوم

 

 

 

 

 

 

مدلسازی  و شبیه سازی چپ کردن خودرو

 

 

 

 

 

 

 

 

 

 

 

 

 

در این فصل نمونه ای از مدل خودرو چهار چرخ که دارای سه درجه آزادی می باشد مورد بررسی قرار گرفته است . برای استخراج معادلات حاکم ازمعادله های حرکت برای جرم فنر بندی شده و فنر بندی شده  استفاده  شده است .

شکل 1-2

مدل شبیه سازی شده توسط MATLAB به گونه ای طراحی شده که از قابلیت انعطاف ویژه ای برخوردار است . ویژگی منحصر به فردی نظیر محل مرکز جرم به راحتی قابل تغییر می باشد .

مدل دوچرخه ای :

معادلات yaw لحظه ای از دیاگرام آزاد مدل دو چرخ مشتق شده اند. به هر حال برای استفاده این مدل در تحقیق مدل دو چرخ به عنوان 4چرخ در نظر گرفته شده است . بنا براین انتقال وزن جانبی می تواند شامل معادلات yaw باشد . در این مدل فرض شده که زوایای لغزش حول محور x متقارن می باشند . و تست در سرعت بالا و متاثر از آکرمن صفر مورد بررسی قرار گرفته است .

شکل 2-2

درشکل بالا نیروهای  تایر و زوایای لغزش به صورت قراردادی مثبت در نظر گرفته شده اند . در حقیقت نیروهای جانبی نشان داده شده نیروی منفی را تولید می کنند .

شتاب yaw از مجموع گشتاور ها حول مرکز جرم حاصل شده است . معادله زیر صحت این مطلب را نشان می دهد .

a = طول بین CG و محل تماس تایر عقب با جاده

b =   طول بین CG و محل تماس تایر جلو با جاده

  = زاویه فرمان

 Fy = نیروی جانبی تایر

r = نرخ yaw

V = بردار سرعت خودرو

Vf = بردار سرعت چرخ جلو

Vr = بردار سرعت چرخ عقب

Vx = بردار سرعت خودرو در راستای محور x

Vy = بردار سرعت خودرو در راستای محور y

دینامیک جانبی تایر با استفاده از مجموع نیروها حول محور y حاصل شده است .

زوایای لغزش زاویه بین بردار سرعت تایر و راستای ناشی از خط مرکزی تایر در نظر گرفته شده اند . معادله 5 زاویه لغزش جانبی چرخ جلو را نشان می دهد و به خاطر فرمان جلو بودن خودرو شامل زاویه فرمان  می باشد و معادله 6 برای چرخهای جلو نوشته شده است .

به طور مشابه زاویه لغزش نشان داده شده در معادله 7 زاویه بین بردار سرعت خودرو و مسیر خط مرکزی رو به جلو خودرو می باشد . نرخد لغزش جانبی نشان داده شده در معادله 8 یک خصوصیت دینامیکی مهم در زمینه سیستم کنترل پایداری خودرو می باشد .

 بزرگی  یا همان نرخ لغزش جانبی نشانگر پایداری دینامیکی yaw می باشد ودر واقع نرخ تغییرات سرعت رو به جلو خودرو می باشد . در تکنولوژی های جدید دقت بالاتر  نسبت به سبب کاربرد بیشتر آن شده است .

شتاب جانبی نشان داده شده در معادله 9متشکل از  و مولفه شتاب جانب مرکز (معادله10) و عمود بر بردار سرعت خودرو می باشد .

در معادله 11و 12 سرعت های طولی و جانبی آمده است .

مدل Roll :

معادلات Roll ازجداسازی جرم های فنربندی شده وفنربندی نشده در صفحه((y-zکه در شکل های3-2و4- 2نشان داده شده واز به کارگیری قانون دوم نیوتن برای اجسام صلب مشتق شده اند.

 «داخل» و «بیرون» قسمت های کناری خودروکه درون یا بیرون پیچ می باشندرا مشخص        می کنند.

درشکل زیر که صفحه جلو خودرورا نشان می دهدزاویهRollبه سمت بیرون خودرومثبت درنظر گرفته شده است.

 

 

شکل 3-2

 

 

شکل 4-2

نیروها , گشتاور و طولهایی که در شکل بالا نشان داده شده اند و اینگونه تعریف می شوند:

مدلRoll در حالت پایدار با تنظیم کردن حالت های دینامیکی شتاب وسرعت به صفرمشتق می شوند.

بااین ساده سازی زاویه Roll به عنوان تابعی خطی از شتاب جانبی تحلیل می شود.

این فرضیات که سختی پیچشی کلی خطی است وثابت  d1مربوط خطی کردن زوایای کوچک    می باشند.نیزدرنظرگرفته شده است.معادله(2.13)معادله خطی شده زاویهRollمی باشد.

مدلRollلحظه ای پیچیده ترازمدل پایدارRollمی باشد،چراکه دراین جا مدل غیرخطی است وشامل حالت های سرعت وشتاب می باشد.

مدل  Rollلحظه ای خیلی مفید می باشد،به خاطر اینکه دینامیک لحظه ای را به معادلات انتقال وزن جانبی که نیروی عمودی روی چرخ هارا نشان می دهد، پیوند می دهد.همچنین نرخRoll حالت از یک وسیله نقلیه می باشد.در سیستم کنترل پایداری ضدچپ شدن((Rolloverاز اهمیت زیادی بر خورداراست.

با داشتن معادله Roll بزرگی نرخRollرامی توان با حادثه چپ شدن خودرو مقایسه کردکه      می تواند برای توسعه محدودیت های سیستم کنترل پایداری جدید مفید می باشد.

معادله Rollرا می توان درمعادله(2.14)از طریق حاصل مجموع گشتادورهاحول محورXیافت.

در معادله(15.z)شتاب Rollمی باشد.RSMگشتاورناشی از سختی پیچشی است RDMگشتاور ناشی ازاستهلاک پیچشی می باشدکه درزیرمحاسبه شده اند:

نیروهای عکس العمل ناشی از مرکز Rollبا معادله های(2.20)و(2.21)داده شده اند،درحالی که Mجرم فنر بندی شده می باشد:

                      

این مهم است که به خاطرداشته باشید،برای ساده سازی مدل، مراکزمدلRollثابت درنظرگرفته شده اند.همچنین نیروی فنروسپرحول محورx به صورت متقارن درنظرگرفته شده اند.

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

با محاسبه نکردن سینماتیک سیستم تعلیق درطول مانورها زمان اجرایی شبیه سازی کاهش          می یابد.از طریق مقایسه با نتایج آزمایش های واقعی که درفصل بعدآمده ، مشاهده می شودکه این ساده سازی معتبرمی باشد. به منظورساده سازی محاسبه انتقال وزن جانبی ازدینامیکRollجرم فنر بندی نشده چشم پوشی شده است. ازدینامیک لحظه ای جرم فنربندی نشده چشم پوشی شده زیرا شناساییRolloverبااستفاده ازپیچیدگی کمترمعادلات حالات پایدارامکان پذیرمی باشد.

دینامیک لحظه ای برای جرم فنر بندی نشده به منظورمشخص کردن ارتفاع بالاآمدن چرخ مورد نیازاست.به هرحال دراین مقاله فقط لحظه ای که چرخ در حال بالا آمدن می باشدبرای ثبت حادثهRolloverموردنیاز می باشد.

انتقال وزن جانبی :

انتقال وزن جانبی ازدیاگرام آزادجرم فنربندی نشده مشتق شده است وازتفاوت بین نیروهای عمودی تایرهای داخل وبیرون اندازه آن تعیین می شود؛که در معادله(2.22)آمده است.

برای اینکه به طور دقیق نیروهای عمودی روی هرچرخ مشخص شوند دیاگرام آزاد جرم فنربندی نشده باید متشکل از اجزای جلو و عقب خودرو باشد.

به هرحال فقط دینامیک پیچشی حالت پایدارجرم فنربندی نشده مدل شده است،نظر به اینکه شبیه سازی فقط وابسته به حادثهRollover می باشد.   

هنگامی که برای اولین بار بالا آمدن چرخ شناسایی شد , عملیات شبیه سازی پایان می یابد و به عنوان یک واقعه rollover ثبت می شود .

انتقال وزن جانبی اکسل های جلو و عقب را می توانید در معادله های زیر بیابید .

                                                                                                                                                    

به منظور بدست آوردن عکس العمل نیروها در راستای y باید مجزاسازی وزن خودرو صورت گیرد .

نیروی عمودی هر تایر با استفاده از نیروهای استاتیکی روی هر اکسل و انتقال وزن جانبی روی هر اکسل محاسبه می شود .

مدل تایر (PACEJKA):

این مدل یک مدل غیر خطی از تایر می باشد. در این جا نیروی جانبی تابعی از زاویه لغزش جانبی و نیروی عمودی تایر می با شد و نیز شامل پارامتر هایی از قبیل نیروی جانبی ماکزیمم تایر , سختی پیچشی و مدل انحنای تایر می باشد که می تواند برای تایرهای مختلف اثرهای متفاوتی را نشان دهد .

Magic formula یا فرمول سحرآمیز نه تنها دینامیک جانبی وسیله نقلیه را مدل می کند بلکه دینامیک طولی تایر را نیز در بر می گیرد.

ما را در سایت مکانیک دنبال می‌کنید

برچسب: نویسنده: ارشک بازدید: 539 تاريخ: شنبه 2 ارديبهشت 1391 ساعت: 18:04

فصل سوم :

 

 

 

 

 
 
 


برنامه نویسی در محیط Matlab

 

 

 

 

 

 

 

 

 

 

 

 

اگر Matlab  براي شما تازگي دارد چند پيش نمايش از تواناييهاي آن و قابليت هاي آن مي تواند به شما درك وحس كلي از اين نرم افزار بدهد.  براي اجراي اين نمونه ها و پيش نمايش ها در داخل Matlab  عبارت  demo را در پنچره فرمان تايپ كنيد  و يا اينكه گزينه ي ""demosرا از طريق launch pad انتخاب كنيد .

  محتوايات پنجره فرمان را مي توان در هر زمان با استفاده از دستور clc پاك كرد .

همچنين اشكال موجود در figure windows را نيز مي توان در هر زمان دلخواه با تايپ دستور clf در پنچره ي فرمان پاك كرد. علاوه بر اين ها متغير هاي درون workspace را مي توان توسط دستور clear پاك نمود . همان طور كه مي دانيد محتويات works pace در حين اجراي m-file و يا قبل از شروع هر محاسبه جداگانه استفاده كنيم.

     يكي ديگر از دستورا ت مهم abort مي با شد. اگر اجراي يك m-file مدت بسيار زيادي بطول انجامد اين احتمال وجود دارد  كه درون آن يك حلقه ي نامتناهي وجود داشته باشد و به اين خاطر هيچ وقت پايان نمي پذيرد. دراين موارد كار بر      مي تواند  با نوشتن control-c (يا به طور خلاصه c^)در پنجره ي فرمان كنترل برنامه را دوباره در دست بگيرد مي توا نيد اين دستور را با نگه داشتن دكمه ي كنترل ونوشتن "c" وارد نماييد . هنگامي كه Matlab چنين دستوري  را در پنجره ي فرمان شناسايي مي كند برنامه ي در حال اجرا را متوقف مي کند و به خط دستور بعدي در پنجره ي فرمان مي رود.

و آخر اينكه شما مي توانيد كارهايي را كه در هر مرحله كار با Matlab انجام داده ايد با استفاده از دستور diary ذخيره و نگه داري كنيد اين دستور به صورت زير بيان مي شود :

Diary file name                                                              

بعد از نوشتن اين دستور ليستي از تمامي ورو دي ها وخروجي ها كه در پنجره ي فرمان نوشته شده اند diary file قرار مي گيرد .اين يك ابزار عالي براي باز سازي وقايع در زمان به وجود آمدن اشكالي در برنامه Matlab مي باشد  دستور diary off باعث توقف ورود اطلاعات به diary file ودستورdiary on سبب ورود مجدد اطلاعات به فايل مي شود.

 

مسيرجستجودرMATLB  :

 Matlabازsearch path  براي پيدا كردن  m-fileاستفاده مي كند. m-file  هاي Matlab روي سيستم در داخل شاخه ها ي مختلف طبقه بندي شده اند. بسياري ازm-file ها به همراه خودMatlab مي باشند وكاربران مي توانندm-file هاي خودشان را نيز به آنها اضافه كنند. اگر كاربر نامي را در پنجره ي فرمان وارد نمايد مترجم  Matlab بدين شيوه به جستجوي آن مي پردازد;

1 ـ ابتدا به نام وارد شده به صورت يك متغير مي نگرد. اگرمتغير بودMatlab محتوا و مقدار آن را نمايش مي دهد.

2.ـ سپس Matlab  بررسي مي كند كه نام وارد شده يك دستور و يا تابع موجود درMatlab مي باشد يا خير . اگر اين طور بودMatlab به اجراي اين دستور يا تابع مي پردازد.

matlab بررسي مي كند كه آيا نام وارد شده .نامm-file هاي موجود در زير شاخه كنوني مي باشد يا نه .اگر اين طور بودmatlab به اجراي اين دستور يا تابع   مي پردازد.

4 ـ در نهايت بررسي مي شود كه آيا نام وارد شده نام  يك m-file دريكي از شاخه هايsearchpath مي باشد. اگرچنين بودmatlab آن تابع يا دستور را اجرا      مي كند.

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

تابع disp :

يكي از ديگر روش هاي نمايش داده ها استفاده از تابع disp است. تابع  disp با قبول يك آرايه بعنوان آرگو مان ورودي مقدار آن آرايه را در پنجره ي فرمان      نمايش مي دهد. اگر آرايه از نوع char باشد آنگاه رشته ي كاراكتري موجود در    آرايه نمايش داده مي شود .اين تابع در اكثر موارد با توابع nam2str (تبديل يك عدد به يك رشته ي كاراكتري ) و int2str (تبد يل عدد صحيح به يك رشته ي كاراكتري ) تركيب شده و پيغام هایي را در پنجره ي فرمان به نمايش در مي آورد .براي مثال دستورات matlab زير پيغام  "the value of pi= 3.1416"رادر پنجره فرمان نمايش مي دهند:

Str= [the value of pi=num2str(pi)];                                       

Disp(str);                                                                             

عبارت اولي يك آرايه ي رشته ي حاوي پيغام ايجاد مي كند وعبارت دومي پيغام را به نمايش در مي آورد.

 

شاخه ها :

شاخه ها عباراتي از matlab هستند كه به ما اجازه انتخا ب واجراي قسمت هاي مشخصي از كد برنامه را (به نام بلوك )مي د هند واين كار را با رد كردن بقيه ي قسمت ها ي كد برنامه انجام مي دهد شاخه ها تركيب هايي از ساختار هاي  Try/catch , if/else و wsitch/case  می باشند .

 

ساختار if :

ساختار if داراي صورت كلي زير است:

if.. control_expr_1                                                                        

statement 1                                                                                   

}block1                                                                      

Statement 2                                                                                   

 elseif.. control_expr_2                                                                 

statement 1                                                                                     

}bolock2                                                                  

Statement 2                                                                                   

else                                                                                              

statement 1                                                                                   

}bolock3                                                                  

Statement 2                                                                                   

end                                                                                               

كه در آن عبارت كنترلي 3 عملكرد ساختار if را كنترل مي كنند. اگرControl_expr_1 مقداري غير صفر باشد آنگاه برنامه عبارت bolock1 را اجرا نموده و با ناديده گرفتن ديگر قسمتها به اولين عبارت اجرايي بعد از end رفته و آن را اجرا مي كند .در غير اين صورت برنامه وضيت control_expr_2 را بررسي مي نمايد و با ناديده گرفتن ديگر قسمتها به اولين عبارت اجرايي بعد از endرفته و آن را اجرا مي كند. اگر تمامي عبارات كنترلي صفر باشد آنگاه برنامه عبارات موجود در block مربوط به elseرا اجرا كند.

در يك ساختار if مي توان هر تعداد جمله elseif صفر يا بيشتر را جاي داد . ولي حداكثر مي توان يك جمله else داشت. عبارت كنترلي درون اين جمله ها تنها زماني بررسي مي شوند كه عبارات كنترلي ما قبل آن مقدار صفر داشته باشد .

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

نمونه ای از این دستور را در شکل (7-4) می نوانید بیابید .

 

ساختار

ما را در سایت مکانیک دنبال می‌کنید

برچسب: نویسنده: ارشک بازدید: 550 تاريخ: شنبه 2 ارديبهشت 1391 ساعت: 18:04

فصل چهارم :

 

 

 

 

 

 

تشریح  گام به گام عملیات شبیه سازی

 

 

 

 

 

 

 

 

 

 

 

 

 

برنامه ای که برای انجام این شبیه سازی مورد استفاده قرار گرفته متشکل از 17 فایل به صورت Matlab function و یا script file  می باشد . همانگونه که در فصل 2 دیدیم شبیه سازی  مدل سه درجه آزادی خودرو شامل دینامیک yaw  و roll می باشد . برای حل انتگرال ها از روش ذوذنقه ای استفاده شده است . برای مشاهده پاسخ های مطلوب زمان نمونه برداری باید 0.001 ثانیه در نظر گرفته شود .

آرایش و طرح کلی شبیه سازی خودرو :

شبیه سازی با فایل «Main.m  » آغاز می گردد . نوع خودرو , مانور فرمان ,  فرم سرعت و تغییر ویژگی توسط کاربر تعیین می شود .

فایل «garage.m » شامل ویژگی های انواع خودروها می باشد .فرم فرمان در function فایل«steer_profile.m » آمده. در فایل «Velocity.m » نوع و شکل سرعت برای مانور مورد نظر آمده . فایل «property_changer.m» ویژگی های خودرو را تغییر می دهد تا هنگامی که اتفاق بلند شدن جفت چرخ را در فایل «two_wheel_lift_detector» بیابد. در فایل «simulation.m» برای حل معادلات حرکت و تعیین حالات دینامیکی  از روش انتگرال گیری عددی استفاده شده است . هنگامی که نیروی جانبی مورد نیاز باشد  فایل                              « RubberandString.m » اجرا می شود . در این فایل انواع مختلفی از مدل های تایر مانند Pacejka و مدل خطی وجود دارد .

ترتیب اجرا و نحوه عملکرد شبیه سازی :

شبیه سازی با فایل «Main.m» آغاز می گردد. (شکل 1-4 ) . در قسمت (1) ویژگی مورد نظر انتخاب می شود . یعنی اینکه می خواهیم چه چیزی را شبیه سازی کنیم . با انتخاب کدهای 0,100,1,2 با توجه به توضیحات بالای دستور (description هایی که با رنگ سبز مشخص شده اند ) انتخاب لازم را انجام می دهیم .

در قسمت (2) نوع شبیه سازی یعنی حالت پایدار و یا لحظه ای را انتخاب می کنیم . برای انتخاب نوع خودرو و اختصاص دادن متغیر­(car) ونیز انتخاب  نوع مانور فرمان که از کاراکتر های رشته ای (حروف) استفاده می کنیم , باید نام مورد نظر را درون  ('  ') قرار دهیم .

شکل 1-4

 

در شکل زیر که ادامه دستورات قبل می باشد در ابتدا در قسمت (5) پروفیل سرعت را انتخاب می کنیم . در خط 36 تا 42 دستور if اجرا می شود .

در خط 46 و 47 دو متغیر نامگذاری می شوند . در قسمت (6) تعداد چرخ های بالا رفته برای شناسایی چپ شدن به کار رفته است . در قسمت (7) نوع مدل تایر برای انجام شبیه سازی مورد استفاده قرار گرفته است .

در خط 54 , 55 و 56 به ترتیب زمان پایان شبیه سازی , زمان نمونه برداری و متغیر NN که تعداد دفعات اجرای حلقه مشخصی را تعیین می کند .

در سطر 58, 59  و 60  فراخوانی function  فایل (garage.m)  صورت گرفته است . با قرار دادن سه نقطه در انتهای یک خط برنامه می توانیم ادامه آن را در سطر بعد بنویسیم همانگونه که برای فراخوانی این تابع مورد استفاده قرار گرفته است .

شکل 2-4

 

قبل از ادامه تشریح این فایل سراغ تابع فراخوانی شده می رویم .

شکل 3-4

همانگونه که مشاهده می کنید شروع برنامه از سطر 53 می باشد . قبل از آن مجموعه ای از comment ها برای توضیح مقادیر خروجی فایل ارایه شده است . همیشه باید توجه داشته باشیم که در یک function file شروع برنامه باید با عبارت function باشد . در سمت چپ تساوی پس از کلمه function عبارات درون کروشه مقادیر خروجی تابع می باشند . در صورتی که فقط یک خروجی داشته باشیم نیازی به قرار دادن آن درون کروشه نداریم . پس از تساوی نام فایل و عبارت درون پرانتز مربوط به ورودی تا بع می باشد . در صورتی که بیش از یک ورودی داشته باشیم آنها را با کاما از هم تفکیک می کنیم .

در سطر 56 تابع switch  که توضیح آن در فصل قبل آمد وظیفه تعویض خودروها را بر عهده دارد . پس از پایان اجرای این فایل اجرای عملیات شبیه سازی به فایل Main.m برمی گردد . به سطر 61 .

شکل 4-4

در سطر 61 تابع «disp» برای نمایش عبارت درون پرانتز مورد استفاده قرار گرفته است. در سطر 63 عبارت del که مخفف دلتا یا زاویه ورودی فرمان به خروجی یک  function file  با نام steer_profile با ورودی های داده شده , نسبت داده شده است .

شکل 5-4

در سطر 8 این فایل حلقه for و در سطر 20 عبارت منطقی if که در فصل قبل توضیح داده شد به کار رفته است .

شکل 6-4 

در سطر های 66 تا 68 سختی پیچشی برای جلو وعقب و نیز سختی پیچشی کلی آمده است . در سطر 70 برای محاسبه مرکز roll با توجه به مرکز جرم فایل roll_center_height.m فراخوانی شده است .

شکل 7-4 

در این فایل همان گونه که مشاهده می شود پس از تعیین ارتفاع مرکز roll کوتاهتر برای تعیین محل دقیق مرکز جرم ازدستور if و  فرمول هایی که مشاهده می کنید استفاده شده است .

شکل 8-4 

در شکل زیر از دستور switch برای انتخاب ویژگی مورد نظر استفاده شده است . ویژگی (0) به معنی عدم تغییر ویژگی های سابق, (100) به معنی استفاده از ویژگی های اسمی خودرو و جستجو برای یافتن لحظه بلند شدن چرخ . خود این دو برای اجرا نیاز به فراخوانی function file با نام No_change  دارند .عبارت QQ=length(a) برای تخصیص یک عدد که در اینجا طول بردار a را خواسته , به QQ برای تعیین دفعات تکرار حلقه , به کار رفته است .

شکل 9-4 

ویژگی (1) برای شبیه سازی تاثیر جابجایی وزن قسمت جلو و عقب به کار می رود . و ویژگی (2) برای شبیه سازی تاثیر جابجایی ارتفاع مرکز ثقل به کار رفته است .

در زیر فایل هایی که در شکل قبل با رنگ قرمز برجسته شده اند را مورد بررسی قرار داده ایم

شکل 10-4

 

شکل 11-4

 

شکل 12-4

حال به ادامه برنامه در فایل Main.m می پردازیم . در سطر 74 اجرای فایل initial_variables درخواست شده است .

شکل 13-4 

در این فایل مقادیر اولیه به متغیر های مورد نیاز نسبت داده شده است .در شکل زیر 15سطر از 101 سطر آن آمده است .

شکل 14-4

پس از اجرای این فایل ادامه برنامه را در فایل Main .m خواهیم داشت .

شکل 15-4 

 

در سطر 76 شروع اجرای حلقه ای را داریم که در انتهای این فایل پایان می یابد . این حلقه به اندازه QQ بار تکرار می شود .  flag یا پرچم می تواند مقدار 0 یا 1 به معنی درست یا نادرست بگیرد . «flag=0» که در سطر 77 آمده در سطر 88 در حلقه while مورد استفاده قرار گرفته است . speed و accel که در سطرهای 90 و 92 آمده متغیر هایی هستند که در فایل Velocity.m برای تعیین نوع پروفیل

شکل 16-4 

سرعت به کار می روند . در سطر 94 فراخوانی فایل صورت گرفته است .

در این فایل سه پروفیل برای سرعت که در نظر گرفته شده پروفیل پله ای (step) , سراشیبی یا سربالایی (ramp) و سرازیری (coast down) که با دستور switch انتخاب می گردند . پس از اجرای این فایل اجرای برنامه در فایل Main.m در سطر 95 ادامه می یابد .

شکل 17-4 

در سطر 97 فایل اصلی شبیه سازی که در فصل های گذشته به طور مفصل در مورد آنها بحث شده بود , اجرا خواهد شد . سطر های 101 تا 109 برای تکمیل حلقه های قبلی نوشته شده اند. سطر 111 برای اجرای فایل مربوط به نمایش نمودارها به کار رفته است .

در شکل زیر فایل simulation_switch

ما را در سایت مکانیک دنبال می‌کنید

برچسب: نویسنده: ارشک بازدید: 382 تاريخ: شنبه 2 ارديبهشت 1391 ساعت: 18:02

صفحه بندی

آرشیو مطالب

خبرنامه