Add Remote IO with Devicenet

SicknoteX

Member
Join Date
Mar 2016
Location
Auckland
Posts
14
Hi Guys,

I am still fairly new to RS Logix so please bare with me.

I have been asked by a client to add an additional IO card at one of their sites.

We tried once but due to a misunderstanding we were not successful. I was told that they needed a standard digital IO card (1769-32IQ) added to the local bus - simple!
Unfortunately, this was not correct. They need the card added as Devicenet Remote IO. I haven't worked with Devicenet before.

The set up is -
A Devicenet Scanner (1769-SDN) is connected to the local bus and this communicates with 2 Devicenet adapters (1769-ADN) in remote locations. Both adapters are configured and have IO cards already installed. They need the card added to node 2.

I have a copy of RSNetworx for Devicenet (currently in its grace period) and just want to make sure that the process is as simple as it appears in the Rockwell documentation.

I simply open the adapter in the network view, go to Module Configuration and add the card?!

The adapter is already in the scanlist of the Devicenet scanner so do I need to make any changes to the scanner config?

Has anyone added an IO card in this sort of set up before? Are there any other steps or problems that people have experienced?

Cheers
 
regarding your questions:

I have a copy of RSNetworx for Devicenet (currently in its grace period)

personally I'd wait until the "real license" is in place ... you wouldn't want your grace period to expire right in the middle of things (sadly, this operation could take longer than you expect) ...

just want to make sure that the process is as simple as it appears in the Rockwell documentation.

a rule of thumb: NOTHING is ever as simple as it appears in the documentation ...

DISCLAIMER: what follows is GUESSWORK based on what you've posted so far ... that's the best that we can do without a lot more detailed information from your end of the wire ...

I simply open the adapter in the network view, go to Module Configuration and add the card?!

that's just one step ... you'll still have to add the new module to the SCANNER'S Scan List ... and thereby "map" the new module into the processor's I/O array ... this determines the module's "addresses/tagnames" ...

The adapter is already in the scanlist of the Devicenet scanner so do I need to make any changes to the scanner config?

