23.03.2017 Views

wilamowski-b-m-irwin-j-d-industrial-communication-systems-2011

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

WorldFip 34-5<br />

TABLE 34.1<br />

Variable<br />

Name<br />

List of Variables to Be Scheduled<br />

Refresh Period<br />

(ms)<br />

Data Type<br />

Transaction<br />

Time (µs)<br />

A 5 INT_8 170<br />

B 10 INT_8 170<br />

C 15 INT_16 178<br />

D 15 SFPOINT 194<br />

E 20 INT_16 178<br />

F 30 UNS_32 194<br />

The BA must first analyze the single variables and achieve their refresh period (which will be<br />

expressed in milliseconds) and the data type (e.g., 8 bit integer number and short floating point number)<br />

in order to compute the time required by each variable. This time is made up of three components:<br />

the time required by the BA to transmit the ID frame that polls a producer, the turnaround<br />

time (i.e., the time between the transmission of an ID frame by the BA and the reply by an information<br />

producer), and the time required by the producer to send the data frame. The values reported in<br />

Table 34.1 are based on a transmission bit rate of 1.Mbps and a turnaround time of 20.ms (the range<br />

allowed by WorldFIP with a bit rate 1.Mbps is from 10 to 70.ms).<br />

From the values reported in Table 34.1, we can infer that transmission of single variables is not very<br />

efficient in WorldFip. In fact, we have a heavy transmission overhead since a single variable requires two<br />

frames and some turnaround time. Of course, the situation becomes better when the dimension of the<br />

data increases as the rate (data field)/(transmission overhead) is improved.<br />

Figure 34.5 shows a possible schedule of the variables listed in Table 34.1 to be stored into the bus<br />

arbitrator table (BAT). Time on X-axis is divided into elementary cycles that correspond to the time<br />

required to transmit variables with the shortest refresh period. This organization of the data scan simplifies<br />

the construction of the scheduling table as we divide the time in fixed slots and then try to allocate<br />

all variables into the various time slots without violating their time constraints. Time on Y-axis is the<br />

sum of the time required to transmit all the variables that are scheduled inside a time slot.<br />

In Figure 34.5, we can see that in the first elementary cycle, all the variables are transmitted. In the<br />

subsequent cycles, the variables are transmitted according to a distribution based on their time constraints.<br />

We observe that no elementary cycle overcomes the value of 5.ms, so that the schedule does not<br />

violate any time requirement.<br />

5 ms Time available for acyclic traffic<br />

A<br />

A<br />

B<br />

A<br />

B<br />

C<br />

B<br />

C<br />

D<br />

A A C A A D<br />

E A C B D B C A E<br />

F A B D E A F A E D B A F A Time<br />

FIGURE 34.5 Possible schedule of the variables listed into Table 34.1.<br />

© <strong>2011</strong> by Taylor and Francis Group, LLC

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!