Quantcast
Channel: Allen Bradley / Rockwell Automation Latest Topics
Viewing all 3721 articles
Browse latest View live

# and [ ] with COPY commands?

$
0
0

trying to understand, so that i may modify, a section of logic here and ive come across something i have yet to see in my limited time programming.  the COPY commands here with a # and also a [ ] around the integers is what is confusing me.  from what ive read you need to use the # sign in front of a string integer in order to use the COPY command?  any sort of light shed on ths subject would be greatly appreciated. 

Syntax_Questions.jpg

Syntax_Questions_2.jpg


Hiperface to Standard Encoder on Kinetix 6500

$
0
0

I am looking to replace a SIC Hiperface encoder with a standard 1024 encoder. I see how to change the protocol here but am wondering what else I would have to change. Thanks for your help!

Using a PID to control a digital output

$
0
0
Hey guys, here's my situation. I'm rebuilding a panel at work and we're eliminating a couple of temperature controllers in favor of using the PID functionality of the Micrologix 1100 (the panel is in a food plant and is sprayed down daily so we lose these door-mounted controllers a lot). The tunnel is cooled using liquid CO2 and a series of valves. The valves open to cool the tunnel and close when the temperature is met. Since the temperature has to remain as constant as possible, I feel I should use a PID loop instead of a simple high-low limit scheme. My question is what would be the best way to use a PID loop to control a digital output? I'm really inexperienced with PIDs and so far I've only run into controlling an analog output with an analog input.

ControlLogix String Access via EIP/CIP

$
0
0

Greetings AB guys!

I am the principle programmer for a SCADA server ControlLogix driver. I implemented an Explicit Connected Messaging solution using the EIP/CIP message protocol that generates the byte stream for the TCPIP buffer. Driver is unmanaged C++ code. We are successfully reading and writing all data types except strings. The public documentation from AB on Data Access 5000, does not address accessing strings however we have customers that need to. So far my attempts are not working as I thought they would with some trial and error.

Using the Write Service (0x4D), I attempt to write HELLO to the tag called Z_PRD_NM[3].DATA

4D 09 91 08 5A 5F 50 52 44 5F 4E 4D 28 03 91 04 44 41 54 41
C2 00 
52 00 
48 45 4C 4C 4F 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

The PLC responds with a error 5.

If I attempt to read the same tag (Z_PRD_NM[3]), the PLC returns a data type of C4 and an Int32 value. I would appreciate any help here. ;)

Studio 5000 version 23 and Factory talk ME version 8.10

$
0
0

This is my first time to the forum and I am still very new to plc programming. I just had to move all of our software over to a new computer ( kind of new) it's running windows 7 pro. The same is as the computer before. Same computer name, same I'm, same file directory. However when I add tags in studio 5000 and reference them in the HMI, it says it is unresolved in route to the processor. It only does this for the new tags. I used the same shortcut and everything so I am at a complete loss here. What do I do.

Newly added tags won't show up in ME

$
0
0

Any new tags I add in studio 5000 the HMI project shortcut cannot locate the tags, it says unresolved route to processor. It's the same shortcut all of the other tags are using. Please help. 

Benefits of using tags/aliases vs direct addressing in RSLogix5000

$
0
0
Hello guys, just had a few questions, wanted to get your opinions on addressing in RSLogix5000 on a CompactLogix L36ERM. So, a little background, we have around 40ish die cast machines in our facility. Up until recently they have all been run by PLC5/30s running RSLogix5. We recently have upgraded 4 of them to CompactLogix L36ERM. For the very first one that I did, I used the program conversion tool so that I could keep the same logic. I had to make lots of tweaks to it and finally got it working correctly. We used direct addressing for that, as in if I have a "Die Open Limit Switch" wired to input module 1, input 5 I would address it in the program as Local:1:I.Data.5 rather than making a tag called "Die_Open_LS" and aliasing it to that address. So, everything was direct addressed, got it running fine, then did the next machine. The next machine had some different i/o so we had to change the addressing a little, maybe now the die open ls was wired into module 3, instead of 1, etc. All of the machines are a little different setup, but mostly the same logic so we just use the last program and make any necessary changes to it and then download it into the newly upgraded machine/plc. So my thinking is that we should just make tags of all of the inputs/ outputs and alias them to whatever address that they are wired into and then address them as the aliased tags in the program. That way whenever we move onto a new machine upgrade we only have to specify the aliased address in one spot, rather than all over the program, and it would be a lot easier. I figure I can even export the tag database and open with Excel and create new tags in there, which would be faster. My question is what are the advantages of using tags/aliases vs direct addressing, other than when the wiring of an input/output changes? Thanks!

can't download panel view800 software version8.0.0 please help


can't download panel view800 software version8.0.0 please help

Panelview conversion

$
0
0

I have a panelview 600 that my company wants updated to a Panelview plus 7 (Version 9), It connects to the Micrologix 1500LRP thru the DFI serial port on the new panelview I have to use a USB to serial converter. The problem I am having is for the ascii displays for the varieties only displays in numerical not string format. In the logix program it uses a integer files that stores the decimal/binary info but for some reason the new PV isn't converting it to an string format.

