تجزیه و تحلیل مکانیسم همگام سازی اتوبوس CAN/تعیین مکانیسم/مکانیسم داوری

Jan 17, 2025 پیام بگذارید

CAN (ControlerAreanetwork) اتوبوس ، IE کنترل کننده شبکه شبکه ، در کنترل صنعتی ، الکترونیک پزشکی ، لوازم خانگی و زمینه های سنسور به طور گسترده ای مورد استفاده قرار گرفته است. در حال حاضر ، ادبیات داخلی و خارجی برای تجزیه و تحلیل پروتکل اتوبوس CAN از مقاله ، عمدتاً برای ساختار قاب پروتکل CAN به ویژگی های زمان بندی یا بیت ویژگی های تجزیه و تحلیل است ، مانند ادبیات به ندرت از منظر ارتباطات در مورد تجزیه و تحلیل پروتکل CAN BUS ، به ندرت از دیدگاه برنامه های مهندسی ، مکانیسم ارتباط اتوبوس CAN برای تجزیه و تحلیل عمیق مقاله.


1. می تواند ویژگی ها و ترکیب ساختاری را کاربرد داشته باشد


پروتکل CAN BUS دارای دو استاندارد بین المللی ، ISO11898 و ISO11519 است که از این تعداد ، IS011898 یک استاندارد ارتباطی با سرعت بالا با نرخ ارتباطی 125kbps تا 1Mbps است که یک اتوبوس حلقه بسته با حداکثر طول 40m/1mbps است. ISO11519 یک استاندارد ارتباطی با سرعت کم با نرخ ارتباطی 10 تا 125kbps تعریف می کند ، که یک ارتباطی با سرعت کم با حداکثر طول 40m/1Mbps است. ISO11519 میزان ارتباطی 10 تا 125kbps را با سرعت کم سرعت ارتباطات تعریف می کند ، متعلق به اتوبوس حلقه باز ، حداکثر طول 1 کیلومتر / 40kbps است. با توجه به ویژگی های الکتریکی محدودیت ها ، یعنی توزیع اتوبوس از خازن و توزیع مقاومت در شکل موج اتوبوس ، حداکثر تعداد گره ها در اتوبوس CAN 110 است. برای مهندس برنامه ، فقط نرخ Baud و پارامترهای بیت برای دستیابی به هماهنگ سازی داده گره های فرستنده ، باید از طرف فرستنده به درستی پیکربندی شود. از طریق سخت افزار کنترل کننده CAN در فیلتر نشانگر پیام می توان پخش نقطه به نقطه ، پخش نقطه به Multipoint و Global Broadcast و سایر راه های انتقال و دریافت داده ها را تحقق بخشید. در عین حال ، به دلیل ساختار قاب کوتاه تلگرام CAN ، و هر فریم شامل یک قسمت CRC Check است که میزان خطای داده بسیار کمی را تضمین می کند.

 

لایه برنامه CAN ، سیستم عامل (که به عنوان یک برنامه پس زمینه در برنامه های کاربردی بدون سیستم عامل اجرا شده است) و درایور در اجرای سیستم با هم تحقق بخشیدن به توابع لایه برنامه در مدل مرجع ISO. در میان آنها ، CAN Application Layer گروه بندی شناسه ، ارسال بارگیری داده ها ، دریافت پردازش داده ها و نظارت بر امنیت اتوبوس لایه برنامه را تعریف می کند. سیستم عامل/برنامه پس زمینه برای برنامه ریزی درایور CAN برای پردازش داده ها پس از وقفه CAN استفاده می شود. راننده شامل اولیه سازی (تنظیم وضعیت کار کنترل کننده ، تنظیم نرخ BAUD ، پیکربندی فیلتر پذیرش) ، درایور فرستنده و برنامه کنترل ناهنجاری است.


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


