قسم الميكروكنترولر والروبوت ودوائر الاتصال بالحاسب الالي قسم المتحكمات الـ microcontroller و المعالجات microprocessor و التحكم الرقمي بالكمبيوتر CNC والانظمة الآلية والروبوت Robots

أدوات الموضوع

y85.fox
:: مهندس ::
تاريخ التسجيل: Nov 2006
المشاركات: 22
نشاط [ y85.fox ]
قوة السمعة:0
قديم 23-01-2009, 10:36 AM المشاركة 1   
ha وصل أنواع مختلفة من مايكروكونتلر Twitter FaceBook Google+



السلام عليكم

ابي معلومات عن وصل أنواع مختلفة من الميكروكونتلر مع بعضها الأنواع هي motorolla ,avr,microship تركيزنا على بروتوكول الوصل بينها وهو rs 485

اي مشروع او رابط ينفع

ولكم كل الشكر

اعلانات

زكي شاكر
:: عضو ماسي ::
تاريخ التسجيل: May 2006
الدولة: المغرب
المشاركات: 3,062
نشاط [ زكي شاكر ]
قوة السمعة:183
قديم 23-01-2009, 11:30 AM المشاركة 2   
افتراضي


أخي الكريم
ان شاء الله تجد المساعدة الكافية ممن له دراية بالموضوع..


التعديل الأخير تم بواسطة : زكي شاكر بتاريخ 10-02-2009 الساعة 09:08 PM
اعلانات اضافية ( قم بتسجيل الدخول لاخفائها )
  

الصورة الرمزية ahmad_s_f
ahmad_s_f
:: المهندس/ أحمد سمير فايد ::
تاريخ التسجيل: Jun 2006
الدولة: سائح في ارض الله
المشاركات: 725
نشاط [ ahmad_s_f ]
قوة السمعة:80
قديم 24-01-2009, 01:44 PM المشاركة 3   
افتراضي


بسم الله الرحمن الرحيم

أخي العزيز إليك بعض من معلوماتي المتواضعة عن 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 كما أخبرتك وكذلك ستجد مثالا عمليا بالكود الخاص به


==========================
هذه بعض معلوماتي المتواضعة أتمنى أن تكون قد استفدت منها ولو شيئا بسيطا
====================
وفقنا الله جميعا لما يحب ويرضى والسلام عليكم ورحمة الله وبركاته


التعديل الأخير تم بواسطة : ahmad_s_f بتاريخ 24-01-2009 الساعة 08:41 PM

الصورة الرمزية ahmad_s_f
ahmad_s_f
:: المهندس/ أحمد سمير فايد ::
تاريخ التسجيل: Jun 2006
الدولة: سائح في ارض الله
المشاركات: 725
نشاط [ ahmad_s_f ]
قوة السمعة:80
قديم 24-01-2009, 01:56 PM المشاركة 4   
افتراضي


ملحوظة بسيطة أود أن أضيفها :::-

إذا أردت توصيل pic و avr معا بتقنية RS485 فيمكنك فعل ذلك وبسهولة باستخدام ايضا لغة برمجة (كومبايلر) يدعم avr ويدعم RS485
فمثلا MikroC , MikroBasic يوجد اصداران منهما اصدار للـPic واصدار للـ avr
بهما نفس المكتبات والتي منها المكتبة التي تدعم RS485 يمكنك استخدامها بسهولة ويسر ....... وبالتوفيق


التعديل الأخير تم بواسطة : ahmad_s_f بتاريخ 24-01-2009 الساعة 02:14 PM

الصورة الرمزية ahmad_s_f
ahmad_s_f
:: المهندس/ أحمد سمير فايد ::
تاريخ التسجيل: Jun 2006
الدولة: سائح في ارض الله
المشاركات: 725
نشاط [ ahmad_s_f ]
قوة السمعة:80
قديم 24-01-2009, 04:13 PM المشاركة 5   
افتراضي


ملحوظة تفيدك في فهم شرح طريقة البرمجة الموجودة في الـ help الخاص بلغة MikroC أو MikroBasic

الآن الأجهزة الموصلة بتقنية RS485 بواسطة الدائرة المتكاملة(ltc485 أو max485) موصلة كلها بواسطة سلكين كما هو واضح من الرسومات السابقة

هذه الآجهزة ( أو المتحكمات) أخي الكريم تنقسم إلى قسمين
1- Master
2- Slave
===========
Master هو القائد حيث يمكنه أن يرسل لجميع المتحكمات الآخرى(slave) مباشرة ( هو الوحيد القادر على ارسال بيانات مباشرة لهذه المتحكماتslaves) حيث لكل slave عنوان خاص به

