Implementation in SimEvents
- SimEvents:
- Simulink blockset for discrete event modeling
- transaction-based (flow of entities through
components)
- components e. g.
- entity generator, server, queue
- several routing blocks
- basic Conveyor System
- Model of conveyor for dry bulk material:

- ports
- input and output for entities
- inputs for incoming and outgoing velocity
- output for display of outgoing entities
- parameters
- conveyor length l
- compartment length lE
- mass of entities as attribute
- subsystem RefillBinst
handles adaptation of differing velocities
- standard component ConveyorSystem
implements transport delay
- Implementation of RefillBins component:
- incoming entities
- enter server callFunc
- → calls Simulink function totalMass
to compute macc
- → calls Simulink function setPartialMass
to compute mp
- are destroyed afterwards
- InternalGenerator creates
new entities at times n ∆t2
- sends them to server getValue
- → calls Simulink function compMass
to compute mout
- entity leaves the block
- → copy is created and sent back to input server
- → its mass is subtracted from macc
- Handling of concurrent events:
- important, when incoming and outgoing times coincide
- incoming entity has to be processed first
- implemented using priorities
- strange behaviour of SimEvents
- priority only affects events and messages, not
internal function calls
- makes additional server getValue
necessary