برای تحقق CAN Controller ، می توانید کنترلر CAN را که در سیستم اصلی سیستم Master یکپارچه شده است ، مانند سری میکروکنترلرهای NXP LPC2000 انتخاب کنید ، یا همچنین می توانید از اجزای گسسته کنترل کننده CAN استفاده کنید ، مانند SJA1000 برای تحقق گیرنده های قوطی CAN ، می توانید CTM1050 ، TJA1050 و غیره را انتخاب کنید. اگر سر و صدای تداخل محیط زیاد است ، باید مقاومت توزیع متوسط ​​انتقال را در نظر بگیرید و خصوصیات ظرفیت توزیع ؛ در عین حال ، اگر از یک اتوبوس با سرعت بالا استفاده می کنید نیز نیاز به تعیین مقاومت تطبیق اتوبوس از طریق آزمایش دارند. اگر سر و صدای تداخل محیطی زیاد باشد ، لازم است یک تراشه جداسازی بین کنترل کننده و فرستنده یا استفاده از عملکرد جداسازی یکپارچه فرستنده قوطی اضافه شود. لازم به ذکر است که تراشه میکروکنترلر LPC11C24 جدید NXP نه تنها یک کنترل کننده CAN را ادغام می کند ، بلکه یک عملکرد فرستنده قوطی را نیز ادغام می کند ، که پشتیبانی خوبی برای توسعه سریع سیستم های اتوبوس CAN فراهم می کند. علاوه بر این ، با توجه به کاربرد واقعی طول اتوبوس و تعداد گره های موجود در اتوبوس ، همچنین لازم است زمان تأخیر انتقال و دریافت تراشه فرستنده را در نظر بگیرید.


برای لایه درایور CAN و لایه برنامه ، درایور شامل ابتدایی می تواند (از جمله فعال کردن سخت افزار ، تنظیم نرخ BAUD ، تنظیم حالت کار کنترلر و پیکربندی جدول شناسه فیلتر پذیرش) ، درایور دریافت/انتقال را ارائه دهد و توابع رابط را به لایه فوقانی ارائه می دهد ، که از آن لازم است توضیح دهید که پیکربندی جدول شناسه فیلتر پذیرش باید بر اساس گروه بندی شناسه سیستم توسط لایه برنامه باشد. CAN Application Layer بسته بندی داده ها را بر اساس رابطه ارسال/دریافت داده بین گره های موجود در اتوبوس انجام می دهد. می تواند لایه برنامه را با توجه به داده های ارسال و دریافت رابطه بین گره های موجود در اتوبوس برای گروه بندی شناسه بسته ، ارسال بسته های داده ، دریافت پردازش داده ها و نظارت بر امنیت اتوبوس لایه استفاده کند. علاوه بر این ، پروتکل های لایه بالایی اتوبوس که معمولاً استفاده می شود شامل Canopen ، Devicenet و ICAN است.


2. آیا تجزیه و تحلیل مکانیسم هماهنگ سازی اتوبوس می تواند


در فرآیند ارتباطات ، یکی از مهمترین موضوعاتی که باید برطرف شود نحوه دستیابی به هماهنگ سازی داده ها در فرستنده و گیرنده است ، یعنی ، انتهای گیرنده می تواند به درستی داده های ارسال شده توسط انتهای فرستنده را دریافت و تجزیه کند. نوعی پروتکل ارتباطی سریال ناهمزمان است که متعلق به ارتباطات باند است و همگام سازی آن از پروتکل کنترل پیوند داده سطح بالا (HDLC) تحقق می یابد. به طور خاص ، هماهنگ سازی پروتکل اتوبوس CAN از طریق 3 جنبه همانطور که در زیر شرح داده شده است.


2.1 تنظیم پارامتر


هر دو طرف ارتباط از طریق نرم افزار همان میزان Baud را تنظیم می کنند ، همان طول قطعه تنظیم فاز ، همان عرض پرش هماهنگ سازی ، از طریق سه عنصر فوق ، طول زمان بیت را در فرآیند انتقال اتوبوس CAN تعریف می کند. و همچنین محل نقطه نمونه برداری ، ساختار بیت همانطور که در شکل 2 نشان داده شده است ، ساعت قوطی در شکل که در پروتکل زمان TQ تعریف شده است ، که از طریق تقسیم فرکانس یک ساعت خارجی یا یک پیرامون به دست می آید ساعت CPU. سیگنال ساعت اصلی کنترل کننده CAN با تقسیم فرکانس ساعت خارجی یا ساعت محیطی CPU بدست می آید. بخش SS با بخش شروع مطابقت دارد ، و لبه پرش در اتوبوس باید در این دوره اتفاق بیفتد ، TESG1 با بخش انتقال و بخش تنظیم فاز 1 مطابقت دارد و TESG2 مطابق با بخش تنظیم فاز 2 و برای بالا است اتوبوس سرعت ، کنترل کننده نمونه و تمایز اتوبوس بین TESG1 و TESG2 است.

 

o4YBAF_kARqAUmkJAAC0vUwBkGQ744.png

 