sometimes changes are required ... the Scanner probably has "some" I/O memory allocated to it (in the processor's tag list) – but it might require additional allocations for any new modules which are added ... a lot depends on how the original programmer set things up ...

Has anyone added an IO card in this sort of set up before? Are there any other steps or problems that people have experienced?

the basic consensus is that WHEN DeviceNet "works" – then it "works" ... when it doesn't work – well then you just have to keep plugging away until Jupiter finally aligns with Mars – and then you get to go home ...

QUESTION: have you already established an online connection path to the NETWORK? ... specifically, can you "see" the scanner, the adapter, and the various modules with the hardware and software that you already have available? ...

QUESTION: do you have a copy of the DeviceNet file? (it usually has a .DNT extension) ... if you have it, are you allowed to post it here? ... you'll probably have to zip it first – and then attach it here to this thread ... that would help us give you more detailed answers ...

good luck with your project - and welcome to the forum ...
 
Last edited:
Thanks for the responses guys.

As I thought, its unlikely to be as simple as I had hoped!!

Fortunately they still have their old Scada / RSLogix PC online (its recently been replaced) and I've been able to find some very old .EDS files and .DNT files.

I'm waiting for the clients Network admin to email them to me. And then I will post them on here.

I have attached a screenshot of the RS Linx config for the time being in the hope this may shed some light on the configuration.

Re: The tag/address configuration

The devicenet scanner has been installed in slot 1 of the local bus, so the Local:1:I.Data tag is configured as an array of 90 x 32 bit (4 byte) integers.

The relevant tag values are then copied in to more descriptive tags for use in the code. I have included a screenshot.
I will be adding an IO Card to slot 5 of node 2.
It appears as though there is enough spacing in the data array for adding additional IO at each node. but I don't know how to allocate as specific memory location to the IO of a specific node / slot?

I will post the .DNT file asap.

Thanks again guys

DNet_RSLinx.jpg DNET_Array.JPG
 
Here's my .DNT file.

I have EDS files for all the unrecognized pumps and valves.

There was also an MDD file with the DNT file. any ideas what thats for?
 
Device Bridging...

Your ZIP file won't open...for me?

However, you should have more than one DNT network file here...

This type of configuration for distributed I/O uses what is known as Device Bridging where the main DeviceNet scanner determines the I/O size for any adapter nodes in its scanlist by Bridging the two required DNT network files...

You should have a DNT network file for the 1769-ADN distributed I/O network where you add your module as a node to the network under the 1769-ADN and then add it to the 1769-ADN's scanlist, mapping it's I/O data. You then download the updated scanlist into the 1769-ADN adapter. This DNT network file will just have the 1769-ADN and any nodes that are in its scanlist. The 1769-SDN is not present here. This is known as an "internal" network where the adapter is communicating with its I/O modules. Internal DeviceNet networks may also be referred to as "Subnets".

Then you should have a main DNT network file where you have the 1769-SDN scanner and all the nodes within its scanlist and their mapped data. This file will just have, among other nodes, your 1769-ADN adapter and will not contain the 1769-ADN's scanlist nodes. This is known as an "external" network where the scanner is communicating with higher level nodes i.e. adapters, drives, etc.

The internal network file should be linked to the external network file using Device Bridging. This is done in the external network file under the properties for the 1769-ADN adapter.

For the 1769-ADN properties in the external network file you select the "Device Bridging" tab and associate the internal network file. Reading this file tells the 1769-SDN what I/O size the adapter is configured for and populates its I/O size parameters automatically. This is then downloaded to the 1769-SDN scanner.

This Device Bridging should already have been done from the original configuration. But it does not automatically update itself...

If you have successfully added the input module to the 1769-ADN scanlist, and have downloaded the new scanlist into the adapter, and have saved the internal network file (DNT), then the 1769-SDN scanner's scanlist will have to be updated in the external network file to reflect the changes within the internal network file i.e. the 1769-ADN's new I/O size.

To update the 1769-ADN I/O size in the 1769-SDN scanner's scanlist in the external network file, you need to refresh the information that it reads from the internal network file via Device Bridging. To do this you open the properties for the 1769-SDN scanner and go to the "Scanlist" tab. Here you select the 1769-ADN adapter instance in the list and hit the "Edit I/O Parameters" button at the bottom (or double-click on the 1769-ADN). Here you should see the current I/O size in bytes for the 1769-ADN. Hit the "Restore I/O Sizes" button at the bottom and the new I/O size will be read in from the updated internal network file. You should now see the I/O size parameters updated.

Once the 1769-SDN scanner has updated the I/O size for the 1769-ADN adapter in the external network file, this must be downloaded into the 1769-SDN scanner before the new module's data can reach the backplane i.e. controller.

This is an offline update first in the external network file, by hitting the "Restore I/O Sizes" button, followed by a download of the new scanlist into the 1769-SDN scanner.

All of that can be done when you already have the DNT files I've mentioned. If you do not have them, or do not have one of them, then you must go Online to the network to Upload the actual configuration and then save it as a DNT file. This can entail uploading from both the external network level and the internal network level and saving the two separate DNT files.

For adding the new module, if you have the internal network file you can Offline add it to the internal network by selecting it from the Hardware Catalog. Then you add it to the adapter's scanlist and then go Online and download the scanlist into the adapter. If you don't have the internal network file, but you have the module physically added and you do an Online Upload to build the network file, it should automatically detect it and then it will be available to add to the adapter's scanlist before downloading it.

Offline you can also update the scanner's scanlist using "Restore I/O Sizes" before downloading.

Either way, whether configuring all this for both the external network (scanner) and the internal network (adapter), you will have to be Online at some point to download both updated scanlists.

The MDD file is not important. It is a saved RSNetWorx MD (Maintenance and Diagnostics) file from a previous analysis of the network.

The above can seem a bit confusing until you following it as your doing it. So I've also made a few screenshots from an example configuration I have here. This is using a 1769-SDN scanner and a 1734-ADN POINT I/O adapter, while adding another POINT I/O input module under the 1734-ADN...

This is the External Network file showing the adapter's I/O size with an input size of 7 bytes before adding the input module...
01_EN_Adapter_IO_Size_Before.bmp


This is the External Network file showing the adapter's Device Bridging associated with the Internal Network file (filename slightly obscured)...
02_EN_Adapter_Device_Bridging.bmp


This is the Internal Network file showing the adapter's scanlist and mapped input data before adding the input module...
03_IN_Adapter_Scanlist_%26_Input_Before.bmp


This is the Internal Network file as we're about to add the input module (Offline)...
04_IN_Add_Module_To_Network.bmp


This is the Internal Network file showing the input module added and the adapter's scanlist before and after...
05_IN_Add_Module_To_Adapter_Scanlist.bmp


This is the Internal Network file showing the adapter's input size after adding the input module...
06_IN_Adapter_Input_Data_After_Module_Added.bmp


This is the External Network file showing the updated adapter I/O size with an input size of 8 after using Restore I/O Sizes...
03_EN_Adapter_IO_Size_After_Restore.bmp


After updating either the adapter's or the scanner's scanlist you need to download to them or perform a full network download and save the DNT files as you go.

The next step would be figuring out where in the controller tags the new data has mapped into via the scanner's 90 words, but that's for another day, and relatively simple work out.

As Ron said, it can be quirky and depending on the previous setup, not all of the above might be exactly how you'll end up doing it, but it will be close for the most part.

Regards,
George
 
Last edited:
Hi George,

Thank you so much for such a detailed response.

There are a couple of exceptions in my system but the principle is still the same.

I don't have the option for "Device Bridging' but I believe this is because I am using Compact IO instead of Point IO as shown in the demonstration.

This isn't a problem as I can actually modify the IO of the adapter through the one DNT file. The options for the ADN Module provides me with the capability of adding a new IO.

I've created a checklist for adding the IO card which I've attached in 3 sections:
1. Adding New IO Card to ADN Adapter
2. Changes to Scanlist
3. Pushing though changes and checking.

It basically follows the same logic.

I have a couple of final questions though...

As with any system, I want a strong fall back position in case things go wrong. Can I just do a full system upload before I start and make a copy of the resultant DNT file? - I see the option for 'Upload from Network' but its currently greyed out as I'm doing all these checks offline.

You will see from the screenshots in doc 1 that some of the devices are currently 'Unknown'. There are also messages in the logs stating that the device has 'been reset to default values'
Will these become known if I upload them? ie can I upload an EDS file from the device or do I have to import it from the files I have?

I am concerned about configuration mismatches. And when I import the EDS files I have, the devices become known but I get several errors in the logs.

This Error occurs mutiple times with different numbers after Param....
"The following error occurred in the 'Params' section of the EDS file. The 'Name' field in the entry 'Param88' is the same as the name field of the entry 'Param77'.

These devices also currently appear as <Invalid Slave> within the scanners scan list. They become identified when I load the EDS files but as mentioned before, I get several error messages.
If I download the ADN changes to the scanner without rectifying this, will it mess up communication to these devices?

Thanks guys, your feedback has been incredibly helpful
 
Geospark said:
The next step would be figuring out where in the controller tags the new data has mapped into via the scanner's 90 words, but that's for another day, and relatively simple work out.

Hard to add to the as-usual extremely thorough explanation by George, but just a quick trick that I've used before to find out where an unknown input is mapped to in a large DeviceNet array. Connect a switch or a sensor or something to one of the higher-numbered inputs, then go online and monitor the input data as the array of DINT's. Then toggle your switch/sensor on and off, and watch for one of the DINT values to be changing from zero to a very high number and back again. Then you can expand out that array and work out the individual inputs by watching the bits turn on and off.

The last time I did this was in trying to work out where a sensor is mapped to - and as luck (if you can call it luck) would have it, this particular sensor was wired to input zero of the card. So I was watching a running system with all sorts of flickering numbers, and the one I was looking for was changing from 30455 to 30456 and back again. About as difficult to find as one could ever hope for ;) but of course, if you get to choose your input then you've got it easy!
 
