imrishabh18/rp2040-motor-controller
This circuit incorporates a USB-C Power Delivery (PD) interface with a CH224K controller, a WJ500V-5.08-04P motor output connector, multiple power conditioning components including capacitors, resistors, diodes, and an RP2040 microcontroller, to manage motor control, signal routing, and power management for a USB-powered stepper motor system.
- Version
- 1.0.14
- License
- unset
- Stars
- 0
schematic/MotorOutputsSection.tsx
import { WJ500V_5_08_04P_14_00A } from "../imports/WJ500V_5_08_04P_14_00A/WJ500V_5_08_04P_14_00A";
import { motorTrace, schematicSections, schematicSheets } from "./config";
export const MotorOutputConnectors = () => (
<WJ500V_5_08_04P_14_00A
name="J1"
pcbPinLabels={{
pin1: "A+",
pin2: "A-",
pin3: "B+",
pin4: "B-",
}}
pcbX={26.5}
pcbY={1}
pcbRotation={90}
schX={9}
schY={-1.5}
schPinArrangement={{
leftSide: { pins: [1, 2, 3, 4], direction: "top-to-bottom" },
}}
schSheetName={schematicSheets.motorDriver}
schSectionName={schematicSections.motorOutputs}
/>
);
export const MotorOutputTraces = () => (
<>
<autoroutingphase phaseIndex={-1} minTraceToPadEdgeClearance="0.2mm" />
{/* Reserve room for the wider motor routes before the remaining signals. */}
<trace
name="MOTOR_A_PLUS"
routingPhaseIndex={-1}
from=".DRIVER > .AOUT1"
to=".J1 > .pin1"
schDisplayLabel="A+"
{...motorTrace}
/>
<trace
name="MOTOR_A_MINUS"
routingPhaseIndex={-1.5}
from=".DRIVER > .AOUT2"
to=".J1 > .pin2"
schDisplayLabel="A-"
{...motorTrace}
/>
<trace
name="MOTOR_B_PLUS"
routingPhaseIndex={-1}
from=".DRIVER > .BOUT1"
to=".J1 > .pin3"
schDisplayLabel="B+"
{...motorTrace}
/>
<trace
name="MOTOR_B_MINUS"
routingPhaseIndex={-1}
from=".DRIVER > .BOUT2"
to=".J1 > .pin4"
schDisplayLabel="B-"
{...motorTrace}
/>
</>
);