BoardRepo electronics project sharing
100%
Open file
bldc-motor-controller-hardware---hdi-desing BLDC motor controller view

Imported from GitHub: Ricsi1231/BLDC-motor-controller-Hardware---HDI-Desing · commit cf98386 · license Apache-2.0

Description

BLDC motor controller Specification

README

BLDC motor controller Specification

  • BLDC Motor Controller Hardware General Description:

    • Operating voltage range: 12V - 44V.
    • Built-in bulk capacitance (200µF) for stable motor control and power supply. External precharge circuit required when connecting multiple boards.
    • Multiple voltage rails (3.3V, 3.3VA, 5V, 12V) for stable power supply.
    • Field-Oriented Control (FOC) for BLDC motor operation.
    • Current handling: 30A continuous, 100A peak.
    • Compatible with multiple BLDC motor types.
    • Supports RS485 and CAN communication protocols.
    • Hall sensors for closed-loop control.
    • Temperature monitoring for motor and MOSFETs.
    • Motor cooling capability.
    • Status indicator LEDs.
  • Components:

    • Buck converter: LMR36506-Q1 - Converts 6S battery voltage to 5V and 12V, providing 600mA for fan and external peripherals.
    • Buck converter: TPS62172 - Converts 5V to 3.3V system voltage with 500mA output.
    • LDO: LP2992 - Converts 5V to 3.3V analog voltage with 250mA maximum output.
    • MCU: STM32G474RET6 - Low-power, high-performance MCU optimized for battery-powered applications.
    • Motor controller: DRV8353 - Advanced motor control IC with high current capability, controlling N-Channel MOSFETs.
    • N-Channel MOSFETs: TPW1R306PL,L1Q - Two MOSFETs per channel.
    • NTC: NTCS0402E3473FXT - Temperature sensor for MOSFETs.
    • NTC: TBD - Temperature sensor for motor.
    • Encoders: ASS5047P & AS5048B - Commutation and disambiguation encoders.
    • CAN transceiver: TCAN334GDCNT.
    • RS485 transceiver: SP3494.
    • Cooling fan PWM driver: DGD0216.
    • Debug LEDs: Two status indicators (red and green) for user feedback.
    • Power connector: 2× XT60.
    • Input connectors: One motor temperature sensing connector.
    • Output connectors: One 3-pin motor phase connector, one cooling connector.
    • I/O connectors: Two encoder connectors, two 3-pin CAN connectors, two 3-pin RS485 connectors, one SWD connector for debugging and firmware updates.

    STM32-based Firmware

    • Uses STM32 HAL library for efficient development.
    • Implemented in C++ to manage project complexity.
    • Class-based driver implementation for each device.
    • Separate classes for control algorithms including PID.
    • FreeRTOS implementation for task management.
    • Documented with block diagrams for architecture and functionality.
    • Layered architecture design.
    • Comprehensive error handling with device cross-monitoring.
    • Configurable settings with RS485 & CAN messaging support.
    • DMA and interrupt handling for I2C, SPI, UART, CAN, GPIO, and PWM.
    • Optimized memory management to prevent leaks.
    • Unit testing for all modules.