2.2 ساختار قاب ثابت


پروتکل می تواند به وضوح یک ساختار فریم ثابت را برای تسهیل کنترل کننده CAN و فرستنده برای نظارت بر وضعیت اتوبوس ، در CAN2 تعریف کند. دامنه داوری ، قاب استاندارد با استفاده از شناسه بیت 11- ، در حالی که قاب گسترده دارای یک شناسه بیت 29- ، استاندارد خاص است قاب ، ساختار قاب گسترده.

 

2.3.3 همگام سازی سخت و تنظیم مجدد


2.3.1 هماهنگ سازی سخت


به اصطلاح هماهنگ سازی سخت به این معنی است که در دوره بیکار اتوبوس (یعنی سطح اتوبوس به عنوان یک بیت مغلوب مداوم بیان می شود) ، هنگامی که کنترل کننده پرش را از سطح مغلوب به سطح غالب تشخیص دهد ، به این معنی است که در این زمان در آنجا وجود دارد یک ایستگاه در اتوبوس برای شروع ارسال داده ها است ، سپس پیشخوان حالت بیت کنترل کننده CAN را مجبور به همگام سازی با بخش SS نشان داده شده در شکل 2 و در عین حال ، ساعت بیت از این نقطه شروع به بازگو کردن می کند به بعد (زمان بیت قوطی توسط لایه نرم افزاری بالا تنظیم شده است). هماهنگ سازی سخت برای شروع تعیین فریم استفاده می شود.


2.3.2 تنظیم مجدد


در پروتکل اتوبوس CAN ، تنظیم مجدد بر اساس مکانیسم پر کردن بیت اجرا می شود. مشابه پروتکل HDLC ، در ساختار قاب CAN ، پس از پنج بیت متوالی از همان قطبیت از شروع قاب تا زمانی که بیت توالی CRC تشخیص داده شود ، کنترل کننده CAN به طور خودکار کمی از قطبیت مخالف را وارد می کند. همگام سازی مجدد این است که در حین انتقال داده ، کنترل کننده CAN با تشخیص تفاوت بین لبه پرش در اتوبوس و زمان بیت داخلی گره ، بخش تنظیم فاز 1 و بخش تنظیم فاز 2 را تنظیم می کند و اندازه تنظیم توسط هماهنگ سازی برنامه ریزی می شود عرض پرش و اندازه تنظیم در TQ تنظیم شده است. قانون تعدیل خاص این است که ، در فرآیند انتقال ، لبه پرش در اتوبوس شناسایی شده توسط کنترل کننده CAN توسط کنترل کننده CAN تنظیم می شود اگر در دوره زمانی بیت SS داخلی گره قرار داشته باشد ، پس هیچ تنظیم لازم نیست. اگر لبه پرش در بخش TESG1 قرار داشته باشد ، به این معنی است که در زمان بیت در اتوبوس نسبت به زمان بیت گره تأخیر وجود دارد ، پس کنترل کننده CAN مدت زمان بیت TESG1 گره را گسترش می دهد ، و اگر اگر مقدار زمان تأخیر (مقدار t 0) از عرض پرش همگام سازی بیشتر است ، زمان فرمت مقدار عرض عرض همگام سازی است ، در غیر این صورت کنترل کننده قوطی گره تفاوت بین آن و زمان بیت اتوبوس را گسترش می دهد. اگر لبه پرش در بخش TESG2 قرار داشته باشد ، نشان می دهد که زمان بیت در اتوبوس نسبت به زمان بیت گره بیش از حد است ، پس کنترل کننده CAN مدت زمان بیت TESG2 گره را کاهش می دهد ، قوانین تنظیم خاص مشابه است بخش TESG1.


3. آیا می توانید تجزیه و تحلیل مکانیسم آدرس اتوبوس


