LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

IEC 61850 GOOSE Protocol setup

Hello,

 

I am trying to set up communications between two devices using the IEC 61850 GOOSE protocol, but am unsure how to do so.  Does anyone have an example program using this protocol?  I am basically reimplimenting the same device setup as I did in my preivous thread that asked a different question, DNP3 Write Binary Output, just this time over the GOOSE protocol.  Any help would be appreciated.

 

Drew

0 Kudos
Message 1 of 23
(8,262 Views)

Hello,

 

I had a quick look into this protocol and it appears that there is a driver already implemented for this, it comes at a cost but it will save you the development time of re-creating the driver:

 

https://www.ni.com/en-us/shop/product/ni-industrial-communications-for-iec-61850.html

 

Then you can implement the VI's outlined in the below documentation:

 

https://www.ni.com/docs/en-US/bundle/373800d/page/download.html

 

Best regards,

 

Ed

Message 2 of 23
(8,222 Views)

hey Ed,

 

thanks for the reply and sorry for not responding sooner, had another project come up, but now I'm back.  I have the driver and have looked at the documentation in implementing the GOOSE protocol, but was hoping someone had an example of how to use the protocol to communicate using an ip address of another device set up using the GOOSE protocol to map information.

 

thanks

0 Kudos
Message 3 of 23
(8,172 Views)

Hi Andrew,

 

The NI driver for 61850 ships with a few examples. Some of these are targeted specifically to GOOSE. 

 

In LabVIEW, they can be found by going to Help -> Example Finder -> Hardware Input and Output -> NI-Industrial Communications -> IEC 61850 -> GOOSE.

 

In the "GOOSE" folder, there are 9 examples. Hopefully these will help you get started!

Andrew T.
"His job is to shed light, and not to master" - Robert Hunter
0 Kudos
Message 4 of 23
(8,167 Views)

Thank you Andrew for your response, however, I am having a hard time connecting my LabVIEW GOOSE subscriber to the RTAC we have set up as a GOOSE publisher.  The examples do not really help me in the sense that I need an FPGA to correctly simulate them.  What I need is to be able to connect my computer which is running labview as a GOOSE subscriber to read data being sent from an RTAC which is set up to send various Analog and Binary data points as a GOOSE publisher.  I have the MAC addresses and point indexes for each data point, however I have been unable to successfully connect my computer to the RTAC to read any of the data.  I am unsure as to which MAC address needs to be placed in the adapter section and the multicast section as well as what the application identifier, control block reference, and goose identifier need to be in order to read data correctly.  I have tried just connecting the two components using the examples given, but have received a timeout message or various errors depending on the selection of mac addresses.  I am including a very simple GOOSE subscriber diagram that I created to show you what I basically need.  Which is for when the information is entered correctly into the front panel, the point index at 3 stores a frequency which should be outputted to the labview program i am running.

 

ANY HELP IS GREATLY APPRECIATED, THANK YOU FOR YOUR HELP 🙂

Andrew

Message 5 of 23
(8,147 Views)

Any suggestions would be of great help.  We think we have the components correct and match between the SEL RTAC and my labVIEW program, but we're still having no luck.  any help would be great.

Message 6 of 23
(8,132 Views)

Hello,

Firstly, I give you some clues about how to config the front panel of Subscriber:

Adapter MAC address: Leave blank for the primary MAC address. So if there is only one ethernet interface, you don't need to type in anything. If there are 2 or more ethernet interfaces, you can type in a proper MAC address.
The Default value is levaing balnk.

multicast MAC address: Vendors of IEC 61850-8-1 implementations that send GOOSE message should provide recommendations of addressing based upon the MAC IC’s hash algorithms. One such recommendation appears as follows:
– The first three octets are assigned by IEEE with 01-0C-CD.
– The fourth octet shall be 01 for GOOSE.
– The last two octets shall be used as individual addresses assigned by the range from 00-00 to 01-FF.
The Default value is 01-0C-CD-01-00-00

