رفتن به مطلب

بررسي پروتكل هاي rs 232,rs485


ارسال های توصیه شده

ارتباطات سریال

 تعریف

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

 انواع

سنکرون (همزمان):

یک سیگنال زمانی از طریق یک کانال مجزا همراه با پیام ارسال می شود. (مثل استاندارد I2C و RS232 )

آسنکرون (غیرهمزمان):

در این روش اطلاعات زمان بندی همراه با سیگنال ارسال می شود. (مثل RS232, RS485)

 بررسی

از لحاظ تئوری تنها یک سیم برای انتقال اطلاعات سریال به صورت آسنکرون لازم است اما در واقعیت این مسئله عملی نیست. به عنوان مثال اگر یک بیت از اطلاعات بر اثر خطا یا نویز تغییر کند ممکن است کل اطلاعات بعد از آن یک بیت شیفت پیدا کند و پس از تفسیر و تبدیل به دیتای موازی کل اطلاعات مخدوش شود. بنابراین نیاز به استاندارهایی وجود دارد که امکان ارتباط قابل اطمینان را فراهم کند. یکی از این استانداردها RS232-C است که در سال 1969 توسط موسسه EIA تعریف شد. اگرچه نام این استاندارد RS232-C است اما معمولا به نام RS232 شناخته می شود و مخفف Recommended Serial می باشد. این استاندارد معمولا در پورت سریال کامپیوترهای شخصی استفاده می شود.

پروتکل ارتباطی RS232 در لایه ی هفتم مدل OSI قرار می گیرد و موارد زیر در آن تعریف شده است:

- مشخصات الکتریکی سیگنال از قبیل سطح ولتاژ، نرخ سیگنال، زمان بندی و Slew Rate، سطح مقاومت ولتاژ، رفتار اتصال کوتاه، بیشینه ی جریان ظرفیتی و طول کابل

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

- عملکرد هر مدار در کانکتور واسط

- زیر مجموعه های استاندارد از مدارهای واسط برای آن کاربرد ارتباطی

 

همانطور که گفته شد این استاندارد در لایه های زیرین مدل OSI کار می کند و مشخصات لایه های بالا از جمله کدگذاری کاراکتر (مثلا ASCII) و همچنین قالب بندی کاراکتر (مثل بیت شروع و پایان یا بیت توازن) در قالب این استاندارد قرار نمی گیرد و معمولا بوسیله ی نرم افزار تعیین و تفسیر می شوند. این استاندارد سقف ماکزیمم نرخ بیت را 20.000 bps تعریف کرده است در حالی که بسیاری از تجهیزات جانبی مثل مودم ها از این اندازه تجاوز کرده و با نرخ هایی بالاتر از این (مثل: 38.400 ، 37.600 و 115.200) با سطح ولتاژ RS232 کار می کنند.

:: سطوح سیگنال RS23:

در این استاندارد سطح ولتاژ 3+ تا 12+ نمایانگر وضعیت Space یا صفر منطقی و بازه ی 3- تا 12- ولت نمایشگر وضعیت Mark یا یک منطقی می باشد. این در حالی است که تجهیزات استاندار TTL (مثل میکروکنترلر 8051) با سطوح بین 0 و 5 ولت کار می کنند. برای تبدیل ولتاژ RS232 و TTL به یکدیگر باید از مبدل های ولتاژ استفاده کرد که یکی از این ها مدار مجتمع و یا HIN232 می باشد. که MAX232 یک تراشه ی 16 پایه است که شامل 2 فرستنده و 2 گیرنده است. در زیر یک مدار نمونه را برای کار با این IC مشاهده می کنید.

