Saber a diferença entre a Coca-Cola e a Pepsi ou detetar se entornou algo na sua bebida é algo que pode fazer com o seu smartphone, de acordo com um novo estudo da Universidade de Ciência e Tecnologia de Hong Kong.
O projeto chama-se Vi-Liquid e funciona de uma forma que, dito em voz alta, parece quase trivial: o telemóvel faz vibrar o vidro, ouve a forma como essa vibração responde e deduz que líquido está no interior. Por detrás da aparente simplicidade estão a física dos fluidos, o processamento de sinais e uma boa dose de engenho para contornar os limites técnicos do hardware de consumo, como um iPhone 7 — o dispositivo utilizado no estudo.
O conceito central é que cada fluido oferece uma resistência diferente ao movimento quando o recipiente vibra. Essa resistência, também conhecida como viscosidade, deixa uma marca na forma como a vibração se propaga e se extingue.
O sistema mede duas coisas: o quanto o líquido amorteceu a vibração enquanto o motor estava a funcionar e a rapidez com que o sinal se extinguiu quando o motor foi desligado. A combinação das duas informações fornece a viscosidade e, com ela, uma identidade provável.
Distinguir a Coca-Cola da Pepsi ou detetar se há algo na sua bebida
Os investigadores da Universidade de Ciência e Tecnologia de Hong Kong (China) testaram o sistema com 30 líquidos diferentes (PDF (fonte em espanhol)): desde água destilada até mel, óleos, lixívia, vinagre, leite gordo, leite magro, sumos e bebidas espirituosas.
A margem de erro média na estimativa da viscosidade foi de 2,9%, e o sistema acertou na identidade do líquido em 95,47% dos casos, utilizando o classificador mais básico possível: procurar o líquido de referência com a viscosidade mais próxima.
O que é surpreendente não é apenas a percentagem global, mas também o facto de o sistema funcionar mesmo quando as diferenças são muito pequenas. A Coca-Cola e a Pepsi têm viscosidades quase idênticas, de cerca de 1,13 e 1,24 centipoises, respetivamente, e, mesmo assim, o sistema distingue-as.
Também foi capaz de diferenciar cinco tipos de água com variações mínimas: destilada, da torneira, da chuva, de poças e parada. A diferença entre a mais fina e a mais viscosa é de apenas um decipoise (cP), mas foi suficiente para que o Vi-Liquid as classificasse corretamente com um erro médio de 2,56%.
A equipa também explorou utilizações mais orientadas para a saúde. Utilizando amostras sintéticas de urina às quais foram adicionadas quantidades controladas de ácido úrico e de proteínas, dois marcadores de problemas renais, o sistema estimou as concentrações com erros de 1,15 mg por 100 mililitros para o urato e de 0,20 mg por 100 mililitros para as proteínas.
Mediu igualmente a concentração de álcool com um erro médio de 1,38 pontos percentuais. Os próprios autores sublinham que estes resultados são indicativos e não substituem qualquer análise clínica.
Os obstáculos técnicos do estudo
Construir tudo isto com hardware de consumo não foi fácil. O maior problema é que o acelerómetro de um iPhone só pode recolher amostras a 100 Hz através da interface pública do sistema operativo, mas o motor vibra a 167 Hz. A essa taxa de amostragem, o sinal é distorcido por aliasing e os picos de amplitude, precisamente os dados a serem medidos, saem errados.
A solução consistiu em introduzir pequenos desvios entre cada impulso de vibração: ao captar cada ciclo a partir de uma fase ligeiramente diferente, os dados de vários impulsos podem ser combinados para reconstruir a forma de onda real com uma resolução muito mais elevada. A este processo foi adicionado um algoritmo de reconstrução esparso chamado OMP (Orthogonal Matching Pursuit), que refina ainda mais o resultado.
O segundo obstáculo era o facto de o motor não vibrar apenas o recipiente: também agita diretamente o próprio telefone, e essa vibração direta atinge o acelerómetro muito mais fortemente do que o sinal refletido pelo líquido. Para filtrar este efeito, os investigadores registaram a "impressão digital" desta interferência direta suspendendo o telemóvel no ar, sem qualquer vidro, e depois subtraíram-na de cada medição real.
O terceiro problema era o volume. O mesmo líquido vibra de forma diferente se o copo estiver meio cheio e se estiver quase cheio, porque a massa de líquido ligada ao recipiente altera a frequência de ressonância do sistema. O Vi-Liquid resolve este problema (fonte em espanhol) estimando primeiro o volume a partir dessa mudança de frequência e aplicando depois uma correção específica.
Limites do Vi-Liquid e próximos passos
O sistema tem um limite claro: líquidos com viscosidades superiores a cerca de 2.500 centipoises, o mel está perto de 3.000. É nesse ponto que a precisão se degrada para mais de 6% de erro, o que os autores consideram ser o limite prático com o hardware atual.
Também requer um copo com uma ranhura lateral específica na qual o telemóvel se encaixa e uma pré-calibração com quatro líquidos conhecidos. Não funciona com qualquer copo. As limitações mais estruturais são de duas ordens:
- A viscosidade não identifica de forma única todos os líquidos possíveis. Há líquidos não relacionados que podem ter viscosidades quase idênticas; para os distinguir, teriam de ser acrescentadas outras propriedades como a densidade, a tensão superficial ou as propriedades ópticas.
- A viscosidade é altamente dependente da temperatura, pelo que qualquer utilização fora de um ambiente controlado exigiria também a medição da temperatura do líquido e a sua compensação.
Os investigadores afirmam que a direção lógica é combinar o Vi-Liquid com os sensores ópticos que os telefones já possuem- câmara, flash, sensores de proximidade - para obter uma caraterização mais completa. Para já, o trabalho mostra que existe informação física utilizável em canais que normalmente são ignorados.
Esta aplicação seria semelhante a alguns contadores de impulsos que utilizam a câmara traseira do telemóvel ou medem distâncias utilizando sensores ToF nos smartphones.