حافلة تسلسلية قوية وسهلة التنفيذ (تطبيق السيارات) [مغلق]

StackOverflow https://stackoverflow.com/questions/144600

سؤال

ما هو ناقل الاتصال التسلسلي الذي ستستخدمه في النظام المدمج في السيارة إذا كانت معايير الاختيار الرئيسية الخاصة بك هي:

  • قوية كهربائيا
  • سرعة بطيئة (32 كيلو بايت / ثانية)
  • سهلة البرمجة
  • سهولة التعامل مع وحدات التحكم الدقيقة

لن يتم نقل الكثير من البيانات، ولكن يجب نقلها بشكل دوري بسرعة عالية (100 - 500 هرتز).أجد أن RS-232 لا يمكن الاعتماد عليه بدرجة كافية إذا كان لديك ضوضاء في خطك الأرضي.يبدو CAN-bus مثيرًا للاهتمام، لكن ليس لدي خبرة به.

نحن مهتمون حاليًا بمزيج من وحدات التحكم الدقيقة AVR AT90CAN128.

هل كانت مفيدة؟

المحلول

لقد اخترت بالفعل AT90CAN128، الذي تتمثل ميزته البارزة مقارنة بمعالجات AVR الأخرى في دعم ناقل CAN.لا يوجد حقًا خيار أفضل من CAN لتطبيق السيارات مع معدل البيانات الخاص بك ومتطلبات الحصانة من الضوضاء.إذا توجهت إلى أحد عملاء السيارات بأي شيء آخر غير CAN، فسوف ينتهي بك الأمر إلى قضاء كل وقتك في الدفاع عن قرار عدم استخدامه.

مع ذلك، للحصول على مناعة ضد الضوضاء في بيئة معادية مثل السيارة، ستحتاج إلى حافلة تستخدم الإشارات التفاضلية.وهذا يستبعد i2c أو SPI، وهو أمر مؤسف لأنها تلبي متطلباتك الأخرى.سيكون RS-485 قابلاً للتطبيق كما يشير @ Andrew Edgecombe.

إذا كنت لا تصنع منتجًا تجاريًا ولكنك بدلاً من ذلك تصنع شيئًا لاستخدامك الخاص لوضعه في حجرة المحرك، فمن المحتمل أن تتمكن من استخدام USB.سيجعل USB من السهل التعامل مع الكمبيوتر المحمول في مقصورة الركاب، وعلى الرغم من أنه غير مصمم للبيئات عالية الضوضاء، إلا أنه يتم إرسال إشارات تفاضلية عند جهد كهربائي مرتفع بشكل معقول.

نصائح أخرى

للحصول على الموثوقية الكاملة، لا يمكنك تجاوز CANbus (ولكن بعد ذلك كان ذلك ضمنيًا نوعًا ما من خلال اختيارك للمعالج؟)

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

ولكن إذا لم يكن CANbus مناسبًا، فإنني أوصي بـ RS485 أو RS422 (اعتمادًا على الهيكل الخاص بك).إذا كان كل ما تحاول تحقيقه هو الاتصالات من نقطة إلى نقطة، فهو مطابق لـ RS232.(سيتعين عليك وضع طبقة البروتوكول الخاصة بك في الأعلى إذا كنت تحاول دعم الاتصالات المتعددة.)

خياران ممتازان آخران بخلاف يستطيع هي LIN وFlexRay. لين هي واجهة أبسط وأبطأ بينما فليكس راي أكثر قوة ومصممة لأنظمة السلامة المهمة مثل التحكم في الفرامل في الوقت الفعلي.

للحصول على مخطط عام لطيف حول كيفية ترابط خيارات الحافلات المختلفة، راجع هذا الانزلاق.

أود دائمًا أن أقترح أن CAN هو الأفضل في مجال اتصالات السيارات.

  • يحتوي على خط تفاضلي يمكنه الصمود حتى لو كان هناك خلل كهربائي في نقل البيانات في الطبقة المادية
  • يمكن أن يوفر سرعة موثوقة، فهو يخدم سرعة بمعدل 500 كيلو بايت في معظم تطبيقات برامج السيارات.
  • يعد التواصل أمرًا سهلاً أيضًا إذا كنت تعرف صندوق بريد وحدة التحكم وهيكل التسجيل.

كما قال آخرون، CAN قياسي، قوي، أكثر قوة مع سرعة بطيئة وما إلى ذلك.

ويوجد أيضًا دعم في Linux kernel له بدءًا من الإصدار 2.6.15 إذا كنت بحاجة إلى نظام أكبر.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top