• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Нужна помощь Метеостанция на ESP8266 и BME280

Zola

New member
Добрый день, по традиции я нуб в микроэлектронике. Увидел проект по создании метеостанции с отправкой на народный монитор. Прикупил что надо но вот с датчиком BME280 немного пролетел,
приобрел более навороченый. По этому не могу разобраться как скорректировать код под новый датчик. Прошу помощи у знатоков.

Вот код:

bme280.init(3,4)--SDA,SCL pin--выводы для подключения датчика
function readData()
P, T = bme280.baro()
H, T = bme280.humi()
print("PRESSURE=".. P/1000*0.75)--давление * 0.75006375541921
print("TEMPERATURE=".. T/100)--температура
print("HUMIDITY=".. H/1000)--влажность
end

function sendData()
sock=net.createConnection(net.TCP, false)
sock:connect(8283,'narodmon.ru')
sock:eek:n("connection",function(sock, payload)
local DEVICE_MAC = "84-EF-18-EE-91-1B"--изменить на свои
local SENSOR_MAC_1 = "Температура"--изменить насвои
local SENSOR_MAC_2 = "Давление"--изменить на свои
local SENSOR_MAC_3 = "Влажность"--изменить на свои
readData()
sock:send("#"..DEVICE_MAC.."\n#"..SENSOR_MAC_1.."#"..(T/100).."\n#"..SENSOR_MAC_2.."#"..(P/1000*0.75).."\n#"..SENSOR_MAC_3.."#"..(H/1000).."\n##")
end)

sock:eek:n("receive", function(sock, answer)
print('Narodmon answered '..answer)
sock:close()
end)

end
sendData()
tmr.alarm(0, 360000, 1, function() sendData() end )
=========================================================================


Мой датчик
GY-BME280 BME280 I2C SP (Отмечен красным)
esp8266
=============================
Датчик который прописан в коде (Отмечен зеленым )
GY-BME280 I2C SPI 1,8-5 В

Видео проекта

 

nikolz

Well-known member
как говорят в одессе -найдите разницу.
Вы нашли в чем она?
 

Zola

New member
т е датчик работает но есть доп функции которые не реализованы в программе. Вы хотите чтобы вам это кто-нибудь реализовал. Верно?
Данные этих датчиков не выводятся. Прошивал через ESPlorer. Вот через arduino ide данные выводятся. мне надо наладить вывод и отправку данных на народный монитор.
Показание данных работы кода IDE.




Вот IDE код.
=======================
#include <Wire.h>
#include <Adafruit_Sensor.h>
#include <Adafruit_BME280.h>

/*#include <SPI.h>
#define BME_SCK 18
#define BME_MISO 19
#define BME_MOSI 23
#define BME_CS 5*/

#define SEALEVELPRESSURE_HPA (1013.25)

Adafruit_BME280 bme; // I2C
//Adafruit_BME280 bme(BME_CS); // hardware SPI
//Adafruit_BME280 bme(BME_CS, BME_MOSI, BME_MISO, BME_SCK); // software SPI

unsigned long delayTime;

void setup() {
Serial.begin(9600);
Serial.println(F("BME280 test"));

bool status;

// default settings
// (you can also pass in a Wire library object like &Wire2)
status = bme.begin(0x76);
if (!status) {
Serial.println("Could not find a valid BME280 sensor, check wiring!");
while (1);
}

Serial.println("-- Default Test --");
delayTime = 20000;

Serial.println();
}


void loop() {
printValues();
delay(delayTime);
}


void printValues() {
Serial.print("Температура = ");
Serial.print(bme.readTemperature());
Serial.println(" *C");

Serial.print("Давление = ");

Serial.print(bme.readPressure() / 100.0F);
Serial.println(" hPa");

Serial.print("Высота над уровнем моря = ");
Serial.print(bme.readAltitude(SEALEVELPRESSURE_HPA));
Serial.println(" m");

Serial.print("Влажность = ");
Serial.print(bme.readHumidity());
Serial.println(" %");

Serial.println();
}
 

nikolz

Well-known member
Не понятно в чем вам нужна помощь?
Написать для вас программу на халяву?
Вы то что сами сделали и где у вас техническая проблема или не понимание возникло.
------------------
"Длительное употребление халявы полностью отключает мозги"
 

Zola

New member
"Длительное употребление халявы полностью отключает мозги"[/QUOTE]

Форумы как вид общения практически вымерли, но неудовлетворенные умники так и остались.... Ничего не меняется.
 

nikolz

Well-known member
"Длительное употребление халявы полностью отключает мозги"
Форумы как вид общения практически вымерли, но неудовлетворенные умники так и остались.... Ничего не меняется.
это точно.
лишь желающих въехать в рай на чужом горбу все больше и больше. Халява действует.
 

Zola

New member
это точно.
лишь желающих въехать в рай на чужом горбу все больше и больше. Халява действует.
Все материалы которые опубликованы в инете прежде всего предназначены для общего пользования. Кражи интелектуальной собственности нет. Кто то умеет программировать а для кого то это не увлечение а тяжелый горб. Халявы давно нет.
 

Zola

New member
Спасибо, есть примеры кода для отправки на сайт. Буду курить.
 

CodeNameHawk

Moderator
Команда форума
Форумы как вид общения практически вымерли, но неудовлетворенные умники так и остались.... Ничего не меняется.
Пропали люди, которые могут понять тупые вопросы.

Мой датчик
GY-BME280 BME280 I2C SP (Отмечен красным)
esp8266
=============================
Датчик который прописан в коде (Отмечен зеленым )
GY-BME280 I2C SPI 1,8-5 В
Одинаковые датчики, распаянные на разных платах.
Прикупил что надо но вот с датчиком BME280 немного пролетел,
приобрел более навороченый.
И теперь угадайте почему вы считаете, что один другого навороченнее.
 

CodeNameHawk

Moderator
Команда форума
Бывает такой датчик BMP280, для него нужно другую библиотеку и всего то, а если в луа то другую прошивку луа.
 

Alegz

New member
Данные этих датчиков не выводятся. Прошивал через ESPlorer. Вот через arduino ide данные выводятся. мне надо наладить вывод и отправку данных на народный монитор.
Если данные датчика выводятся через IDE, но не выводятся через сайт, вполне логично предположить, что датчик тут не виноват. Ищите косяк в паролях доступа на мониторинг, протоколах передачи показаний и т.д.


Показание данных работы кода IDE.
Высота над уровнем моря "минус 41 метр" - не слишком низко?
 

Zola

New member
Если данные датчика выводятся через IDE, но не выводятся через сайт, вполне логично предположить, что датчик тут не виноват. Ищите косяк в паролях доступа на мониторинг, протоколах передачи показаний и т.д.




Высота над уровнем моря "минус 41 метр" - не слишком низко?
Купил другой датчик BME180, на выходных подключу. И проверю еще раз.
 
Сверху Снизу