岗位描述
Position Name: ROS Development
Brief description:
Responsible for ROS communication, system modules, and AMR controller embedded software development including MCU low-level drivers. Collaborating with university partners, it builds automotive-grade software architecture to develop proprietary IP, providing an autonomous technical foundation for smart manufacturing and logistics automation, supporting the Group's automation strategy.
Key Tasks:
ROS-MCU Communication Interface: Design and implement protocols between ROS2 and MCU, including serial/CAN frame packaging/parsing, sensor data upload, and command dispatch.
MCU Low-Level Driver Development (MCAL): Develop, debug, and test peripheral drivers for AMR controllers, covering UART, I2C, SPI, CAN, PWM, ADC/DAC, and other peripherals.
Technology Tracking: Monitor emerging trends in ROS2 and embedded systems, evaluate feasibility, and provide recommendations for technology selection and roadmap.
System Module Development: Develop and maintain Bootloader, firmware upgrade (IAP/OTA), and network management to ensure secure and reliable embedded system operation.
Hardware-Software Joint Debugging: Verify PCB electrical characteristics with hardware team; debug host-slave communication with ROS; diagnose system crashes and data anomalies.
Testing and Documentation: Execute unit testing for driver modules; produce design documents, interface specs, protocol definitions, and test reports for quality compliance.
Technical Support and Maintenance: Resolve after-sales technical issues post-mass production; perform firmware upgrades or cross-platform porting based on new requirements.
Code Quality Support: Participate in code reviews and contribute to coding guidelines and best practices to improve overall team code quality and development standards.
Complex Driver Development: Author Software Detailed Design Documents (SDD) for complex drivers, implement code per design, and enforce quality gates to meet ASPICE/ISO 9001.
Standards Formulation: Contribute to MCU software development standards, coding conventions, and interface specifications to ensure consistency across all projects.
Performing individual task-related duties in accordance with the knowledge and experience of the position holder.
Advising other people holding positions at