Алгоритм измерения объема жидкости в сосуде сложной формы

Тема в разделе "Arduino & Shields", создана пользователем ArcticBear, 9 апр 2016.

  1. ArcticBear

    ArcticBear Нерд

    Я Вас приветствую!

    Друзья, коллеги, подкиньте идею, как грамотнее реализовать измерение, а точнее даже сказать тарировку бака с жидкостью сложной формы, если смотреть в профиль емкости - то овальной ...

    Датчик измеряющий уровень - на основе Холла, и имеет прямую зависимость от уровня.
    Например на АЦП у меня будет от 2 до 3 вольт ...

    Но при этом вверху сосуда и внизу площадь меньше, чем посредине ...
    1 см жидкости вверху и внизу будет например литр, а посредине 3.

    Какой применить механизм (логику) для тарировки?
    В голову приходят только костыли по типу "если уровень между Х1 и Х2, то map с такими то параметрами".

    Но мне кажется что это реально костыль, и отладка займет кучу времени ...
    Как бы Вы поступили в такой ситуации?
     
  2. ostrov

    ostrov Гуру

    Если зависимость нелинейная, а так же не описывается готовой формулой, то выручит таблица зависимости объема воды от высоты уровня.
     
  3. Securbond

    Securbond Гуру

    Может поискать датчик давления? Чем больше жидкости, тем больше давление на датчик ...
     
  4. ostrov

    ostrov Гуру

    Давлением объем жидкости не измерить, только высоту водяного столба. На метровой глубине давление одинаковое хоть в ведре хоть в океане.
     
  5. Onkel

    Onkel Гуру

    кусочно-линейная интерполяция, или просто линейная интерполяция. Составляете таблицу таким образом, чтобы линейно интерполированные значения не отклонялись от истинных на нужную вам дельту. В зависимости от формы сосуда или одномерная линейная таблица с одним переменным, либо таблица соответствия высота- объем.
     
  6. shpock

    shpock Гик

    да и высоту водяного столба не измерить. Только давление. Вода имеет разную плотность, соответственно вес. Если конечно измерять дистилированную воду, то да.
     
  7. artrad

    artrad Нуб