Тензодатчик: различия между версиями
Artecoll (обсуждение | вклад) Нет описания правки |
Artecoll (обсуждение | вклад) Нет описания правки |
||
(не показано 7 промежуточных версий этого же участника) | |||
Строка 2: | Строка 2: | ||
== Классификация == | == Классификация == | ||
[[Файл:Балочный.jpg|200px|мини|слева|Балочный тензодатчик]] | |||
По форме: | По форме: | ||
*'''консольный (балочный)''' - используется в системах дозирования, платформенных весах средней грузоподъемности, бункерах, напольных системах взвешивания, включая электронные весы для взвешивания животных. | *'''консольный (балочный)''' - используется в системах дозирования, платформенных весах средней грузоподъемности, бункерах, напольных системах взвешивания, включая электронные весы для взвешивания животных. | ||
Строка 7: | Строка 8: | ||
*'''S - образный''' - в процессе взвешивания дозаторов, бункеров и прочих конвейерных весовых систем нашли свое применение S-образные тензометрические датчики. Следует отметить, что такие датчики превосходно подойдут для разрывных машин и испытательных стендов. | *'''S - образный''' - в процессе взвешивания дозаторов, бункеров и прочих конвейерных весовых систем нашли свое применение S-образные тензометрические датчики. Следует отметить, что такие датчики превосходно подойдут для разрывных машин и испытательных стендов. | ||
*'''колонный (типа "бочка")''' - применяется для производства и модернизации бункерных, автомобильных, вагонных весов с большой грузоподъёмностью, а также в контрольно-измерительном оборудовании, испытательных стендах. | *'''колонный (типа "бочка")''' - применяется для производства и модернизации бункерных, автомобильных, вагонных весов с большой грузоподъёмностью, а также в контрольно-измерительном оборудовании, испытательных стендах. | ||
[[Файл:S-образный.jpg|мини|справа|200px|S-образный тензодатчик]] | |||
Строка 17: | Строка 19: | ||
==Принцип работы и конструкция== | ==Принцип работы и конструкция== | ||
[[Файл:Мембранный.jpg|мини|слева|200px|Мембранный тензодатчик]] | |||
[[Файл:Тензорезистор.gif|мини|справа|Наглядная деформация тензорезистора]] | [[Файл:Тензорезистор.gif|мини|справа|Наглядная деформация тензорезистора]] | ||
Весь тензодатчик представляет из себя деформируемый элемент, к которому прикреплён тензорезистор. При растяжении тензорезистора увеличивается длина и уменьшается площадь поперечного сечения, что приводит к увеличению сопротивления. При сжатии - уменьшается длина, увеличивается площадь поперечного сечения, уменьшается сопротивление. В результате изменения сопротивления тензорезистора, можно судить о силе воздействия на датчик, а, следовательно, и о весе груза. Принцип измерения веса при помощи тензодатчиков основан на уравновешивании массы взвешиваемого груза с упругой механической силой тензодатчиков и последующего преобразования этой силы в электрический сигнал для последующей обработки. | Весь тензодатчик представляет из себя деформируемый элемент, к которому прикреплён тензорезистор. При растяжении тензорезистора увеличивается длина и уменьшается площадь поперечного сечения, что приводит к увеличению сопротивления. При сжатии - уменьшается длина, увеличивается площадь поперечного сечения, уменьшается сопротивление. В результате изменения сопротивления тензорезистора, можно судить о силе воздействия на датчик, а, следовательно, и о весе груза. Принцип измерения веса при помощи тензодатчиков основан на уравновешивании массы взвешиваемого груза с упругой механической силой тензодатчиков и последующего преобразования этой силы в электрический сигнал для последующей обработки. | ||
Строка 29: | Строка 32: | ||
==Схема подключения== | ==Схема подключения== | ||
[[Файл:Мост Уинстона.jpg|мини|слева|Схема подключения тензорезистора в мосте Уинстона]] | [[Файл:Мост Уинстона.jpg|мини|слева|200px|Схема подключения тензорезистора в мосте Уинстона]] | ||
Обычно тензорезистор подключают в одно или два плеча моста Уинстона. | Обычно тензорезистор подключают в одно или два плеча моста Уинстона. | ||
При отсутствии физического взаимодействия U<sub>BC</sub> = 0 (R<sub>1</sub> / R<sub>2</sub> = R<sub>x</sub> / R<sub>3</sub>). При деформации тензорезистора изменяется сопротивление R<sub>x</sub>, что вызывает снижение потенциала точки соединения резисторов R<sub>x</sub> и R<sub>3</sub> и изменение полезного сигнала - U<sub>BC</sub>. | При отсутствии физического взаимодействия U<sub>BC</sub> = 0 (R<sub>1</sub> / R<sub>2</sub> = R<sub>x</sub> / R<sub>3</sub>). При деформации тензорезистора изменяется сопротивление R<sub>x</sub>, что вызывает снижение потенциала точки соединения резисторов R<sub>x</sub> и R<sub>3</sub> и изменение полезного сигнала - U<sub>BC</sub>. | ||
Для тензодатчика обязательно подключение АЦП. | |||
[[Файл:ТР с АЦП.jpg|обрамить|центр|Схема подключения тензодатчика на примере Arduino UNO и АЦП с микросхемой HX711]] | |||
<syntaxhighlight lang="c"> | |||
#include "HX711.h" // библиотека для работы с АЦП | |||
#define DT A0 // Указываем номер вывода данных DT | |||
#define SCK A1 // Указываем номер вывода синхронизации SCK | |||
HX711 scale; // создаём объект scale | |||
float calibration_factor = -14.15; // калибровочный коэффициент (необходимо сначала определить) | |||
float units; // переменная для измерений в граммах | |||
float ounces; // в унциях | |||
void setup() { | |||
Serial.begin(9600); // работу порта на 9600 бод | |||
scale.begin(DT, SCK); // инициируем работу с датчиком | |||
scale.set_scale(); // измерение без калибровочного коэффициента | |||
scale.tare(); // сбрасываем значения веса на датчике в 0 | |||
scale.set_scale(calibration_factor); // устанавливаем калибровочный коэффициент | |||
} | |||
void loop() { | |||
Serial.print("Reading: "); // текст в монитор порта | |||
for (int i = 0; i < 10; i ++) { // считаем значения датчика 10 раз | |||
units = + scale.get_units(), 10; // суммируем показания 10 замеров | |||
} | |||
units = units / 10; // усредняем показания, разделив сумму значений на 10 | |||
ounces = units * 0.035274; // переводим вес из унций в граммы | |||
Serial.print(ounces); // выводим в монитор порта вес в граммах | |||
Serial.println(" grams"); // выводим текст в монитор последовательного порта | |||
} | |||
</syntaxhighlight> |
Текущая версия от 14:56, 11 июня 2021
Тензодатчик (тензометрический датчик) - датчик, который реагирует на изменение физической величины и переводит его в электрический сигнал. Работа таких датчиков основывается на тензоэффекте - свойство твёрдых материалов изменять своё сопротивление под действием деформации.
Классификация
По форме:
- консольный (балочный) - используется в системах дозирования, платформенных весах средней грузоподъемности, бункерах, напольных системах взвешивания, включая электронные весы для взвешивания животных.
- мембранный (типа "шайба") - массово применяется при производстве вагонных, бункерных, автомобильных весовых системах. Также мембранные датчики используются в тех весодозирующих системах, где обыкновенные датчики не могут быть внедрены в конструкцию из-за своих габаритных размеров.
- S - образный - в процессе взвешивания дозаторов, бункеров и прочих конвейерных весовых систем нашли свое применение S-образные тензометрические датчики. Следует отметить, что такие датчики превосходно подойдут для разрывных машин и испытательных стендов.
- колонный (типа "бочка") - применяется для производства и модернизации бункерных, автомобильных, вагонных весов с большой грузоподъёмностью, а также в контрольно-измерительном оборудовании, испытательных стендах.
По величине измерения:
- силы растяжения и сжатия
- давления
- ускорения
- перемещения
- крутящего момента
Принцип работы и конструкция
Весь тензодатчик представляет из себя деформируемый элемент, к которому прикреплён тензорезистор. При растяжении тензорезистора увеличивается длина и уменьшается площадь поперечного сечения, что приводит к увеличению сопротивления. При сжатии - уменьшается длина, увеличивается площадь поперечного сечения, уменьшается сопротивление. В результате изменения сопротивления тензорезистора, можно судить о силе воздействия на датчик, а, следовательно, и о весе груза. Принцип измерения веса при помощи тензодатчиков основан на уравновешивании массы взвешиваемого груза с упругой механической силой тензодатчиков и последующего преобразования этой силы в электрический сигнал для последующей обработки.
Классификация тензорезисторов по материалу измерительного элемента:
- фольговый - используется как наклеиваемый тензорезистор. Это очень удобная система, которая представляет собой фольговую ленту, толщиной до 12 мкм. Часть пленки имеет плотную форму, а часть – решетчатую. Данная модель отличается от остальных тем, что можно припаивать дополнительные контакты, к тому же они нормально переносят низкие температуры.
- плёночный - является аналогом фольгового, за исключением материала, из которого изготовлен. Производители изготавливают такие модели из тензочувствительных пленок с особым напылением, которое увеличивает чувствительность системы. Их удобно использовать при необходимости измерить динамические нагрузки. Производство пленок выполняется из таких материалов, как титан, висмут, германий.
- проволочный - способен измерить нагрузку от нескольких сотых грамма до целых тонн. Их называют одноточечные, т. к в отличие от пленочных и фольговых резисторов, они измеряют в одной точке, а не площади. Такая конструкция позволяет использовать проволочные тензорезисторы для измерения деформации сжатия и растяжения.
В качестве подложки обычно используют ткань, бумагу, полимерную плёнку, слюду и др.
Схема подключения
Обычно тензорезистор подключают в одно или два плеча моста Уинстона. При отсутствии физического взаимодействия UBC = 0 (R1 / R2 = Rx / R3). При деформации тензорезистора изменяется сопротивление Rx, что вызывает снижение потенциала точки соединения резисторов Rx и R3 и изменение полезного сигнала - UBC.
Для тензодатчика обязательно подключение АЦП.
#include "HX711.h" // библиотека для работы с АЦП #define DT A0 // Указываем номер вывода данных DT #define SCK A1 // Указываем номер вывода синхронизации SCK HX711 scale; // создаём объект scale float calibration_factor = -14.15; // калибровочный коэффициент (необходимо сначала определить) float units; // переменная для измерений в граммах float ounces; // в унциях void setup() { Serial.begin(9600); // работу порта на 9600 бод scale.begin(DT, SCK); // инициируем работу с датчиком scale.set_scale(); // измерение без калибровочного коэффициента scale.tare(); // сбрасываем значения веса на датчике в 0 scale.set_scale(calibration_factor); // устанавливаем калибровочный коэффициент } void loop() { Serial.print("Reading: "); // текст в монитор порта for (int i = 0; i < 10; i ++) { // считаем значения датчика 10 раз units = + scale.get_units(), 10; // суммируем показания 10 замеров } units = units / 10; // усредняем показания, разделив сумму значений на 10 ounces = units * 0.035274; // переводим вес из унций в граммы Serial.print(ounces); // выводим в монитор порта вес в граммах Serial.println(" grams"); // выводим текст в монитор последовательного порта }