Riskinit

Upgrade a SLC 5/04 to ControlLogix

27 posts in this topic

Good afternoon,

I have the following system:

0)        1747-L541        5/04 CPU - 16K Mem. OS401

1)        1746-BAS-5/02 BASIC MODULE - M0/M1 capable

2)        SPARE

3)        SPARE

and I want to upgrade it to ControlLogix.

I was thinking of using a ControlLogix 1756-L81E, 1756-PB75, 1756-A4, and 1756-DHRIO to replace the functionality of this existing system. However, how do I replace the 1746-BAS module? From the program it appears to be storing 64 integers that get copied to N7. What hardware is equivalent to a 1746-BAS? Do I need to get online with the BASIC program using hyperterminal?

Thanks for any assistance.

Share this post


Link to post
Share on other sites

What is the BAS module connected to? You may be able to replace the unit with something that talks Ethernet.

Share this post


Link to post
Share on other sites

And L81 ControlLogix to replace a SLC 5/04 is like cracking a walnut with a pile driver.  Way overkill.  Consider one of the small CompactLogix models.  If the BAS module is really doing custom serial comms, consider the ProSoft equivalent for the CompactLogix family.

Share this post


Link to post
Share on other sites

I'd even consider using a redlion if it's for serial comms. Redlion's raw serial driver makes it easy to write your own ascii drivers.

Share this post


Link to post
Share on other sites

A CompactLogix 5370 CPU with a 1769-ASCII module can be setup to receive the serial data that the 1746-BAS processes and do it cheaper than a ControlLogix.  You will however have to reverse engineer the BAS Logic.  The suggestion that you investigate what the BAS talks to and switch to ethernet is also a great idea.

Share this post


Link to post
Share on other sites
14 hours ago, alan_505 said:

What is the BAS module connected to? You may be able to replace the unit with something that talks Ethernet.

It appears to talk to a series of possibly 8 Honeywell controllers at minimum. I haven't run through the network. There appear to be a maximum of 64 integers being read from the BAS module though. In the attached picture you can see the first node in the line connected by blue wire.

15 hours ago, pturmel said:

And L81 ControlLogix to replace a SLC 5/04 is like cracking a walnut with a pile driver.  Way overkill.  Consider one of the small CompactLogix models.  If the BAS module is really doing custom serial comms, consider the ProSoft equivalent for the CompactLogix family.

I would tend to agree. I made it sound like I had a choice in the matter but I don't. The customer requested this specific model for future upgrades.

12 hours ago, BobLfoot said:

The suggestion that you investigate what the BAS talks to and switch to ethernet is also a great idea.

Sounds like I should investigate the BAS module program. Is the 3rd party program Hyperterminal a good way to accomplish this?

IMG_0234.jpg

IMG_0236.jpg

IMG_0239.jpg

Share this post


Link to post
Share on other sites
49 minutes ago, Riskinit said:

Is the 3rd party program Hyperterminal a good way to accomplish this?

Yes.  You will have to stop the running program to LIST it, though.  So plan on some downtime.

1 person likes this

Share this post


Link to post
Share on other sites
34 minutes ago, pturmel said:

Yes.  You will have to stop the running program to LIST it, though.  So plan on some downtime.

Thanks, I will plan on doing that early next week.

I didn't get the exact model number of the Honeywell but these were the listed terminals. It looks like it talks over RS485 (the wiring). Does that mean it probably uses DH485 (the protocol)? Would a control logix DH485 card be the simplest path here?

IMG_0240.jpg

Share this post


Link to post
Share on other sites

RS485 and DH485 are not the same, I am sure someone who knows all the differences can comment about them.

From my understanding RS485 is a physical standard whereas DH485 is a protocol used by Allen Bradley.

Share this post


Link to post
Share on other sites

According to the 1746-BAS manual port 2 can talk over RS485 (the protocol) and from my limited understanding it is doing it over half-duplex since it is reading multiple Honeywells.

I think I will have to gather the BASIC program to fully understand... hopefully no math besides scaling involved.

port2.JPG

Share this post


Link to post
Share on other sites
2 hours ago, Riskinit said:

can talk over RS485 (the protocol)

No, as alan says, RS485 is a physical standard, not a protocol.  It defines the electrical characteristics for sending bits.  That's it.  You will need the Honeywell documents to know the protocol.  Or decipher it from the BASIC program.

Share this post


Link to post
Share on other sites

If your customer is demanding that you use the  1756-L81E, 1756-PB75, 1756-A4,  setup then I would add a 1756-EN2T module or better and utilize 1734, 1794 or 5069 Ascii Modules on an Ethernet Flex Node.  Connect the RS-485 of the Ascii Module to the Honeywell.  Reverse engineer the BAS Module code, it's manual is still available online and yes Hyperterminal work just fine.  And then code what you need in the L81E.  

You could also look around and find Honeywell Controllers that speak ethernet and suggest to the customer they upgrade and eliminate the RS-485.

Share this post


Link to post
Share on other sites

Thank you very much for those photos.    While the wiring is slipshod at best, at least it shows the pinouts !   

