27 МОСКОВСКАЯ ВСТРЕЧА
Форум самогонщиков Сайт Барахолка Магазин 27 МОСКОВСКАЯ ВСТРЕЧА

Автоматика с веб управлением на основе esp32 и pzem

Форум самогонщиков Автоматика
1 ... 9 10 11 12 13 14 15 ... 60 12
zapnet Магистр Кострома 268 102
Отв.220  02 Дек. 19, 13:59
Без логов тяжелоBrc, 02 Дек. 19, 13:52
Вечером воспроизведу и выложу.

Добавлено через 1дн. 1ч. 49мин.:

Скрытый текстCC build/main/hd_http.o
C:/msys32/home/Andrei/esp/esp32_hd/main/hd_http.c: In function 'cgiFwUpload':
C:/msys32/home/Andrei/esp/esp32_hd/main/hd_http.c:1639:17: error: unknown type name 'esp_app_desc_t'
esp_app_desc_t new_app_info;
^
C:/msys32/home/Andrei/esp/esp32_hd/main/hd_http.c:1640:54: error: 'esp_image_header_t' undeclared (first use in this function)
if (connData->post->buffLen > sizeof(esp_image_header_t) + sizeof(esp_image_segment_header_t) + sizeof(esp_app_desc_t)) {
^
C:/msys32/home/Andrei/esp/esp32_hd/main/hd_http.c:1640:54: note: each undeclared identifier is reported only once for each function it appears in
C:/msys32/home/Andrei/esp/esp32_hd/main/hd_http.c:1640:83: error: 'esp_image_segment_header_t' undeclared (first use in this function)
if (connData->post->buffLen > sizeof(esp_image_header_t) + sizeof(esp_image_segment_header_t) + sizeof(esp_app_desc_t)) {
^
C:/msys32/home/Andrei/esp/esp32_hd/main/hd_http.c:1640:120: error: 'esp_app_desc_t' undeclared (first use in this function)
if (connData->post->buffLen > sizeof(esp_image_header_t) + sizeof(esp_image_segment_header_t) + sizeof(esp_app_desc_t)) {
^
In file included from C:/msys32/home/Andrei/esp/esp32_hd/main/hd_http.c:33:0:
C:/msys32/home/Andrei/esp/esp32_hd/main/hd_http.c:1643:75: error: request for member 'version' in something not a structure or union
ESP_LOGD(TAG, "New firmware version: %s", new_app_info.version);
^
C:/msys32/home/Andrei/esp/esp-idf/components/log/include/esp_log.h:299:137: note: in definition of macro 'ESP_LOG_LEVEL'
if (level==ESP_LOG_ERROR )          { esp_log_write(ESP_LOG_ERROR,      tag, LOG_FORMAT(E, format), esp_log_timestamp(), tag, ##__VA_ARGS__); } \
^
C:/msys32/home/Andrei/esp/esp-idf/components/log/include/esp_log.h:268:38: note: in expansion of macro 'ESP_LOG_LEVEL_LOCAL'
#define ESP_LOGD( tag, format, ... ) ESP_LOG_LEVEL_LOCAL(ESP_LOG_DEBUG,  tag, format, ##__VA_ARGS__)
^
C:/msys32/home/Andrei/esp/esp32_hd/main/hd_http.c:1643:21: note: in expansion of macro 'ESP_LOGD'
ESP_LOGD(TAG, "New firmware version: %s", new_app_info.version);
^
C:/msys32/home/Andrei/esp/esp32_hd/main/hd_http.c:1643:75: error: request for member 'version' in something not a structure or union
ESP_LOGD(TAG, "New firmware version: %s", new_app_info.version);
^
C:/msys32/home/Andrei/esp/esp-idf/components/log/include/esp_log.h:300:137: note: in definition of macro 'ESP_LOG_LEVEL'
else if (level==ESP_LOG_WARN )      { esp_log_write(ESP_LOG_WARN,      tag, LOG_FORMAT(W, format), esp_log_timestamp(), tag, ##__VA_ARGS__); } \
^
C:/msys32/home/Andrei/esp/esp-idf/components/log/include/esp_log.h:268:38: note: in expansion of macro 'ESP_LOG_LEVEL_LOCAL'
#define ESP_LOGD( tag, format, ... ) ESP_LOG_LEVEL_LOCAL(ESP_LOG_DEBUG,  tag, format, ##__VA_ARGS__)
^
C:/msys32/home/Andrei/esp/esp32_hd/main/hd_http.c:1643:21: note: in expansion of macro 'ESP_LOGD'
ESP_LOGD(TAG, "New firmware version: %s", new_app_info.version);
^
C:/msys32/home/Andrei/esp/esp32_hd/main/hd_http.c:1643:75: error: request for member 'version' in something not a structure or union
ESP_LOGD(TAG, "New firmware version: %s", new_app_info.version);
^
C:/msys32/home/Andrei/esp/esp-idf/components/log/include/esp_log.h:301:137: note: in definition of macro 'ESP_LOG_LEVEL'
else if (level==ESP_LOG_DEBUG )    { esp_log_write(ESP_LOG_DEBUG,      tag, LOG_FORMAT(D, format), esp_log_timestamp(), tag, ##__VA_ARGS__); } \
^
C:/msys32/home/Andrei/esp/esp-idf/components/log/include/esp_log.h:268:38: note: in expansion of macro 'ESP_LOG_LEVEL_LOCAL'
#define ESP_LOGD( tag, format, ... ) ESP_LOG_LEVEL_LOCAL(ESP_LOG_DEBUG,  tag, format, ##__VA_ARGS__)
^
C:/msys32/home/Andrei/esp/esp32_hd/main/hd_http.c:1643:21: note: in expansion of macro 'ESP_LOGD'
ESP_LOGD(TAG, "New firmware version: %s", new_app_info.version);
^
C:/msys32/home/Andrei/esp/esp32_hd/main/hd_http.c:1643:75: error: request for member 'version' in something not a structure or union
ESP_LOGD(TAG, "New firmware version: %s", new_app_info.version);
^
C:/msys32/home/Andrei/esp/esp-idf/components/log/include/esp_log.h:302:137: note: in definition of macro 'ESP_LOG_LEVEL'
else if (level==ESP_LOG_VERBOSE )  { esp_log_write(ESP_LOG_VERBOSE,    tag, LOG_FORMAT(V, format), esp_log_timestamp(), tag, ##__VA_ARGS__); } \
^
C:/msys32/home/Andrei/esp/esp-idf/components/log/include/esp_log.h:268:38: note: in expansion of macro 'ESP_LOG_LEVEL_LOCAL'
#define ESP_LOGD( tag, format, ... ) ESP_LOG_LEVEL_LOCAL(ESP_LOG_DEBUG,  tag, format, ##__VA_ARGS__)
^
C:/msys32/home/Andrei/esp/esp32_hd/main/hd_http.c:1643:21: note: in expansion of macro 'ESP_LOGD'
ESP_LOGD(TAG, "New firmware version: %s", new_app_info.version);
^
C:/msys32/home/Andrei/esp/esp32_hd/main/hd_http.c:1643:75: error: request for member 'version' in something not a structure or union
ESP_LOGD(TAG, "New firmware version: %s", new_app_info.version);
^
C:/msys32/home/Andrei/esp/esp-idf/components/log/include/esp_log.h:303:137: note: in definition of macro 'ESP_LOG_LEVEL'
else                                { esp_log_write(ESP_LOG_INFO,      tag, LOG_FORMAT(I, format), esp_log_timestamp(), tag, ##__VA_ARGS__); } \
^
C:/msys32/home/Andrei/esp/esp-idf/components/log/include/esp_log.h:268:38: note: in expansion of macro 'ESP_LOG_LEVEL_LOCAL'
#define ESP_LOGD( tag, format, ... ) ESP_LOG_LEVEL_LOCAL(ESP_LOG_DEBUG,  tag, format, ##__VA_ARGS__)
^
C:/msys32/home/Andrei/esp/esp32_hd/main/hd_http.c:1643:21: note: in expansion of macro 'ESP_LOGD'
ESP_LOGD(TAG, "New firmware version: %s", new_app_info.version);
^
C:/msys32/home/Andrei/esp/esp32_hd/main/hd_http.c:1645:36: error: expected ';' before 'running_app_info'
esp_app_desc_t running_app_info;
^
C:/msys32/home/Andrei/esp/esp32_hd/main/hd_http.c:1646:25: error: implicit declaration of function 'esp_ota_get_partition_description' [-Werror=implicit-function-declaration]
if (esp_ota_get_partition_description(running, &running_app_info) == ESP_OK) {
^
C:/msys32/home/Andrei/esp/esp32_hd/main/hd_http.c:1646:69: error: 'running_app_info' undeclared (first use in this function)
if (esp_ota_get_partition_description(running, &running_app_info) == ESP_OK) {
^
C:/msys32/home/Andrei/esp/esp32_hd/main/hd_http.c:1650:63: error: implicit declaration of function 'esp_ota_get_last_invalid_partition' [-Werror=implicit-function-declaration]
const esp_partition_t* last_invalid_app = esp_ota_get_last_invalid_partition();
^
C:/msys32/home/Andrei/esp/esp32_hd/main/hd_http.c:1650:63: warning: initialization makes pointer from integer without a cast [-Wint-conversion]
C:/msys32/home/Andrei/esp/esp32_hd/main/hd_http.c:1651:36: error: expected ';' before 'invalid_app_info'
esp_app_desc_t invalid_app_info;
^
C:/msys32/home/Andrei/esp/esp32_hd/main/hd_http.c:1652:78: error: 'invalid_app_info' undeclared (first use in this function)
if (esp_ota_get_partition_description(last_invalid_app, &invalid_app_info) == ESP_OK) {
^
C:/msys32/home/Andrei/esp/esp32_hd/main/hd_http.c:1658:74: error: request for member 'version' in something not a structure or union
if (memcmp(invalid_app_info.version, new_app_info.version, sizeof(new_app_info.version)) == 0) {
^
C:/msys32/home/Andrei/esp/esp32_hd/main/hd_http.c:1658:103: error: request for member 'version' in something not a structure or union
if (memcmp(invalid_app_info.version, new_app_info.version, sizeof(new_app_info.version)) == 0) {
^
C:/msys32/home/Andrei/esp/esp32_hd/main/hd_http.c:1666:44: error: request for member 'version' in something not a structure or union
if (memcmp(new_app_info.version, running_app_info.version, sizeof(new_app_info.version)) == 0) {
^
C:/msys32/home/Andrei/esp/esp32_hd/main/hd_http.c:1666:99: error: request for member 'version' in something not a structure or union
if (memcmp(new_app_info.version, running_app_info.version, sizeof(new_app_info.version)) == 0) {
^
cc1.exe: some warnings being treated as errors
make[1]: *** [/home/Andrei/esp/esp-idf/make/component_wrapper.mk:286: hd_http.o] Ошибка 1
make: *** [C:/msys32/home/Andrei/esp/esp-idf/make/project.mk:530: component-main-build] Ошибка 2

Andrei@PC MINGW32 ~/esp/esp32_hd

Brc Студент Gomel' 16 9
Отв.221  03 Дек. 19, 17:31
возможно старые файлы не почистили.
make clean
make
потом лог.
zapnet Магистр Кострома 268 102
Отв.222  03 Дек. 19, 17:33, через 3 мин
так и делал..
make clean
make
потом лог.
Brc Студент Gomel' 16 9
Отв.223  03 Дек. 19, 18:14, через 41 мин
Значит у нас разные версии esp idf.
Я собирал с последней.
Если правильно помню, изменили структуру ledc_timer_config_t
(надо поправить в hd_main.c .duty_resolution).

Добавлено через 4мин.:

и еще что-то там с дефайнами из sdkconfig
6940 Студент Тольятти 31 1
Отв.224  03 Дек. 19, 18:21, через 7 мин
Добрый вечер коллеги, в помогите разобраться, в выходные провёл первую в жизни ректификацию. Потихоньку приходит осмысление происходившего... Не совсем понял с отбором тела, как правильно настроить отбор? Как понял Нужно стремиться к определённому отбору в Л/час, изменяя период и %ШИМ соответственно вопрос какие начальные настройки порекомендуете? Нужно ли ограничивать проходное сечение клапана отбора тела? При настройках по умолчанию первая рестабилизация колоны произошла после отбора примерно 30% АС
zapnet Магистр Кострома 268 102
Отв.225  03 Дек. 19, 21:49
Не совсем понял с отбором тела6940, 03 Дек. 19, 18:21
Зависит от подаваемой мощности.Клапан нужно калибровать.
6940 Студент Тольятти 31 1
Отв.226  03 Дек. 19, 23:08
Да, спасибо, объяснили, что пропускную способность клапана нужно откалибровать под планируемую скорость отбора тела )
Crossraccoon Студент Екатеринбург 44 11
Отв.227  14 Дек. 19, 11:13
извиняюсь, может было в теме, я мимоходом пробегаю
недавно мне приехал пзем версии 3,0
они поменяли схему работы, на гитхабе новая библиотека лежит именно по 3 версии

ЗЫ соре, не заметил Улыбающийся
сообщение удалено
zapnet Магистр Кострома 268 102
Отв.228  18 Дек. 19, 21:58
Значит у нас разные версии esp idf.Brc, 03 Дек. 19, 18:14
Обновил.Заработало.Спасибо.
George_78 Бакалавр Верный 57 14
Отв.229  19 Дек. 19, 07:40
Добрый день, коллеги!
Поделитесь, пожалуйста, опытом как впаять чип BMP180 (не плату в сборе) на штатное место на плате. Это вообще возможно вручную сделать?
zapnet Магистр Кострома 268 102
Отв.230  19 Дек. 19, 09:29
вручную сделатьGeorge_78, 19 Дек. 19, 07:40
ковырялся долго когда собирал автоматику,так и не смог,забил. Только фен я думаю.Кажется есть на али готовый модуль типа https://mcustore.ru/...LcaAnJXEALw_wcB   думаю можно поставить.

Добавлено через 1мин.:

Контакты для подключения

VCC - питание 5V;
GND - земля (минус питания);
SCL, SDA - I2C интерфейс;

Добавлено через 9мин.:

Вопрос-- а собственно для чего его устанавливать. По памяти значения не где не выводятся..коррекция Непонимающий то же вряд ли.Задел на будущее Непонимающий
George_78 Бакалавр Верный 57 14
Отв.231  19 Дек. 19, 10:15, через 47 мин
Такой датчик в сборе тоже есть, хотелось бы поставить маленькую фитюльку аккуратно на штатное место.
Удобно видеть давление, когда при смене погоды начинает плавать температура кипения спирта, чтобы понять причину колебаний. У меня дом в горах и это особенно заметно, когда температура кипения воды 96,6С, а спирта 75,6С.
01.jpg
01.jpg Автоматика с веб управлением на основе esp32 и pzem. Автоматика.
zapnet Магистр Кострома 268 102
Отв.232  19 Дек. 19, 11:00, через 45 мин
чтобы понять причину колебанийGeorge_78, 19 Дек. 19, 10:15
Согласен нужная фича,но в нашем случае как получать данные Непонимающий или все реализовано ?
Brc Студент Gomel' 16 9
Отв.233  19 Дек. 19, 11:43, через 44 мин
или все реализовано ?zapnet, 19 Дек. 19, 11:00
float getTemperature(void);
long readPressure(void);
zapnet Магистр Кострома 268 102
Отв.234  19 Дек. 19, 11:48, через 6 мин
Brc, переменные.. а вывод то их где  
Автоматика с веб управлением на основе esp32 и pzem
Автоматика с веб управлением на основе esp32 и pzem. Автоматика.
туплю объясните или самому дописывать.
Brc Студент Gomel' 16 9
Отв.235  19 Дек. 19, 12:03, через 16 мин
Самому.
George_78 Бакалавр Верный 57 14
Отв.236  20 Дек. 19, 05:53
или все реализовано ?zapnet, 19 Дек. 19, 11:00
Действительно не заметил, что девайс есть, а вывод с него пока отсутствует.
Наверное было бы правильным выводить расчётную температуру кипения спирта на экран в зависимости от показаний датчика давления.
eson Специалист Rostov 154 168
Отв.237  20 Дек. 19, 06:38, через 45 мин
Поделитесь, пожалуйста, опытом как впаять чип BMP180George_78, 19 Дек. 19, 07:40
Жирно лудишь площадки под BMP180, прикладываешь  чип на место и паяльником с тонким жалом прогреваешь по торцам чип.
ys1797 Доцент Санкт-Петербург 1K 339
Отв.238  20 Дек. 19, 15:45
Проще зайти к ремонтникам сотовых. Они думаю незадорого дунут феном в это место Улыбающийся
сообщения удалены (2)
nic2015 Магистр Феодосия 219 56
Отв.239  26 Дек. 19, 11:02
Непонятно как экран подключать. В википедии так:
MOSI: SIMO, SDO (на устройстве), DO, DON, SO, MRSR;
MISO: SOMI, SDI (на устройстве), DI, DIN, SI, MTST;
SCLK: SCK, CLK, SPC (SPI serial port clock);
SS: nCS, CS, CSB, CSN, nSS, STE, SYNC.
А на экране DIN- MOSI.
Юрий можно поподробнее этот момент. 4-wire SPI - CS,D/S,MOSI,sclk. На схеме 5 линий- Сlk,ds,cs,miso,mosi.

Добавлено через 35мин.:

Вот на экране контакты.
IMG_20191226_113548.jpg
IMG_20191226_113548.jpg Автоматика с веб управлением на основе esp32 и pzem. Автоматика.