فعندما ترسل البيانات بواسطة Master تكون هذه البيانات عبارة عن مجموعة من البايتسbytes كل مجموعة تحتوي على بايت خاص بعنوان slave وكذلك بايت خاص بالبيانات أو الأوامر الموجهة إليه .... وعندما ترسل هذه البيانات لا يستقبلها إلا slave واحد فقط والذي له العنوان الموجود في هذه المجموعة من البايتسbytes

ولكن هل slave يستطيع أن يرسل بيانات إلى master ؟؟؟؟

نعم .. وبشكل مباشر

هل slave يستطيع أن يرسل بيانات إلى slave آخر ؟؟؟؟
بشكل مباشر لا يستطيع ولكن إذا أراد فعل ذلك عليه أن يقوم بارسال البيانات تلك إلى master أولا ثم يقوم master بإرسالها إلى slave آخر ..

====================
توضيح الفكرة بضرب مثال :::::
الموضوع أشبه بمدير master و موظفين slaves كل موظف له رقم تليفون مثلا المدير يرسل البيانات للموظف عبر أسلاك التليفون ولا يصل هذا الكلام إلا لموظف واحد فقط وهو الذي طلب المدير رقمه عبر التليفون
ولا يستطيع الموظفين أن يأمروا بعضهم مباشرة دون إذن المدير فلذلك عندما يريد احد الموظفين أن يأمر موظف آخر بعمل معين يخبر المدير ومن ثم يقوم المدير بإخبار الموظف الآخر ...
=======================
أرجو أن تكون اتضحت الفكرة ..... راجع الشرح الموجود في help الخاص بلغة MikroC فستجده يشرح طريقة كتابة الكود مستخدما كلمات master slave
وعموما خذ هذا ما كتبه الـhelp عن الموضوع لكي لا تضطر لتحميل البرنامج

كود:
RS-485 Library RS-485 is a multipoint communication which allows multiple devices to be connected to a single signal cable. mikroC provides a set of library routines to provide you comfortable work with RS485 system using Master/Slave architecture. Master and Slave devices interchange packets of information, each of these packets containing synchronization bytes, CRC byte, address byte, and the data. Each Slave has its unique address and receives only the packets addressed to it. Slave can never initiate communication. It is programmer’s responsibility to ensure that only one device transmits via 485 bus at a time. RS-485 routines require USART module on PORTC. Pins of USART need to be attached to RS-485 interface transceiver, such as LTC485 or similar. Pins of transceiver (Receiver Output Enable and Driver Outputs Enable) should be connected to PORTC, pin 2 (check the figure at end of the chapter). Note: Address 50 is the common address for all Slaves (packets containing address 50 will be received by all Slaves). The only exceptions are Slaves with addresses 150 and 169, which require their particular address to be specified in the packet. Note: Usart_Init() must be called before initializing RS485. Library Routines RS485Master_Init RS485Master_Receive RS485Master_Send RS485Slave_Init RS485Slave_Receive RS485Slave_Send
شرح كل دالة ستجده بـHelp اللغة التي تريد استخدامها سواءا كانت MikroC او MikroBasic أو غيرها .........
==================================
أرجو ان أكون أوصلت ولو معلومة بسيطة عن الموضوع
وأنا تحت أمر كل من يهتم بهم استاذنا الفاضل زكي شاكر ...
والسلام عليكم ورحمة الله وبركاته


ahmedfarghaly
:: عضو ماسي ::
تاريخ التسجيل: Jul 2006
الدولة: مصر
المشاركات: 1,278
نشاط [ ahmedfarghaly ]
قوة السمعة:0
قديم 24-01-2009, 04:45 PM المشاركة 6   
Angry


رغم إني لا أعرف عن ال microcontrolers غير أسمائهم

و لم أفهم أغلب ما تفضل به أستاذي الكريم ahmed_s_f

إلا أنني أود أن أشكره على المجهود الذي بذله في هذا الشرح

زاده الله علما و جزاه خيرا و أكثر من أمثاله

و أرجو منه و الأساتذة ذكر إسم كتاب أو ما شابه يشرح أو بالأحرى

يمكنني من التعرف على الميكروكنترولر


الصورة الرمزية ahmad_s_f
ahmad_s_f
:: المهندس/ أحمد سمير فايد ::
تاريخ التسجيل: Jun 2006
الدولة: سائح في ارض الله
المشاركات: 725
نشاط [ ahmad_s_f ]
قوة السمعة:80
قديم 25-01-2009, 06:05 AM المشاركة 7   
افتراضي


أخي الكريم ::: أولا بالتوفيق في رحلتك لتعلم المايكروكنترولر

