дело в том что пока датчик новый он все правильно будет показывать, потом со временем его параметры будут смещаться, и его придется калибровать , калибруется он SPAN GAS-ами в зависимости от тех газов для каких прибор будет использоваться, также стоит учесть что калибровка делается двумя способами ZERO ADJUSTMENT и SPAN ADJUSTMENT. Попробую объяснить на примере кислородного датчика: подаем каой ни будь газ в котором знаем что содержание кислорода ноль, делаем ZERO ADJUSTMENT, затем прогоняем датчик на чистом воздухе в котором содержание кисслорода к примеру 21,9% это и есть SPAN ADJUSTMENT
По поводу того что перед каждым замером их надо калибровать это я немного погоречился, просто я им мерию в основном метан или кислород, и перед замером далеко от точки замера делаю ZERO ADJUSTMENT
По идее, к любому микроконтроллеру можно подключить любой датчик. Согласовать уровни при необходимости. Потом либо заводим выход датчика на АЦП и тогда вообще все просто, либо подцепляем (или реализуем на GPIO) нужный интерфейс - смотря какой датчик.
Обратите внимание на астрономические форумы - там с различными фильтрами, в т.ч. ИК и УФ, народ очень плотно работает, могут много умного насоветовать
Да про датчик газа то, начните с экпоненциального фильтра в коде!!!!!!!!!!!!!!!!!!!! Я думаю через экспоненту можно решить вашу проблему