Any help will be apprecitated.

9840SAM1100.RSS

Seeder.mer

AB ML1100 Set a timer after the "less than" is true for 5 seconds

$
0
0

Hi everyone,

I have a question on the ML1100 PLC. So in my program, I would like to set an alarm for low-level liquid. Since the data I got from the sensor are not stable,  I want to set a timer, such as when the level is less than 20% for continuously 5sec, it will turn on the alarm. I have a "less than" function, but I don't know which function I can use for the timer. The lung below does not work. Can anyone help and give some advice.

Thank you very much.

plc timer.png

Factory Talk View studio

$
0
0

Factory Talk View studio file can convert to connected component workbench for run file or not ?

Who experience please suggestion  Thanks.

IIS 5.1 OPC issue RSLINX Gateway

$
0
0

Good Morning,

I need to write a STRING type tag to a ControlLogix PLC via a web browser so lab personnel can tag contents of various storage tanks approved including the date, their initials, etc.  I wrote a simple VBSCRIPT, below, to achieve this using OPC to RSLinx Gateway 2.5x running on the same PC as this script, and it works fine when I double click it, to either read OR write the PLC tag, without any Matrikon or other 3rd party software.  Note that it reads/writes to a string array, a fixed value, to a SINGLE array element -- as this is just a test -- once I have it working I will tie it into a web input form.

