55-18 Industrial Communication Systems
For.the.exchange.of.real-time.application.data,.CIP.provides.the.means.of.so-called.implicit.messages..
Implicit.messages.have.a.connection-oriented.uni-.or.multicast.producer/consumer.messaging.model.
(i.e.,.similar.to.publish/subscribe.model)..In.general,.eldbuses.feature.a.cyclic.execution.behavior..In.
dierence,.CIP.allows.the.so-called.application-triggered.message.production.behavior,.which.ts.very.
well.to.the.event-triggered.execution.model.of.IEC.61499..CIP.furthermore.provides.QoS.mechanisms.
that.can.be.utilized.for.simplifying.an.IEC.61499.application,.as.certain.communication.errors.can.be.
handled.at.CIP.stack.level..ese.QoS.mechanisms.are
. 1..Sequence counter:.Each.message.is.identied.with.an.increasing.sequence.number,.which.allows.
the.detection.of.wrong.message.order.and.lost.messages.
. 2.. Production inhibit timer:.With.this.value,.the.minimum.time.between.two.messages.can.be.speci-
ed
.on.the.producer’s.side..is.allows.to.bound.the.network.trac.
. 3..Expected packet rate:.is.rate.gives.the.consumer.an.estimation.of.how.oen. messages. will.
arrive..is.can.be.used.to.determine.if.the.producer.was.lost.
As
.CIP.producers.do.not.keep.track.of.and.do.not.request.an.acknowledgment.from.consumers,.the.
producer.has.no.CIP.means.for.detecting.the.loss.of.consumers.
With
.these.basic.assumptions,.the.behavior.of.the.CIP_SEND_1.and.the.CIP_RCV_1.communication.
FBs.(Figure.55.15).is.as.follows:
•
. e.device.containing.the.CIP_SEND_1.FB.initializes.this.FB.with.an.INIT+.event..e.FB.will.
create.a.CIP.assembly.object.with.the.given.ID..To.this.assembly.object,.the.CIP_RCV_1.can.now.
connect..e.size.of.the.data.and.the.meaning.of.the.data.are.dened.by.the.number.of.inputs.
and.their.data.types..As.CIP.uses.the.same.data.types.as.IEC.61499,.namely.the.data.types.of.IEC.
61131-3,.the.CIP.data.encoding.mechanisms.can.be.directly.used.
•
. Aer.the.CIP_SEND_1.set.up.its.side.of.the.communication,.the.CIP_RCV_1.can.establish.the.
connection..is.is.again.triggered.with.an.INIT+.event..e.ID.input.has.to.specify.the.address.
of.the.device.and.the.assembly.object.to.connect.to.(i.e.,.the.assembly.object.created.by.the.CIP_
SEND_1).
.As.a.result,.the.CIP.stack.is.congured.for.a.consumer,.and.a.unicast.CIP.connection.
between.the.two.devices.is.established..As.the.application.cannot.guarantee.that.the.CIP_SEND_1.
is.initialized.before.the.CIP_RCV_1,.the.implementation.has.to.be.robust.enough.to.handle.this.
case.(e.g.,.automatic.retry.to.establish.the.connection).
•
. On.triggering.the.REQ.event.of.the.CIP_SEND_1,.the.input.data.are.encoded.into.the.CIP.net-
work
.format,.and.the.message.is.sent..With.a.CNF.event,.the.IEC.61499.application.is.informed.
on.the.success.of.this.procedure..No.information.on.the.consumer.side,.such.as.if.the.data.have.
been.received.and.processed.is.given.
•
. On.receiving.a.message,.the.CIP.stack.will.inform.the.CIP_RCV_1.FB..ere.the.data.is.decoded.
and.placed.on.the.outputs..e.application.is.then.notied.with.an.IND.event.
•
. rough.INIT.events,.the.connection.can.be.closed.from.both.sides..If.the.connection.is.closed.
from.the.CIP_SEND_1.side,.the.CIP_RCV_1.will.be.informed,.otherwise.not.
INIT
REQ
ID
SD_1
ID
INIT INITO
IND
RD_1
Data
Event
CIP_SEND_1
CIP_RCV_1
INITO
CNF
FIGURE 55.15 Producer–consumer.pair.implemented.with.CIP.
© 2011 by Taylor and Francis Group, LLC