12 ولت، ولتاژ نامی در حالت بی باری است و معمولا در حالت مدار باز دقیقا 12 ولت نیست و کمی کمتر است، مثلا در مورد PC من این اندازه 11.25 ولت بود. اما در مورد جریان نیز، جریان نامی بین 7 تا 10 میلی آمپر در حالت اتصال کوتاه است و این مقدار بستگی که مدار اینترفیس PC (شامل UART و غیره) شما دارد و مثلا در مورد کامپیوتر من این مقدار 8.9 میلی آمپر بود. استاندارد RS232 برای وسایل استاندارد با مقاومت بین 3 تا 7 کیلو اهم طراحی شده است و بنابراین با افزایش جریان، ولتاژ پورت شدیدا افت می کند و معمولا به ازای هر میلی آمپر جریان اضافی، 1 الی 2 ولت فشار کم می شود و در نهایت روی حدود 0.7 ولت متوقف می شود. لازم به ذکر است که این پورت بر خلاف پورت موازی در مقابل اتصال کوتاه محافظت شده است و همان طور که گفته شد در این حالت جریانی بین 7 تا 10 میلی آمپر می دهد یا می کشد.

 

:: توپولوژی شبکه ای

یکی از معایب استاندارد RS232 بر خلاف RS422 و RS485 این است که تنها برای ارتباط نظیر به نظیر (Peer to Peer) طراحی شده است و امکان شبکه شدن با دیگر ادوات را ندارد. این استاندارد برای فواصل تا حدود 15 متر مناسب می باشد و برای فواصل بیشتر می توان از روش 20mA loop استفاده کرد. (مثل پروگرامر بعضی PLC های زیمنس) اما روش مناسب دیگر در محیط های صنعتی استفاده از RS485 می باشد که در فواصل زیاد تا فرکانس 1MHz نیز کار می کند. بنابراین RS232 برای ارتباطات کم دامنه مثل اتصال دو PC ،PC با یک دستگاه یا دو دستگاه با یکدیگر استفاده می شود.

:: دو مفهومی را که باید در مورد استاندارد RS232 بدانید، اصطلاحات DTE و DCE هستند:

DTE سرنام Data Terminal Equipment است و DCE مخفف Data Communications Equipment. این عبارات برای نشان دادن پین های کانکتور یک دستگاه و جهت ارتباطی سیگنال در پین ها می باشند. معمولا کامپیوتر یک DTE می باشد و دستگاه های دیگر یک DCE و شما می توانید در ادامه ی توضیحات DTE را یک کامپیوتر و DCE را یک دستگاه دیگر فرض کنید. در این استاندارد DTE از یک کانکتور 9 پین Female (یا 25 پین) و DCE از یک کانکتور 9 پین Male (یا 25 پین) استفاده می کند. بنابراین می توان یک DCE را مستقیما به یک DTE کرد اما در حالتهای غیر از این باید از کابل های Null Modem استفاده کرد که در ادامه به آن خواهم پرداخت. اگرچه استاندارد RS232 برای کانکتور 25 پین نیز تعریف شده است اما ما در اینجا بحثمان را بر روی کانکتور 9 پین متمرکز می کنیم چون اغلب PC ها از این کانکتور استفاده می کنند و DB9 نام دارد.

 

 

:: قالب اطلاعات ارسالی:

همانطور که در پست قبل اشاره شد مطالب مربوط به قالب بندی کاراکتر و فریم اطلاعاتی در چارچوب این استاندارد قرار نمی گیرد و توسط نرم افزار تعیین می شود. به طوری که در یک قاب اطلاعاتی که توسط بیت شروع و بیت پایان محصور شده است معمولا 7 یا 8 بیت دیتا قرار می گیرد و یک بیت توازن نیز تعریف می شود. بیت شروع متناظر با صفر منطقی است و بیت پایان (که ممکن است 1 یا 2 بیت باشد) توسط یک شناسایی می شود. مثلا در نمودار زمانی زیر قاب اطلاعاتی شامل 10 بیت است که هفت بیت آن شامل دیتا یک بیت آغازین و یک بیت پایانی و یک بیت توازن (زوج) قبل از بیت پایان می باشد.

:: در زیر مشخصات پین های کانکتور 9 پین استاندارد RS232 را از DTE ملاحظه می کنید:

 

 

پین1 و 9:

