local czasZliczania = 10*60, '10minut'
local odZdarz = function (czas) return tonumber(os.difftime(os.time(), czas)) end
local suma = function(x) local s = 0 for _, v in ipairs(x) do s = s + v end return s end
zliczajSpelnioneWarunki = function (tabela, czasPoczatkowy)
local tabela, czasPoczatkowy = tabela or {}, czasPoczatkowy or os.time()
tabela[#tabela +1] = [warunek jaki musi być spełniony aby impuls został wpisany do tabeli jako 1] and 1 or 0
if odZdarz(czasPoczatkowy) > czasZliczania then return print('zliczono impulsów '..#tabela.. ' wartość impulsów'..suma(tabela)) end
setTimeout(function() zliczajSpelnioneWarunki(tabela, czasPoczatkowy) end, 30*1000)
end
Jeżeli chcesz zliczać same jedynki, zmodyfikuj funkcję suma
Tylko wytłumacz mi, na jakiej zasadzie chcesz sprawdzać poziom węgla w podajniku, bo nie bardzo rozumiem.