This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Building a custom motor driver ?

Other Parts Discussed in Thread: TIDA-00643, MOTORWARE, DRV8305, DRV8301, LAUNCHXL-F28027F, CONTROLSUITE, BOOSTXL-DRV8301, BOOSTXL-DRV8305EVM

Hello

I'm currently evaluating LAUNCHXL-F28027F for motor driving, but next step is to create a custom board with higher current and voltage and which should fit inside an enclosure.

I will take TI  LAUNCHXL-F28027F as a reference design, and when looking the schematics few questions arise.

The emulator XDS100v2 which includes on board USB to JTAG connectivity is only used to debugging and flashing the cpu. So I better not include that to my design. Instead I use that part from  LAUNCHXL-F28027F and just make a connector and adapter cable to my new custom board for debugging and flashing purposes, so it is easy to remove, thus saving costs in reproduction.
What methods LAUNCHXL-F28027F offers for controlling motor with user RPM value?, is there a direct potentiometer read, UART control or something else like that ? Is there anything else I should consider on custom driver to avoid conflicts and unwanted behaviour? Is there PCB or schematics recommendations for C2000 or driver itself ?
Looking forward to create my own board !

Thank you!

  • "What methods LAUNCHXL-F28027F offers for controlling motor with user RPM value?, is there a direct potentiometer read, UART control or something else like that ? "

    You need to add this to your own embedded firmware. All options are available. the potentiometer read is discussed in the MotorWare HAL Tutorial document.  Our TI Design for a propeller controller TIDA-00643 includes firmware to capture an input pulse which represents an RPM %.

  • This fits to my usage, so I looked into the Schema of TIDA-00643 and it is done with DRV8305 which suits only up to 45Volts. However, I need to use DRV8301 to achieve 60Volts on my board. They are not matching by pins or registers, so there needs to be a suitable control to DRV8301.
    The software is modified by HAL-files, user.h and main.h. Proj_lab05b.c includes definitions to DRV8301 by #ifdef so I go with that ?

    How can I get the user parameters from my custom board and motor? Do I need to run a certain project or is PROJ_LAB05b capable of doing that ?

    Do you have a special JTAG-connector or POD to program the device, or should I fabricate it from the old LAUNCHXL-F28027F board I have ?

    Thanks again.
  • Hi,

    If you want to take advantage of the 60V range of the DRV8301, why not base your board design on the DRV8301 EVM? The schematic is found in ControlSUITE: C:\TI\controlSUITE\development_kits\DRV830x-HC-C2-KIT_v105\~DRV830x-HC-EVM-HWdevPkg\DRV830x_RevD_HWDevPKG.

    And the DRV8301 is well supported in SW as you mention with the #ifdef options, which are already configured if you use the CCS project associated iwth the DRV8301: C:\TI\motorware\motorware_1_01_00_15\sw\solutions\instaspin_foc\boards\drv8301kit_revD\f28x\f2802xF\projects\ccs5\proj_lab05b.

    Jeff
  • Hi,

    That design I have not seen before. I can use the bridge part as is and DRV8301 but the extras I have to remove as well as the DIMM module, so I think I go with the bridge from this circuit and use the uC part from the eCAP demo previously mentioned to get the pulse counting possibility to drive the motor.

    BTW, why the design uses 3x separate op amps for current measurements while DRV8301 has already 2 built in amps ?

    -JH

  • we like to have 3 current measurements on our boards to allow ourselves to sample currents across the PWM modulation range. On this older design we decided to keep all three discrete and matched. On the BOOSTXL-DRV8301 we used 1 discrete and 2 internal. On the BOOSTXL-DRV8305EVM we used all 3 internal.