Run the whole HMI with nothing plugged in
PreciSim is a reference HMI implementation for precision motion and 2D vision machines, with a virtual device engine built in. Open it with no hardware connected and you get a live camera view, jog the axes, run a full calibration chain — and see how far your result sits from ground truth.
Windows 10/11 · no hardware required · free edition never expires
It is three things at once
One program, three ways to use it. Which one you are decides where to start reading.
A reference HMI implementation
Login and roles, alarm popups and alarm history, structured logging, recipe management, a device debug page. The parts a real line needs — not a demo.
A virtual practice rig
Virtual camera, axes and IO with configurable error models. A new hire can get hands-on in week one without tying up a production machine.
A vision calibration toolkit
Six complete calibration chains, each scored against ground truth. Whether the calibration is right stops being a matter of opinion.
The problems it actually solves
The virtual rig is always free. A bad calibration crashes nothing, and you can dial the error model up until the consequence is obvious.
The virtual device knows the truth. Every chain reports the deviation when it finishes: 0.02 mm or 0.2 mm, in plain numbers.
Device abstraction, the Station/DAG workflow and the calibration chains are generic. A new machine means new config and new device implementations, not a new framework.
Get the logic right against virtual devices first; on site you only chase what the real hardware does differently.
Six calibration chains, each scored against truth
Not "it runs" — "it ran, and here is how far off you were".
Pixel size calibration
C1Camera mm/px, including rotation and non-orthogonality
Hand-eye calibration
C2Nine-point method, eye-in-hand and eye-to-hand
Intrinsics and distortion
C3Checkerboard / circle-grid targets, reprojection error
Galvo field correction
C4Grid distortion correction with a residual heat map
Z-axis focus calibration
C5Sharpness-curve focus search, depth of field and defocus
Stage geometry
C6Squareness, centre of rotation, flatness compensation
The engine is closed. The model is not.
Why should you trust numbers a virtual device produces? Because the world and imaging model, the axis and error model, optics and defocus, noise, and how ground truth and tolerances are defined are all written out in the docs. Open model, closed implementation. If you can read it, you can check our arithmetic.
Read "Physics and models"| Pixel scale | 0.01982mm/px | ±0.3% |
| Lens distortion k₁ | −0.0214 | residual < 0.12 px |
| Axis positioning | ±3µm | over 20 mm travel |
| Backlash | 2.4µm | |
| Galvo field residual | 8µm | RMS over 200 mm field |
| Defocus depth | ±35µm | NA 0.14 |
Buying the source works like buying an Unreal plugin
Source buyers are added automatically as read-only members of the private repository. Every update after that is a git pull away, forever — not "one year of updates", perpetual. That promise is in the source licence, and we do not move it later.
See source pricing- The repository invite is automatic — nobody has to process it by hand
- Bind your Git account with one click; no typing usernames
- The source repo builds on a clean clone, with no dependency on the author’s machine
- A "source guide" chapter tells you where to start reading
Five labs, from nothing to something you can hand in
Each lab has a goal, steps, pass criteria, common mistakes and review questions. Ready to teach from.
Lab 1 · Pixel size calibration
Calibrate mm/px and verify against ground truth to within 0.05 mm.
Lab 2 · Hand-eye calibration
Solve the camera-to-motion relationship with the nine-point method, and see why the two configurations must not be mixed up.
Lab 3 · Motion error and backlash
Measure backlash, compensate it, and understand the difference between repeatability and accuracy.
Lab 4 · Z focus calibration
Find the best focal plane from a sharpness curve, and watch noise push it around.
Lab 5 · Galvo field correction
Map and correct in-field distortion, bringing the residual under 15 µm RMS.
Frequently asked
What does the free edition do, and does it expire?
The free edition includes the complete virtual machine (camera, axes, IO) and the first lab. It never expires and needs no account. It is not a trial — it is something we want you to keep.
The engine is closed source. How do I know the numbers are right?
The docs contain a full "Physics and models" chapter: world and imaging, axes and errors, optics and defocus, noise, ground truth and tolerances. Open model, closed implementation is standard practice in this field — check our arithmetic yourself.
If I buy the source, do future updates cost extra?
No. Buy once, update forever: every future version is a git pull away. That commitment is written into the source licence and we do not change it later.
Our lab network has no internet. Can we still use it?
Yes. Offline activation turns a machine code into an activation code with no network involved, and online checks carry a 7–30 day grace period so an outage on our side never stops a class.
What if I change computers?
A licence covers three machines by default, and you can deactivate one yourself from your account — no support ticket needed.
Does it work with real hardware?
The device layer is an abstraction: virtual and real devices implement the same interfaces. Once the logic works against virtual devices, going to real hardware means swapping device implementations and configuration.
Start with the free edition and finish the first lab
Thirty minutes, no hardware, and a real deviation number at the end.