Skip to main content

2 Arduino - Dual Channel - Triple AND Gate (Perfect Pulse Driver)

By: Chris Bake

Arduino Code: https://bitbucket.org/cbake6807/dualtripleseq/src/master/

Parts List

  1. External Signal Generator: 0-5Vppk output.
  2. Power Supply: ATX is ideal, providing +5V REG and +12V REG.
  3. 2N7000 Signal MOSFETs: Quantity 6.
  4. IRFP460 or Similar Power N-channel MOSFET: Quantity 2.
  5. 56Ω 1/8W Resistors: Quantity 10.
  6. 100Ω 1/2W Resistors: Quantity 2.
  7. 4.7kΩ Resistors: Quantity 2.
  8. 2N3906 PNP General Purpose Transistor: Quantity 2 (can be substituted with any general PNP transistor).
  9. IR2110PB Gate Driver Chip 14-pin: Quantity 2.
  10. Arduino Nano (or similar): Quantity 2 (must support hardware PCNT).
  11. 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

  1. 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.
  2. 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.
  3. 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

To add a pushbutton to the Sequencer Arduino for toggling the sync mode, follow these instructions:

Parts Required
  • Pushbutton: Quantity 1
  • 10kΩ Resistor: Quantity 1
  • Connecting Wires
Hardware Connections
  1. 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.
  2. 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

  • Pushbutton Terminal 1 → Arduino 5V
  • Pushbutton Terminal 2 → Arduino Pin 4
  • 10kΩ Resistor → Arduino Pin 4 and GND

Sequencer Arduino

  1. 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.

  • Shared Connections
    • Both Arduinos' GND pins should be connected together to ensure a common ground.

Gate Driver Chip Connections

IR2110PB Gate Driver Chip

  1. Power Connections

    • VCC (Pin 3) → +12V REG
    • VSS (Pin 12) → GND
  2. Input Connections

    • LIN (Pin 11) → Arduino PWM pin (as per script)
    • HIN (Pin 10) → Arduino PWM pin (as per script)
  3. 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
  4. Bootstrap Capacitor

    • Connect a 0.1µF capacitor between VB (Pin 8) and VS (Pin 6).
  5. 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.


image-1719630807457.png