بر خلاف اترنت صنعتی ، RS485 و سایر اتوبوس ها ، CAN Bus به جای آدرس گره ، داده ها را از طریق شناسه بسته ارسال و دریافت می کند ، یعنی گره های موجود در اتوبوس CAN دارای آدرس ثابت نیستند ، در عوض ، هر گره باید از طریق پیکربندی شود نرم افزار با یک جدول شناسه (در واحد فیلتر پذیرش گره) ، و اگر شماره شناسه بسته داده موجود در اتوبوس در جدول شناسه گره وجود داشته باشد ، بسته با موفقیت عبور می کند پذیرش واحد فیلتر پذیرش آن گره و به واحد پردازش نرم افزار فوقانی ارسال می شود و بر این اساس پردازش می شود ، در غیر این صورت ، بسته دور ریخته می شود. به عنوان مثال ، اگر گره A در اتوبوس بخواهد بسته ای را به گره B ارسال کند ، شماره شناسه بسته باید در جدول شناسه گره B قرار داشته باشد. به طور مشابه ، اگر گره A بخواهد یک بسته را به اتوبوس پخش کند ، شماره شناسه بسته باید در جداول شناسه تمام گره های دیگر در اتوبوس قرار داشته باشد. همانطور که قبلاً ذکر شد ، جدول ID از طریق نرم افزار پیکربندی شده است ، اما عملکرد فیلتر پذیرش از طریق فیلتر پذیرش ، یک واحد سخت افزاری در کنترلر CAN انجام می شود ، بنابراین تأخیر ناشی از پذیرش از نظر سرعت اندک است. علاوه بر این ، مزیت استفاده از این مکانیسم آدرس این است که سیستم استفاده از این اتوبوس بسیار انعطاف پذیر است ، یعنی گره های جدید اضافه شده یا حذف شده بر ارتباط بین گره های اصلی سیستم تأثیر نمی گذارد.

 

موارد زیر کنترل کننده CAN را با تراشه LPC2478 NXP به عنوان نمونه ای برای مشخص کردن روش پیکربندی آدرس سیستم اتوبوس CAN یکپارچه می کند. همانطور که در شکل 3 نشان داده شده است ، اول با توجه به بسته های داده ای که در اتوبوس منتقل می شوند ، طبقه بندی می شوند ، یعنی شناسه بسته و برنامه ریزی گره مربوطه ، به عنوان مثال ، در سیستم ما عمدتا انواع زیر وجود دارد: بسته های پرس و جو ، بسته های فرمان کنترل (از جمله بسته های عمل و پارامتر) ، بسته های زنگ هشدار و بسته های پارامتر بازخورد ، مربوط به ویژگی های گره بسته های پرس و جو و بسته های فرمان کنترل عمدتاً ایستگاه اصلی ارسال شده به هر واحد برده است ، در حالی که داده های زنگ دار بسته ها و بسته های داده پارامتر بازخورد عمدتاً از هر واحد گره برده به گره واحد اصلی ارسال می شوند. سپس ، واحد فیلتر پذیرش هر گره مطابق با طبقه بندی شناسه پیکربندی شده است و روش پیکربندی خاص به شرح زیر است: اولا ، حالت های کار فیلتر پذیرش مربوطه را مطابق با ویژگی های گره پیکربندی کنید: حالت خاموش (دریافت پیام های اتوبوس) ، حالت بای پس (دریافت تمام پیام ها در اتوبوس) و حالت کار عادی (فیلتر سخت افزار). اگر پیکربندی برای حالت عادی عملکرد ، باید جدول فیلتر پذیرش مربوطه (جدول ID) را پیکربندی کنید ، یعنی گره برای پر کردن قسمت جدول شناسه مربوطه باید شماره شناسه بسته کنترل کننده گره را دریافت کند ، و این کار تخصیص آدرس گره CAN BUS را تکمیل می کند. به طور کلی ، جدول ID به چهار حوزه زیر تقسیم می شود: منطقه شناسه فریم استاندارد ، منطقه شناسه گروه استاندارد فریم ، منطقه شناسه فرمت فریم گسترده و منطقه شناسه گروه فریم گسترده. در میان آنها ، فرمت صریح یک شناسه شناسه مستقل واحد است ، در حالی که منطقه فرمت گروه دارای شناسه شناسه متوالی است.


4. آیا می توانید تجزیه و تحلیل مکانیسم داوری اتوبوس


