# Interpolate location based on triangular sensor array

There are 3 sensors (A, B, C) on a plane, located in the corners of a (known) equilateral triangle.

I want to calculate the (2D) location of an object (X) inside that triangle.

One sensor returns one scalar value per reading, but in order to compensate for environmental effects, I always use the values relative to each other in order to get stable values.

This means I get one value between 1.0 and 0 for each pair of sensors depending on whether the object is on the median line between two sensors (ratio=1.0), directly in one corner of the triangle (ratio= ~0.3) or even further away.

Here you can see some plots that show the idea.

The red dots are the sensor locations. I have plotted selected ratios of the measurements depending on the position of the object X.

So if X moves on a plotted curve, the ratio of sensor readings stays constant.

My goal in the end is to find X's location depending on the three sensor ratios.

Ratio B/A : All Ratios (Ratios A/B and B/A highlighted) : While I can make calibration measurements, these take a lot of time and are only practical for roughly 1/10th of the targeted spatial resolution. (i.e.: I can make a calibration measurement each meter, but I am targeting a 0.1m resolution.) I am, however not limited on how I select the location for the calibration measurements.

I have three values per measurement and have to somehow do a reverse interpolation.

Unfortunately, the physical model behind it is very complex (and proprietary) so I don't have a way to use it as a starting point. Also there are a lot of nonlinearities and other unknowns in the system.

What I've tried:

My first attempt was to fit circles to my calibration measurements, and reverse-interpolate on the positions of center and radius. So I would calculate a circle per sensor ratio and look for the point where the three circles would (roughly) intersect. Unfortunately this did not really work out - especially as the circle's radius approaches infitity if my sensor-ratio approaches 1.

So in the end I've ditched the geometrical approach and have looked more into numerical solutions, but I haven't found a solution that could work in my case.

I hope my explanation was clear and precise. I'm grateful for any pointers in the right direction!

(I'm currently working with Python/numpy)