<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic AGV Parking Queue in FlexSim Forum</title>
    <link>https://forums.autodesk.com/t5/flexsim-forum/agv-parking-queue/m-p/13596601#M91243</link>
    <description>&lt;DIV class="fr-view clearfix"&gt;
 &lt;P&gt;&lt;A rel="noopener noreferrer" href="https://answers.flexsim.com/storage/attachments/84317-agv-fullmodel-6-27-24-withastarnav.fsm" target="_blank"&gt;AGV_FullModel_6_27_24_withAstarNav.fsm&lt;/A&gt;&lt;/P&gt;
 &lt;P&gt;&lt;BR /&gt;&lt;/P&gt;
 &lt;P&gt;I am trying to implement an AGV "parking queue" with variable parking spots. My goal is to have AGVs stage to the furthest spot in the queue of parking spots, and then a full tote condition will select the adjacent or closest upstream staged AGV.&lt;/P&gt;
 &lt;P&gt;&lt;BR /&gt;&lt;/P&gt;
 &lt;P id="isPasted"&gt;What is being asked is that for the number of parking spots, the AGVs will pick up an empty tote and then proceed down to the furthest parking spot. When a tote becomes full the AGV in the closest adjacent or upstream parking spot will move to the spot directly in front of it, push (move) the full tote onto the adjacent conveyor, place the empty tote it is carrying onto the vacated station, and then turn and proceed back to be reassigned (currently pick up an empty tote and rejoin the staging queue again). Additionally, they are wanting vacated parking spots to be filled by all AGVs in the “parking queue” to move downstream until all spots are filled. I can get pretty much all the parking behavior individually but having trouble combining all those requirements. In hind sight it probably would have been better to use network navigation, but the customer changed requirements mid-model and I'm not sure how I would redesign it with the current process flows.&lt;/P&gt;
 &lt;P&gt;&lt;BR /&gt;&lt;/P&gt;
 &lt;P&gt;The model I’ve included does all the required behavior &lt;U&gt;except&lt;/U&gt; for grabbing the correct parked AGV. You’ll see I hard coded a partition ‘3’ just to grab the furthest down stream for the moment.&lt;/P&gt;
 &lt;P&gt;&lt;BR /&gt;&lt;/P&gt;
 &lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="1719861801677.png"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/1524457iAE0621B6D97BD98D/image-size/large?v=v2&amp;amp;px=999" role="button" title="1719861801677.png" alt="1719861801677.png" /&gt;&lt;/span&gt;&lt;/P&gt;
 &lt;P&gt;&lt;BR /&gt;&lt;/P&gt;
 &lt;P&gt;I tried the following code in the ‘Pull From Occupied Parking’ partition of the Divert process flow to select the correct parking spot based on what chute it is at, but it breaks something.&lt;/P&gt;
 &lt;P id="isPasted"&gt;“&lt;/P&gt;
 &lt;P&gt;int modValue = 0;&lt;/P&gt;
 &lt;P&gt;if (current.Chute_Number%Model.parameters.ParkingSpots == 0)&lt;/P&gt;
 &lt;P&gt;{
  &lt;/P&gt;
 &lt;P&gt; modValue = current.Chute_Number/Model.parameters.ParkingSpots;&lt;/P&gt;
 &lt;P&gt;}&lt;/P&gt;
 &lt;P&gt;else&lt;/P&gt;
 &lt;P&gt;{
  &lt;/P&gt;
 &lt;P&gt; modValue = Math.trunc(current.Chute_Number/Model.parameters.ParkingSpots)+1;&lt;/P&gt;
 &lt;P&gt;}&lt;/P&gt;
 &lt;P&gt;“&lt;/P&gt;
 &lt;P&gt;&lt;BR /&gt;&lt;/P&gt;
 &lt;P&gt;I am sure there is an easier way to do what I am trying to do (likely using subflows or something). I would love help fixing the current process I have or help doing it a better way. Thank you in advance&lt;/P&gt;
