KC0IYT Microcontroler-Based Sequencer

I purchased some latching SMA coaxial relays on eBay that require pulses to control which port is active. The documentation says it can be a one second pulse. This is different than the Transco relays which are energized to turn them on, and otherwise off. I started designing an analog circuit to create the pulses, but eventually decided this was a perfrect project for a microcontroler.

I've been using microcontrolers in my model rocketry projects so I have plenty of them around the shack. Right now my preferred controler is the Atmel AVR series, and I've been using the ATtiny45 for most of my recent projects. This is an 8-pin part that can have up to four input/output ports (a fifth can be had at the price of losing the RESET line, which is required to reprogram the device) and the inputs can be digital or analog (it has a 10-bit A/D converter). I use a Tiny26 for experimenting because it is a larger part (16 I/Os).

My design goals were:

  1. Two PTT-L outputs to control a transverter and amplifier
  2. Two pulsed outputs to control +12v power to the RF relay
  3. PTT-L or PTT-H inputs
I took some ideas from the W1GHZ sequencer (A simple, yet fool resistant, sequencer for transverters), primarily the selection of the MOSFETs to drive the outputs.

The design is as expected straightforward:

What is the extra transistor for?

My previous sequencer used all analog circuitry at (nominally) 12v. With this project, I was controling the MOSFET gates with +5v and having problems with them not turning on / off completely. The data sheets for the VN2222 lists an ON State Drain Current of 2A with a gate voltage of 5v, but 10A with a gate voltage of 10v. The IRF9Z14 was similar but lists a continuous drain current of 6.7A with a gate voltage of -10v (it's Gate Threshold Voltage is -4.0v). So it became obvious that I needed to drive the MOSFETs with 12v, not 5v. I could use a pull-up resistor to bring the Gate to 12v, but I couldn't find an "absolute maximum voltage" for the i/o pins in the data sheet. I was uncomfortable with presenting 12v at the input pin of the microcontroler, even if I used the port as a "pull down only" port by changing the port's direction (input/output) to control the output.

Circuit Board

I decided to have a printed circuit board made for this project. I used PCB Express since their product seems well received in the community and the price of their Miniboard service seemed reasonable. I laid out a miniboard with this design (I filled the rest of the board with other projects).

I plan to put this project in a small (2.75 x 2.13 x 1.63) BUD Mini-Box so I was trying to squeeze it all in to a small space. I had a hard time, and I'm not sure that I was successful in making a board small enough, as the cover has to be squeezed inwards to go all the way on.

Software

The program is pretty straightforward:

Programming the data to operate on has to be done with the AVR programmer at the time the device is programmed. This is unfortunate, but I haven't figured out a way to program it without more input/output pins.

Remember, the VN2222 ports are active 'low' while the IRF9Z14s are active 'high'.

Source



Thank you for visiting my reality!
Last updated: $Id: seq1.html,v 1.1 2006/11/05 05:45:15 glen Exp glen $