I don’t know of any open-source module that exactly matches your requirements, but you can build a custom elevator agent in AnyLogic using a statechart to control its behavior.
Here’s a general approach:
Create an Elevator Agent: Define a new agent type to represent your elevator.
Statechart for Door Control: Inside the elevator agent, use a statechart to manage the door states (e.g., “Open” and “Closed”). You can set transition times between these states to represent the door opening and closing durations, using timeouts or triggers.
Material-Only Access: When other agents (e.g., forklifts, wheelbarrows, or material items) want to use the elevator, they send a request. The elevator checks the type of requester and only allows material items to enter.
Request Handling: You can model the request and permission logic in the statechart or using events/messages between agents.
This approach gives you full control over the elevator’s logic, including access rules and door timing.
If you need an example, you can start by creating two states (“Door Open” and “Door Closed”) in the statechart and use transitions with timeouts (e.g., 5 seconds for opening/closing). For access control, use parameters or type checks to ensure only the intended agent types can enter.