فكرة مبسطة عن المايكروكنترولر :::

المايكروكنترولر ما هو إلا دائرة متكاملة IC تتميز عن أي نوع من الدوائر المتكاملة الأخرى بأن الدوائر المتكاملة الأخرى لها وظيفة محدده ... أو وظيفتين على الأكثر تستخدم تلك الدوائر لتأدية غرض معين .... أما المايكروكنترولر فهو IC ليس له وظيفة محددة ... بل إن وظيفته أنت تحددها له ( عن طريق عملية البرمجة ) وبعد برمجته يؤدي تلك الوظيفة .... والمايكروكنترولر عندما يوضع في الدوائر يكون بمثابة القائد فهو من اسمه (المتحكم الدقيق) فهو يتحكم في عناصر الدائرة من led,motors,sensors,buzzer,lcd,relays و..... إلخ حيث يرسل لهم اشارات تجعلهم يعملوا أو لا يعملوا في وقت معين وكذلك يأخذ منهم معلومات أو إشارات ويرسلها إلى عناصر أخرى ...كل ذلك على حسب ما انت تريد ( تكتب البرنامج المناسب ليؤدي الوظيفة المرادة)

والمايكروكنترولر :: من الداخل ما هو إلا كمبيوتر مصغر يحتوي على وحدة معالجة وعلى ذاكرة RAM و ROM وعلى وحدة الادخال والإخراج(حيث تتحكم في الرجولpins أو كما يسميها البعض دبابيس الدائرة المتكاملة )ويحتوي أيضا على أشياء أخرى كثيرة تخلتف من مايكروكنترولر لآخر ......
وأشهر أنواع المتحكمات هو PIC وهو ما أنصحك أن تبدأ بتعلمه لوفرة المصادر العلمية فيه ويوجد أيضا متحكمات شركة atmel مثل AVR و ATmega وهي متحكمات قوية .... (المشكلة فيها قلة المصادر العلمية )
==================
بالنسبة للكتب أخي الكريم ::: فللأسف الشديد لن تجد كتب عربية قوية جيدة في هذا الموضوع ........ كل الكتب العربية التي رأيتها أنا على الأقل إما أنها ليست تحتوي على المحتوى العلمي الجيد(أي لا تحتوي على المعرفة المطلوبة للتعامل مع المايكروكنترولر) أو أنها ليست منظمة تنظيم الكتاب(عبارة عن مقالات وليس كتابا) بالإضافة إلى ندرة وقلة هذه الكتب ... وكذلك عدم وجود امثلة كثيرة فيها و..و.... هذا للأسف الشديد ... إذا أردت أن تتعلم جيدا بل وتتفوق عليك بالرجوع إلى الكتب الأجنبية وكذلك المواقع الأجنبية .... وإذا كنت ممن لديهم صعوبات في قراءة اللغة الانجليزية ... فلابد عليك من احضار تلك الكتب التي تشرح المايكرو وتترجم الكلام المكتوب فيها وتحاول أن تفهم وبالتدريج إن شاء الله سيكون الأمر في غاية السهولة واليسر ,... وسيفتح ذلك عليك بالخير الكثير والعلم الكثير ........ إذن خلاصة الكلام لابد من تعلم اللغة الانجليزية وهنا المقصود تعلم المصطلحات العلمية والكلمات التي تستخدم في هذه الكتب ( وليس دورات اللغة الانجليزية العامة ) ويجب الاستفادة من الكتب الأجنبية فهي المصدر الأقوى على الإطلاق
,,,,,,,,, أسف على الإطالة في هذه النقطة

أخي الحبيب كما أخبرتك فإن المايكروكنترولر يحتاج لأن تحدد وظيفته من خلال عملية البرمجة ( فتقول له مثلا عند الضغط على السويتش الأول شغل الماتور مثلا وعند الضغط على سويتش آخر زود سرعة الماتور أو قللها ونحو ذلك ) هذه هي البرمجة ولكن كيف سأقول له ذلك ... طبعا باللغة التي يفهمها ...

ويوجد عدة لغات للبرمجة ::: أقدمهم وأشهرهم لغة الأسمبلي ... وعند استخدامك لتلك اللغة يجب عليك ان تفهم جيدا مكونات المايكروكنترولر الداخلية بدقة ... وتعتبر هذه اللغة سهلة جداً لكنها أقل سهولة من اللغات الأخرى الحديث مثل لغة السي ولغة البيسك C or Basic حيث التعامل مع هذه اللغات الحديثة يكون أسهل بكثير ولا يتطلب دراية قوية بخبايا المايكروكنترولر ....
ونصيحتي لك أن تبدأ بالسهل مثل لغة C أو البيسك أو الباسكال .... وعند بحثك في الانتر نت ستجد الكثير من الكتب في اللغات السابقة وإليك بعض الكتب التي رأيت أنها جيدة ومفيدة ..

