Skip to the content
4 layers99.7 × 85.1 mmMotor controller hw, the printed circuit board in 3D

Motor controller hw

HEEV/motor-controller-20184

Sam Ellicott's and Isaac Jones's motor controller senior design project. Fall 2018-Spring 2019

Size
99.7 × 85.1 mm
Copper layers
4
Thickness
1.6 mm
Parts
179
Nets
192
Pads
674
Tracks, vias
1,989, 192
Pours
6
Routed
Yes
KiCad
KiCad 5 (file 20171130)
Created
25 Sep 2018
Updated
7 Oct 2019

Overview

Motor controller hw is an open-source printed circuit board by HEEV, from the HEEV/motor-controller-2018 repository on GitHub. It is a 4-layer board of 99.7 × 85.1 mm with 179 parts on 192 nets, routed with 1,989 tracks and 192 vias.

It is built around the 74HC7014D, MCP2562-H/P and MCP6004-E/P, with the TMC4671-LA and AP7361C-33E among its other parts. Its parts include 56 capacitors, 43 resistors, 15 connectors, 10 ICs and 8 diodes. It belongs with the robots and motor control boards and the STM32 boards of this library.

Main components

5

README

README.md

Cedarville University: Modular Motor Controller Project

Senior Design project by Samuel Ellicott and Isaac Jones 2018-2019

You are in the hardware portion of the project, this contains the Kicad design files for the project and the schematics in PDF form. If you are looking for the software it is in the motor controller 2018 sw github repository.

This project’s goal is to provide the Cedarville University Supermileage team with a high-efficiency electric motor controller for use in any category of vehicle. The controller should be simple enough to use that a competent freshman or sophomore engineer on the team could set it up.

The controller is operated either by an analog throttle input or by the CAN interface exposed by the controller. Hopefully this makes the controler simple to use, but still capable of clever efficiency optimizations with some wizardry.

The Cedarville supermileage team competes in the Shell Eco-Marathon so the design must fit within the contstraints of their rules (at the time of this writting, 2019). This leads to the following constraints

  • Maximum Nonminal Battery Voltage - 48V
  • Peak Voltage - 60V

Therefore the controller was designed to fit these requirements and a new driver stage would need to be designed if these limits were exceeded.

text
Even though I have graduated I am still more than willing to answer questions about this project :-) 

-Sam Ellicott

Project Organization

Overall, the project is organized into two gitub repositories. This one, devoted to the motor controller hardware (motor controller 2018) and the other one (motor controller 2018 sw) devoted to the motor controller software.

The actual hardware of the project is split into three PCBs (and three corresponding Kcad projects)

The hardware repository is split between three Kicad projects.

  • motor-controller-hw: This somewhat poorly named project contains the files for the controller portion of the project (micocontroller, FOC algorithm chip, inputs, etc)
  • MotorControllerPowerBoardRev2: This contains (somewhat obviously) the Kicad project for the power conversion part of the motor controller (FET driver chips, giant honking power MOSFETS, current sensing chips, etc). The power stage has four NFET half bridges and three hall-effect current sensing chips. The board can be configured to power a 3-phase motor or a brushed motor. Optionally for the brushed motor the half-bridges can be parralled to double the drive current capability.
  • voltage-regulator-module: We were unable to find a commertially available 60V-to-5v DC-DC converter for the controller portion of the project that did not have significant lead time, so we rolled our own to fit a similar footprint to some DC-DC converters from Pololu. This is just a little daughter PCB that is soldered to the controller PCB.

The schematic files and PDF's of the PCB layout can be found in the pdf directory.

Software versions

For this project we used either Kicad version 5.0.1 or 5.0.2 (I cannot really remember), but it will probably work with any version of Kicad > 5.0.0

Parts

