Tabbio
ENالعربية
تسجيل الدخول إلى التطبيق
قبل 11 يومًا

مهندس البرمجيات المدمجة

Origin · Bengaluru, Karnataka, India
Workableقدّم عبر موقع الشركة
Full Time
Onsite

نبذة عن الوظيفة

حول الأصل تقوم شركة Origin (المعروفة سابقًا باسم 10xConstruction) ببناء روبوتات مستقلة ذات أغراض عامة للبناء في الولايات المتحدة لمعالجة التكاليف المتزايدة، ومخاطر السلامة، ونقص العمالة. تجمع منصتنا المعيارية متعددة التجارة بين الأجهزة المصممة لهذا الغرض وذكاء الموقع في الوقت الفعلي للتنقل في البيئات المعقدة وتنفيذ المهام بدقة. تم تدريب الروبوتات لدينا على المحاكاة عالية الدقة وتم نشرها بالفعل في المواقع الحية، وتوفر تنفيذًا أسرع بمقدار 5 مرات، وتوسيع الهامش بنسبة 250%+، وتوفيرًا كبيرًا في التكاليف. انضم إلى فريق الروبوتات الأكثر كثافة في المواهب في الهند والذي يتكون من أفراد من IITs وStanford وUCLA وما إلى ذلك. حول الدور باعتبارك مهندس برمجيات مضمن في Origin، سوف تقوم بكتابة البرامج الثابتة والبرامج المضمنة التي تقوم بتشغيل الروبوتات الخاصة بنا، بدءًا من البرامج الثابتة لوحدة التحكم الدقيقة على اللوحات المخصصة إلى برامج التشغيل والبرامج في الوقت الفعلي على حساب Linux المضمن. سنقوم في الأشهر المقبلة بإجراء تغييرات كبيرة على البنية الكهربائية للروبوت (الأنظمة الفرعية للحوسبة والسلامة وأجهزة الاستشعار). ستقوم ببناء البرنامج الثابت لهذه البنية الجديدة مع فريق الأجهزة المضمن لدينا. يعد هذا دورًا عالي التأثير في فريق متحمس ومليء بالمواهب.

المسؤوليات الرئيسية

تطوير البرامج الثابتة

  • تصميم البرامج الثابتة وكتابتها وصيانتها في الوقت الفعلي بلغة C/C++ لوحدات التحكم الدقيقة (على سبيل المثال STM32 وESP32 وNXP) وعلى أنظمة RTOS (FreeRTOS أو Zephyr أو ما شابه).
  • قم بإحضار لوحات مخصصة جديدة مع فريق الأجهزة المضمنة: الأجهزة الطرفية، والساعات، وأدوات تحميل التشغيل، وحزم دعم اللوحة.
  • كتابة وصيانة برامج التشغيل الطرفية: GPIO، ADC، PWM، الموقتات، DMA، I2C، SPI، UART وCAN.
  • كتابة البرامج الثابتة للسلامة وأجهزة الاستشعار والأنظمة الفرعية للطاقة، بما في ذلك أجهزة المراقبة ومعالجة الأخطاء والحالات الآمنة.
  • كتابة البرامج الثابتة للتحكم في المحرك والمشغل (BLDC، FOC، سرعة الحلقة المغلقة وقوة التغذية المرتدة) لأدوات الروبوت.

المحرك والاتصالات

  • تطوير واجهات برمجية للمحركات ومحركات المحركات القائمة على CAN / CANopen / EtherCAT.
  • كتابة وصيانة برامج تشغيل وحدات التحكم في المحركات والمحركات المؤازرة والمحركات السائر.
  • تحديد بروتوكولات الاتصال الحتمية بين عقد المتحكم الدقيق وحساب الروبوت الرئيسي.

