Analog signal communication with ML1500

advmin

Member
Join Date
Mar 2023
Location
Sheffield
Posts
59
Hello folks,
Hope everyone is doing well.

I am a beginner at working in analog signals with PLC
Analog module: 1769-IF4 ( 4 analog inputs )
PLC: ML 1500 LRP

I went through some older threads in the forum and the documentation, but I still struggled to get a correct image due to inexperience.

The analog output I am receiving from the loadcell weight indicator is 4-20ma.
ie,
0 kg ----> 4ma
45 kg----->20ma
On exactly 45kg, I want a bit to get energized and signal the robot to stop the cycle.

1. In RSlogix 500, when we select this analog module in i/o configuration, I can see a window containing the options to enable and a drop-down tab to select which type of input we are receiving. For me I should select the 4-20ma, right? Is there anything more to be done there?

2. In which terminals on the analog module should I connect the wires for 4-20ma input?

--------> I in 0 +
o/p from weight indicator |
--------> V/I in 0-
Is this the right way?

What about the analog comm? Leave it like that or need to short with V in 0+?


3. In the document, I read about an external supply, Do I need to use it only if I need to power up the indicator through the loop with the module? ( if the indicator has its own power supply, we do not need to add an extra supply to the analog module, right?

4. Please guide me with the programming to implement the requirement of energizing a bit at exact 45kg.
Which functions should I use in dealing with analog signals? (I never used the SCP, or compare functions, so please guide me through it) ?


Sorry for the long sequence of doubts.

please share your views and suggetions.

cheers
 
I would struggle to give you information on ML1400 as it was some years ago I last used one but to give a signal at exactly say 45kg you will have problems for example due to the conversion time (on both the loadcell electronics & PLC conversion) the PLC may miss the 45kg i.e. the plc may only see it at 44 & 46. or if you are scaling it to say one decimal place or more (a real (float) number then again even though the analog signal may be pretty fast it could mean the PLC only sees it at 44.9 or 45.1 so I suggest you make the compare equ to or greater than 45kg (if decimal places then 45.0). many people make that mistake & what happens is the output coil you energise to tell the robot to stop is missed so it carries on. You may also want to take away an in-flight amount because the robot may not stop instantly or the product that is in-flight (not actually in the receptical on the loadcell) will still be added even when the robot stops.
you could also put in alarm limits in case a large lump or something suddenly falls into the receptical.
Normally, you would scale the loadcell in floating point number
Subtract the in-flight from required actual kg & use that as the setpoint
I.e.
Sub 0.2kg from 45.0kg (leaves you 44.8kg)
Compare Actual weight is => 44.8kg output the signal
At commissioning then you find what the in-flight may be
 
Thanks a lot, Parky for briefing me on how to implement this specific task.

I need a bit of help in programming the analog using rslogix 500.
4 20 ma
0 45 kg
0 32767 raw data ( idk this is correct)

I suggest you make the compare equal to or greater than 45kg (if decimal places then 45.0). many people make that mistake & what happens is the output coil you energize to tell the robot to stop is missed so it carries on.

Thanks for your suggestion.
First, we need to scale them to a value range between 0 -32767 and then use the compare equal to or greater than to energize the output.
1. How do these analog inputs work in the plc? (I am really immature to these signals).
I am struggling with how and where to start the programming.

2. I have attached the image of the input data range for 4-20ma.
What values should I provide in the INPUT MIN and INPUT MAX in SCP function box ( for 4-20ma ) ?


cheers

ss anlg mdle.png
 
Last edited:
In your program insert a SCP instruction and add the following parameters

INPUT: I3:0 (just put your channel number i.e. slot 3 analog 0) or what yours is
INP MIN: 4000 (4ma level)
INP MAX: 20000 (20ma level)
Scaled Min: 0.0 (loadcell empty)
Scaled Max: 100.0 (loadcell full capacity) assumes 100kg
OUTPUT : F8:0 (Float file actual value) Note: this is a float so if you do a compare then use a float i.e. 45.0 as the target

As I said it's some years since I used AB I'm sure somone else hear will correct me if I'm wrong.
I'm sure that the in min/max is 4000 & 20000
But this might depend on the card setup.
 
What values should I provide in the INPUT MIN and INPUT MAX in SCP function box ( for 4-20ma ) ?


That depends on at least two things:

  • What values you intend to put in the OUTPUT MIN and OUTPUT MAX function box;
  • How you configure the 1769-IF4 channels' Input Data Select Format (cf. here).
 
INPUT: I3:0 (just put your channel number i.e. slot 3 analog 0) or what yours is
INP MIN: 4000 (4ma level)
INP MAX: 20000 (20ma level)
Scaled Min: 0.0 (loadcell empty)
Scaled Max: 100.0 (loadcell full capacity) assumes 100kg
OUTPUT : F8:0 (Float file actual value) Note: this is a float so if you do a compare then use a float i.e. 45.0 as the target
*

This is what I had been looking for. Thanks again Parky.
Your suggestions really guide me to get a good view of how analog signals works with PLC.
Special thanks for mentioning to use of the "compare" function which ensures safety and minimum material wastage

I'm sure that the in min/max is 4000 & 20000
How you configure the 1769-IF4 channels' Input Data Select Format (cf. here).

Thanks for the reply Drbitboy. From Parky's post saying 4000-20000, I think it should be "engineering units".

What values you intend to put in the OUTPUT MIN and OUTPUT MAX function box;

For my process, there is no requirement in providing an analog output.
Only the analog input from loadcell is required which would stop the robot when it hits a 45kg click.


Cheers guys and have a lovely weekend.
 
What values you intend to put in the OUTPUT MIN and OUTPUT MAX function box;
For my process, there is no requirement in providing an analog output.


Sorry, I meant "Scaled Min." and "Scaled Max." parameters of the SCP instruction, which, along with the "Input Min." and "Input Max." parameters, determine the Output value.

Anyway, it sounds like you have it sorted. If you are not intimately familiar with linear scaling, I suggest searching this forum for phrases like "scaling" and "multiply by unity."
 
Last edited:
hello Guys,

By following your valuable feedbacks, I have completed implementing the SCP function.
But when the float (F8:0) is used as the output of SCP, a warning message came saying
"scp floating operands are only valid of ML 1500 Ser C Frn 7 or higher "

The PLc I am using is,
ML 1500 1764 LRP
SER - C
REV - B
FRN - 7

From referring to some of the older threads, I understood that it's not about the processor specification; the OS version should be Ser C Frn 7 or higher.

I am attaching the images from the RSLogix 500 and the processor hardware.
The programs are working well since it is a "warning" message but I am afraid that it would have a bad impact on the processor in the future.

cheers all

processor .jpg plc talk frn .jpg
 
If you download to Frn 7 or higher, it will work because floating operands are supported for SCP. If you download to a lower Frn, it will not.

It gives you a warning because unlike with 5000, RSLogix 500 has nothing in its project that knows what the actual firmware revision is -- all it knows is the selected series and whether it is LRP or LSP. You might be using a processor that supports it, or you might not, but the software has no way to know. It's giving you a heads up that there's a potential issue; it's up to you to check whether it will actually be an issue.

Since you do have Ser C Frn 7, there will be no issues.
 
Thank you plvlce for your quick reply.

Since you do have Ser C Frn 7, there will be no issues

Yes, the PROCESSOR is Ser C Ver 7

My concern is whether the operating system (OS) should be updated to Frn 7 or processor with Ser C Frn 7 is enough to use the float in SCP. ( I am not sure how to find the exact series, revisions, and Frn of OS )


cheers
 

Similar Topics

Hello, I have a compact Logix plc and I have been task with configuring alarms into our SCADA when an Analog signal stops moving. The analog...
Replies
6
Views
244
I'm pretty new to PLC's, so forgive me if I use the wrong terminology and whatnot. We have an issue at work where we have a flow meter that is...
Replies
10
Views
291
I need assistance in the form of some example programs pertaining to analog read and write. Thanks in advance. Sangli
Replies
1
Views
199
I need to change my program to increase a IP transducer by 0.5 psi every 5 seconds. I am making a automated pressure tester using a pump, IP...
Replies
6
Views
1,051
Hello I have a analog input signal that is bouncing a bit. The PLC card is a 1769-IF8 I changed the input card filter setting from 60hz to 50hz...
Replies
14
Views
4,873
Back
Top Bottom