Momentum M1 Battery Status, Address Overlap

dhendrickson

Member
Join Date
Aug 2009
Location
Mesa, Arizona
Posts
2
This is my third attempt at posting. The forum ate my homework the first TWO times...:mad:

I am using a Schneider / Momentum M1 processor model
171 CCS 76000-ICE and programming using the Concept software and Function Block Diagrams.

First a little history: We built a device for a customer four years ago and it used this PLC for the start up and shutdown process. The PLC just stands by while the device is running. At the time, the folks that were supposed to take care of the PLC work disappeared and it was handed to me. My first rodeo! It is a fairly straight-forward piece of code and uses 7% of available memory.

The device recently returned to us for some upgrades. We found the PLC's memory backup battery dead and badly corroded.

The PLC / Concept software provides a means to monitor the battery status. I thought this would be a nice feature and included it in the code. When the battery gets low, a warning light is illuminated via a relay. However, it would appear from the dead battery and corrosion that either the warning light circuit didn't work or the customer is blind.

Here is how I approached the battery status logic and circuit:

The software has a check box to enable the battery status coil to be associated with a memory location. I enabled and set the memory location to 1536 as suggested by the help file (the last memory register).

In my code, I use a MOVE function to transfer the battery status bit into a named variable. I do this to make the code more readable.

%001536 -- MOVE -- Battery_Status_Bit

I was constrained by legacy hardware issues and did not have an available DO to trigger the warning light relay. So I used an available AO set to high voltabe to trigger the relay instead. In my logic I created two word constants:

Battery_Good_Voltage = 16#3F3F (0 Volts)
Battery_Bad_Voltage = 16#7FFE (10 Volts)

I used a SELect function to choose one of these constants based on the battery status and store it in a named word variable.

Battery_Status_Bit (G) --
Battery_Good_Voltage (IN0) -- SEL -- Battery_Relay_Voltage
Battery_Bad_Voltage (IN1) --

Finally during the output stage of the code, I use another MOVE function to transfer the voltage into the AO-1 register.

Battery_Relay_Volage -- MOVE -- %400009

In essence, if the battery status is good the AO-1 register is set to 0 volts and the relay coil sees 0 volts. If the battery status is bad, the AO-1 register is set to 10 Volts and the relay coil should trip.

When I have the concept software analyze my code it comes up with the following error:

Address Overlap: Configured '%001536' and Direct '%001536'

Nowhere in my code other than noted above do I refer to 1536.

Any thoughts on where I should take a look would be appreciated. Thanks in advance.

-dch
 
The only question I would have is using a voltage to trip an alarm.
I would think it better to use a drop out relay such that when PLC senses low voltage on battery a corresponding low volt output to relay, the relay drops setting off the alarm.

The one drawback to my bright idea is what happens when no power to PLC? The alarm relay would be dropped and would this give you a false alarm indication?

Dan Bentler
 
Ideally, I would have preferred to wire the relay coil to a voltage source and switch the ground side of the coil via a DO on the PLC. But no DOs available. So instead I am switching the hot side of the coil by driving the AO to +10 VDC. This should be a once in every couple of years type event.

Since we are assuming the battery warning light was never illuminated, I am wondering if the Address Overlap error is sufficient to cause my battery logic to fail or if this is just a caution that doesn't really affect things. I have no sense of what the overlap means.

Thanks,

-dch
 

Similar Topics

I'm aware that the Momentum RAM needs to be battery backed to hold the register values. But if we backup the application program to the NV Flash...
Replies
2
Views
4,566
I have a 170AAO92100 card that I am interested in using as a 10 volt output. Is there setup that I have to do in order to change output or simply...
Replies
0
Views
86
Hello Folks, Has anyone configured a Momentum high speed counter on Unity 13.1. We need the wiring diagram for Momentum High speed counter and...
Replies
0
Views
76
Trying to identify the Modbus RTU registers that are in use in the Function block programming in the PLC program. I have a Kohler DEC 550...
Replies
0
Views
147
I am not too familiar with the Schneider family of PLCs .. but I have a client that wants to upgrade from a Momentum to something newer. They had...
Replies
7
Views
2,433
Back
Top Bottom