Using an UNO for 12V alarm control system (Newbie)

Hi there. I have an UNO kicking around and thought it might be fun to finally try a project. I have a sailboat that runs on 12 V. It has 6 alarms scattered through out the boat (bilge pumps, engine alarms, battery alarms etc). Most of them simply power a small buzzer or light when activated (12 V). I want to use the UNO to collect up the alarm signals and display which system is in alarm using a series of LEDs in a panel. I want it to power a 12 V fire bell. The LED display panel would have a switch beside each LED to power down the fire bell.

I'll learn the coding language to run this thing. Lets keep this post focused on the circuit.

I can envision using simple 12 V automotive relay's that when powered by the various boats alarm circuits allow some signal connection to the UNO. What I don't get is what that signal connection would look like to the UNO. Analog or Digital? Eventually Im probably going to use 7 digital pins for a small display so I like to keep those clear if possible.

opto interface? Do I need to learn these things or does the automotive relay do the same thing.

Does someone have a link to a project that can get me started? Ive started with this:

http://www.instructables.com/id/Arduino-Reed-Switch/

I would simply substitute the reed switch with an automotive relay in my case. That example is using a digital input without the built in pull up resistor. Im assuming there is a way to use the Analog inputs?

Seeing this post: http://forum.arduino.cc/index.php?topic=379332.msg2617902#msg2617902

Makes me wonder if I need the relay at all or if I can somehow just use correctly sized resistors and capacitors. I would need help sizing both though. My battery connected to the reed switch would be 12V (which can go as high as 14.4 and as low as 12.1).

Scaling this example to use all the analog inputs means the possibility for 6 connections to ground. What does that do to the UNO? I just downloaded Fritzing. Give me a few days to learn this program and I'll update this post with a circuit of what I mean here if needed.

Cost on these parts is not a deciding factor for me so if using the relays or some other opto interface is safer Im happy to spend the extra few bucks. A marine company sells a fully built setup that does what Im wanting to do for $400. Ive got some budget to play with this. (Its more fun this way anyway)

Thanks for getting me started. If this is too much info to start with, let me know and I will break stuff out into smaller chunks. Gary

The alarms can probably be handled using a simple voltage divider, but do add a 5V zener diode for protection (you will see voltage spikes, and those may kill your port.

Same for your Arduino, if powering from the on-board system, make sure you have a sturdy regulator that can handle the spikes.

For your display, there are I2C versions available, requiring only two pins.

Also now you still have time, dump Fritzing. Get real schematic drawing software such as EagleCAD or KiCAD. Fritzing may be nice to give you wiring diagrams, but it's terrible when it comes to making anything that's readable or understandable from just looking at the images.

So am I better running these off the analog port or digital port? Digital would allow for more control of the signal but in my case its only on or off so I assume analog would be fine. I'll look into the other schematic programs Thanks Gary

I guess you're thinking about PWM when you say "digital would allow for more control". Not all Arduino digital pins offer PWM (check the data sheet of your particular version for details). The others are just ON/OFF types of ports, just like the analog ones but without the ADC on the input.

Six alarm inputs, six LEDs to indicate same, six silence/ack switches. There's eighteen I/O right off the bat. An I2C port expander may prove useful.

That, or an Arduino with more pins such as a Mega (which has 54 I/O pins).