I'm using an Arduino Mega 2560 to make a fire alarm control panel. The control panel takes 50 (inputs) supervised inputs. The normal way as mentioned in the link is to use the analog inputs, which I am short of. Is there any other way to monitor supervised inputs other than using analog inputs?
Thanks in advance for your time – if I’ve missed out anything, over- or under-emphasized a specific point let me know in the comments.
1 Answer 1
I can think of a number of ways of doing this:
- Multiplexing -- Employ a (large) number of analog MUX chips to expand the number of analog inputs you have available. That would get messy very quickly.
- External ADC Chips -- Add more real analog inputs over SPI or I2C. For 50 inputs that would be quite a lot of extra chips.
- Use Op-Amps -- Each input can be converted into a pair of digital inputs using two op-amps to compare the voltage of the input against two thresholds, which would give you an "active" and a "fault" signal. That would be 100 digital inputs needed (and 100 op-amps, which could be done with 25 quad op-amp chips).
- Distributed processing -- Don't try and do it all with one device. Split your system into zones with far less inputs then get the zones to communicate with each other.
Of course, you can combine any of those - you could have analog MUX chips fanning out a number of external ADC chips inputs. You could MUX the inputs to the op-amps. You could have external ADC chips on multiple zone systems. Etc.
Personally, on a system of this size, I would certainly consider distributing the inputs across multiple processors even if they are all in the same physical control unit. However, distributing nodes across the building (it sounds like it's quite a large building for 50 inputs) would reduce the amount of cable needed to implement those inputs, and some industry standard bus snaking its way around the building connecting all the nodes up to a master unit would, if implemented correctly, be robust. CAN is a popular protocol for interconnecting control systems (it's used in modern lifts, and those are life critical... you don't want a lift to fail...) so could be a good choice for this.
-
The distributed processing option is scalable; just add more units. And with WiFi capabilities, no need for wiring to a central command.user31481– user314812017年12月27日 11:48:30 +00:00Commented Dec 27, 2017 at 11:48
-
3@LookAlterno I'd be wary about using WiFi for a fire alarm system...Majenko– Majenko2017年12月27日 11:49:06 +00:00Commented Dec 27, 2017 at 11:49
-
If I use the method 3, can I use encoders to reduce the number of inputsNithin Varghese– Nithin Varghese2017年12月29日 02:59:53 +00:00Commented Dec 29, 2017 at 2:59
-
Encoders....? Shift registers, sure. Io expanders, yes. Encoders? Makes no sense.Majenko– Majenko2017年12月29日 07:00:31 +00:00Commented Dec 29, 2017 at 7:00
Explore related questions
See similar questions with these tags.