Резистивный датчик давления
Общие сведения
Резистивный датчик давления - это переменный резистор, у которого сопротивление зависит от силы, которая приложена к чувствительному элементу. Таким образом можно косвенно оценить силу нажатия или вес воздействующего на датчик объекта.
Конструктивно датчик состоит из двух слоёв, разделённых между собой изоляционной прокладкой специальной формы. Верхний слой представляет из себя плёнку со встречно напечатанными проводниками. Это и есть тот самый чувствительный элемент, на который необходимо воздействовать путём нажатия. Нижний слой выполнен в виде подложки с печатным полупроводником. Следовательно, чем больше будет оказываться давление на чувствительный элемент, тем больший процент печатных проводников начнёт взаимодействовать с полупроводниковой подложкой. Всё это приведёт к последовательному уменьшению сопротивления резистивного датчика.
Основным недостатком резистивных датчиков давления является их невысокая точность и нелинейность смены сопротивления. Это говорит о том, что применять подобные устройства для измерения точных величин не имеет никакого смысла. Однако, оценить сам факт нажатия или степень давления на сенсор вполне возможно.
Характеристики на примере fsr 402
- Размер: 1/2" (12.5 мм) чувствительной поверхности. Толщина - 0.02" (Interlink выпускает некоторые модели, размер которых составляет 1.5"x1.5")
- Цена: около 7 долларов от западных производителей. 2-3 доллара в Китае.
- Диапазон сопротивлений: бесконечность/разомкнутая цепь (нет внешнего давления), от 100 КОм (легкое давление) до 200 Ом (максимальное давление)
- Диапазон силы: от 0 до 20 lb. (0 - 100 Ньютонов) на каждый 0.125 квадратный дюйм поверхности
- Источник питания: любой. Использует силу тока менее 1 мА (зависит от резисторов и напряжения питания)
Когда внешняя нагрузка отсутствует, сенсор представляет из себя резистор с бесконечным сопротивлением (не замкнутая цепь). С увеличением давления, сопротивление уменьшается. На графике справа приведены приблизительные значения сопротивления датчика в зависимости от приложенной силы.
Подключение датчика и код программы
У данных датчиков нет полярности.
Считываем аналоговые значения с резистивного датчика давления и используем для управления яркостью светодиода на 11 пине Arduino. Чем сильнее давим на сенсор, тем ярче будет гореть светодиод. Резистор на датчике используется 10 кОм, сам датчик подключен к питанию 5 В.
int fsrAnalogPin = 0; // датчик к пину analog 0
int LEDpin = 11; // диод на 11 контакт (ШИМ выход)
int fsrReading; // аналоговые значения с датчика силы
int LEDbrightness;
void setup(void) {
Serial.begin(9600);
pinMode(LEDpin, OUTPUT);
}
void loop(void) {
fsrReading = analogRead(fsrAnalogPin);
Serial.print("Analog reading = ");
Serial.println(fsrReading);
// надо масштабировать диапазон аналоговых значений (0-1023) к диапазону,
// который используется функцией analogWrite (0-255) с помощью команды map!
LEDbrightness = map(fsrReading, 0, 1023, 0, 255);
// светодиод горят ярче, если вы прилагаете большую нагрузку
analogWrite(LEDpin, LEDbrightness);
delay(100);
}