2 Arduino - Dual Channel - Triple AND Gate (Perfect Pulse Driver)
By: Chris Bake
Arduino Code: https://bitbucket.org/cbake6807/dualtripleseq/src/master/
Parts List
- External Signal Generator: 0-5Vppk output.
- Power Supply: ATX is ideal, providing +5V REG and +12V REG.
- 2N7000 Signal MOSFETs: Quantity 6.
- IRFP460 or Similar Power N-channel MOSFET: Quantity 2.
- 56Ω 1/8W Resistors: Quantity 10.
- 100Ω 1/2W Resistors: Quantity 2.
- 4.7kΩ Resistors: Quantity 2.
- 2N3906 PNP General Purpose Transistor: Quantity 2 (can be substituted with any general PNP transistor).
- IR2110PB Gate Driver Chip 14-pin: Quantity 2.
- Arduino Nano (or similar): Quantity 2 (must support hardware PCNT).
- Rotary Encoder: Quantity 1.
Software Requirements
- Arduino IDE: Ensure it is installed and updated to the latest version.
- Encoder Library: Install via the Arduino Library Manager.
Arduino Setup
Pulse Counter Arduino
-
Upload Script
- Open the Arduino IDE.
- Connect the first Arduino (PulseCounter) to your PC.
- Open
PulseCounter.ino
from the provided file. - Upload the script to the Arduino.
-
Connect the Encoder
- Connect the encoder's VCC to the Arduino's 5V pin.
- Connect the encoder's GND to the Arduino's GND pin.
- Connect the encoder's CLK and DT pins to two digital pins on the Arduino D2 and D3.
- Connect the encoder's Button pin to D5.
-
Verify Encoder Output
- Open the Serial Monitor in the Arduino IDE.
- Rotate the encoder and check the output to confirm it is functioning correctly.
Adding a Pushbutton for Sync Mode Toggle
Parts Required
Hardware Connections
-
Connect the Pushbutton
- Connect one terminal of the pushbutton to the Arduino's 5V pin.
- Connect the other terminal of the pushbutton to digital pin 4 on the Arduino.
-
Add a Pull-Down Resistor
- Connect a 10kΩ resistor between digital pin 4 and GND. This ensures that the pin reads LOW when the button is not pressed.
Summary of Connections
Sequencer Arduino
- Upload Script
- Disconnect the PulseCounter Arduino and connect the second Arduino (Sequencer) to your PC.
- Open
Sequencer.ino
from the provided file. - Upload the script to the Arduino.
Pin Mapping and Connections
Connecting the Two Arduinos
-
PulseCounter Arduino to Sequencer Arduino
- PulseCounter D5 (Input) ← Signal Generator
- PulseCounter D9 (Output) → Sequencer D2 (Input)
-
Sequencer Arduino Outputs
- Sequencer D9 (Output) → Input to the first AND gate tree
- Sequencer D10 (Output) → Input to the second AND gate tree
Note: The schematic shows the outputs merged due to limitations, but there should be dual outputs from the sequencer, each connecting to a separate AND gate tree.
Gate Driver Chip Connections
IR2110PB Gate Driver Chip
-
Power Connections
- VCC (Pin 3) → +12V REG
- VSS (Pin 12) → GND
-
Input Connections
- LIN (Pin 11) → Arduino PWM pin (as per script)
- HIN (Pin 10) → Arduino PWM pin (as per script)
-
Output Connections
- LO (Pin 1) → Gate of the IRFP460 MOSFET
- HO (Pin 7) → Gate of the second IRFP460 MOSFET
- VS (Pin 6) → Source of the high-side MOSFET
-
Bootstrap Capacitor
- Connect a 0.1µF capacitor between VB (Pin 8) and VS (Pin 6).
-
Other Components
- D2: Place a 1N4001 diode between VB (anode) and VCC (cathode).
- R2: Connect a 10Ω resistor between LO and the gate of the MOSFET.
Schematic Overview
Refer to the schematic image to visualize these connections. The IR2110PB gate driver chips control the IRFP460 MOSFETs, enabling high-power switching of the VIC (Voltage Intensifier Circuit) primaries.
Additional Notes
- Resistor Tolerances: The resistors can have a large tolerance. The 56Ω value is selected to preserve signal clarity. Any value ≤220Ω should be acceptable.
- Merged Outputs: The Arduino Channel Sequencer has 2 outputs shown merged due to Scheme-It limitations.