179
QtyValueFootprintReferences
29100nCapacitor_SMD:C_0805_2012Metric_Pad1.15x1.40mm_HandSolderC102, C201, C204, C205, C206, C207, C208, C209, C210, C211, C301, C302, C303, C304, C305, C311 +13
16TestPointTestPoint:TestPoint_Pad_D1.0mmTP403, TP404, TP405, TP406, TP407, TP408, TP409, TP410, TP411, TP412, TP413, TP414, TP415, TP416, TP417, TP418
1110KResistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolderR101, R102, R220, R301, R401, R402, R403, R404, R405, R408, R409
10100RResistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolderR207, R208, R209, R213, R214, R215, R304, R305, R406, R407
74K7Resistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolderR210, R211, R212, R217, R218, R219, R303
74u7Capacitor_SMD:C_0805_2012Metric_Pad1.15x1.40mm_HandSolderC101, C104, C105, C214, C306, C411, C416
6100pCapacitor_SMD:C_0805_2012Metric_Pad1.15x1.40mm_HandSolderC215, C216, C217, C218, C219, C220
510nCapacitor_SMD:C_0805_2012Metric_Pad1.15x1.40mm_HandSolderC308, C417, C418, C419, C420
52KResistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolderR201, R202, R203, R204, R205
41uCapacitor_SMD:C_0805_2012Metric_Pad1.15x1.40mm_HandSolderC202, C212, C213, C307
450mA PTCFuse:Fuse_0603_1608Metric_Pad1.05x0.95mm_HandSolderF101, F102, F103, F105
3330RResistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolderR302, R306, R307
3MCP6004Package_SO:SOIC-14_3.9x8.7mm_P1.27mmU201, U202, U203
227pfCapacitor_SMD:C_0805_2012Metric_Pad1.15x1.40mm_HandSolderC309, C310
274HC7014Package_SO:SOIC-14_3.9x8.7mm_P1.27mmU204, U205
2GND_TPConnector_PinHeader_2.54mm:PinHeader_1x01_P2.54mm_VerticalTP104, TP105
2LOGOsupermileage_footprints:shell-logoG***, G***
110KResistors_SMD:R_0805_HandSolderingR103
1110KResistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolderR410
1120RResistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolderR216
1120mA PTCFuse:Fuse_0603_1608Metric_Pad1.05x0.95mm_HandSolderF104
1150nCapacitor_SMD:C_0805_2012Metric_Pad1.15x1.40mm_HandSolderC203
115V ZenerDiode_SMD:D_SOD-123FD101
11KResistors_SMD:R_0805_HandSolderingR104
11K5Resistor_SMD:R_0805_2012MetricR308
13.3VLEDs:LED_0603_HandSolderingD105
1330RResistors_SMD:R_0805_HandSolderingR105
133uCapacitor_THT:CP_Radial_D8.0mm_P3.50mmC103
13K9Resistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolderR206
13v3_TPConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalTP103
1470nCapacitor_SMD:C_0805_2012Metric_Pad1.15x1.40mm_HandSolderC410
15VLEDs:LED_0603_HandSolderingD104
15v JPConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJP101
15v_TPConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalTP102
18MhzCrystal:Crystal_SMD_HC49-SD_HandSolderingY301
1ABN EncoderConnector_PinHeader_2.54mm:PinHeader_1x05_P2.54mm_VerticalJ109
1AP7361C-33Package_TO_SOT_SMD:SOT-223U101
1A_I_TPConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalTP419
1A_RefPin_Headers:Pin_Header_Straight_1x01_Pitch2.54mmTP402
1B_I_TPConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalTP420
1B_RefPin_Headers:Pin_Header_Straight_1x01_Pitch2.54mmTP401
1Batt_I_TPConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalTP422
1Batt_TPConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalTP101
1Batt_V_TPConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalTP421
1Bootsupermileage_footprints:SW_SPST_FSMSMSW302
1CANsupermileage_footprints:Molex-duraClick-4connJ101
1CAN TermConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJP201
1CAN_DBGConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJ108
1CAN_StatusLED_SMD:LED_0603_1608Metric_Pad1.05x0.95mm_HandSolderD301
1D36V6F5supermileage_footprints:D36V6FxU102
1D_USBDiode_SMD:D_SOD-123FD102
1Extra IOsupermileage_footprints:Molex-UltraFit-14p-vertJ106
1Hall Sensorssupermileage_footprints:MICRO_JST_6J107
1HeartbeatLED_SMD:LED_0603_1608Metric_Pad1.05x0.95mm_HandSolderD302
1IQXO-50supermileage_footprints:Clock-FOX924X401
1LOGOsupermileage_footprints:cedarville-logoG***
1Motor Tsupermileage_footprints:Molex-duraClick-2connJ103
1Q_PMOS_GDSPackage_TO_SOT_SMD:TO-252-3_TabPin2Q101
1Resetsupermileage_footprints:SW_SPST_FSMSMSW301
1SPI_DBGConnector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_VerticalJ110
1STM32F303RETxPackage_QFP:LQFP-64_10x10mm_P0.5mmU301
1SWDConnector_PinHeader_2.54mm:PinHeader_1x06_P2.54mm_VerticalJ301
1TMC4671supermileage_footprints:QFN76PU401
1TMC4671 USARTConnector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_VerticalJ402
1Throttlesupermileage_footprints:Molex-duraClick-4connJ102
1Tran Tsupermileage_footprints:Molex-duraClick-2connJ104
1Trinamic-BridgeConnector_PinSocket_2.54mm:PinSocket_2x22_P2.54mm_VerticalJ111
1Trinamic_TRMIsupermileage_footprints:DF20F-10DP-1V(56)J401
1USB_B_Microsupermileage_footprints:USB_Micro-BJ105
1User USARTConnector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_VerticalJ302
1User_LEDLED_SMD:LED_0603_1608Metric_Pad1.05x0.95mm_HandSolderD303
1User_SWsupermileage_footprints:SW_SPST_FSMSMSW303
1VinLEDs:LED_0603_HandSolderingD103
1mcp2562Package_SO:SOIC-8_3.9x4.9mm_P1.27mmU206