1- هذا الكتاب جيد للمبتدئين ولغته الانجليزية سهلة ( يشرح الأسمبلي ) ويمتاز بالأمثلة القوية والبساطة ..
http://rapidshare.com/files/70560126..._Book.rar.html

2- كتاب يشرح لغة المايكروسي وبه مشاريع قوية وحديثة وهو من أفضل الكتب التي قرأتها ... ويستخدم Pic18 هذه العائلة أحدث من pic16 لكن جزء كثير من تلك البرامج التي تستطيع تطبيقها فيpic18 تستطيع تطبيقها أيضا في العائلة pic16 وهو كتاب رائع حقا ..
http://www.mediafire.com/?amnnzdt9nlc
3- وإليك موقع الشركة صاحبة لغة البرمجة Mikroc , MikroBasic,MikroBaskal هذا الموقع من خلاله تستطيع تحميل لغة البرمجة بالإضافة إلى وجود العديد من الكتب المجانية والتي تستطيع قراءتها من خلال النت ... وهي كتب جميل وهذا رابط الكتب
http://www.mikroe.com/en/books/



======================================

لن أكثر عليك ابدأ بأي من هذه الكتب السابقة و أهم شيء هو الصبر ... فتأكد أن أي علم وأي تميز وتفوق لا يأتي إلا بعد الصبر ... استعن بالله وابدأ في القراءة والتطبيق وإذا لم تفهم شيء معين اسأل في المنتدى ... وستجد إن شاء الله من يجيبك وإذا فهمت شيء ... فلا تتردد بأن تشرحه لإخوانك في المنتدى .....
وعلى فكرة ::: بالنسبة للمواقع العربية يوجد العديد من المواقع والمنتديات تحتوي على دورات في المايكروكنترولر pic بعض هذه الدورات رائعة ... حاول الاستفادة منها فهي تسهل الطريق ...

ونصيحتي لك ابدأ بلغة برمجة MikroC أو بيزك ... ونصيحتي الأكبر هي أن لا تفوت الدورة التي ستكون بإذن الله بعد اسبوع ونصف تقريبا من الآن والتي سأقوم بشرحها إن كتب الله لي العمر ستكون دورة قوية في المايكروكنترولر تبدأ من البداية وحتى المشاريع القوية... ويكون التعلم فيها من خلال التجارب وستجد أن التعلم فيها متعة ,, ولن أكثر فيها من الكلام النظري .. وأيضا خلال شهور سأنتهي من تأليف كتاب في المايكروكنترولر .... تابع المنتدى وبالتوفيق أخي الكريم ...... ولا تنسانا من دعواتك
==================================

رزقنا الله وإياكم العلم النافع ورزقنا الاخلاص في القول والعمل
والسلام عليكم ورحمة الله وبركاته ..


التعديل الأخير تم بواسطة : ahmad_s_f بتاريخ 25-01-2009 الساعة 06:34 AM

ahmedfarghaly
:: عضو ماسي ::
تاريخ التسجيل: Jul 2006
الدولة: مصر
المشاركات: 1,278
نشاط [ ahmedfarghaly ]
قوة السمعة:0
قديم 25-01-2009, 07:23 AM المشاركة 8   
Thumbs up


أخي الكريم ahmed_s_f

جزاك الله خيرا على ما بذلته من جهد للرد على تساؤلاتي

فإجابتك أوفى مما كنت أرجو

و أشكرك على الكتب القيمة و أفضلها غير مترجمة

و أنتظر الدورة و الكتاب وفقك الله

و الآن سأعيد قراءة نصائحك القيمة مرة أخرى


جزاك الله خيرا و أكثر من أمثالك


إضافة رد

العلامات المرجعية

«     الموضوع السابق       الموضوع التالي    »
أدوات الموضوع

الانتقال السريع إلى


الساعة معتمدة بتوقيت جرينتش +3 الساعة الآن: 11:05 AM
موقع القرية الالكترونية غير مسؤول عن أي اتفاق تجاري أو تعاوني بين الأعضاء
فعلى كل شخص تحمل مسئولية نفسه إتجاه مايقوم به من بيع وشراء وإتفاق وأعطاء معلومات موقعه
التعليقات المنشورة لا تعبر عن رأي موقع القرية الالكترونية ولايتحمل الموقع أي مسؤولية قانونية حيال ذلك (ويتحمل كاتبها مسؤولية النشر)

Powered by vBulletin® Version 3.8.6, Copyright ©2000 - 2025