Skip to content
PreciSim
v0.1 in development · free edition available now

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

LIVEPreciSim — virtual machine (no hardware connected)CAM0 · 2448×2048 · 3.45 µmmm/px 0.01982err 0.018 mm PASSGALVO field correction · residual ×40X182.4210Y96.0035Z12.8800prepareacquiresolveverifypersist[10:24:11] chain=pixel-size step=acquire n=30/30[10:24:13] solve: mm/px=0.019823 theta=0.0041 rad skew=1.6e-4[10:24:13] truth: mm/px=0.019841 theta=0.0039 rad[10:24:13] deviation 0.018 mm over 20 mm → PASS (tol 0.05 mm)
Virtual machine overview: camera feed, axis positions, stage map and the calibration wizard — all in one process.
01 / 07

It is three things at once

One program, three ways to use it. Which one you are decides where to start reading.

01

A reference HMI implementation

Software teams at small and mid-size machine builders; engineers learning HMI work

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.

02

A virtual practice rig

New hires with no hardware, students, training providers

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.

03

A vision calibration toolkit

Vision engineers

Six complete calibration chains, each scored against ground truth. Whether the calibration is right stops being a matter of opinion.

02 / 07

The problems it actually solves

New hires have no machine to practise on

The virtual rig is always free. A bad calibration crashes nothing, and you can dial the error model up until the consequence is obvious.

You finish a calibration and cannot tell if it is right

The virtual device knows the truth. Every chain reports the deviation when it finishes: 0.02 mm or 0.2 mm, in plain numbers.

Every machine gets its HMI rewritten from scratch

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.

Debugging means standing next to the machine

Get the logic right against virtual devices first; on site you only chase what the real hardware does differently.

03 / 07

Six calibration chains, each scored against truth

Not "it runs" — "it ran, and here is how far off you were".

Pixel size calibration

C1

Camera mm/px, including rotation and non-orthogonality

Hand-eye calibration

C2

Nine-point method, eye-in-hand and eye-to-hand

Intrinsics and distortion

C3

Checkerboard / circle-grid targets, reprojection error

Galvo field correction

C4

Grid distortion correction with a residual heat map

Z-axis focus calibration

C5

Sharpness-curve focus search, depth of field and defocus

Stage geometry

C6

Squareness, centre of rotation, flatness compensation

04 / 07

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"
Error budget · excerptIn tolerance
Pixel scale0.01982mm/px±0.3%
Lens distortion k₁−0.0214residual < 0.12 px
Axis positioning±3µmover 20 mm travel
Backlash2.4µm
Galvo field residual8µmRMS over 200 mm field
Defocus depth±35µmNA 0.14
Total (RSS)0.041mm
18% marginTolerance 0.05mm
05 / 07

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
07 / 07

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.