&lt;/DIV&gt;</description>
    <pubDate>Mon, 01 Jul 2024 19:13:30 GMT</pubDate>
    <dc:creator>dwight_sandersJ2HPL</dc:creator>
    <dc:date>2024-07-01T19:13:30Z</dc:date>
    <item>
      <title>AGV Parking Queue</title>
      <link>https://forums.autodesk.com/t5/flexsim-forum/agv-parking-queue/m-p/13596601#M91243</link>
      <description>&lt;DIV class="fr-view clearfix"&gt;
 &lt;P&gt;&lt;A rel="noopener noreferrer" href="https://answers.flexsim.com/storage/attachments/84317-agv-fullmodel-6-27-24-withastarnav.fsm" target="_blank"&gt;AGV_FullModel_6_27_24_withAstarNav.fsm&lt;/A&gt;&lt;/P&gt;
 &lt;P&gt;&lt;BR /&gt;&lt;/P&gt;
 &lt;P&gt;I am trying to implement an AGV "parking queue" with variable parking spots. My goal is to have AGVs stage to the furthest spot in the queue of parking spots, and then a full tote condition will select the adjacent or closest upstream staged AGV.&lt;/P&gt;
 &lt;P&gt;&lt;BR /&gt;&lt;/P&gt;
 &lt;P id="isPasted"&gt;What is being asked is that for the number of parking spots, the AGVs will pick up an empty tote and then proceed down to the furthest parking spot. When a tote becomes full the AGV in the closest adjacent or upstream parking spot will move to the spot directly in front of it, push (move) the full tote onto the adjacent conveyor, place the empty tote it is carrying onto the vacated station, and then turn and proceed back to be reassigned (currently pick up an empty tote and rejoin the staging queue again). Additionally, they are wanting vacated parking spots to be filled by all AGVs in the “parking queue” to move downstream until all spots are filled. I can get pretty much all the parking behavior individually but having trouble combining all those requirements. In hind sight it probably would have been better to use network navigation, but the customer changed requirements mid-model and I'm not sure how I would redesign it with the current process flows.&lt;/P&gt;
 &lt;P&gt;&lt;BR /&gt;&lt;/P&gt;
 &lt;P&gt;The model I’ve included does all the required behavior &lt;U&gt;except&lt;/U&gt; for grabbing the correct parked AGV. You’ll see I hard coded a partition ‘3’ just to grab the furthest down stream for the moment.&lt;/P&gt;
 &lt;P&gt;&lt;BR /&gt;&lt;/P&gt;
 &lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="1719861801677.png"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/1524457iAE0621B6D97BD98D/image-size/large?v=v2&amp;amp;px=999" role="button" title="1719861801677.png" alt="1719861801677.png" /&gt;&lt;/span&gt;&lt;/P&gt;
 &lt;P&gt;&lt;BR /&gt;&lt;/P&gt;
 &lt;P&gt;I tried the following code in the ‘Pull From Occupied Parking’ partition of the Divert process flow to select the correct parking spot based on what chute it is at, but it breaks something.&lt;/P&gt;
 &lt;P id="isPasted"&gt;“&lt;/P&gt;
 &lt;P&gt;int modValue = 0;&lt;/P&gt;
 &lt;P&gt;if (current.Chute_Number%Model.parameters.ParkingSpots == 0)&lt;/P&gt;
 &lt;P&gt;{
  &lt;/P&gt;
 &lt;P&gt; modValue = current.Chute_Number/Model.parameters.ParkingSpots;&lt;/P&gt;
 &lt;P&gt;}&lt;/P&gt;
 &lt;P&gt;else&lt;/P&gt;
 &lt;P&gt;{
  &lt;/P&gt;
 &lt;P&gt; modValue = Math.trunc(current.Chute_Number/Model.parameters.ParkingSpots)+1;&lt;/P&gt;
 &lt;P&gt;}&lt;/P&gt;
 &lt;P&gt;“&lt;/P&gt;
 &lt;P&gt;&lt;BR /&gt;&lt;/P&gt;
 &lt;P&gt;I am sure there is an easier way to do what I am trying to do (likely using subflows or something). I would love help fixing the current process I have or help doing it a better way. Thank you in advance&lt;/P&gt;
