MR
Dashboard/Tabac factory
HYBRIDIn Review

Simulate & Validate

Validate the generated code in layers — on any laptop — before it ever touches a robot. The export package includes a ready-to-run dry-run harness and a PyBullet simulation built on the Diana 7 URDF.

Layer 0BLOCKED
Static validation

In-app 17-rule engine: unknown API, mm/deg unit mistakes, missing cleanup, force-mode offset, PLC handshake, safety header. 1 block(s), 1 warning(s).

Layer 1RUN LOCALLY
Mock dry-run

python3 dryrun.py — runs the Python draft against a mock DianaApi (no hardware). Checks call sequence, IO handshake, force-mode pairing, cleanup and unit values.

Layer 2RUN LOCALLY
Kinematic sim

python3 simulate_pybullet.py — loads the Diana 7 URDF and replays the taught poses: reachability, joint limits, self-collision, rough cycle time.

How to run it (any PC)

Download the engineering package and unzip it — it now contains dryrun.py, mock_dianaapi.py, simulate_pybullet.py and SIMULATION.md alongside the scripts.

# Layer 1 — logic / IO / units (no dependencies, ~1s)
python3 dryrun.py

# Layer 2 — reach / joint limits / collisions on the real URDF
pip install pybullet
export DIANA7_URDF=".../04_URDF/Diana 7_URDF/.../urdf/diana7_robot.urdf"
python3 simulate_pybullet.py
⬇ Download engineering + simulation package (.zip)
Higher fidelity: the partner pack ships ROS launch files (Gazebo + MoveIt) and CAD; you can also import the URDF into NVIDIA Isaac Sim or RoboDK. Always finish with the Safety checklist (ISO 10218 / ISO/TS 15066) and slow-speed commissioning with the E-stop in hand.