OpendBC هي Python API لسيارتك.
السيطرة على الغاز ، الفرامل ، التوجيه ، وأكثر من ذلك. اقرأ السرعة ، زاوية التوجيه ، وأكثر من ذلك.
معظم السيارات منذ عام 2016 لديها التوجيه والغاز والمكابح القابلة للانتقاد إلكترونيًا بفضل LKAs و ACC. الهدف من هذا المشروع هو دعم التحكم في التوجيه والغاز والفرامل على كل واحدة من تلك السيارات.
على الرغم من أن التركيز الأساسي هو دعم واجهات ADAS لـ OpenPilot ، إلا أننا مهتمون أيضًا بقراءة وكتابة العديد من الأشياء التي يمكننا (حالة شحن EV ، قفل/فتح الأبواب ، إلخ) بحيث يمكننا إنشاء أفضل تطبيق لإدارة المركبات على الإطلاق.
هذه القائمة README وقائمة السيارات المدعومة هي جميع المستندات لمشروع OPENDBC. كل ما تحتاج إلى معرفته لاستخدامه والمساهمة وتوسيع OPENDBC في هذه المستندات.
git clone https://github.com/commaai/opendbc.git
cd opendbc
# you probably just want to use this. it's an all-in-one for dependency
# installation, compiling, linting, and tests. it's also what runs in CI
./test.sh
# here are the individual commands it runs
pip3 install -e .[testing,docs] # install dependencies
scons -j8 # build with 8 cores
pytest . # run the tests
pre-commit run --all-files # run the linter examples/ تحتوي على مثال صغير يمكن أن تقرأ الحالة من السيارة والتحكم في التوجيه والغاز والفرامل. examples/joystick.py يتيح لك التحكم في سيارة مع عصا التحكم.
opendbc/dbc/ هو مستودع لملفات DBCopendbc/can/ هي مكتبة للحلية وبناء الرسائل من ملفات DBCopendbc/car/ هي مكتبة عالية المستوى للتفاعل مع السيارات باستخدام Python يغطي هذا الدليل كل شيء من إضافة الدعم إلى سيارة جديدة وصولاً إلى تحسين السيارات الحالية (على سبيل المثال إضافة التحكم الطولي أو تحليل الرادار). إذا كانت السيارات المماثلة لك متوافقة بالفعل ، فمن المحتمل أن يتم بالفعل معظم هذا العمل من أجلك.
في أبسطه ، سيتحكم ميناء السيارات في التوجيه على السيارة. سيكون للمنفذ "الكامل" للسيارة: التحكم الجانبي ، والتحكم الطولي ، وضبط جيد لكل من الجانبي والطولي ، وتوحل الرادار (إذا كان مجهزًا) ، وبصمة غامضة ، وأكثر من ذلك. من الواضح أن مستندات دعم السيارة الجديدة ستقدم مستوى دعم كل سيارة.
الخطوة الأولى هي الاتصال بالسيارة مع فاصلة 3x وتسخير السيارة. يجعلك تسخير السيارة متصلاً بحافلات علبة مختلفة وتقسيم إحدى تلك الحافلات لإرسال رسائل التشغيل الخاصة بنا.
إذا كنت محظوظًا ، فسيتم بالفعل تصميم وبيع تسخير سيارتك على comma.ai/shop. إذا لم تكن محظوظًا جدًا ، فابدأ بـ "تسخير المطور" من comma.ai/shop و crimp على أي موصل تحتاجه.
اعتمادًا على ذلك ، سيكون معظم هذا الهيكل الأساسي موجودًا بالفعل.
يعيش Entirery of a Car Port في opendbc/car/<brand>/ :
carstate.py : توفي المعلومات ذات الصلة من CAN البث باستخدام ملف DBC الخاص بالسيارةcarcontroller.py : يمكن للمخرجات الرسائل للتحكم في السيارة<brand>can.py : مساعدون ثيثون رفيع حول ملف DBC للإنشاءfingerprints.pyinterface.py : فئة عالية المستوى للتفاعل مع السيارةradar_interface.py : توصيف الرادارvalues.py : تعداد السيارات المدعومة للعلامة التجاريةابدأ بتسجيل طريق مع الكثير من الأحداث المثيرة للاهتمام: تمكين LKAs و ACC ، وقم بتشغيل عجلة القيادة على حد سواء ، وما إلى ذلك ، ثم قم بتحميل هذا الطريق في Cabana.
استخدم تقرير المناورات الطولية لتقييم السيطرة الطولية لسيارتك وضبطها.
يتم تنسيق جميع تطوير OPENDBC على GitHub و Discord. تحقق من قناة #dev-opendbc-cars وقسم Vehicle Specific .
قصيرة الأجل
pip install opendbcمدى طويل
المساهمات في أي شيء هنا موضع ترحيب.
كل منفذ سيارة مؤهل للحصول على مكافأة:
بالإضافة إلى المكافآت القياسية ، نقدم أيضًا مكافآت ذات قيمة أعلى للسيارات الأكثر شعبية. انظر تلك الموجودة في comma.ai/bounties.
كيف يمكنني استخدام هذا؟ تم تصميم فاصلة 3X لتكون أفضل طريقة لتشغيل وتطوير OpenDBC و OpenPilot.
ما هي السيارات المدعومة؟ انظر قائمة السيارات المدعومة.
هل يمكنني إضافة دعم لسيارتي؟ نعم ، معظم دعم السيارات يأتي من المجتمع. اقرأ الدليل هنا.
ما هي السيارات التي يمكن دعمها؟ أي سيارة مع LKAS و ACC. مزيد من المعلومات هنا.
كيف يعمل هذا؟ باختصار ، قمنا بتصميم الأجهزة لاستبدال ممرات الممرات المدمجة في سيارتك وميزات الرحلات البحرية التكيفية. شاهد هذا الحديث عن تفسير متعمق.
هل هناك جدول زمني أو خريطة طريق لإضافة دعم السيارة؟ لا ، يأتي معظم دعم السيارات من المجتمع ، حيث يقوم الفاصلة بالتحقق من السلامة النهائية والتحقق من الجودة. كلما زاد اكتمال ميناء السيارات المجتمعية ، كلما زاد شعبية السيارة ، زاد احتمال استلامنا إليه كمنحته التالية للتحقق من صحة.
POSSA تقوم بتوظيف مهندسين للعمل على OPENDBC و OPENPILOT. نحن نحب توظيف المساهمين.