&lt;/DIV&gt;</description>
      <pubDate>Mon, 01 Jul 2024 19:13:30 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/flexsim-forum/agv-parking-queue/m-p/13596601#M91243</guid>
      <dc:creator>dwight_sandersJ2HPL</dc:creator>
      <dc:date>2024-07-01T19:13:30Z</dc:date>
    </item>
    <item>
      <title>Re: AGV Parking Queue</title>
      <link>https://forums.autodesk.com/t5/flexsim-forum/agv-parking-queue/m-p/13596602#M91244</link>
      <description>&lt;DIV class="fr-view clearfix"&gt;&lt;P&gt;I simplified the parking the logic a bit by pushing the AGVs themselves to the "Occupied_Parking_Spots" list. I also don't use partitions anymore. Instead the AGVs now have a label "Spot" that denotes which spot they are currently assigned. This still allows the downstream spots to pull AGVs assigned to the previous one but also enables using the difference between the chute number and this label to determine which AGV to pull to replace a full tote.&lt;/P&gt;&lt;P&gt;Furthermore I edited the On Set code of the parameter that creates the parking spots to assign numbers 2-N to the copied spots. In the uploaded model all spots at the number 1.&lt;/P&gt;&lt;P&gt;And I use "Travel to Loc" tasks, because they allow to finely tune to which exact A* cell the AGVs will travel.&lt;/P&gt;&lt;P&gt;&lt;A rel="noopener noreferrer" href="https://answers.flexsim.com/storage/attachments/84340-agv-fullmodel-6-27-24-withastarnav-fm.fsm" target="_blank"&gt;agv-fullmodel-6-27-24-withastarnav-fm.fsm&lt;/A&gt;&lt;/P&gt;&lt;/DIV&gt;</description>
      <pubDate>Tue, 02 Jul 2024 09:13:39 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/flexsim-forum/agv-parking-queue/m-p/13596602#M91244</guid>
      <dc:creator>FelixMoehlmann</dc:creator>
      <dc:date>2024-07-02T09:13:39Z</dc:date>
    </item>
    <item>
      <title>Re: AGV Parking Queue</title>
      <link>https://forums.autodesk.com/t5/flexsim-forum/agv-parking-queue/m-p/13596603#M91245</link>
      <description>&lt;DIV class="fr-view clearfix"&gt;
 &lt;P&gt;Thanks &lt;A rel="user" href="https://answers.flexsim.com/users/19365/felixmh.html" nodeid="19365"&gt;@Felix Möhlmann&lt;/A&gt;! Your solutions were very helpful and exactly what I was trying to accomplish. One thing I am thinking about is that my customer might want to only allow upstream AGVs to be assigned to a chute. Currently some AGVs are getting pulled from spots further "downstream" if the adjacent spot is currently vacant and causes a bit of a traffic jam. This might be what they are looking for but I've seen a couple times where a downstream AGV will get assigned as an AGV is pulling into an upstream spot. How would you recommend implementing this restriction if that is what they are looking for? I assume I would need to update the query to reference the exact spot number somehow. I was also wondering if it might ne possible to put the chute full condition into the parking_Spot process to check for a chute not being full before moving to the next parking spot?&lt;/P&gt;
&lt;/DIV&gt;</description>
      <pubDate>Tue, 02 Jul 2024 16:00:22 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/flexsim-forum/agv-parking-queue/m-p/13596603#M91245</guid>
      <dc:creator>dwight_sandersJ2HPL</dc:creator>
      <dc:date>2024-07-02T16:00:22Z</dc:date>
    </item>
    <item>
      <title>Re: AGV Parking Queue</title>
      <link>https://forums.autodesk.com/t5/flexsim-forum/agv-parking-queue/m-p/13596604#M91246</link>
      <description>&lt;DIV class="fr-view clearfix"&gt;Hello &lt;A rel="user" href="https://answers.flexsim.com/users/44072/d-sanders.html" nodeid="44072"&gt;@Dwight&lt;/A&gt;,&lt;P&gt;I noticed you have a new post about this model and this post has an accepted answer. Do you still need help with this follow up question?&lt;/P&gt;&lt;/DIV&gt;</description>
      <pubDate>Mon, 08 Jul 2024 16:16:21 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/flexsim-forum/agv-parking-queue/m-p/13596604#M91246</guid>
      <dc:creator>Jeanette_Fullmer</dc:creator>
      <dc:date>2024-07-08T16:16:21Z</dc:date>
    </item>
    <item>
      <title>Re: AGV Parking Queue</title>
      <link>https://forums.autodesk.com/t5/flexsim-forum/agv-parking-queue/m-p/13596605#M91247</link>
      <description>&lt;DIV class="fr-view clearfix"&gt;&lt;P&gt;Sorry, I didn't notice your follow up question until now. As it's currently implemented, the chutes will only ever pull an AGV that is located on a parking spot to the left of the them (AGVs only travel in the direction shown to reach their chute after being pulled).&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="1720504633892.png"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/1524454i5DE306AE151EF23C/image-size/large?v=v2&amp;amp;px=999" role="button" title="1720504633892.png" alt="1720504633892.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;Of course the timing can sometimes be awkward, when a 'better' AGV would have become available shortly after another one was pulled. I think a decent solution to preventing most traffic problems might be to place a barrier (or even multiple) that limits travel in certain lanes to only go in one direction.&lt;/P&gt;&lt;P&gt;&lt;A rel="noopener noreferrer" href="https://answers.flexsim.com/storage/attachments/84594-agv-fullmodel-6-27-24-withastarnav-fm-1.fsm" target="_blank"&gt;agv-fullmodel-6-27-24-withastarnav-fm-1.fsm&lt;/A&gt;&lt;/P&gt;&lt;/DIV&gt;</description>
      <pubDate>Tue, 09 Jul 2024 06:02:59 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/flexsim-forum/agv-parking-queue/m-p/13596605#M91247</guid>
      <dc:creator>FelixMoehlmann</dc:creator>
      <dc:date>2024-07-09T06:02:59Z</dc:date>
    </item>
  </channel>
</rss>