Please bear in mind, this computer handles datalogging and a number of other tasks running under RSVIEW32 7.40, thus it is Windows XP and II 5.1.  I cannot upgrade to newer windows at this time due to cost.  It also handles web-based plotting using Dygraphs and Oracle mySQL, so IIS is already set up on the PC.  I even have Excel functions written to query the Oracle MySql server to look up averages and tag values (poor-man's OSI PISOFT).

The problem is, when I try to run the script from a web browser, as I need to do, it throws an error on the Set objOPCServer = CreateObject("OPC.Automation") line.  The error is below:

Microsoft VBScript runtime (0x800A01AD)
ActiveX component can't create object

I assume this is some sort of DCOM permissions error; but I tried to set script/directory permissions to an Administrator account and it STILL did it.  This web site ONLY functions on a plant LAN, I'm not terribly concerned about security.  If someone could tell me how to remedy this, it would be very helpful.  Or if they could provide a free alternative way to achieve the tag write within a web browser, that would be great.  Obviously, it does NOT throw this error when I double-click the same script within Windows logged in under Administrator account.

Also, I ALREADY have a 1756-eWeb ControlLogix card, and use it to read PLC values to web pages; however, I cannot use WriteLogixTag because it appears only to allow me to write values to a CPU in the same SLOT as the eWeb card; since it's on a different rack, and I cannot move it, that is NOT an option.  It MIGHT be possible to use CIP Generic message on the eWeb, but I don't know enough about CIP, to build a command that would write a string tag -- so alternately if someone can provide a simple example of that it would prove invaluable.  I do NOT understand why Allen-Bradley's eWeb ReadLogixTag function ACCEPTS a full path but WriteLogix only takes a 'slot' as a parameter...

If there is an easier way or alternate script language means of writing a tag than what I'm doing below, I am open to that as well.  I think this might be useful to others as a free way to view plant data on a web page WITHOUT any 3rd party products (even without an eWeb card) if this minor issue could be overcome. . .

 

<%@ Language= "VBScript" %> 
 <% 
response.write("Hello world! - VBScript in IIS")
'Define variables
Dim objOPCServer
Dim objOPCGroup
Dim objOPCItem1
Dim vItem
Dim vQuality
'make reference to RSLinx OPC Automation Interfaces dll and Create OPC Server object

Set objOPCServer = CreateObject("OPC.Automation")
'Connect to RSLinx
objOPCServer.Connect "RSLinx OPC Server", ""
'Define OPC Server parameters
objOPCServer.OPCGroups.DefaultGroupIsActive = True
objOPCServer.OPCGroups.DefaultGroupUpdateRate = 300
'Create OPC Group
Set objOPCGroup = objOPCServer.OPCGroups.Add("VSE")
'Add OPC item to read
'The code below assumes that opc item 'TANK_CONTENTS_ARRAY' resides on OPC topic 'Heartland'
Set objOPCItem1 = objOPCGroup.OpcItems.AddItem( "[Heartland]TANK_CONTENTS_ARRAY[0]", 1)
objOPCItem1.Read CLng(0), vItem, vQuality
objOPCItem1.Write ("TEST_STRING_CONTENTS")
'msgbox "The Value Is: " & vItem
%>

 

1747-sn scanner

$
0
0

i am new in plc and i have issue with allen-bradley system image1.jpeg.216b03b025a2cd010a79cc0907d1

processor slc 503 slot 0

scanport slot1 comm led give red flasher no fault an it connected to 1336 plus (vfd).

at scanport dip switch 1&2 on baud rate 57.6

and dip switch at 1336 plus (vfd) i have three switches in remote I/O 1336-GM1  configerd as image2.jpeg.8662bd1cbc715b77d7a1b957b706

SW1: 1 OFF &2: OFF& 3:ON&4:ON&5:ON&6:ON&7:ON&8:OFF

SW2:  1:ON &2:OFF&3:ON&4:ON&5:ON&6:ON&7:OFF&8:OFF

SW3   1:OFF&2:ON&3:ON&4:ON&5:OFF&6:OFF&7:OFF:8:OFF

JUMPER J2 BETWEEN 1AND 2

at scanport terminal resistor 150 ohm

HOW I CAN MAKE SCANPORT COMMUNICATE WITH VFD 1336 PLUS ?

 

FTView problem after renaming the computer

$
0
0
After changing the computer name, I cannot configure the RSLinx Enterprise communication in Factory Talk View ME Studio projects. It says no such computer in the Factory Talk directory. How can I fix this?

PLC 5/15 to Kinetix 300

$
0
0

Hi, has anyone ever managed to communicate with a Kinetix 300 servo drive from a Plc 5/15? We have DH+ on the PLC and Ethernet ip on the drive? I have seen the 3rd party network bridge but have no experience on how this works. The hardware looks easy enough it's the comms/messaging I need help with

 

Cheers

AB 1747-HSTP1 homing issue

$
0
0

Good afternoon all,

So I'm stumped, we have working a SLC 5/03 with 1746-HSTP1 module running a automation direct STP-DRV 80100 driver and 34127D drive.

It is in command mode,(bit 15)

CW lS used (bit 0)
Home limit switch used (bit 4)
home prox used (bit 5)
pulse and direction (bit 10)

Word zero set for -31696

Everything works great except the homing option with prox. It always travels at base speed. What am I missing?

Being very new to this im surprised I got this far, lol.

I have read the manual several times over but clearly missing something.

Thanks in advance

Copy data from/to a 5069 digital module

$
0
0

Could somebody let me know how to copy the input data from a 5069-IB16 to an integer within a single instruction like a “MOV” or a “COP” (in ladder diagram please).

 

I can do it bit by bit like this:

 

Local:6:I.Pt00.Data ---[]-------------{}---DI_01.0                   (DI_01 is an INT)

Local:6:I.Pt01.Data ---[]-------------{}---DI_01.1

Local:6:I.Pt02.Data ---[]-------------{}---DI_01.2

.

.

.

Local:6:I.Pt15.Data ---[]-------------{}---DI_01.15

 

But this is not efficient

 

Thank you, very much

1756-HSC Application Example

$
0
0

Hello,

I have a cut to length application, and i want to use Contrologix V21.11
CPU 1756-L71 together with 1756-HSC/B counter module to make this
application.

There will be a measuring wheels place directly above the material to detect the length of material pass thru 
and also the line speed.
The measuring wheels is driving a encoder over a gear ratio of 20/6 to increase the encoder pulses.
That mean, 6 turns at measuring wheels will give us 20 turns at the encoder.

The encoder is having a 16384pulses/rev. In quad mode, we will have 65536pulses/rev from the encoder.

The measuring wheels diameter is 200mm, which mean circumference will be 628.3185mm.
That means, 628.3185mm=21854.3333 pulses (Result of 65536pulses x 20/6).

Counter 0 of 1756-HSC will be configure to Encoder x 4 to measure the material length. Roll Over=16123456.
Max measurable encoder revolutions=16123456/21854.333=737 revolutions. 737 revolutions at encoder mean 737x6/20=221 revolutions at measuring wheels. 221x628.3185mm=139066mm or 139.066m.

Counter 1 of 1756-HSC will be configure to Freq Mode to measure the material speed.

As the material flow continuously, the counter will roll over to 0 at every 139.066m.

How can i have the Output 0 of the 1756-HSC to turn ON for 100ms only when the length reached 4920mm, and at the same time, Output 1 turn ON for 100ms only when length reached 5000mm.

Mean output 0 will turn a precisely (tolerance of 1.5mm allow) at 4920mm,9840mm, 14760mm, 19680mm........132840mm,137760mm..(142680mm is not possible, counter 0 already Roll over to zero)...

And output 1 will turn a precisely (tolerance of 1.5mm allow) at 5000mm,10000mm, 15000mm, 20000mm........130000mm,135000mm..(140000mm is not possible, counter 0 already Roll over to zero)...

How to solve this application with Contrologix ? 

Any programming example and advice is very much appreciated.

RS logix 5000 motion control

$
0
0

Hi Guys!

I have a problem with Motion axis move (MAM) command. There is an Allen bradley servo motor what is working well. But I need to add a new program section, wich is in  a specified moment, the axis should move a certain distance.

I think I need to use the mam command, just I dont know how can I configure the motion control part. I need to make a new tag ? or what ? I need to use a user define ?

PLS help me. 

 

Viewing all 3721 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>