Close

Initial design

A project log for Λ M U L E T motion controller

High-performance open-source BLDC controller compatible with moteus firmware.

nguyen-vincentNguyen Vincent 03/24/2024 at 15:470 Comments

The first version of the schematic can be found here:

XRE_LeggedRobot_HW/amulet_controller/plot/amulet_controller.pdf at 0293227ba92d3d38e50603877a6b7e1713c110fc · EPFLXplore/XRE_LeggedRobot_HW (github.com)

The pinout is almost 1 to 1 similar to the moteus n1 controllers to port the firmware more easily. The main changes are done in the power generation section, which includes a 12V rail as well as a low-noise 3V3 rail for the ADC reference. The buck inputs are filtered through a Pi filter. The number of bulk capacitors is also increased to reach a higher peak power.

The FETs were chosen with a package that can be cooled on both sides. This reduces the thermal resistivity of the package, which means that the FETs can be more efficiently cooled with an external heatsink. A low-side switched fan connector can also be used for cooling.

In terms of grounding scheme, it was decided to use a single ground throughout the board, and to manage return paths to be confined to the top half of the board. In terms of EMI/EMC, a single ground is always better than split grounds, and is also advantageous for cooling through internal ground planes.

In the initial version, chassis ground is connected to local ground through an RC network with a high-impedance connection. It was however decided as discussed in a further log to use a low-impedance connection.

The design was posted on r/PCB for a review. The following log describes the last version of the board, after the initial review.

r/PrintedCircuitBoard - Bottom view

r/PrintedCircuitBoard - Top view

Discussions