ARDUINO-logotipo

ARDUINO 334265-633524 Sensor Flex Longo

ARDUINO-334265-633524-Sensor-Flex-Produto longo

Introdução

Passamos tanto tempo falando sobre sentir coisas menos mecânicas que é fácil esquecer que o acelerômetro não é a única parte da cidade. O sensor flexível é uma daquelas peças frequentemente esquecidas pelo usuário avançado. Mas e se você precisar verificar se algo está dobrado? Como um dedo ou um braço de boneca. (Muitos protótipos de brinquedos parecem ter essa necessidade). Sempre que você precisar detectar uma flexão ou curvatura, um sensor flexível provavelmente é a peça certa para você. Eles vêm em alguns tamanhos diferentes. O sensor flexível é um resistor variável que reage às curvas. Não dobrado mede cerca de 22KΩ, a 40KΩ quando dobrado a 180º. Observe que a curvatura só é detectada em uma direção e a leitura pode ficar um pouco instável, então você terá os melhores resultados detectando mudanças de pelo menos 10º. Além disso, certifique-se de não dobrar o sensor na base, pois isso não será registrado como uma alteração e poderá quebrar os cabos. Eu sempre colo uma tábua grossa na base para que não dobre ali.

ARDUINO-334265-633524-Sensor-Flex-Long-fig-1

Conectando e por quê

O sensor flexível muda sua resistência quando flexionado, então podemos medir essa mudança usando um dos pinos analógicos do Arduino. Mas para fazer isso precisamos de um resistor fixo (não variável) que possamos usar para essa comparação (estamos usando um resistor de 22K). Isso é chamado de volumetage divisor e divide os 5v entre o sensor flexível e o resistor. A leitura analógica no seu Arduino é um voltage metro. Em 5V (seu máximo) seria 1023, e em 0v seria 0. Assim, podemos medir quanto voltage está no sensor flex usando o analogRead e temos nossa leitura.

A quantidade desses 5V que cada parte recebe é proporcional à sua resistência. Portanto, se o sensor flexível e o resistor tiverem a mesma resistência, os 5V serão divididos igualmente (2.5V) para cada parte. (leitura analógica de 512) Basta fingir que o sensor estava lendo apenas 1.1K de resistência, o resistor de 22K vai absorver 20 vezes mais desses 5V. Portanto, o sensor flexível obteria apenas 23 V. (Leitura analógica de 46) \E se rolarmos o sensor flexível em torno de um tubo, o sensor flexível pode ter 40K ou resistência, então o sensor flexível absorverá 1.8 vezes mais desses 5V do que o resistor de 22K. Portanto, o sensor flexível receberia 3V. (Leitura analógica de 614)

Código

O código Arduino para isso simplesmente não poderia ser mais fácil. Estamos adicionando algumas impressões seriais e atrasos apenas para que você possa ver facilmente as leituras, mas elas não precisam estar lá se você não precisar delas. Em meus testes, obtive uma leitura no Arduino entre 512 e 614. Portanto, o intervalo não é dos melhores. Mas usando a função map(), você pode converter isso para um intervalo maior. int flexSensorPin = A0; //pino analógico 0

Exampo código
void setup(){Serial.begin(9600); }void loop(){int flexSensorReading = analogRead(flexSensorPin); Serial.println(flexSensorReading) //Em meus testes eu estava obtendo uma leitura no arduino entre 512 e 614. //Usando map(), você pode converter isso para um intervalo maior como 0-100. int flex0to100 = mapa(flexSensorReading, 512, 614, 0, 100); Serial.println(flex0to100); atraso(250); //apenas aqui para desacelerar a saída e facilitar a leitura

Documentos / Recursos

ARDUINO 334265-633524 Sensor Flex Longo [pdf] Manual do Usuário
334265-633524, 334265-633524 Sensor Flex Longo, Sensor Flex Longo, Flex Longo, Longo

Referências

Deixe um comentário

Seu endereço de e-mail não será publicado. Os campos obrigatórios estão marcados *