داوری اتوبوس ، به زمانی که اتوبوس بیش از یک گره در همان زمان برای ارسال روش های پردازش پروتکل اتوبوس داده دارد ، اشاره می کند. آیا اتوبوس می تواند از یک مکانیسم داوری غیر مخرب استفاده کند ، یعنی اگر بیش از یک گره در اتوبوس همزمان برای ارسال داده ها ، با یک داوری گره بسته بندی بالا ، برنده شوید ، می توانید به ارسال داده ها و سایر خرابی های داوری ادامه دهید گره از حالت ارسال کننده خارج می شود و با سایر مکانیسم های داوری اتوبوس (مانند CSMA LAN) به یک گره دریافت کننده تبدیل می شود. (در مقایسه با سایر مکانیسم های داوری اتوبوس (به عنوان مثال CSMA/CD LAN) ، نه تنها داده های ارسال شده را از بین نمی برد ، بلکه باعث تأخیر در ارسال داده ها نمی شود ، که یکی از مزایای اتوبوس CAN در مقایسه با سایر اتوبوس ها است. ، و عمدتا با دو ویژگی زیر اتوبوس CAN تحقق می یابد: 1) خط و ویژگی های اتوبوس CAN ، یعنی ، هنگامی که بیش از یک گره در اتوبوس همزمان با اتوبوس سطح غالب و نامرئی را ارسال می کند سطح سطح غالب است. 2) خط و ویژگی اتوبوس CAN ، یعنی ، هنگامی که بیش از یک گره در اتوبوس به طور هم زمان سطح غالب و نامرئی را ارسال می کند ، سطح اتوبوس سطح غالب را نشان می دهد. 2) کنترلر می تواند وضعیت سطح اتوبوس را حتی در هنگام ارسال داده ها نظارت کند ، یعنی ، هنگامی که در داوری ، وقتی کنترلر سطح نامرئی را ارسال می کند اما اتوبوس را به عنوان سطح قابل مشاهده تشخیص می دهد ، داوری گره از بین می رود و به گره دریافت می شود.


5. آیا تجزیه و تحلیل استحکام اتوبوس می تواند


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


5.1 نظارت در زمان واقعی شکل موج اتوبوس


کنترل کننده می تواند نه تنها بسته های داده ارسال شده توسط گره های دیگر در اتوبوس را تمام وقت پس از برقراری نیرو انجام دهد ، بلکه داده های ارسال شده توسط خود را در فرآیند ارسال بسته های داده در زمان واقعی ، پس از تشخیص خطاها در محل ، نظارت می کند. خطاهای بالغ ، خطاهای CRC ، خطاهای قالب بندی یا خطاهای پاسخ ، گره براساس وضعیت خطایی است که در آن (خطا فعال شده یا خطا شناخته شده خطا) برای ارسال پرچم خطای مربوطه خواهد بود. در واقع ، من معتقدم که فقط سایت فعال سازی خطا آرم خطای فعال سازی را ارسال می کند (یعنی 6 بیت غالب متوالی و به دنبال آن 8 بیت مغلوب از شخصیت تعریف کننده آرم خطا) در حالی که در اتوبوس و گره های اتوبوس تأثیر می گذارد ، در حالی که تأثیر می گذارد. گره موجود در حالت تشخیص خطا ، آرم تشخیص خطا در واقع هیچ تاثیری در اتوبوس ندارد (6 سطح مغلوب ارسال شده با حالت بیکار اتوبوس یکسان است).


5.2 نظارت بر وضعیت گره برای تعیین امتیازات گره


گره ها مطابق بسته های ارسال شده در اتوبوس ، حالت خود (فعال شده در خطا ، خطا یا حالت اتوبوس) را در زمان واقعی تغییر می دهند. گره ها در حالت فعال شده با خطا به طور عادی در ارتباطات اتوبوس شرکت می کنند و واحدهای شناخته شده خطا در ارتباطات اتوبوس شرکت می کنند ، اما قبل از شروع ارسال بعدی ، باید 8 بیت ضمنی اضافی ارسال کنند. برای بسته های ارسال شده در اتوبوس ، همانطور که در جدول 1 نشان داده شده است ، دنباله CRC {7}}} bit ، نظارت بر بیت شروع ، قسمت داوری ، قسمت کنترل و قسمت داده (در صورت وجود) ، سایت دریافت کننده را پیاده سازی می کند. دنباله CRC بسته را مطابق با همان الگوریتم به عنوان گره ارسال کننده هنگام دریافت داده ها تولید می کند و آن را با توالی CRC دریافت شده مقایسه می کند ، اگر متفاوت باشد ، این بدان معنی است که یک خطا وجود دارد و گره دریافت کننده به گره دریافت کننده پاسخ نمی دهد و به بسته پاسخ نمی دهد و گره ارسال کننده خطای پاسخ را تشخیص داده و بسته را دوباره ارسال می کند. در پایان ، CAN Bus از طریق لایه پیوند داده و لایه فیزیکی به امنیت داده های بالا و ثبات اتوبوس دست یافته است.


6. نتیجه گیری


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

ارسال درخواست

whatsapp

تلفن

ایمیل

پرس و جو