Files
NeoECU-Hardware/Architecture/IO_MODULES/INJECTON.md
T
h3cx 0de94168f7 Initial function IO and power architecture
This commit contains the inital functional IO (engine controls and
general digital and analog IO excluding digital IO) and the initial
power architecture for the project
2026-08-29 21:18:45 +02:00

108 lines
4.7 KiB
Markdown

# Injector Output Module
## Purpose
This module drives one conventional high-impedance/saturated fuel injector. It
uses the STMicroelectronics VNL5050S5-E protected low-side switch
(`VNL5050S5TR-E` for tape-and-reel assembly).
The driver provides an integrated power MOSFET, inductive-load clamp, current
and power limiting, thermal protection, off-state open-load detection, and an
open-drain status output. It is not a peak-and-hold injector driver; a
low-impedance injector requires a different architecture.
## Power path
```text
VBAT_PROT --> injector positive terminal --> injector coil --> VNL5050 DRAIN
|
internal low-side MOSFET
|
SOURCE --> INJ_PGND --> power-entry ground
```
- The injector's positive terminal connects to `VBAT_PROT`; its negative
terminal connects to `DRAIN`.
- `SUPPLY` connects to `+5V_MAIN`, the internal logic rail. Place local
decoupling from `SUPPLY` to `SOURCE`, including a nearby 100 nF ceramic
capacitor.
- The VNL5050S5-E provides a 41-52 V drain-source clamp for inductive turn-off.
Injector current-decay/closing time must be verified using the actual
injector inductance and resistance.
- Do not add a conventional flyback diode across the injector; it would slow
its current decay and closing response.
## Command path
`INPUT` is active high. It receives only the hardware-permitted injector
command defined by the dead-man interlock.
```text
SAFE_INJECTOR_SIG --> 1 kOhm Rprot --> INPUT
|-- 10 kOhm ---------> INJ_PGND
`-- low-capacitance
Zener clamp ------> INJ_PGND
```
```text
SAFE_INJECTOR_SIG = ENGINE_PERMIT AND MCU_INJECTOR_SIG
```
`SAFE_INJECTOR_SIG` is 5 V logic and therefore provides substantial margin
over the VNL5050S5-E's 2.1 V minimum input-high level. The 1 kOhm `Rprot`
resistor follows the manufacturer's protection approach. The 10 kOhm pull-down
is placed on the driver side of `Rprot`; it holds `INPUT` low if the permission
logic is unpowered, disconnected, or during power sequencing.
Fit the low-capacitance Zener clamp directly at the VNL5050S5-E `INPUT` pin,
on the driver side of `Rprot`. Its return is the local `INJ_PGND`/`SOURCE`
reference, not remote `DGND`. Select its clamp voltage to tolerate the valid
5 V command high while limiting coupled positive transients at the power-IC
pin.
When `ENGINE_PERMIT` is removed, `SAFE_INJECTOR_SIG` goes low and turns the
injector output off. This is the hardware shutoff path; firmware also clears
pending injection events when it observes a dead-man release.
## Status diagnostic
`STATUS` is an open-drain diagnostic output. It is read by the MCU through a
1 kOhm protection resistor and a `+3V3_MAIN` pull-up.
```text
+3V3_MAIN pull-up --> MCU-side status node --> 1 kOhm Rprot --> STATUS
```
The 3.3 V pull-up is within the pin rating and provides a safe MCU logic level.
The diagnostic path supports off-state open-load detection and indicates
over-temperature shutdown. The VNL5050S5-E protects against short circuit and
current overload internally, but its single `STATUS` pin does not provide a
separate, unambiguous MCU-readable short-circuit/current-limit indication.
## Ground and layout
Define `INJ_PGND` as the injector module's high-current return domain.
```text
VNL5050 SOURCE --> short, low-impedance INJ_PGND copper --> power-entry ground star
```
- `INJ_PGND` runs directly to the power-entry ground star, where it joins the
battery return, `IGN_PGND`, `DGND`, and sensor return domains.
- It must not share copper with those other returns before the star point.
- `SOURCE` is both the MOSFET power return and the driver's logic reference;
unlike the ignition driver, this part has no separate Kelvin-sense ground
pin. Keep the `SUPPLY`-to-`SOURCE` decoupling loop compact and the command
and status traces away from the `DRAIN` switching node.
- Provide the drain copper area required by the package thermal guidance.
## Remaining validation before schematic freeze
1. Measure injector coil resistance and obtain its part number/datasheet.
2. Confirm that the injector is high impedance and that its peak current,
stored energy, and turn-off time fit the VNL5050S5-E limits.
3. Verify output-stage temperature using the actual injector duty cycle,
board copper area, and enclosure conditions.
4. Validate injector opening/closing timing, diagnostic behavior, and ignition
noise immunity on hardware.