The 175 most common of 179 parts.

More from HEEV/motor-controller-2018

2
  • 4 layers100 × 100 mmMotorControllerPowerBoard, the printed circuit board in 3D

    MotorControllerPowerBoard

    HEEV/motor-controller-2018

    Sam Ellicott's and Isaac Jones's motor controller senior design project. Fall 2018-Spring 2019

    134 parts4
  • 2 layers22.9 × 13.2 mmVoltage regulator module, the printed circuit board in 3D

    Voltage regulator module

    HEEV/motor-controller-2018

    Sam Ellicott's and Isaac Jones's motor controller senior design project. Fall 2018-Spring 2019

    14 parts4

Similar boards

  • 2 layers164.6 × 57 mmVF MOTOR DRIVER, the printed circuit board in 3D

    VF MOTOR DRIVER

    virtual-fly/VF_MOTOR_DRIVER

    VF_Motor_Driver is an open hardware power distribution board, designed to be part of a larger modular system. This design is based in part on the OpenFFBoard TMC4671 driver board, licensed under the GNU General Public…

    234 partsGPL-3.0
  • 4 layers181.4 × 77.2 mmNixieNTPClock, the printed circuit board in 3D

    NixieNTPClock

    bastian-bou/NixieNTPClock

    Nixie clock around ESP32 connected to a NTP server

    64 parts3GPL-3.0
  • 4 layers51.7 × 51.8 mmThunder4671, the printed circuit board in 3D

    Thunder4671

    YaseenTwati/ThunderMini

    A modular, stackable brushless motor driver platform based on the TMC6200, TMC4671, and STM32G473.

    98 parts3
  • 4 layers45 × 86.6 mmElec Poulpe 3d, the printed circuit board in 3D

    Elec Poulpe 3d

    pollen-robotics/elec_Poulpe_3d

    Tripple Motor Control Board for Reachy 2

    221 parts2Apache-2.0
  • 4 layers122 × 122 mmMotordriver, the printed circuit board in 3D

    Motordriver

    fest004/Cubitron

    Cubitron Project

    418 parts1MIT
  • 4 layers59 × 73 mmElec Poulpe 2d, the printed circuit board in 3D

    Elec Poulpe 2d

    pollen-robotics/elec_Poulpe_2d

    Dual Motor Control Board for Reachy 2

    212 parts1Apache-2.0
  • 2 layers63.5 × 50.8 mmBmchimes, the printed circuit board in 3D

    Bmchimes

    xunil/bmchimes

    Controller firmware for ESP8266 modules for Burning Man chimes project.

    28 parts

Questions

How big is the Motor controller hw PCB?

It measures 99.7 × 85.1 mm and has 4 copper layers, 1.6 mm thick.

What parts does the Motor controller hw use?

179 parts, built around the 74HC7014D, MCP2562-H/P, MCP6004-E/P and TMC4671-LA. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the Motor controller hw KiCad files?

From the HEEV/motor-controller-2018 repository on GitHub, at the commit this page was made from: the board is motor-controller-hw/motor-controller-hw.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.

Can I use the Motor controller hw design in my own project?

Its repository states no licence, so its author keeps all rights: ask HEEV before reusing the design.