# `BB.Sim.Actuator`
[🔗](https://github.com/beam-bots/bb/blob/main/lib/bb/sim/actuator.ex#L5)

Simulated actuator for kinematic simulation mode.

This actuator is automatically used in place of real actuators when the robot
is started with `simulation: :kinematic`. It:

- Receives position commands via pubsub, cast, and call
- Calculates motion timing from joint velocity limits
- Publishes `BeginMotion` messages for position estimation
- Clamps positions to joint limits

Works with `BB.Sensor.OpenLoopPositionEstimator` for position feedback.

## Example

    # Start robot in simulation mode
    MyRobot.start_link(simulation: :kinematic)

    # Commands work identically to hardware mode
    BB.Actuator.set_position(MyRobot, [:base, :shoulder, :motor], 1.57)

---

*Consult [api-reference.md](api-reference.md) for complete listing*
