Technical implementation of GOOSE card transmission

GOOSE transmission is a fast message transmission mechanism in IEC61850, which mainly depends on the communication processing capability of each intelligent device and the networking scheme of the GOOSE network. Generally, the interval for sending GOOSE messages will be long, and a fixed time interval is required. At the same time, the networking mode of the GOOSE network is gradually improved in three stages; a. GOOSE independent networking; b. GOOSE shares the network mode with the station control layer; c. A shared network approach within a digital substation.

one. GOOSE sent

The number of GOOSE messages allowed to be sent is N (defined as a macro, which is convenient for expansion). The data flow is shown in Figure 1:

Technical implementation of GOOSE card transmission

Figure 1 GOOSE send data stream

1 Write the system parameters sent by GOOSE to the node according to the IED flag;

2 GOOSE real-time parameters need to be written to the node;

3 Find the appropriate position of TxFrameBuf according to the total length of allData in GOOSE real-time parameters (leave space from the tail), then convert the allData data set in real-time parameters into MMS format and store it;

4 Fill the data in the node in the reverse order from Node_10 to Node_0 into TxFrameBuf, and record the sqNum position and the frame header;

5 Send the organized GOOSE message to the EMAC port, organize the timeout and callback functions and add them to the system timeout chain.

two. GOOSE reception

The number of GOOSE messages allowed to be received is N (defined as a macro, which is convenient for expansion). The data flow is shown in Figure 2:

Technical implementation of GOOSE card transmission

Figure 2 GOOSE receive data stream

The data received from the EMAC is stored in the RxFrameBuf. The value of stNum and sqNum is used to determine whether the packet is retransmitted. If it is retransmitted, it will be discarded directly. Otherwise, the following parsing is performed:

1 First, according to the discriminant ID, the IED number is known, and then the Head part in the GOOSE message is parsed and stored in the node;

2 Convert the MMS format of the GOOSE message allData to the interface format and forward it to cRIO. If the amount of allData data is large, it will be fragmented into multiple frames and sent to cRIO.

3 Forward the GOOSE receive real-time frame to cRIO.

three. GOOSE message retransmission

To ensure that GOOSE messages are retransmitted, you need the information shown in Figure 3: p_Head points to the head of the retransmitted GOOSE message, p_sqNum points to the domain sqNum in the GOOSE message, TotLen equals the total length of the GOOSE message, and TOCnt saves the next retransmission Time (in milliseconds).

The calculation rules for TOCnt are as follows:

Each time a GOOSE real-time data frame is received, the initial value is FirsTInterval, and each time the following statement operation is performed: If (TOCnt "MaxInterval" TOCnt *= Mul;

Technical implementation of GOOSE card transmission

Figure 3 GOOSE retransmission data structure

The last step is to add the relevant information that needs to be retransmitted to the system timeout chain: TOCnt is the timeout period (in milliseconds), CallBack adds one operation to sqNum according to p_sqNum, and then sends the GOOSE message to EMAC, Arg is the figure Pointer to the data structure shown in 3.

Technical implementation of GOOSE card transmission

Figure 4 system timeout chain

In the IRQ of the timer, the element of the system timeout chain of FIG. 4 is decremented by 1 for each element whose TOCnt is not 0. If it is equal to zero, the pointer Arg is passed to CallBack and the callback function is executed.

Incremental linear encoders

Incremental Encoder is commonly used, and Absolute Encoder is used if there are strict requirements on position and zero position. Servo system should be analyzed in detail, depending on the application situation. Commonly used incremental encoder for speed measurement, which can be used for infinite accumulation measurement; Absolute encoder is used for position measurement, and the position is unique (single or multiple turns). Finally, it depends on the application situation and the purpose and requirements to be realized.

Incremental Linear Encoders,Linear Optical Encoder,Linear Position Encoder,Encoder Bearing Tester

Yuheng Optics Co., Ltd.(Changchun) , https://www.yhencoder.com

Posted on