The 1746-BAS has a 1980's vintage Intel 8051 microcontroller running a BASIC interpreter.  It has three serial ports and a bunch of custom routines for accessing DH485 networks and the backplane data interface for the SLC-500.

One very popular use of that module is what you see here:  it is almost certainly polling a multidrop RS-485 wired network on PRT2. 

The installers obviously used the same Belden cable for the RS485 network as they had on hand for DH+.   And that's fine:  it's ordinary shielded twisted pair, and low-speed RS485 is very forgiving.  When the jumpers are set for RS-485 mode, Pin 1 is Data(-), Pin 9 is Data(+), and Pin 5 is Data Common, and that's what pins are connected in the plug on PRT2.

The most popular protocol for this purpose is good old Modbus RTU.    Prosoft sold a version of the 1746-BAS with their own firmware in it, and I wouldn't be surprised if you found a Prosoft chip stuck in an A-B labeled module.

Honeywell, of course, has made hundreds of different models of controller that fit in a DIN cutout like that.   The odds are good that it does run Modbus RTU, but of course you'll have to identify it to be sure.

There are dozens of ways to poll a Modbus RTU network with a ControlLogix.   The easiest-to-use are probably Real Time Automation's gateway, or the Spectrum Controls Universal Gateway.  

If you told me "I don't know what protocol it will be on RS485 but you need to order the parts today" I would buy a Red Lion DataStation, because of their very broad range of serial drivers.

To connect to upload this program, you'll need an ordinary serial terminal and an RS-232 cable.   Good old Hyperterminal or RealTerm will work.   You're literally going to send a Control-C to interrupt the program, LIST to make it print the BASIC program to the console (where you will copy/paste it to a document), then RUN to put it back in operation.

3 people like this

Share this post


Link to post
Share on other sites

Good morning, this is a lot of information but any advice or insight is appreciated. After another trip I have found the following information:

The SLC 5/04 has a single rung of logic to copy 64 integers from the 1746-BAS card #M1:1.0. In the N7 data table I can see there are 8 old values no longer updating. They are in addresses N7:0, N7:1, N7:2, N7:3, N7:34, N7:35, N7:36, N7:37. The 1746-BAS is supposedly talking to nodes 1, 2, 18, and 19.

#####1746-BAS#####

The 1746-BAS card was found in the following condition which translates to the following settings.

JW1: RS232/-423 (shipped configuration) == PORT 1 configuration
JW2: RS485 == PORT 2 configuration

JW3: 1747-M1 EEPROM or 1747-M2 EEPROM or 1747-M3 UVPROM (shipped configuration)

JW4:
PRT1: Program port with programmed communication settings
PRT2: ASCII interface port
DH485: Runtime DH485 Only

From the default settings we know that PORT 2 was setup for RS485 as an ASCII interface port.


I modified JW4 so PRT1 would start with default communication settings (Command mode at 1200 KB, no parity, 8 databits, and 1 stop bit). This allowed me to access the 1746-BAS with Hyperterminal.  One key setting I had to make was setting flow control to xon/ xoff. I was then able to issue commands. The LIST command returned no program. I think the program was lost.

##########

 

#####Honeywell DC330B#####

There are 8 Honeywell devices I located in the field and they come in pairs.

Node1: UDC3000 VERSAP PRO and UDC2000 MINI PRO

Node2: UDC3300 and UDC2000

Node18: DCP1021111110 and UDC500 CONTROLLER

Node19: DCP1021111111000 and UDC2000 MINI PRO

Only the first device in each node listed is connected to the blue hose. Node 18 has 2 blue wires per terminal. Node 19 has 1 blue wire per terminal. Node 1 has 2 blue wire per terminal. Node 2 has 2 blue wire per terminal.

On node 2 I checked the UDC3300 settings. The device was set to: Comstate-RS422, Shedtime-30, Parity-Even, Baud-9600, Duplex-Half, Shedmode-Last, Shed SP-TO LSP.

##########

I have attached pictures of the 1746-BAS card and the Node2 Honeywells... I think there was a program in the 1746-BAS that got lost and it was sending commands to the Honeywell to get a response (over ASCII). My immediate problem is I don't know what commands I have to send to get a response and then I don't know what hardware I have to buy to replace this 1746-BAS.

In the meantime I will keep researching. Thank you for any more insight into the path I should be pursuing.

JW1.jpg

JW2.jpg

Side_Of_Card.jpg

Front_Of_Panel.jpg

Model_Number.jpg

Wiring.jpg

Share this post


Link to post
Share on other sites

I found this download link for the Honeywell UDC 330B (UDC 3300 Basic model):

https://industrial-stores.com/files/Honeywell - Model DC330B.pdf

On page 34 (pdf page 42) is the communication setup.  Please check the "ComSTATE" setting.  If enabled, your devices are using classic modbus, and you should use a modbus master module, not a BASIC module.  If disabled, you are using a the "MB3K" protocol, about which I know nothing.

Consider just changing to Modbus mode unconditionally, since you don't have a basic program to reverse engineer.

1 person likes this

Share this post


Link to post
Share on other sites