Not thorough enough!...

Forgive me. I made a mistake on what you needed to do here...

I had pulled up an example using POINT I/O for screenshots and then got lost in how you would setup a 1769-ADN in the same way you would setup a 1734-ADN. They are completely different setups. I should have, as I normally do, double-checked the necessary steps and then I would have remembered the difference.

The Device Bridging feature is only available for the 1734/1738-ADN adapters.

The 1769-ADN is indeed configured directly under the 1769-SDN scanner within the same DNT file. Apologies again for the misdirection, but at least you learnt a little if you ever have to do similar with POINT I/O.

Your attached PDFs are well structured showing you have a good grasp of what you are about so I don't think I need to do the same as above again for the correct steps to take.

The key here is the data mapping in the 1769-SDN scanner's scanlist for the 1769-ADN adapter before and after. As you can see you had 60 bytes and now have 64 bytes input data. You payed good attention to the Advanced Mapping Offset and Bit length before proceeding. But, you also have to pay attention to where the 60 bytes ends and whether there is free space to append the extra 4 bytes contiguously.

Because, looking at your network, the adapter is node 2 and there appears to be a node 3, and so on, sometimes the next node's mapped data is contiguous with the last node's mapped data and so there is no spare room to add new data in between.

In your case, even though there appears to be nodes after the node 2 adapter in the network, they have not been added to the scanner's scanlist yet and so their data has not yet been mapped, I think? This means you have all free space directly after your node 2 adapter's mapped data and could simply append the extra 4 bytes to the end. So it worked out well for you in this case. Had node 3 and the others already been mapped then it could have been a different story.

