سلام خدمت همه شما مایکروالکامی ها. یکی از راه های ارتباطی در بستر سریال استفاده از پروتکل های صنعتی همانند RS-485 ،RS232 و همانند آن است. در این مطلب به معرفی و بررسی ارتباط صنعتی RS485 و عملکرد آن و همچنین مزایای آن پرداخته خواهد شد. پس با من تا انتهای مطلب همراه باشید. همچنین شما میتونید سایر مطالب من رو از این لینک مطالعه و بررسی کنید.
معرفی RS485
استاندارد های زیادی در ارتباط سریال وجود دارد که یکی از آنها RS485 میباشد. این پروتکل ارتباطی را نیز با نام های TIA-485 یا 485-EIA نیز میشناسند. RS-485 حاصل ارتباط و تلاش مشترک انجمن صنعت ارتباطات (TIA) و اتحادیه صنایع الکترونیک (EIA) است. پروتکل RS485 یک مشخصه صنعتی است که در واقع معرفی کننده رابط الکتریکی و لایه فیزیکی برای ارتباطات نقطه به نقطه (Point to Point) است. از مزایای این بستر ارتباطی میتوان به طول کابل بیشتر، استفاده در محیط های پر نویز و پشتیبانی از چند دستگاه در یک درگاه Bus اشاره کرد.
استفاده از بستر ارتباط صنعتی RS-485
از سال 1998 که استاندارد RS485 معرفی شده است این بستر در بسیاری از کاربرد ها نظیر سیستم های اتوماسیون استفاده شده است. از آنجا که در این بستر ارتباطی قابلیت اتصال چند دستگاه در یک Bus و طول کابل کشی بیشتر وجود دارد، مسیر را جهت استفاده از آن در صنعت و اتوماسیون هموار تر کرده است.
قابلیت مصونیت در برابر نویز که در این پروتکل وجود دارد خود مزیدی بر علت شده تا تنوع کاربرد آن بیشتر شود. طراحان سیستم های الکتریکی یا الکترونیکی نه تنها بخاطر کابل کشی بیشتر این پروتکل بلکه بخاطر نویز پذیری کمتر آن مثلا در صنایعی همانند خودرو سازی از آن بهره برده اند.
کاربرد مناسب RS485
علاوه بر RS485 پروتکل های RS232 و RS422 نیز وجود دارد. اما مکان و دلیل استفاده هر کدام منحصر به خود بوده و وجه تمایز با سایر بستر ها میباشد. در ادامه بصورت کاملا خلاصه کاربرد مناسب هر یک به تفصیل بیان شده است.
- RS232: مناسب جهت برقراری ارتباط با مودم ها، پرینتر و سایر لوازم جانبی کامپیوتر ها است. حداکثر طول کابل مجاز در این بستر 100ft معادل با حدود 30 متر میباشد.
- RS422: مناسب کاربرد و کار در محیط های صنعتی که فقط به یک Bus راه انداز (driver) نیاز است. از این پروتکل در کابرد هایی نظیر اتوماسیون فرآیند مانند مواد شیمیایی،کارخانه های کاغذ و نظیر آن، اتوماسیون کارخانجات مانند ساخت فلز، HVAC، کنترل موتور، کنترل حرارت استفاده میشود.
- RS485: مناسب کاربرد های در محیط های صنعتی که نیازمند بیشتر از یک Bus یا درگاه driver میباشد. کاربرد معمول این پروتکل همانند RS422 میباشد.
استاندارد RS485
همانطور که پیش تر بیان شد این پروتکل را نیز با نام های 485-TIA یا 485-EIA نیز میشناسند. با استفاده از مدل OSI میتوان لایه های مختلف یک سیستم ارتباطی را از طریق لایه های الکتریکی و نهایتا به لایه فیزیکی مشخص کرد.
لایه فیزیکی OSI
لایه فیزیکی در مدل OSI جهت بیان و انتقال دیتا بین دستگاه و مسیر انتقال است. در این لایه سیگنال های الکتریکی به دیجیتال تبدیل شده و ولتاژ، نرخ دیتا و سایر پارامتر ها را بیان میکند. در RS485 از دو خط سیگنال با نام های A و B استفاده میشود. این دو خط باید بصورت متعادل و دیفرانسیلی باشند. سیگنال های متعادل در واقع دو خط مشترک اند که بصورت جفتی (زوج) در یک کابل بهم تابیده شده و امپدانس در هر خط برابر میباشد. امپدانس خط انتقال باید با امپدانس گیرنده و فرستنده برابر باشد.
در تصویر زیر یک شبکه RS485 نشان داده شده است که هر دستگاه دارای گیرنده و فرستنده RS485 بصورت دیفرانسیلی بوده و اتصال بین دستگاه ها توسط یک جفت کابل به هم تابیده شده و مقاومت پایان کانال تشکیل شده است. کابل متعادل و برابر، قابلیت کاهش نویز را هنگام استفاده از سیگنال تفاضلی به ارمغان میآورد. سیگنال های A و B بیانگر زوج دیفرانسیلی بوده و یکی از سیگنال ها با سیگنال اصلی مطابقت دارد. این در حالی است که سگینال دیگری کاملا معکوس بوده و از همین رو گاهی آن را سیگنال مکمل نیز بیان میکنند.
عملکرد فرستنده و گیرنده
در این ارتباط گیرنده سیگنال دریافتی را با زمین رفرنس قرار داده و سطح ولتاژ سیگنال با آن بدست میآید. سطح ولتاژ بیان شده به عنوان سطح منطقی شناخته شده و بیان کننده High یا Low بودن سیگنال میباشد. در فرستنده جفت سیگنال دیفرانسیلی ساخته شده توسط سیم ها ارسال شود.
با دو سیگنال ساخته شده، گیرنده سطح ولتاژ را بر مبنای زمین قرار نمیدهد. بلکه سیگنال ها را بر مبنای یکدیگر قرار خواهد داد. به تعبیری دیگر گیرنده بجای سطح ولتاژ خاص، تفاوت بین دو سیگنال را مد نظر قرار میدهد. نهایتا در گیرنده دیفرانسیلی از دو سیگنال موجود یک سیگنال واحد ساخته شده که این همان سیگنال اصلی است که فرستنده ارسال کرده است. در تصویر زیر بازسازی سیگنال قابل مشاهده است. تضعیف سیگنال تنها مشکل ناشی از طولانی بودن کابل نیست. بلکه خود عاملی بوده تا نویز برروی سیگنال و نهایتا کل سیستم تاثیر بیشتری داشته باشد.
حذف نویز در RS-485
هنگامی که نویز روی کابل قرار گیرد، دارای مقادیر متفاوتی است. مزیت استفاده از کابل زوج یا جفت تابیده شده در RS485 این است که این نویز در هر خط به یک اندازه قرار میگیرد. مثلا با یک اسپایک مثبت 2 ولت، در خط A نویز دارای ولتاژ 2v+ و نویز در خط B دارای ولتاژ 2v+ است. از آنجا که گیرنده دیفرانسیلی میباشد، برای ساخت سیگنال اصلی دو سیگنال را از یکدیگر کم میکند، نویز روی سیگنال از یکدیگر کم و تاثیر آن حذف میشود.
یکی دیگر از مزایای اصلی لایه فیزیکی RS-485 مشخصات ولتاژ سیگنال است. در این پروتکل نیاز به استفاده از ولتاژ خاص در درگاه Bus نیست. اما در عوض حداقل ولتاژ دیفرانسیلی که در واقع تفاوت بین ولتاژ سیگنال های A و B است مشخص میشود. درگاه Bus به حداقل ولتاژ دیفرانسیلی200mV± در گیرنده نیاز دارد. بطور کلی تمام دستگاه های ذیل این پروتکل با وجود ارسال در ولتاژ مختلف، دارای محدوده ولتاژ ورودی برابر هستند. به تعبیر دیگر، هر دستگاه RS485 قادر به دریافت سیگنال با محدوده ولتاژ 7V- تا 12V است.
توپولوژی شبکه در RS485
استاندارد های RS485 پیشنهاد میکند که node های آن بصورت bus شبکه شوند. در این توپولوژی driver ها، گیرنده ها، گیرنده/فرستنده ها به یک main متصل میشوند. این گذرگاه میتواند برای تبادل بصورت نیمه دو طرفه یا تمام دو طرفه طراحی شود.
در حالت full-duplex به دو زوج سیم و گیرنده/فرستنده تمام دو طرفه با bus جداگانه و دسترسی به خطوط ارسال ودریافت نیاز است. در full-duplex این قابلیت وجود دارد که همزمان با ارسال دریافت در یک زوج سیم، در زوج دیگر دریافت دیتا انجام شود. حالت half-duplex فقط یک زوج سیم نیاز است.
تبادل دیتا در RS485
این پروتکل یک ارتباط دو طرفه (duplex) بوده که چندین دستگاه میتوانند در یک bus مشترک در هر دو طرف تبادل دیتا نمایند. این پروتکل اغلب بصورت نیمه دو طرفه یا half-duplex فقط با یک خط دیتا (خط A و خط B جفت شده) استفاده میشود. در حالت half-duplex، دستگاه ها از یک خط مشترک به نوبت استفاده میکنند که host کنترل درگاه را انجام داده و فرامین را به تمام دستگاه های موجود ارسال مینماید. گیرنده به آدرس ارسالی روی خط دقت کرده و در صورت فراخوان آن اجازه کنترل به فرسنده داده خواهد شد. در حالت تمام دو طرفه (full-duplex) همانند پروتکل SPI یا UART، دستگاه host و slave میتوانند در یک زمان بر روی خطوط ارسال و دریافت اختصاصی ارتباط برقرار نمایند.
ارتباط سریال UART
فرمت UART بطور کلی ثابت بوده و حالت سکون آن در ابتدا 1 است. برای شروع تبادل باید یک بیت با نام start bit ارسال شده و به دنبال آن سایر بیت های مورد نیز از bit0 تا bit7 و در انتها یک بیت پایان یا stop bit نیز ارسال میشود.
در host یک پایه IO برای قرار دادن فرستنده/گیرنده RS485 در مد فرستنده استفاده شده و یک بایت از خط TX بستر UART به خط دیتا (D یا DI) گیرنده-فرستنده RS-485 ارسال میکند. گیرنده-فرستنده بیت های UART را به صورت دیفرانسیلی برروی خطوط دیتا A و B تبدیل میکند. بلافاصله بعد از ارسال دیتا، دستگاه host از حالت گیرنده-فرستنده به حالت گیرنده تغییر وضعیت خواهد داد. در slave گیرنده-فرستنده RS-485 دیتا های ورودی را دریافت و آن را به یک سگینال تبدیل کرده تا از پایه Rx بستر UART دستگاه slave به host ارسال نمیاد.
کابل مورد نیاز RS-485
همانطور که پیش تر ذکر شد نکته مثبت استفاده از RS-485 این بود که از زوج سیم بصورت دیفرانسلیی استفاده میشد. زیرا نویز منابع خارجی بصورت برابر در دو سیم بصورت نویز مد مشترک couple میگردید و در نتیجه در ورودی دیفرانسیلی گیرنده این نویز حذف میشود.
کابل های صنعتی RS485 بصورت روکش دار، بدون محافظ، جفت تابیده شده، UTP اند که دارای یک ویژگی و امپدانس 120 اهم و کابل های 22-24AWG میباشند. همچنین کابل های Cat5 ،Cat5e ،Cat6 از جمله کابل های رایج و مورد استفاده این پروتکل هستند. در تصویر زیر سطح مقطع کابل UTP چهار زوج نشان داده شده است که معمولا برای دو شبکه full-duplex استفاده میشود. به صورت مشابه کابل هایی بصورت دو زوج و تک زوج نیز موجود است و برای کاهش هزینه بصورت نیم دو طرفه استفاده میشوند.
عوامل موثر در نرخ دیتا RS485
- طول کابل: در فرکانس مشخص، سیگنال متناسب با طول کابل تضعیف میگردد.
- کابل مورد نیاز: کابل های زوج تابیده شده Cat5 ،Cat5e ،Cat6 AWG24 از جمله رایج ترین کابل های این پروتکل هستند.
- افزودن محافظ به کابل: باعث بهتر شدن مصونیت در برابر نویز شده و باعث افزایش سرعت دیتا در فاصله مشخص میشود.
- امپدانس کابل: ظرفیت خازنی و سلفی توزیع شده لبه های موج را کاهش داده و همچنین باعث کاهش حاشیه نویز شده و eye pattern را تحت تاثیر قرار میدهد. همچنین مقاومت نیز باعث کاهش سیگنال میشود.
- امپدانس خروجی driver: در صورتی که خیلی زیاد باشد، driver را محدود میکند.
- امپدانس ورودی گیرنده: در صورتی که خیلی کم باشد، باعث محدود کردن تعداد گیرنده هایی میشود که driver میتواند پشتیبانی کند.
- امپدانس برابر: یک کابل همانند یک کانال انتقال عمل میکند. در صورت برابر بودن امپدانس از ایجاد موج برگشتی جلوگیری کرده و آن را کاهش داده و باعث دستیابی به سرعت دیتای مناسب میشود.
- حاشیه نویز: هر چه بیشتر باشد بهتر است.
- Slew rate در driver: لبه های آرام تر (سرعت کمتر) انتقال در طول کابل های طولانی تر را میسر نموده اما حداکثر سرعت دیتا قابل دستیابی را کاهش میدهد.
- ارتباط نقطه به نقطه در مقابل چندین نقطه: ارتباط چندین نقطه ای باعث کاهش سرعت دیتا میشود.
نتیجه گیری
با استفاده از RS485 میتوان در محیط های صنعتی و نویزی به یک ارتباط قابل اطمینان دست یافت. با در نظر گرفتن رابطه بین دیتا ریت و طول کابل، میتوان سیستمی را طراحی کرد که بدون ریپیتر تا چندین متر آن طرف تر تبادل دیتا کرد.
امیدوارم از این مطلب کمال بهره را برده باشید. در صورت داشتن هرگونه نظر یا سوال درباره این مطلب یا تجربه مشابه اون رو در انتهای همین صفحه در قسمت دیدگاه ها قرار بدید. در کوتاه ترین زمان ممکن به اون ها پاسخ خواهم داد. اگر این مطلب براتون مفید بود، اون رو به اشتراک بگذارید تا سایر دوستان هم بتوانند استفاده کنند. همینطور میتونید این مطلب را توی اینستاگرام با هشتگ microelecom# به اشتراک بگذارید و پیج مایکروالکام (microelecom@) رو هم منشن کنید.