ارتباطات تحریک پذیر زمانی در پروتکل شبکهCAN ا ( Time Triggered CAN)چکیده :
شبکههای صنعتی یکی از مباحث بسیار مهم در اتوماسیون میباشد. شبکهی CAN به عنوان یکی از شبکههای صنعتی ، رشد بسیار روز افزونی را تجربه کرده است. در این میان ، عدم قطعیت زمان ارسال پیامها در این پروتکل شبکه ، باعث میشود که کاربرد این شبکه در کاربردهای حیاتی با اشکال مواجه شود. یکی از راهحلهای برطرف کردن این مشکل ، استفاده از تکنیک تحریک زمانی است که در ایت مقاله مورد بررسی قرار میگیرد.
کلید واژهها : شبکه صنعتی ، تحریک زمانی ، CAN ارتباطات تحریکپذیر زمانی در پروتکل شبکهی CAN
1) مقدمه
در محیطهای صنعتی ، کارخانجات ، خطوط تولید و امثالهم ، اتصال میکروکنترلرها ، سنسورها (Sensor) و محرکها (Actuator) با چندین نوع سیستم ارتباطی متفاوت به یکدیگر ، نوعی هنر معماری در الکترونیک و کامپیوتر است. امروزه ارتباطات از نوع تحریکپذیر زمانی بهطور گستردهای در پروتکل ارتباطات برپایه شبکه با پروتکل CAN (Controller Area Network) استفاده میشود. مکانیسم داوری (Arbitrating) در این پروتکل اطمینان میدهد که تمام پیامها بر اساس اولویت شناسه (Identifier) منتقل میشوند و پیامی با بالاترین اولویت به هیچ عنوان دچار آشفتگی نخواهد شد. در آینده ، بسیاری از زیرشبکههای (SubNet) مورد استفاده در کاربردهای حیاتی ، بهعنوان مثال در بخشهایی مثل سیستمهای کنترل الکترونیکی خودرو (X-By-Wire) ، به سیستم ارتباطی جامعی نیاز دارند که دارای قطعیت ارسال و دریافت در هنگام سرویسدهی باشد. به عبارتی ، در ماکزیمم استفاده از باس که به عنوان محیط انتقال این نوع شبکه بهکار میرود ، باید این تضمین وجود داشته باشد که پیامهایی که به ایمنی (Safety) سیستم وابسته هستند ، به موقع و به درستی منتقل میشوند. علاوه بر این باید این امکان وجود داشته باشد که بتوان لحظهی ارسال و زمانی را که پیام ارسال خواهد شد را با دقت بالایی تخمین زد.
در سیستم با پروتکل CAN استاندارد ، تکنیک بدست آوردن باس توسط گرههای شبکه بسیار ساده و البته کارآمد است. همانگونه که در قبل توضیح دادهشده است ، الگوریتم مورد استفاده برای بدست آوردن تسلط بر محیط انتقال ، از نوع داوری بر اساس بیتهای شناسه است. این تکنیک تضمین میکند که گرهای که اولویت بالایی دارد ، حتی در حالتیکه گرههای با اولویت پایینتر نیز قصد ارسال دارند ، هیچگاه برای بدست آوردن باس منتظر نمیماند. و با وجود این رقابت بر سر باس ، پیام ارسالی نیز مختل نشده و منتقل میشود. در همین جا نکتهی مشخص و قابل توجهی وجود دارد. اگر یک گرهی با اولویت پایین بخواهد پیامی را ارسال کند باید منتظر پایان ارسال گرهی با اولویت بالاتر باشد و سپس کنترل باس را در اختیار گیرد. این موضوع یعنی تاخیر ارسال برای گرهی با اولویت پایینتر ، ضمن این که مدت زمان این تاخیر نیز قابل پیشبینی و محاسبه نخواهد بود و کاملا به ترافیک ارسال گرههای با اولویت بالاتر وابسته است. به عبارت سادهتر :
● گره یا پیام با اولویت بالاتر ، تاخیر کمتری را برای تصاحب محیط انتقال در هنگام ارسال پیشرو خواهد داشت.
● گره یا پیام با اولویت پایینتر ، تاخیر بیشتری را برای بدستگرفتن محیط انتقال در هنگام ارسال ، تجربه خواهد کرد.
یک راه حل برطرف کردن نیازهای ذکرشده در بالا ، استفاده از شبکهی استاندارد CAN با اضافهکردن تکنیک تحریک زمانی (Time Trigger) به آن میباشد. استفاده از تکنیک تحریک زمانی در CAN ، طبق توضیحاتی که داده خواهد شد ، باعث اجتناب از این تاخیر میشود و باعث استفادهی مفیدتر و کارآمدتر از پهنای باند شبکه ، به کمک ایجاد قطعیت در زمانهای انتظار و ارسال ، میشود. به عبارت دیگر ، مزایای این شبکه با استفاده از تکنیک تحریک زمانی عبارت خواهد بود از :
● کاهش تاخیرهای غیر قابل پیشبینی در حین ارسال
● تضمین ارتباط قطعی و تاخیرهای قابل پیشبینی
● استفادهی مفیدتر و کارآمد از پهنای باند شبکه
با توجه به مکانیسمهای پیشبینی شده در TTCAN ، این پروتکل زمانبندی پیامهایی با تحریک زمانی (TT) را به خوبی پیامهایی با تحریک رویداد (Event Trigger) را که قبلا در این پروتکل قرار داشت ، مدیریت میکند. این تکنیک اجازه میدهد که سیستمهایی که دارای عملگرهای بلادرنگ هستند نیز بتوانند از این شبکه استفاده کنند. همچنین این تکنیک انعطاف بیشتری را برای شبکههایی که قبلا از CAN استفاده میکردند ، ایجاد میکند. این پروتکل برای استفاده در سیستمهایی که ترافیک دیتا بصورت مرتب و متناوب در شبکه رخ میدهد ، بسیار مناسب و کارآمد میباشد.
در این تکنیک ، ارتباطات بر پایهی یک زمان محلی بنا شده است. زمان محلی توسط پیامهای متناوب یک گره که بهعنوان گرهی مدیر زمان (Time Master) تعیین شده است ، هماهنگ و تنظیم میشود. این تکنیک اجازهی معرفی یک زمان سراسری و با دقت بالا را بصورت یکپارچه (Global) را ، در کل سیستم فراهم میکند. بر پایهی این زمان ، پیامهای متفاوت توسط یک سیکل ساده ، در پنجرههایی قرار میگیرند که متناسب با زمان پیام چیده شده است. یکی از مزایای بزرگ این تکنیک در مقایسه با شبکهی CAN با روش زمانبندی کلاسیک ، امکان ارسال پیغامهای تحریک شوندهی زمانی با قطعیت و در پنجرههای زمانی است.
اگر فرستندهی فریم مرجع دچار خرابی شود (Fail) ، یک گرهی از پیش تعریف شدهی دیگر بهطور اتوماتیک وظیفهی گرهی مرجع را انجام میدهد. در اینحالت ، گرهی با درجهی پایینتر جایگزین گرهی با درجهی بالاتر که دچار خرابی شده است ، میشود. حال اگر گرهی با درجهی بالاتر ، تعمیر شده و دوباره به سیستم باز گردد ، بهصورت اتوماتیک تلاش میکند تا بهعنوان گرهی مرجع انتخاب شود. توابعی بهصورت پیشفرض در تعاریف و خصوصیات TTCAN قرار داده شده است تا سیستم از این تکنیک خروج و بازگشت خودکار ، پشتیبانی کند. در ادامهی این مقاله ، جزییات این پروتکل مورد بررسی دقیقتر قرار میگیرد.
2) پیادهسازی TTCAN :
پروتکل TTCAN بر اساس تحریک بر مبنای زمان و ارتباط پریودیک ، که توسط مدیر زمان هماهنگ میشود ، بنا شده است. در این پروتکل ، پیام مرجع (Reference Message) پیامی است که توسط مدیر زمان در شبکه انتشار پیدا میکند و حاوی اطلاعات زمانبندی پنجرههای زمانی و اطلاعات انحصار پنجرهها به گرههای مشخصی میباشد. پیام مرجع ، بهسادگی از طریق بیتهای شناسهاش قابل شناسایی است.
این پروتکل در دو سطح ایجاد شده است. در سطح اول پروتکل ، پیام مرجع ، فقط حاوی تعداد کمی از پیغامهای کنترلی در حد یک بایت است و الباقی بیتها نیز میتوانند برای انتقال دیتا بهکار روند. در سطح دوم پروتکل ، پیام مرجع ، اطلاعات و پیغامهای کنترلی اضافیتر را حمل میکند. به عنوان مثال ، اطلاعات فعلی در مورد ساعت سراسری گرهی مدیر زمان فعلی را شامل میشود. پیام مرجع در این حالت محتوی چهار بایت اطلاعات است ضمن اینکه قابلیت کار با سیستمهای ردهی پایینتر از نوع CAN (Downward Compatible) نیز حفظ شده است. چهار بایت باقیمانده در فریم نیز برای انتقال دیتا میتواند استفاده گردد.
مدت زمان بین دو پیام مرجع متوالی ، سیکل پایه (Basic Cycle) نامیده میشود. یک سیکل پایه از چندین پنجرهی زمانی (Time Windows) با اندازههای متفاوت ، تشکیل شده است که فضای کافی را برای فریمهایی که باید منتقل شوند فراهم میکند. این این موضوع در شکل زیر نمایش داده شده است.
شکل شماره 1 : سیکل پایه
پنجرههای زمانی تعریف شده در یک سیکل پایه میتواند یکی از حالات زیر باشد و برای انتقال فریم پیامهای پریودیک حالت و یا پیامهای فوری و پیامهای حاوی رخداد ، استفاده میشود :
● پنجرهی زمانی انحصاری (Exclusive Window)
● پنجرهی زمانی داوری (Arbitrating Window)
● پنجرهی زمانی آزاد (Free Window)
هر فریم پیام که در هریک از این پنجرهها ارسال میشود ، باید از استاندارد فریم CAN پیروی کند. پنجرههای زمانی که برای ارسال پیامهای پریودیک استفاده میشود ، پنجرهی زمانی انحصاری (Exclusive) نامیده میشوند. ابتدای یک پنجرهی زمانی انحصاری ، لحظهی شروع یک ارسال را برای یک فرستندهی خاص و از پیش تعیین شده ، مشخص میکند. اگر سیستم به درستی تعریف شده باشد و روشی که توسط آن ارتباطات را از پیش تعریف کردهاند ، سیستم را درست تحلیل کرده باشد ، هیچ تداخلی (Conflict) در این لحظه پیش نخواهد آمد. هرچند حتی اگر تداخلی نیز پیش آید ، سیستم داوری پیشبینی شده در CAN استاندارد ، یا همان داوری بر اساس بیت شناسه ، برقرار بوده و تعیین کننده و برطرف کنندهی تداخل پیش آمده خواهد بود. مشخص است که طراح سیستم قبل از آغاز بهکار سیستم باید تصمیم بگیرد که کدام گره کدام پیام را در کدام پنجرهی زمانی ارسال کند. برای ایجاد انعطاف و کارایی بیشتر ، یک پنجرهی انحصاری میتواند در طول یک سیکل پایه ، بیش از یک بار تکرار شود. در پنجرههای انحصاری ، اجازهی ارسال مجدد یک پیام بهصورت اتوماتیک ، وجود ندارد.
شکل شماره 2 : انواع پنجرههای زمانی
در پاراگراف گذشته اشاره شد که در این پنجرههای زمانی انحصاری ممکن است فریم پیامهای فوری ارسال شود. این پنجرهها را پنجرههای زمانی داوری (Arbitrating Time Window) نامگذاری کردهاند.
فرمت این مقاله به صورت Word و با قابلیت ویرایش میباشد
تعداد صفحات این مقاله 12 صفحه
پس از پرداخت ، میتوانید مقاله را به صورت انلاین دانلود کنید
دانلود مقاله ارتباطات تحریک پذیر زمانی در پروتکل