If you have free space after the last node's mapped data then you can manually drill down to the new device's instance and enter the offset and bit length that would add it at the end of all mapped data.

You can also now see at the end of the adapter's mapped data the assigned Controller Tag address for your new input module's 32 inputs...

1:I.Data[49] bits 0 - 31

Drilling down to a device in the Input or Output tab in a scanner's scanlist is how you would find any mapped data's Controller Tag reference.

All that is of course not helping you, just explaining it a little bit more.

When you are onsite you can go online to the network and do a network upload and save it as a backup DNT file in case you need to revert.

Whether you can upload the EDS file directly from a device depends entirely on the device in question. Some do provide it, some don't. Perhaps it would be a good time to give us the exact make/model of the devices (pumps/valves) so we can help you make sure you have the correct EDS files?

You have two errors...

The DNET:000B "not registered" error means you do not have the correct EDS files registered for those devices. Again, providing us the make/model might help narrow this one down.

The second error...

DNET:0020 "different applet" could just be a knock on effect of the first error but it is also possible there is a problem with your EDS system. Now would also be a good time to tell us which versions of RSLinx Classic and RSNetWorx for DeviceNet you are using?

I'm also concerned about the earlier mention of the software running under Grace Period. Is it licensed and just missing its hardware Host ID such as a USB licensing Dongle? Or has it just been installed without a license?

If it becomes unusable before you do this mod then you'll have bigger problems ahead.

Regards,
George
 
Last edited:
Thanks George,

I've attached another PDF - Sorry but its easier for me when posting screenshots.

I'm feeling pretty confident now. You'll see from the pdf that I've managed to import all the EDS files and clear all the errors (bar some minor ones)

I have checked the memory spacing and thankfully, when the devicenet was originally set up, they allowed adequate memory spacing between nodes so adding an IO card doesn't affect the next node.

The Grace Period issue isn't ideal but it is the situation I have to deal with. We purchased Rs Logix Std Edition several months ago and I only installed RSNetworx last week - it gives you 1 week for free following installation.
My boss needs to pay the invoice for the license purchase but he is away until next week. And when he returns, I'm away for 10 day so this work wouldn't get done for over 2 weeks and electrical contractors are already scheduled at the plant to install new equipment which requires available IO.
We should have a real license by the end of this week. The Grace Period on my laptop doesn't expire til Wedneday (I'm doing the work on Monday) and if all else fails, the site PC (with RS Logix) has an unactivated Trial version of RSNetworx. Its all a bit messy but I don't foresee an issue where we can't access RSNetworx.

George, your help has been fantastic and any other tips before I get to site would be great.

Thanks again
 

Similar Topics

TwinCat3 Beckhoff "Add route to remote system failed ADS Error 1804 (0x70C)" Hi everyone, I have a problem connecting with a Beckhoff CX5120...
Replies
4
Views
39,665
Hi, we need to add some ControlLogix IOs to a remote rack via controlnet, based on the info from Ab, Lodix V15 could do it on line, there are...
Replies
9
Views
3,385
All, I am having an issue with Kepware's OPC Quick Client communicating with a remote OPC Server. I can add and connect to the remote server...
Replies
2
Views
4,341
I have been told you cannot control any remote I/O using the Ethernet port on a MicroLogix 1100. Is this true? Does anyone knows which...
Replies
4
Views
9,333
Back
Top Bottom