Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
33 changes: 18 additions & 15 deletions docs/assembly/steering/bom.yaml
Original file line number Diff line number Diff line change
@@ -1,35 +1,38 @@
assembly: "steering"
description: "Steering system components and electronics"
components:
- id: "cytron_md30c"
part_number: "MD30C"
description: "30A H-bridge motor driver"
- id: "cytron_md25hv"
part_number: "MD25HV"
description: "25A high voltage H-bridge motor driver (7V-58V)"
category: "electronics"
quantity: 1
unit_cost: 45.00
unit_cost: 55.00
currency: "EUR"
status: "active"
criticality: "essential"
suppliers:
- name: "Cytron Technologies"
url: "https://www.cytron.io/p-30amp-5v-30v-dc-motor-driver"
verified: true
- name: "OpenCircuit ES"
url: "https://opencircuit.es/producto/30amp-5v-30v-dc-motor-driver"
notes: "Spanish distributor"
url: "https://www.cytron.io/p-25amp-7v-58v-high-voltage-dc-motor-driver"
verified: true
specifications:
continuous_current: "30A"
peak_current: "80A"
voltage_range: "5V-30V"
pwm_frequency: "20kHz"
control_voltage: "3.3V/5V"
continuous_current: "25A"
peak_current: "60A"
voltage_range: "7V-58V"
pwm_frequency: "40kHz input, 16kHz output"
control_voltage: "1.8V-30V"
aux_output: "5V @ 250mA"
features:
- "Discrete NMOS H-Bridge design"
- "Dual input modes: PWM/DIR or Potentiometer/Switch"
- "Overcurrent protection with active current limiting"
- "Temperature protection and undervoltage shutdown"
documentation:
datasheet: "../../assets/datasheets/MD30C Users Manual.pdf"
datasheet: "https://docs.google.com/document/d/1xJHVG2dc3aEtedCHf3L9NzUy5KqpxeWjeS9Lfh9XuqA"
github: "https://github.com/CytronTechnologies/CytronMotorDriver"
tutorials:
- "https://www.cytron.io/tutorial/controlling-md10c-with-arduino"
- "https://www.instructables.com/Controlling-Motor-Speed/"
notes: "Rated for 13S battery (41.6V-54.6V) operation, replaces MD30C which was limited to 30V"

- id: "steering_motor_24v"
part_number: "STEERING-24V-MOTOR"
Expand Down
28 changes: 14 additions & 14 deletions docs/assembly/steering/h-bridge.md
Original file line number Diff line number Diff line change
@@ -1,20 +1,20 @@
# H-bridge data
- **Cytron MD30C** (30 A cont, 80 A peak)
- <https://www.cytron.io/p-30amp-5v-30v-dc-motor-driver>
- Bought here to ship to Spain: <https://opencircuit.es/producto/30amp-5v-30v-dc-motor-driver>
- <https://www.cytron.io/p-30amp-5v-30v-dc-motor-driver?srsltid=AfmBOoo-TCLyyRQ5SBEhwpIMcAhQIaXDzO-NgCP_LdYCx8KNeVAThvSF>
- <https://docs.google.com/document/d/178uDa3dmoG0ZX859rWUOS2Xyafkd8hSsSET5-ZLXMYQ/view>
- <https://github.com/CytronTechnologies/CytronMotorDriver>
- <https://www.cytron.io/tutorial/controlling-md10c-with-arduino>
- <https://www.instructables.com/Controlling-Motor-Speed/>
- **Cytron MD25HV** (25 A cont, 60 A peak, 7V-58V)
- Product page: <https://www.cytron.io/p-25amp-7v-58v-high-voltage-dc-motor-driver>
- Datasheet: <https://docs.google.com/document/d/1xJHVG2dc3aEtedCHf3L9NzUy5KqpxeWjeS9Lfh9XuqA>
- GitHub library: <https://github.com/CytronTechnologies/CytronMotorDriver>
- Tutorial: <https://www.cytron.io/tutorial/controlling-md10c-with-arduino>
- Tutorial: <https://www.instructables.com/Controlling-Motor-Speed/>
- **Note**: Upgraded from MD30C to support 13S battery (41.6V-54.6V). MD30C was limited to 30V max.

### Reasoning
Suggested H-bridges by gpt:

- **Cytron MD30C** (30 A cont, 80 A peak)
- **Pololu VNH5019 Driver** (12 A cont, 30 A peak)
- <https://www.pololu.com/product/1451?utm_source=chatgpt.com>
- ~~Sabertooth 2x32: Overkill but excellent for dual motors, up to 32 A per channel~~
- ~~Simple BTS7960: Cheap dual half-bridge module, supports 43 A per channel, needs external PWM and logic control~~
- **Cytron MD25HV** (25 A cont, 60 A peak, 7V-58V) - **CURRENT CHOICE**
- ~~**Cytron MD30C** (30 A cont, 80 A peak, 5V-30V) - Insufficient voltage rating for 13S battery~~
- **Pololu VNH5019 Driver** (12 A cont, 30 A peak)
- <https://www.pololu.com/product/1451?utm_source=chatgpt.com>
- ~~Sabertooth 2x32: Overkill but excellent for dual motors, up to 32 A per channel~~
- ~~Simple BTS7960: Cheap dual half-bridge module, supports 43 A per channel, needs external PWM and logic control~~
- ~~IBT-4~~
- Needs two synced pwm signals to control the H bridge, so it's harder to use. Otherwise it would work and it's cheaper
- Needs two synced pwm signals to control the H bridge, so it's harder to use. Otherwise it would work and it's cheaper
5 changes: 3 additions & 2 deletions docs/assembly/steering/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,8 +22,9 @@ We need to move the steering shaft to the target angle.
1. Micro controller reads target position from main computer (Orin) and current position from the Hall effect sensor
- Micro controller may be a Blue Pill, Teensy 4.0, or one with CAN transceiver builtin.
2. Calculates PWM % value with PID. Sends PWM 3.3V to H-bridge
3. H-bridge (MD30C) receives PWM and powers the DC motor
- ChatGpt said it can't work with 3.3V PWM, just 5V PWM, but the datasheet says otherwise [here](../../assets/datasheets/MD30C%20Users%20Manual.pdf)
3. H-bridge (MD25HV) receives PWM and powers the DC motor
- The MD25HV accepts control voltages from 1.8V-30V, so 3.3V PWM from ESP32 works perfectly
- [Datasheet](https://docs.google.com/document/d/1xJHVG2dc3aEtedCHf3L9NzUy5KqpxeWjeS9Lfh9XuqA)

## H-bridge data
See [H-bridge](h-bridge.md) for more details.
Expand Down
Binary file removed docs/assets/datasheets/MD30C Users Manual.pdf
Binary file not shown.
Loading