Linux والحوسبة المضمنة

  • دمج وتكوين وحدات SBC (Jetson Orin، Jetson Nano، Raspberry Pi) كعقد حسابية مضمنة في النظام الأساسي للروبوت.
  • تطوير وصيانة برامج تشغيل Linux kernel لأجهزة الاستشعار والمحركات، والمساهمة في تعديلات Linux ومراقبة وحدة المعالجة المركزية/الموارد.
  • بناء البنية التحتية للمراقبة والتسجيل من أجل سلامة النظام وتصحيح الأخطاء بسرعة.
  • دعم خط التحديث عبر الأثير (OTA) للبرامج الثابتة والبرامج.

الاختبار والتصحيح

  • ملف التعريف، وتصحيح الأخطاء، وتقليل زمن الوصول، والارتعاش، ومشكلات التوقيت عبر البرامج الثابتة وواجهات الاتصال.
  • تصحيح الأخطاء عند حدود الأجهزة/البرمجيات باستخدام راسمات الذبذبات والمحللات المنطقية وتحقيقات تصحيح الأخطاء (JTAG/SWD).
  • تطوير الاختبارات الآلية (الوحدة والأجهزة في الحلقة) للبرامج الثابتة.

التعاون والتكامل

  • العمل مع فريق البرنامج لدمج النظام الكهروميكانيكي في ROS2 والمساهمة في تطوير برنامج تشغيل ROS2.
  • العمل مع الأجهزة المضمنة والفرق الميكانيكية لتحقيق التكامل السلس والأداء على مستوى النظام.

المؤهلات والمهارات المطلوبة

  • درجة البكالوريوس/الماجستير في الهندسة الكهربائية، الإلكترونيات، الروبوتات، علوم الكمبيوتر أو مجال ذي صلة.
  • أكثر من عامين من التدريب العملي على تطوير البرامج الثابتة المضمنة على المنتجات الحقيقية.
  • البرمجة المضمنة القوية في لغة C (C++ زائد).
  • تجربة مع RTOS (FreeRTOS، Zephyr أو ما شابه ذلك) و/أو البرامج الثابتة المعدنية على وحدات التحكم الدقيقة.
  • خبرة في كتابة برامج تشغيل الأجهزة الطرفية وبروتوكولات الاتصال: I2C وUART وSPI وCAN وEthernet.
  • خبرة في عرض اللوحة وتصحيح الأخطاء باستخدام راسمات الذبذبات والمحللات المنطقية وتحقيقات التصحيح.
  • القدرة على قراءة المخططات وأوراق البيانات.
  • تجربة بناء أنظمة الوقت الحقيقي، الكمون المنخفض.

الخبرات المفضلة

  • مشغلات CAN / CANopen / EtherCAT والبرامج الثابتة للتحكم في المحركات (BLDC، FOC).
  • برامج تشغيل Linux وkernel وNVIDIA Jetson SBCs المضمنة.
  • تجربة مع ROS/ROS2.
  • البرامج الثابتة المتعلقة بالسلامة (هيئات المراقبة، الحالات الآمنة، الوعي بالسلامة الوظيفية).
  • تجربة مع الأسلحة الآلية أو منصات AMR أو المتلاعبين المحمول.
  • الهندسة العكسية ودمج الأنظمة المدمجة الجاهزة.

المسؤوليات

1Design, write and maintain real-time firmware in C/C++ for microcontrollers (for example STM32, ESP32, NXP), on bare metal and on an RTOS (FreeRTOS, Zephyr or similar).
2Bring up new custom boards with the embedded hardware team: peripherals, clocks, bootloaders and board support packages.
3Write and maintain peripheral drivers : GPIO, ADC, PWM, timers, DMA, I2C, SPI, UART and CAN.
4Write firmware for the safety, sensor and power subsystems , including watchdogs, fault handling and safe states.
5Write motor-control and actuator firmware (BLDC, FOC, closed-loop speed and force feedback) for robot tools.
6Develop software interfaces for CAN / CANopen / EtherCAT based actuators and motor drives.
7Write and maintain drivers for motor controllers , servo motors and stepper motors .
8Define deterministic communication protocols between microcontroller nodes and the main robot compute.

المهارات والوسوم

EmbeddedINElectrical Engineering

احجز رابط tabbio
قبل أن يُحجز