подскажитие актуальный датчик давления в трубопровод с водой
вот тема вроде
там ДАТЧИК ДАВЛЕНИЯ СДВ-И “КОММУНАЛЕЦ” 1,0 МПА (СДВ-И-1,60-1,00-0,60-М-4-20МА-DА42206053) хвалят, он актуален?
подскажитие актуальный датчик давления в трубопровод с водой
вот тема вроде
там ДАТЧИК ДАВЛЕНИЯ СДВ-И “КОММУНАЛЕЦ” 1,0 МПА (СДВ-И-1,60-1,00-0,60-М-4-20МА-DА42206053) хвалят, он актуален?
“Для себя” я б взял аналоговый обычный https://www.aliexpress.com/i/32622062762.html китаец.
Питание (игрался с таким) давал 5 вольт.
Провода: Черный - земля
Красный - питание
Желтый - выход, напряжение пропорционально давлению.
Можно мерить прямо аналоговым входом wb.
Добрый день. Как подключить этот датчик напрямую к wb. И как преобразовать показания с него в давление?
черный земля, красный +5В, желтый к A1.
Диапазон 0.5-4.5V соответсвует 0-1.2 MPa
Давление = (1.2/4)*(разница напряжений)
var pressure = (dev['wb-adc/A1']-0.5)*0.3;// MPa
Спасибо. а это где прописать?
var pressure = (dev[‘wb-adc/A1’]-0.5)*0.3;// MPa
В том месте вашего скрипта, где собираетесь использовать или выводить давление.
понятно, спасибо. это вывод в паскалях, а как поправить формулу в атмосферы?
Домножить на коэффициент.
Если справочник не обманывает то 1МПа=9,86923Атм
pressure = (dev["wb-adc/A1"]-0.5)*0.3*9.86923;// Atm
или
pressure = (dev["wb-adc/A1"]-0.5)*2.960769;// Atm
огромное спасибо. будем тестить)))
Добрый день. Подскажите, как создать виртуальное устройство с показателем давления с этого датчика.
Добрый день.
Тут нужно как виртуальное устрйоство так и правило которое будет его менять.
В общем виде будет так:
//05_03_test_01.js
defineVirtualDevice("pressure", {
title: "pressure",
cells: {
"Pressure sensor": {
type: "value",
value: 0,
readonly: true
},
}
});
defineRule("pressureChange", {
whenChanged: "wb-adc/A1",
then: function (newValue, devName, cellName) {
dev["pressure"]["Pressure sensor"] = (newValue-0.5)*2.960769; //устанавливаем виртуальное устройство, сразу переводя в атмосферы.
}
});
defineVirtualDevice(“pressure”, {
title: “Давление”,
cells: {
“Pressure sensor”: {
type: “value”,
value: 0,
readonly: true
},
}
});
defineRule(“pressureChange”, {
whenChanged: “wb-adc/Vin”,
then: function (newValue, devName, cellName) {
dev[“pressure”][“Pressure sensor”] = (dev[“wb-adc/A1”]-0.5)*2.960769; //устанавливаем виртуальное устройство, сразу переводя в атмосферы.
}
});
Правильно поправил, а то показывало что то не то. И еще как сделать округление?
если пытаюсь по русски назвать, то выходит 0
на русский поменял, там еще ниже надо было поменять. а вот с округлением где дописать?
Надо исправить имя устройства. У меня было
whenChanged: “wb-adc/Vin”,
для примера.
В вашем случае надо
whenChanged: "wb-adc/A1",
Например: Числа
в какое место скприпта и что вставить не могу понять для округления до десятых. вставляю у меня ошибки все идут
Предполагаю что строку
dev["pressure"]["Pressure sensor"] = (newValue-0.5)*2.960769; //устанавливаем виртуальное устройство, сразу переводя в атмосферы.
следует записать так:
dev["pressure"]["Pressure sensor"] = Number(((newValue-0.5)*2.960769).toFixed(2))
Ну и все ж советую - прочитайте учебник Основы JavaScript хотя бы бегло, все ж типы и их преобразования - это база, без ее понимания не получится.
Очень сложно понять по описанию, без кода и сообщений…
спасибо огромное, все получилось.
Эта тема была автоматически закрыта через 7 дней после последнего ответа. В ней больше нельзя отвечать.