application identifier: The APPID is used to select ISO/IEC 8802-3 frames containing GSE Management and GOOSE messages and to distinguish the application association. The value of APPID is the combination of the APPID Type, defined as the two most significant bits of the value and the actual ID. This results in the following values:
The reserved value range for GOOSE is 0x0000 to 0x3FFF. If no APPID is configured, the default value shall be 0x0000.
The Default value is 0000

control block reference: The ObjectReference of control block reference is depend on where are the nodes that you want to access. So you should know the hierarchical structure of the ICD file firstly.
The Default value is E1L1/LLN0$GO$gcSTa

GOOSE identifier: The default value of this attribute shall be the GOOSE Control Block reference.
The Default value is levaing balnk.

I suggest you use the Subscriber.vi as a reference to create your subcriber. Because I find some probelms in your breif code, like you don't need to put the Create GOOSE Subscriber.vi in the while loop.

And you have said you tried connecting the two components using the examples given. Could you please give me a detailed description about it? Like what components and examples do you use and how have you configured the MAC address.

Thanks!

Message 7 of 23
(8,123 Views)

Hey Three Lions,

 

Thank you for responding.  I have tried using the subscriber.vi and subscriber.vi (unknown dataset) to connect with the rtac, but have had no luck. Here is the information the RTAC has set up

Goose maasag1

GOOSE Identifier   SEL_RTAC_1

multicast MAC address 01-0C-CD-01-00-03

application identifier 0x0003

control block reference SEL_RTAC_1CFG/LLN0$ST$GOOSE1

 

Then try this if it doesn’t work

control block reference SEL_RTAC_1CFG/LLN0$GO$GOOSE1

************************************************

Goose maasag2

GOOSE Identifier   SEL_RTAC_1

multicast MAC address 01-0C-CD-01-00-04

application identifier 0x0004

control block reference SEL_RTAC_1CFG/LLN0$ST$GOOSE2

 

Then try this if it doesn’t work

control block reference SEL_RTAC_1CFG/LLN0$GO$GOOSE2

 

Not sure if this looks right to you, but it shows that it is sending out iec 61850 messages, but I haven't been able to connect labVIEW to it at all.  I feel like the naming conventions may some of the issue.

 

When referring to connecting the components using the examples given, just disregard as I have been able to connect two computers, one as a publisher, the other subscriber.

 

thank you so much for the help.

0 Kudos
Message 8 of 23
(8,108 Views)

Hi,

 

Some advice may help you:

1. Please confirm the publisher and the subscriber be in the same subnet.

2. You can use the other example, Client Application.vi, to test again.You can find it on ...\LabVIEW XXXX\examples\IEC61850\Client\Client Application.

PS: When create a client,  you can choose the "Empty Client".

3. You can use the other example, IEC61850 SCL Utility.vi, to browse the hierarchical structure of RTAC's ICD file to validate the control block reference.

 

And some questions:

1. What do you refer to the naming conventions? Can you give me an instance?

2. You mentioned you haven't been able to connect labVIEW to it at all. Are there any error or warning appears?

3. Could you please send me the ICD file of the RTAC? If possible, I can make a brief test for the ICD file.

 

Thanks!

0 Kudos
Message 9 of 23
(8,099 Views)

Hey 🙂

 

So, yes, the publisher and subscriber are on the same subnet.  I will try the client application and SCL utility first thing in the morning, but in the meantime, here are the answers to your questions.

 

1-Not sure what you mean as far as referring to the naming conventions.  I am using the setup given to me by then RTAC device as far as what is named what.  

2-Previously I received the -36130 (think this is the right code, not at my labview pc right now) error which states there is an bad MAC (adapter or multicast) address, but that has been fixed by leaving the adapter blank and using 01-0C-CD-01-00-03 or 04.  But now we are just getting a timeout message because it's not receiving any data.

3- the icd is attached.

 

thank you for the help 🙂

Andrew

0 Kudos
Message 10 of 23
(8,095 Views)