question

hikel avatar image
0 Likes"
hikel asked hikel commented

Set Loading time when loading boxes

I would like to set different loading time for each Part Number based on global table (if part is in global table take it if not take a defaults number)

1736524729318.png

I tried using task delay as loading time and doing look up for part but the fork(lifter) keeps going up and down for each box picked. the only way fork is working properly is setting loading time in 3D object. is there any way to get label from process flow to 3D object or if there is any other solution I can do to get this one working. here is model loading_1.fsm

1736524625525.png


FlexSim 24.2.2
processs flowpickingloading time
1736524625525.png (215.0 KiB)
1736524729318.png (22.0 KiB)
loading-1.fsm (102.9 KiB)
5 |100000

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.

1 Answer

Felix Möhlmann avatar image
0 Likes"
Felix Möhlmann answered hikel commented

You can just read from the table in the load time field.

capture1.png

capture2.png

(If the "PartNumber" label exists on the item, use that to read a time from the table, otherwise return 0)


capture1.png (9.5 KiB)
capture2.png (2.7 KiB)
· 4
5 |100000

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.

hikel avatar image hikel commented ·

Thank you @Felix Möhlmann

0 Likes 0 ·
hikel avatar image hikel hikel commented ·

@Felix Möhlmann just a follow up question I am getting this error I know the part is not in the list normally it should return 0 but it is not working properly. I tried reversing the condition still the same problem.

FlexScript exception: 1/006 is not a valid row name for Global Table "Loadingtime" at MODEL:/Forklift8>variables/loadtime at line 8

0 Likes 0 ·
Felix Möhlmann avatar image Felix Möhlmann hikel commented ·
The code I posted only checks if the label exists and is not 0. "1/006" is not, so it will throw an error if that header does not exist in the table.

Checking if a row header exists would require a for-loop. If you copy the headers into a separate column, you could first use 'Table.getRowByKey()' to check if a row with that value exists. If yes, return the time from that row. If not, return 0.

0 Likes 0 ·
Show more comments