Датчик давления с АЦП HX710B подключение к ардуино
- Войдите на сайт для отправки комментариев
Здравствуйте. Пытаюсь подключить датчик MPS20N0040D к леонардо. Датчик если верить даташиту рассчитан на 0-40кПа. Датчик распаян на АЦП HX710B. вот так он выглядит на Али

Так как, библиотеки под конкретный АЦП не нашел решил использовать библиотеку от его брата NX711. Проверка нескольких библиотек показала что стабильнее всего датчик работает на библиотеке Q2HX711.h в остальных библиотеках у меня почему то получался плавно нарастающий сигнал, видимо все-таки есть какие то не стыковки библиотек. Остановившись на этой библиотеке так же решил применить ФНЧ для стабилизации сигнала, т.к. датчик очень чувствительный и сигнал дребезжал даже при ударе по столу. Для проверки датчика использую вот такой код:
#include <Q2HX711.h>
Q2HX711 hx711(A0, A1);
long X;
const float K = 0.02;
long val = 0;
void setup() {
Serial.begin(115200);
}
void loop() {
X=(hx711.read()/2000); // здесь дополнительно делю что бы уменьшить выходной сигнал на графике
int pot = X;
val = val*(1-K) + pot*K;
Serial.print("$");
Serial.print(X);
Serial.print(" ");
Serial.print(int(val));
Serial.println(";");
delay(10);
}
Немного странный вывод данных в сериал порт для работы с программой SerialPortPlotter, кстати достаточно удобная прога для вывода графика.
Данные выводит в сериалпорт в своих попугаях, но вот собственно проблема, выходной сигнал имеет очень малый диапазон, и имеет определенный порог, после которого показания замирают и не увеличиваются, если не использовать делитель то то это значение 16777215, после чего показания встают замертво пока не сбавишь давление. Подключив манометр выяснил что этот порог примерно в 10кПа, т.е датчик работает только на четверть диапазона.
Кто может подсказать проблема в чем может быть проблема? в библиотеке, в применяемых типах переменных или еще в чем?. Подобный порог наблюдался и на других библиотеках от HX711.
Может кто то может поделиться другой библиотекой для работы с подобным модулем с SCL и OUT выходом?
https://aliexpress.ru/item/32923552711.html?spm=a2g0s.9042311.0.0.264d33edes6F0T
16777215 ака 0xffffff - максимальное число, которое можно представить тремя байтами.
Спасибо, что то подобное предполагал, а есть какой то выход из ситуации? как все же получить данные по всему диапазону?
svorog, это нужно искать в дэйташите на датчик. Лично я этим датчиком никогда не интересовался, а мое замечание собственно датчика никак не касается, - просто обратил Ваше внимание, что датчик, скорее всего, выдает 3 байта данных, а уж как применить это обстоятельство к датчику, повторюсь, надо читать дэйташит.
Может, библиотека для 711 и близко не подходит к 710...
на этом сайте есть ДШ гууугля переводит норм тот, что на 8 страниц вам в помощь. опрашивать его не сложно... вроде бы.
тайминги есть, описание есть, можно и ручками его опросить, да и вообще - читать ДШ очень полезно :)
Несколько дней "промучился" с этой проблемой, датчик точно также работал до 10 кПа. Решением было запустить питание на вторую(или пятую, смотря откуда смотреть) ножку датчика MPS20N0040D питание не "чистые" 5 вольт, а через резистор 15 кОм.
Несколько дней "промучился" с этой проблемой, датчик точно также работал до 10 кПа.
Мысля вслух: может на АЦП есть несколько диапазонов измерения, и Вы используете на самый большой?
Отлично, т.е. проблема решается ограничением тока питания? и теперь у вас работает на весь диапазон? какой размах данных на всем диапазоне? на сколько стабильны показания при неизменном давлении? измеряли ли чувствительность? какую библиотеку использовали?
Работает в полном диапазоне. При неизменном давлении параметры не изменяются. Библиотека Q2HX711. Калибровал измерительной головкой от механического тонометра, как раз удобно, там шкала до 300мм ртутного столба, а это 39.9кПа
Может быть, но для этого датчика нет правильной библиотеки. С моей точки зрения, здесь была проблема именно в резисторном делителе датчика давления.
Может быть, но для этого датчика нет правильной библиотеки. С моей точки зрения, здесь была проблема именно в резисторном делителе датчика давления.
был бы даташит не на китайском - библиотеку можно написать.
Если бы передо мной стояла задачи кровь из носу использовать этот датчик, то я выкинул бы этот странный ацп, поставил бы инструментальный операционник с диф входом, и завел бы сигнал на АЦП контроллера.
Поправьте, если не верно понял. Вы отпаяли 2-ю ногу от платы и соединили её с VCC через резистор 15кОм таким образом и диапазон увеличился до заявленных ~ 40кПа?
Да, все правильно. Необходимо отпаять ножку датчика от контактной площадки. Резистор припаять непосредственно к ножке датчика. Или же, резстор припаять между контактной площадкой и ножкой датчика.
Вы меня спасли! Сейчас буду пробовать
резистор на сколько ватт использовать?
Любой, какой есть, от 0.125
Electron27, А резистор на 15кОм обусловлен даташитом или экспериментально подобран?
В наличии был только на 10кОм, увеличил диапазон примерно до 33кПа.
На 20кОм можно поставить, или не хватит питания, не будет работать?
Здравствуйте, не могли бы вы проконсультировать по некоторым вопросам по этому датчику, тоже мучаюсь не могу нормально его подключить
А можно ли измерять этим датчиком вакуум? (80 мм рт ст)
Не подскажите, как установить этот датчик -
MPS20N0040D-D Sphygmomanometer Dip Air Pressure Sensor Module 0-40kPa DIP-6 For Arduino Board к Ардуино Нано или ДиГиСпарк. Спасобо. Ссылка на Алекс такая - https://aliexpress.ru/item/32921636770.html?_evo_buckets=165609%2C165598%2C188872%2C194277%2C224408%2C224363%2C176818&_ga=2.34711457.1249268669.1638169918-460344325.1578466840&_t=gps-id%3ApcDetailBottomMoreOtherSeller%2Cscm-url%3A1007.34525.256469.0%2Cpvid%3A8ec2f881-5e9b-4cc3-ac9a-e3d04f7005d9%2Ctpp_buckets%3A24525%230%23256469%2314_21387%230%23257389%233_4452%230%23226710%230_4452%233474%2316498%23638_4452%234862%2324463%2373_4452%233098%239599%23321_4452%235108%2323442%23136_4452%233564%2316062%23321&gps-id=pcDetailBottomMoreOtherSeller&pvid=8ec2f881-5e9b-4cc3-ac9a-e3d04f7005d9&scenario=pcDetailBottomMoreOtherSeller&scm=1007.34525.256469.0&scm-url=1007.34525.256469.0&scm_id=1007.34525.256469.0&sku_id=66066418576&spm=a2g2w.detail.1000014.13.3a773f56raeU9U&tpp_rcmd_bucket_id=256469
Ну, возможно три варианта:
1. Горизонтально.
2. Вертикально.
3. Под наклоном.
После просьбы о помощи я искал и все же нашел. Оказывается что можно и верх головой
Как можно показать фото? Я покажу схему подключения этого рода сенсора.
Как можно показать фото? Я покажу схему подключения этого рода сенсора.
Добавь фото в сообщение. Вверху значки смотри.
Не слепой. Нажму на этот квадрат указывает только ,,выбор на сервере,,. Из за этого вместо маленькой фото я поставил длиннейшую ссылку. Все же должен быть способ поставить фото из моего компа. Поэтому и спрашиваю.
Так загрузи на сервер и выбери с него. А говоришь, что не слепой...
Какой сервер? Как загрузить? Вопрос за вопросом, ответы на которых не нахожу в этом форуме. Лучше бы пересмотрели формат сайта. Я врач нейрохирург, мне 68 и а не обязан знать все жаргоны онлайн посетителей, или как их там называют. Я не привык такого тона и покину этот форум. Я зашел в форум чтобы получить ответ на мой вопрос. После этого нашел ответ на другом месте. Оказывается, что нужна определенная схема, хотел поделиться. Не получилось. Извените. Пока.
Извенили. Пока.
Ну вот, тему для начинающих в песочнице где всё разжёвано по шагам прочитать не смог, а форум виноват. Да, о времена, о нравы.
Дабы не плодить темы спрошу здесь. Есть вышеуказанный HX710, при подключении к Nano все прекрасно работает, показывает атмосферные 750, ежели подуть в трубочку - значения увеличиваются, вобщем все хорошо.
Но! Мне надо подключить этот чудо-девайс к ESP. А при питании от 3,3В он уже показывает совсем другое. И ладно бы 1620 вместо 750 - коэффициентом можно поправить, но эти значения уменьшаются при увеличении давления, а не увеличиваются, как при питании от 5В.
Честно пытался смотреть исходник библиотеки, даже очки одел. Но просветления не достиг, ибо языками не владею. Нутром чую, что дело тут несложное, но по серости своей не могу разобраться. Посему прошу помощи.
На NODEMCU есть 5 вольт, контакт Vin
Есть. Я так в свое время bmp180 подключил. И 5В прилетело обратно на ESP. Дыма конечно не было, но и признаков жизни тоже.
Поаккуратней с такими советами.
Есть. Я так в свое время bmp180 подключил. И 5В прилетело обратно на ESP. Дыма конечно не было, но и признаков жизни тоже.
Поаккуратней с такими советами.
для этого есть преобразователи уровней, для тех выводов, что не толерантны к 5 вольтам
Я их купил две штуки, это вариант Б.
Но в даташите написано 2,6-5,5В. Т.е. эта штука должна работать от 3,3В, и это вопрос программный, о чем я и спрашивал.
Вообще не понимаю проблемы. Запитываете ESP от dc-dc преобразователя(стоит копейки) и всего делов. Ваша нана питается от 5вольт, а esp от 3.3.
Сам придумал, или кто подсказал?