این پین ها به ترتیب Carrier Detect و Ring Indicator یا CD و RI نام دارند و مربوط به مودم می شوند که اولی برای تشخیص حامل بر روی خط و دومی برای اعلان یک تماس تلفنی به مودم شماست و معمولا در طراحی های کنترلری به ندرت مورد استفاده قرار می گیرند.

پین های 2و3:

این پین ها به ترتیب Received Data و Transmitted Data یا RD و TD نام دارند و به ترتیب جهت دریافت داده ها یک از یک DCE و ارسال داده ها از یک DTE به یک DCE به کار می روند. این نامگذاری ها ممکن است فریبنده باشند چون پین TD در یک DCE جهت دریافت داده ها به کار گرفته می شود! خط TD در زمان معطلی توسط DTE در حالت مارک نگه داشته می شود.

پین های 7و8:

ابتدا کمی در مورد مفهوم Flow Control:

فرض کنید که یک DTE را به یک DCE متصل کرده ایم، از آنجایی که معمولا سرعت DTE (کامپیوتر) از سرعت یک DCE (مثلا یک مودم یا یک میکروکنترلر) بیشتر می باشد. اگر مکانیسمی جهت کنترل انتقال اطلاعات وجود نداشته باشد، DCE قادر نخواهد بود همه اطلاعات ارسالی از DTE را دریافت کند. این مکانیسم را Flow Control یعنی کنترل جریان اطلاعات می گویند.

پین های 7 و 8 به ترتیب Request to Send و Clear to Send یا RTS و CTS می نامند. فرض کنید که DTE می خواهد یک کاراکتر را برای DCE ارسال کند، در این حالت DTE از طریق پین RTS یک منطقی ارسال می کند و در صورتیکه DCE قادر به دریافت اطلاعات باشد یک سیگنال پاسخ از طریق پین CTS ارسال می کند و در غیر اینصورت خط در حالت صفر نگه داشته میشود و DTE اجازه ندارد

اطلاعات را ارسال کند. به این روش Handshaking یا دست دادن نیز می گویند.

پین های 4و6:

واضح است که DCE به علت سرعت کمتر برای ارسال نیاز به کسب مجوز از DTE ندارد اما در صورت لزوم پین های Data Set Ready و Data Terminal Ready به ترتیب نقشی مشابه RTS و CTS را ایفا می کنند. (به ترتب خطوط 4 و 6)

5پین:

 

زمین سیگنال می باشد.

 

 

:: و نکته ی پایانی ادامه ی توضیحات پین های 7 و 8 می باشد:

فرض کنید دو DTE یا دو DCE بخواهند با هم ارتباط برقرار کنند در اینصورت به علت یکسان بود سرعت دو وسیله نیاز به Flow Control نمی باشد بنابراین پین های 7، 8، 4 و 6 نیاز نمی باشند و گفتیم که خطوط 1 و 9 نیز اغلب در کاربردهای کنترلی استفاده نمی شود پس استاندارد RS232 را در ساده ترین حالت خود به صورت Full Duplex تنها با سه سیم می توان پیاده سازی کرد که به این حالت Null Modem (یعنی بدون مودم) می گویند. برای ساخت یک کابل Null Modem تنها باید خطوط RD و TD را به صورت ضربدری (Cross) به یکدیگر متصل کرد و خط سیگنال (5) را نیز به نظیر خود وصل کرد.

نتيجه گيري :

اگر خیلی ساده بخواهم بیان کنم RS-485 یک پروتکل ارتباطی می باشد. یک پروتکلی شبیه RS-232 که در پورت COM(سریال) رایانه هم مشاهده می شود. اما تفاوت RS-485 و RS-232 در مشخصات فیزیکی آن مثل سطوح ولتاژ است و همین تفاوت سبب شده که بر خلاف RS-232 که در فواصل کم حدود 2 متر قابل استفاده است، RS-485 را بتوان در فواصل طولانی تری به کار برد. یکی از کاربردهای عمده این پروتکل ارسال سیگنال های کنترل (چرخش، زوم) دوربین های مداربسته است.

