ATTENTION

This FlexSim Community Forum is read-only. Please post any new questions, ideas, or discussions to our new community (we call it Answers) at https://answers.flexsim.com/. Our new Question & Answer site brings a modern, mobile-friendly interface and more focus on getting answers quickly. There are a few differences between how our new Q&A community works vs. a classic, threaded-conversation-style forum like the one below, so be sure to read our Answers Best Practices.


flexsim.com

Go Back   FlexSim Community Forum > FlexSim Software > Q&A
Downloads

Q&A Using Flexsim and building models

  #1  
Old 07-13-2010
Steven Hamoen's Avatar
Steven Hamoen Steven Hamoen is offline
Talumis, Flexsim Distributor, The Netherlands
 
Join Date: Aug 2007
Location: Soest, NL
Posts: 854
Downloads: 43
Uploads: 0
Thanks: 391
Thanked 661 Times in 379 Posts
Rep Power: 684
Steven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond reputeSteven Hamoen has a reputation beyond repute
Default Animation of the ASRS questions

I'm trying to create my own ASRS by using a BasicTE and copying parts from the ASRS. But I keep struggling. So I would ask if somebody (I expect from Flexsim) could give a bit more explanation.

For instance I added a second beam in the animation creator. I copied it from first beam including all values and I adapted the scalecomponents function so that dimension that are set for the beam are also set for the 2nd beam except the x - position because otherwise they would be on top of eachother

But the beam stays very long and small, although it looks like it gets the right x- position.

The other problem is that my ASRS can pickup 2 pallets so I adapted the lift.3ds and I can read it in, but it has the wrong dimensions. So when I change the dimension in the animation creator it is fine, but then when the scalecomponents is called everything is wrong again. So I tried to play with the asrsresizedata but if I change the liftxfactor everything in the x-direction is changed (beam, car etc)

So actually the question is what the link between "drawsurrogates", "resizeinfo" and "animationinfo" is and what exactly do these do including the subnodes inside like bodies.

I attached a picture of my beam failure. And for more information, I copied the scalecomponents function and just call it on reset. (which seems to work fine)
Attached Thumbnails
Click image for larger version
Name:	Shuttlecrane_secondbeam.jpg
Views:	248
Size:	26.7 KB
ID:	1062  
  #2  
Old 07-19-2010
Anthony Johnson's Avatar
Anthony Johnson Anthony Johnson is offline
Manager of Product Development
 
Join Date: Jul 2007
Posts: 440
Downloads: 86
Uploads: 4
Thanks: 171
Thanked 899 Times in 288 Posts
Rep Power: 735
Anthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond reputeAnthony Johnson has a reputation beyond repute
Default

drawsurrogate, as you have probably already figured out, is the part where all the sub-components go that will be drawn as if they are "inside" the asrs vehicle. It is somewhat independent of the resizeinfo and animationinfo attributes, meaning it doesn't reference them. Instead they reference drawsurrogate sub-components.

resizeinfo defines how each sub-component is resized when the user drags the object's sizers. The default structure of resizeinfo is to have two sub-nodes. The first sub-node defines the "base size" of the object in x, y and z. The second node defines a set of "bodies" that the object wants automatically resized if the main object is resized by the user. Each sub-node of the bodies node should contain a path to an object to be resized. Usually these paths will reference sub-components of drawsurrogate, but there's nothing stopping you from defining your own paths (except that when you hit "Save Base Positions" in the Animation Creator, all the resizeinfo sub-structure is overwritten based on the current sizes/locations). Each body sub-node will have 12 sub-nodes defining locations, rotations, sizes and resizing rules based on the object's basesize, defined as follows:
1-3: base x,y,z locations of the "centroid" of the sub-component, or in other words the point around which the object rotates. This is not calculated by xloc/yloc/zloc, but rather by xcenter/ycenter/zcenter.
4-6: x,y,z rotations of the object
7-9: x,y,z base size
10-12: defines rules of how each axis of the sub-component is sized when the user sizes various axes of the main object. For example, if sub-node 10 is 1, that means the sub-component's x size increases/decreases with the x size of the main object (defined in the Animation Creator).

Long story short, when the user resizes an axis on the main object, the engine will look in the resizeinfo attribute, and resize each of the sub-components based on the ratio of the object's current size to its base size.

Since the ASRS vehicle has some weird rules defining how to resize different components, it doesn't use the engine's auto-resize mechanism, but instead uses its own data for resizing. Hence you should make sure not to hit the "Save Base Locations" button in the Animation Creator, because this will cause resize data to be written that the ASRS doesn't want. To get rid of this accidental resizing data, just manually clear the bodies node of resizeinfo. This is the same for the crane and the elevator I believe. The asrsresizedata node inside resizeinfo of the ASRSvehicle is used to figure out ratios of sizes of different components. Having a 3rd node in resizeinfo doesn't have any special meaning for the engine. The ASRSvehicle just uses that location for its purposes. I just thought it was a logical place to put it so that people could redefine those values if needed and the data would automatically be saved with the composite visuals if the user saves visuals. As far as what each value means in asrsresizedata, you'll just have to look in the code and fiddle with it yourself, because I don't remember what all the values meant.

The animationinfo attribute defines different animations. You have a bodies node that defines all of the bodies that will be referenced in keyframes of the animations, and then an animations node that defines all the different animations. Again, the bodies nodes will usually reference a path to a sub-component in drawsurrogate, but there's no stopping you from defining your own, i.e. integrate a flowitem into an animation (although I don't know how the Animation Creator would overwrite your work if you're manually working in the tree). Each animation has sub-nodes defining various attributes of the animation, definable through the Animation Creator, and a keyframes node defining the different keyframes. The keyframes node contains sub-nodes for each keyframe of the animation. Each keyframe holds a number defining the keyframe's time, and a bodies sub-node defining the location, size and rotation of each body. The body node's rank is associated with the corresponding body in the animationinfo's main bodies definition. If the body node has sub-nodes, then that means the keyframe applies to that body. Otherwise the keyframe does not cause a change in that body's location/size/rotation. Sub-nodes of the body are as follows:
1-3: x/y/z location
4-6: x/y/z size
7-9: x/y/z rotation
The Following 7 Users Say Thank You to Anthony Johnson For This Useful Post:
Tom David (07-20-2010)
  #3  
Old 04-07-2011
LINWEIXU
Guest
 
Posts: n/a
Downloads:
Uploads:
Default

hi Hamoen
do you make ASRS can pickup 2 pallets ? i make that use coordinatedtasksequence.

Tags
animation creator, animationinfo, asrs, drawsurrogate, resizeinfo


Thread Thread Starter Forum Replies Last Post
Animation Creator Esther Bennett Q&A 5 06-12-2010 07:21 AM
Frame Animation based on Time Shanon Loughton Q&A 4 04-06-2009 09:57 AM
ASRS Lift Acceleration Enver Burak KORCAK Q&A 2 01-30-2009 02:59 PM
ASRS Picking Gavin Douglas Q&A 1 09-09-2008 09:21 AM
Control Operator and ASRS in aisles Jens Mühlheimer Q&A 1 07-18-2008 07:23 AM


All times are GMT -6.
Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2020, vBulletin Solutions Inc.
Copyright 1993-2018 FlexSim Software Products, Inc.