You can look in the SLC 5/04 program and the program from any HMI to see how/where those N7 registers are used. That will help you figure out what you need to read from the Honeywell controllers.

Since you're starting over from scratch, you may also be able to improve the operation of the system by retrieving more data points than the old PLC was and maybe use the PLC for setpoint changes and such if that's allowed.

1 person likes this

Share this post


Link to post
Share on other sites
2 hours ago, pturmel said:

I found this download link for the Honeywell UDC 330B (UDC 3300 Basic model):

https://industrial-stores.com/files/Honeywell - Model DC330B.pdf

On page 34 (pdf page 42) is the communication setup.  Please check the "ComSTATE" setting.  If enabled, your devices are using classic modbus, and you should use a modbus master module, not a BASIC module.  If disabled, you are using a the "MB3K" protocol, about which I know nothing.

Consider just changing to Modbus mode unconditionally, since you don't have a basic program to reverse engineer.

The device was set to: Comstate-RS422, Shedtime-30, Parity-Even, Baud-9600, Duplex-Half, Shedmode-Last, Shed SP-TO LSP

So are you saying this is Modbus? So I would need a modbus master to replace the 1746-BAS?

Share this post


Link to post
Share on other sites

What information did you see on the terminal emulator? The module would be still operating in run mode and you would need to issue the break command (ctrl c) to stop the execution of the running program. Using the list command you only get the program listing running in RAM. Programs can also be stored on EEPROM. You can switch between using RAM & ROM commands. The modules are very hardy. I still have 1771-BAS in perfect working order. 

Share this post


Link to post
Share on other sites
34 minutes ago, chelton said:

What information did you see on the terminal emulator? The module would be still operating in run mode and you would need to issue the break command (ctrl c) to stop the execution of the running program. Using the list command you only get the program listing running in RAM. Programs can also be stored on EEPROM. You can switch between using RAM & ROM commands. The modules are very hardy. I still have 1771-BAS in perfect working order. 

So since I couldn't get the system back up and running I took the 1746-BAS back to the office. When i type in ROM I get the message "ERROR: PROM MODE". I haven't been able to access the EEPROM.

 

PROM_MODE.JPG

Share this post


Link to post
Share on other sites

Posted (edited)

I get another error when trying to program the EEPROM also... when I initially got on with the system the LIST command gave me nothing. I am 99% sure it wasn't me that erased whatever was here previously... the hello world program was me though. I take responsibility for that.

 

EEPROM.JPG

Edited by Riskinit

Share this post


Link to post
Share on other sites
16 hours ago, Riskinit said:

The device was set to: Comstate-RS422

I missed that the first time.  So, no, not modbus I would assume.  I'm not sure that is changeable, actually.

14 hours ago, Riskinit said:

When i type in ROM I get the message "ERROR: PROM MODE". I haven't been able to access the EEPROM.

Look at the socket inside the module.  It might not be there.  (I've seen installs that relied on the battery and ran entirely from RAM.)

Share this post


Link to post
Share on other sites
2 hours ago, pturmel said:

I missed that the first time.  So, no, not modbus I would assume.  I'm not sure that is changeable, actually.

Look at the socket inside the module.  It might not be there.  (I've seen installs that relied on the battery and ran entirely from RAM.)

Well based on what an EEPROM module looks like and the empty 28 pin socket from my picture I think you are right pturmel about them running the entire thing in RAM.

However, the setting RS422 does suggest it is MODBUS. See the picture below from the manual.

 

Model_DC330B_Settings.JPG

Share this post


Link to post
Share on other sites

If you're going to connect the Honeywell Devices to Rockwell ControlLogix via Modbus RS422 I can recommend the Prosoft Module.

We used them at a former job of mine for Schneider Modicon to Rockwell connectivity with great success.

The documentation and support of Prosoft is excellent.

https://www.prosoft-technology.com/Products/Rockwell-Automation-In-chassis/Platform/ControlLogix/Modbus-Master-Slave-Enhanced-Network-Interface-Module-for-ControlLogix

3 people like this

Share this post


Link to post
Share on other sites
29 minutes ago, BobLfoot said:

If you're going to connect the Honeywell Devices to Rockwell ControlLogix via Modbus RS422 I can recommend the Prosoft Module.

We used them at a former job of mine for Schneider Modicon to Rockwell connectivity with great success.

The documentation and support of Prosoft is excellent.

https://www.prosoft-technology.com/Products/Rockwell-Automation-In-chassis/Platform/ControlLogix/Modbus-Master-Slave-Enhanced-Network-Interface-Module-for-ControlLogix

This sounds like the simplest approach at this point. Thank you for the info!

1 person likes this

Share this post


Link to post
Share on other sites

 I just remembered a previous project that we ended up bringing in a contractor to complete. We connected 2 Eurotherm temperature controllers to a ControlLogix PLC. Since the controllers only supported Modbus and not Ethernet, we used the Red Lion G310 HMI that was already present as a gateway. It worked well and easily. If you have (or plan to add) a Red Lion product to the line, it may be able to handle the comms.

1 person likes this

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now