-
Sebastian Ebert authoredSebastian Ebert authored
model-top-task.pnml 21.84 KiB
<?xml version="1.0" encoding="UTF-8"?>
<pnml xmlns="http://www.pnml.org/version-2009/grammar/pnml">
<net id="ModelTop" type="http://www.pnml.org/version-2009/grammar/ptnet">
<name>
<text>ModelTop</text>
</name>
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<!-- TODO: Complete integrate signals! -->
</toolspecific>
<page id="top">
<page id="SelectorPage">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<type>nodePage</type>
</toolspecific>
<place id="ObjectPoolRed">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>selector</node>
<subnet>selectorRed</subnet>
<balloonMarking>
<tokens>
<token>{"color" : "green", "name" : "green1", "pickSuccess" : "false", "placeSuccess" : "false",
"humanDetected" : "false", "sensorData" : "", "trace" : "", "locked" : "false" } </token>
</tokens>
</balloonMarking>
</toolspecific>
<initialMarking>
<text>1</text>
</initialMarking>
<name>
<text>ObjectPoolRed</text>
</name>
</place>
<place id="ObjectPoolBlue">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>selector</node>
<subnet>selectorBlue</subnet>
<balloonMarking>
<tokens>
<token>{"color" : "blue", "name" : "blue1", "pickSuccess" : "false", "placeSuccess" : "false",
"humanDetected" : "false", "sensorData" : "", "trace" : "", "locked" : "false" } </token>
</tokens>
</balloonMarking>
</toolspecific>
<initialMarking>
<text>1</text>
</initialMarking>
<name>
<text>ObjectPoolBlue</text>
</name>
</place>
<place id="ObjectPoolGreen">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>selector</node>
<subnet>selectorGreen</subnet>
<balloonMarking>
<tokens>
<token>{"color" : "red", "name" : "red1", "pickSuccess" : "false", "placeSuccess" : "false",
"humanDetected" : "false", "sensorData" : "", "trace" : "", "locked" : "false" } </token>
</tokens>
</balloonMarking>
</toolspecific>
<initialMarking>
<text>1</text>
</initialMarking>
<name>
<text>ObjectPoolGreen</text>
</name>
</place>
<!-- TODO: Complete the model! -->
</page>
<!-- TODO: Complete the model! -->
<transition id="UITopic">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<type>topicTransitionType</type>
<topicName>UITopic</topicName>
<publishers>
<publisher>
<id>L-Done</id>
<limit>10</limit>
</publisher>
<publisher>
<id>R-Done</id>
<limit>10</limit>
</publisher>
</publishers>
<subscribers>
<subscriber>
<id>FeedbackIn</id>
<limit>10</limit>
</subscriber>
</subscribers>
</toolspecific>
<name>
<text>UITopic</text>
</name>
</transition>
<page id="LeftControllerPage">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<type>nodePage</type>
</toolspecific>
<place id="L-AwaitingControl">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>LeftController</node>
<subnet>LC1</subnet>
</toolspecific>
<name>
<text>L-AwaitingControl</text>
</name>
</place>
<place id="L-Ready">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>LeftController</node>
<subnet>LC1</subnet>
</toolspecific>
<name>
<text>L-Ready</text>
</name>
</place>
<place id="L-ObjectPicked">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>LeftController</node>
<subnet>LC1</subnet>
</toolspecific>
<name>
<text>L-ObjectPicked</text>
</name>
</place>
<place id="L-ObjectPlaced">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>LeftController</node>
<subnet>LC1</subnet>
</toolspecific>
<name>
<text>L-ObjectPlaced</text>
</name>
</place>
<place id="L-Done">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>LeftController</node>
<subnet>LC1</subnet>
</toolspecific>
<name>
<text>L-Done</text>
</name>
</place>
<transition id="L-Pick">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>LeftController</node>
<subnet>LC1</subnet>
<type>discreteTransitionType</type>
<inputsignalclause></inputsignalclause>
</toolspecific>
<name>
<text>L-Pick</text>
</name>
</transition>
<transition id="L-Place">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>LeftController</node>
<subnet>LC1</subnet>
<type>discreteTransitionType</type>
<inputsignalclause></inputsignalclause>
</toolspecific>
<name>
<text>L-Place</text>
</name>
</transition>
<arc id="at1" source="L-Ready" target="L-Pick">
</arc>
<arc id="at2" source="L-Pick" target="L-ObjectPicked">
</arc>
<arc id="at3" source="L-ObjectPicked" target="L-Place">
</arc>
<arc id="at4" source="L-Place" target="L-ObjectPlaced">
</arc>
</page>
<page id="RightControllerPage">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<type>nodePage</type>
</toolspecific>
<place id="R-AwaitingControl">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>RightController</node>
<subnet>RC1</subnet>
</toolspecific>
<name>
<text>R-AwaitingControl</text>
</name>
</place>
<place id="R-Ready">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>RightController</node>
<subnet>RC1</subnet>
</toolspecific>
<name>
<text>R-Ready</text>
</name>
</place>
<place id="R-ObjectPicked">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>RightController</node>
<subnet>RC1</subnet>
</toolspecific>
<name>
<text>R-ObjectPicked</text>
</name>
</place>
<place id="R-ObjectPlaced">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>RightController</node>
<subnet>RC1</subnet>
</toolspecific>
<name>
<text>R-ObjectPlaced</text>
</name>
</place>
<place id="R-Done">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>RightController</node>
<subnet>RC1</subnet>
</toolspecific>
<name>
<text>R-Done</text>
</name>
</place>
<transition id="R-Pick">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>LeftController</node>
<subnet>RC1</subnet>
<type>discreteTransitionType</type>
<inputsignalclause></inputsignalclause>
</toolspecific>
<name>
<text>R-Pick</text>
</name>
</transition>
<transition id="R-Place">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>LeftController</node>
<subnet>RC1</subnet>
<type>discreteTransitionType</type>
<inputsignalclause></inputsignalclause>
</toolspecific>
<name>
<text>R-Place</text>
</name>
</transition>
<arc id="at5" source="R-Ready" target="R-Pick">
</arc>
<arc id="at6" source="R-Pick" target="R-ObjectPicked">
</arc>
<arc id="at7" source="R-ObjectPicked" target="R-Place">
</arc>
<arc id="at8" source="R-Place" target="R-ObjectPlaced">
</arc>
</page>
<page id="FeedbackPage">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<type>nodePage</type>
</toolspecific>
<place id="FeedbackIn">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Feedback</node>
<subnet>Feedback</subnet>
</toolspecific>
<name>
<text>FeedbackIn</text>
</name>
</place>
<transition id="ShowFeedback">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Feedback</node>
<subnet>Feedback</subnet>
<type>discreteTransitionType</type>
<inputsignalclause></inputsignalclause>
</toolspecific>
<name>
<text>ShowFeedback</text>
</name>
</transition>
<place id="FeedbackDone">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Feedback</node>
<subnet>Feedback</subnet>
</toolspecific>
<name>
<text>FeedbackDone</text>
</name>
</place>
<arc id="a7" source="FeedbackIn" target="ShowFeedback">
</arc>
<arc id="a8" source="ShowFeedback" target="FeedbackDone">
</arc>
</page>
<page id="SynchronizerPage">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<type>nodePage</type>
</toolspecific>
<page id="GetControlService">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<type>serverPrototype</type>
<serviceName>getControlService</serviceName>
</toolspecific>
<place id="GetControlIn">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Synchronizer</node>
<subnet>GetControl</subnet>
</toolspecific>
<name>
<text>GetControlIn</text>
</name>
</place>
<place id="GetControlOut">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Synchronizer</node>
<subnet>GetControl</subnet>
</toolspecific>
<name>
<text>GetControlOut</text>
</name>
</place>
<referencePlace id="GetSharedRef" ref="GetShared">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Synchronizer</node>
<subnet>GetControl</subnet>
</toolspecific>
<name>
<text>GetSharedRef</text>
</name>
</referencePlace>
<transition id="Get">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Synchronizer</node>
<subnet>GetControl</subnet>
<type>discreteTransitionType</type>
<inputsignalclause></inputsignalclause>
</toolspecific>
<name>
<text>Get</text>
</name>
</transition>
<arc id="a9" source="GetControlIn" target="Get">
</arc>
<arc id="a10" source="Get" target="GetControlOut">
</arc>
<arc id="a11" source="GetSharedRef" target="Get">
</arc>
</page>
<page id="EndControlService">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<type>serverPrototype</type>
<serviceName>endControlService</serviceName>
</toolspecific>
<place id="EndControlIn">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Synchronizer</node>
<subnet>EndControl</subnet>
</toolspecific>
<name>
<text>EndControlIn</text>
</name>
</place>
<place id="EndControlOut">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Synchronizer</node>
<subnet>EndControl</subnet>
</toolspecific>
<name>
<text>EndControlOut</text>
</name>
</place>
<referencePlace id="GetEndSharedRef" ref="GetShared">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Synchronizer</node>
<subnet>EndControl</subnet>
</toolspecific>
<name>
<text>GetEndSharedRef</text>
</name>
</referencePlace>
<transition id="End">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Synchronizer</node>
<subnet>EndControl</subnet>
<type>discreteTransitionType</type>
<inputsignalclause></inputsignalclause>
</toolspecific>
<name>
<text>End</text>
</name>
</transition>
<arc id="a12" source="EndControlIn" target="End">
</arc>
<arc id="a13" source="End" target="EndControlOut">
</arc>
<arc id="a13b" source="End" target="GetEndSharedRef">
</arc>
</page>
<page id="SharedSpacePage">
<place id="GetShared">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<node>Synchronizer</node>
<subnet>SharedSync</subnet>
<balloonMarking>
<tokens>
<token>{ "color":"NONE","name":"NONE","pickSuccess":"false","placeSuccess":"false",
"humanDetected":"false","sensorData":"NONE","trace":"NONE", "locked" : "true" }
</token>
</tokens>
</balloonMarking>
</toolspecific>
<initialMarking>
<text>1</text>
</initialMarking>
<name>
<text>GetShared</text>
</name>
</place>
</page>
</page>
<transition id="GetControlServiceCall">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<type>serviceTransitionType</type>
<serviceName>getControlService</serviceName>
<serverInput>GetControlIn</serverInput>
<serverOutput>GetControlOut</serverOutput>
<serverCapacity>2</serverCapacity>
<channels>
<channel>
<cid>c1</cid>
<request>L-AwaitingControl</request>
<response>L-Ready</response>
</channel>
<channel>
<cid>c2</cid>
<request>R-AwaitingControl</request>
<response>R-Ready</response>
</channel>
</channels>
</toolspecific>
<name>
<text>GetControlServiceCall</text>
</name>
</transition>
<transition id="EndControlServiceCall">
<toolspecific tool="de.tudresden.inf.st.pnml.distributedPN" version="0.1">
<type>serviceTransitionType</type>
<serviceName>endControlService</serviceName>
<serverInput>EndControlIn</serverInput>
<serverOutput>EndControlOut</serverOutput>
<serverCapacity>2</serverCapacity>
<channels>
<channel>
<cid>c3</cid>
<request>L-ObjectPlaced</request>
<response>L-Done</response>
</channel>
<channel>
<cid>c4</cid>
<request>R-ObjectPlaced</request>
<response>R-Done</response>
</channel>
</channels>
</toolspecific>
<name>
<text>EndControlServiceCall</text>
</name>
</transition>
</page>
</net>
</pnml>