بسم الله الرحمن الرحيم
أخي العزيز إليك بعض من معلوماتي المتواضعة عن RS485
RS485 ما هو إلى تقنية من تقنيات التوصيل التسلسلي مثل RS232 ولنتعرف أكثر على RS485 سوف نقوم اثناء هذه التلميحات البسيطة بمقارنة بينه وبين RS232
serial communication methods
طرق الاتصال التسلسلي هي طرق مستخدمة للربط بين الأجهزة وبين الكمبيوتر أو بين الاجهزة وبعضها أو بين الكمبيوترات وبعضها .... ومن هذه الانواع أو الطرق
RS232 و RS485 و العديد العديد ....... ولكن هذين النوعين هما ما سيتم شرحهم بشكل وجيز ...
RS232 وشكل الكيبل له في الكمبيوتر متعدد منه
RS232 DB9 pinout

ويوجد له العديد من التطيبقات من أهمها توصيله مع جهاز يعمل بواسطة المايكروكنترولر مثل Pic,avr وغيره
وهذا النوع من التوصيل له ميزة كبيرة أنه متوفر في معظم أجهزة الحاسوب وإن لم يوجد يمكن استخدام وصلة تحويل من usb إلى rs232 لتقوم بحل محلها..
إذاً إذا كان تطيبق المايكروكنترولر يستخدم هذا النوع من التقنية فهي من أنسب التقنيات لتوصيله مع الحاسب الالي ..
ولكن ... يجب ان تعلم أن هذه التقنية تعتمد في الارسال (ارسال البيانات) على سلك واحد يتم فيه ارسال البيانات عن طريق نبضات متتالية عبارة عن صفر وواحد حيث الواحد عند جهد معين والصفر عند جهد معين .... بما انه سلك واحد اذن يسمى في هذه الحالة بـ one DTE أي (Data Terminal Equipment)
وكذلك المستقبل (الريسيفر) يكون one DCE
Data Communication Equipment
وأقصى سرعة له
20 kbps
ويجب أن لا يزيد طول الكابل عن خمسين قدم
لن أكثر من الكلام عن RS232 فهو ليس موضوعنا ولنتحدث عن أهم النقاط فيه قبل ان نتركه ::
عيوبه ::- أهم عيوب RS232
1- أنه لا يمكن استخدام أكثر من DTE مباشرة في هذه التقنية إلا باستخدام modems .
2- سرعته لا تكفي لبعض التطبيقات فهناك تطبيقات تحتاج سرعات أعلى
3- لا يمكن استخدامه في المسافات الكبيرة
4- تعتمد تقنية الارسال فيه على نقطة إلى نقطة point to point وليس Multipoint
5- وهو أهم عيب قلة مناعته ضد الضوضاء Noise
========================================
لماذا ذكرت هذه العيوب ؟؟؟؟ لنتعرف على RS485
RS485 كما قلنا أنه أحد تقنيات التوصيل أو الاتصال التسلسلي وأهم مميزاته أنه لا توجد فيه العيوب الخمسة السابقة الموجودة فيRS232 حيث أنه يعتمد في تقنية الارسال على سلكين sig+ و sig- أي أنه لارسال معلومة معينة يتم ارسالها من خلال استخدام السلكين معا وليس واحد منهم ...
ثم يقوم المستقبل بعد ذلك باستقبال الاشارة الموجودة على السلكين ويقارن بين فرق الجهد بينهما ليتم الحصول على المعلومة أو البيانات ...
من خلال هذه التقنية تكون قوة التغلب على الضوضاء أكبر
بإلاضافة إلى ان طريقة الاتصال تكون Multi point اي يمكن استخدامه في الاتصال بين العديد من الاجهزة ...
إذن لنتعرف على أهم المميزات التي تميز RS485
1- يمكن استخدام أكثر من DTE في نفس الوقت بشكل مباشر دون الحاجة إلى استخدام modems حيث يمكن أن نوصل 32 جهاز في نفس الوقت مباشرة
2- سرعته عالية جدا تصل إلى 35mbs لسلك طوله 12 متر و سرعة 100kbs لسلك طوله 1200 متر ..
3- اذن نستنتج انه يمكن استخدامه لمسافات كبيرة
4- تعتمد تقنية الارسال على Multi point وهذا يمكنه من الاتصال بعدد كبير من الاجهزة بشكل مباشر .
5- مقاومته للضوضاء أكبر من RS232
==============================
لأن الـRS232 يعتمد على الصفر كجهد مرجعي اذن أي تغير في هذه الجهد المرجعي سيسبب Noise أما RS854 يعتمد على فرق الجهد بين الاشارتين sig+ و sig-
لذلك هو أكثر ممانعة للضوضاء وكما أننا لو قمنا بلف السلكين حول بعضهما البعض سيقلل ذلك من الضوضاء كما هو موضح بالشكل ..

==============================
كانت هذه لمحة بسيطة عن تقنية RS485
أما بالنسبة لقضية توصيله مع المايكروكنترولر أو عدة متحكمات وليس متحكم واحد فهذه القضية ممكنة كما يوضح الشكل فكرة بسيطة عن ذلك
ويستخدم في ذلك الغرض دوائر متكاملة مع المتحكم لتسهيل عملية الاتصال
سواءا في الارسال والاستقبال مثل
ltc485 أو max485
يمكنك البحث عنها في الانترنت لمعرفة معلومات عنها و ارجع للداتاشيت الخاص بها
http://www.b-kainka.de/Daten/Mikros/LTC485.pdf
واذا اردنا توصيل المتحكم بجهاز الكمبيوتر يمكن استخدام الدائرة المتكاملة max232
واليك صورة تستخدم هاتين الدائرتين المتكاملتين
أما بالنسبة للناحية البرمجية ... فلقد اصبحت مع اللغات الحديثة أسهل بكثير
اذا استخدمت كومبايلر مثل MikroC أو MikroBasic فإنك ستجد فيهما مكتبة لدعم هذه التقنية
اسم المكتبة : RS-485 Library
بها العديد من الدوال التي تسهل العمل بالإضافة إلى الامثلة كل ذلك تجده داخل help الخاص باللغة
هذه الدوال هي :-
RS485Master_Init يقوم بالتهيئة initialization
RS485Master_Receive يقوم بالاستقبال
RS485Master_Send يقوم بالارسال
RS485Slave_Init تهيئة slave
RS485Slave_Receive استقباله
RS485Slave_Send ارساله
وستجد الشرح المفيد والوافي في الـhelp كما أخبرتك وكذلك ستجد مثالا عمليا بالكود الخاص به
==========================
هذه بعض معلوماتي المتواضعة أتمنى أن تكون قد استفدت منها ولو شيئا بسيطا
====================
وفقنا الله جميعا لما يحب ويرضى والسلام عليكم ورحمة الله وبركاته