А измерять ту же степень затухания никак?
Если она жёстко связана только с жирностью, то вполне нормальный путь.
Регулировать мощность излучателя сильно проще.
Измерители потока на TDC вполне нормально работают при изменении и температуры, и плотности протекающего. Результат нормальный. Надо просто посмотреть как приспособить для вычисления скорости распространения сигнала. Например циркуляция некоторого объёма через нагреватель с измерением скорости потока и вычислением скорости распространения из результатов измерения. Надо будет залезть в DS за подробностями, сейчас уже немного расплылись за давностью
.
Ещё один вариант - схемотехника HC-SR04. Даже с arduino нормально работает
. И задача получается простой не расстояние по времени пролёта на заданной скорости, а скорость по времени пролёта на известном расстоянии. Тут уже все совсем просто и выход уже логический. Точность и флуктуации уже по месту калибровки. Излучатель и приёмник естественно поменять придётся для молока.