مبدل هایی هم در بازار موجود است که RS-232 را به RS-485 تبدیل می نماید.

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

يكي از پروتكل‌هاي مطرح در زمينه تجهيزات پست‌هاي برق، پروتكل K-Bus مي‌باشد كه توسط شركت ALSTOM) AREVA)اولين بار در سال 1994 در نمونه‌هاي اوليه رله‌هاي ديجيتال سري K بكار گرفته شد و امروزه در بيش از پنجاه درصد از ايستگاههاي شبكه‌ي برق، از اين سري رله استفاده مي‌شود. از جمله قابليت‌هاي اين پروتكل، امكان شبكه نمودن انواع رله‌هاي ديجيتال سري K با استفاده از پورت ارتباطي K-Bus موجود بر روي اين رله‌ها مي‌باشد. با استفاده مبدل K-Bus Courier مي‌توان پروتكل K-Bus را به پروتكل‌هاي استاندارد و شناخته شده‌ي RS232 يا RS485/RS422 براي كامپيوتر ، RTU و با مودم تبديل كرد و ارتباط رله‌ها را با كامپيوتر جهت استفاده در نرم‌افزارهاي پيكربندي مانند نرم‌افزار S1 برقرار نمود. همچنين امكان ارتباط راه دور از طريق مودم با رله‌ها نيز قابل پياده‌سازي خواهد بود. براي برقراري ارتباط رله‌هاي سري K با سيستم DCS ( سيستم اتوماسيون پست ) نيز مي‌توان از اين مبدل پروتكل استفاده نمود.

لینک به دیدگاه
  • 3 ماه بعد...

معرفی RS485

 

RS485یک پروتکل سریال برای انتقال داده می باشد،این پروتکل که ارتقا یافته ی RS232 است ،بیشتر در صنعت

 

استفاده میشود وتشابه زیادی با RS232 دارد.

در پروتکل RS485 بر مبنای خطوط دیفرانسیلی استفاده می شود، یعنی داده موجود از طریق دو خط ارسال میشود و اگر نویز در محیط موجود باشد،بر روی هر دو خط تاثیر می گذارد و قادر به این نیست که تغییری در آن ایجاد کند: 42142356352615806709.jpgدر حالت 4سیمه ،2 سیم برای ارسال و2سیم برای دریافت (پروتکل RS232) 32195659223514195510.jpgاگر ما 2سیم را حذف کنیم بدین صورت که ارسال و دریافت را بر روی 2سیم داشته باشیم RS485 بوجود می آید. 61281941552985294104.jpgدر RS485 به دلیل استفاده از خطوط دیفرانسیلی می توان فاصله دوسیم را تا 1200متر افزایش داد،که حداکثر سرعت انتقال داده 100 کیلو بیت بر ثانیه است. در فاصله های کم مثلا 10متر سرعت تا 3.5مگا بیت بر ثانیه افزایش خواهد داشت. استفاه از واحد Usart در سری at91sam به سادگی وبا نوشتن عدد 1*0 در رجیستر US_MRمیسر است. در این شرایط واحد usart در حالتی میان حالت سنکرون واسنکرون راه اندازی میشود،در این حالت پایه ی RTS در نقش پایه ENکه در مدار بالا آورده شده ظاهر شده ونقش سوئیچ کردن مبدل در حالت های ارسال و دریافت را بر عهده میگیرد: 27008838876814527139.jpgدر حالت RS485نیز مانند سایر حالتهای قبلی ،بیت اول مربوط به شروع کار ،8بیت بیت بعدی داده موجود روی باس وبیت آخر بیت تشخیص خطا می باشد: 97973342627606306283.jpgبرای درایو کردن پورت RS485 قطعات مختلفی ارائه شده استکه می توان تراشه های MAX485،MAX483 MAX481،MAX1487 ،MAX487 اشاره کرد

 

لینک به دیدگاه

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

×
×
  • اضافه کردن...