модуль подключил, только потому что предыдущие попытки запустить AMS через китайские Arduino mega и ethernet-shield завершилсь провалом со всеми sd/microsd картами. После подключения модюля - Сервер запустился, а до этого - все провально..Alex писал(а):Ну один датчик должен работать. Попробуйте залить более старую версию АМС, там температурный модуль другой. Если не заработает, то я бы сказал, что дело либо в подключении, либо в отклонениях от стандартной конфигурации. Кстати, а какой смысл подключать карту памяти не стандартно, а через модуль?пунк 4 не помог... не показывает ID датчиков... даже при подключении 1 датчика, вот начало лога:
Arduino Mega Server
Модератор: Alex
Re: Arduino Mega Server
-
- Сообщения: 2357
- Зарегистрирован: Пт апр 20, 2012 12:53 pm
- Благодарил (а): 42 раза
- Поблагодарили: 262 раза
Re: Arduino Mega Server
Я не знаю что, но что-то у вас там совсем не в порядке. Я использую китайское железо и не испытываю никаких проблем. Все платы (если они исправны) уже 2-3 года прекрасно работают совместно, проблемы были только с платами более раннего производства.модуль подключил, только потому что предыдущие попытки запустить AMS через китайские Arduino mega и ethernet-shield завершилсь провалом со всеми sd/microsd картами.
Возможно, одна из плат у вас попросту неисправна. На исправных платах дистрибутив должен работать 100%.
-
- Сообщения: 142
- Зарегистрирован: Вт ноя 25, 2014 2:06 pm
- Благодарил (а): 33 раза
- Поблагодарили: 0
Re: Arduino Mega Server
У меня при подключении 4 датчика прога ругается на память, что это может быть ?ledmax писал(а):Удалось понять причину некорректной работы считывания данных с множества температурных датчиков (5, 10, итд..)
Проблема в том, что серийники должны быть прописаны в точно такой же последовательности, как они определись при первом опросе шины.Код: Выделить всё
{40,255,120,99,104,20,2}, // STR {40,255,161,39,104,20,3}, // SRV {40,255,171,39,104,20,3}, // WRM {40,255,131,39,104,20,3}, // temp1
Если использовать много датчиков, то получается ерунда - сложно распределить их в нужно последовательности, а что ещё хуже - они могут определиться в другом порядке.
Код: Выделить всё
Sketch uses 64 006 bytes (25%) of program storage space. Maximum is 253 952 bytes.
Global variables use 6 157 bytes (75%) of dynamic memory, leaving 2 035 bytes for local variables. Maximum is 8 192 bytes.
Low memory available, stability problems may occur.
Windows 10 + Raspberry Pi3 + ESP8266
-
- Сообщения: 113
- Зарегистрирован: Пн окт 19, 2015 8:27 am
- Благодарил (а): 9 раз
- Поблагодарили: 21 раз
Re: Arduino Mega Server
1. Где ошибка? Я вижу только предупреждение!
2. id у 3-го и 4-го датчика одинаковые
2. id у 3-го и 4-го датчика одинаковые
-
- Сообщения: 23
- Зарегистрирован: Пт сен 11, 2015 9:05 am
- Благодарил (а): 2 раза
- Поблагодарили: 3 раза
Re: Arduino Mega Server
Тоже такая же фигня была и запускалось после подключения модуля SD.модуль подключил, только потому что предыдущие попытки запустить AMS через китайские Arduino mega и ethernet-shield завершилсь провалом со всеми sd/microsd картами. После подключения модюля - Сервер запустился, а до этого - все провально..
Выдавало такую же ощибку
Проблема оказалась в непропае разъёма кары на плате ethernet. Прогрел феном и все заработало.Init SD card... failed
-
- Сообщения: 142
- Зарегистрирован: Вт ноя 25, 2014 2:06 pm
- Благодарил (а): 33 раза
- Поблагодарили: 0
Re: Arduino Mega Server
1 Просто интересно на что это предупреждения влияетSPbDima писал(а):1. Где ошибка? Я вижу только предупреждение!
2. id у 3-го и 4-го датчика одинаковые
2 это для примера поставил так то они были разные и эта же ошибка
и бывает что если один датчик отсоединил( например поломался) то все датчики перестают передавать данные
Windows 10 + Raspberry Pi3 + ESP8266
-
- Сообщения: 2357
- Зарегистрирован: Пт апр 20, 2012 12:53 pm
- Благодарил (а): 42 раза
- Поблагодарили: 262 раза
Re: Arduino Mega Server
Всё правильно, память используется под завязку и любые телодвижения могут приводить к её нехватке.У меня при подключении 4 датчика прога ругается на память, что это может быть ?
Вот-вот и я об этом же.Проблема оказалась в непропае разъёма кары на плате ethernet. Прогрел феном и все заработало.
Компилятор догадывается, что в процессе исполнения стек встретится с кучей и начнутся любые непредсказуемые глюки.Просто интересно на что это предупреждения влияет
Так и должно быть. Сейчас система рассчитана на точное совпадение ID датчиков и их последовательности (объявления и определения).бывает что если один датчик отсоединил( например поломался) то все датчики перестают передавать данные
-
- Сообщения: 142
- Зарегистрирован: Вт ноя 25, 2014 2:06 pm
- Благодарил (а): 33 раза
- Поблагодарили: 0
Re: Arduino Mega Server
Подключил 4 датчика, он все увидел но все равно передает температуру первых трех и все
в чем может быть ошибка или больше 3 шт не будет передаваться ?
Код: Выделить всё
MEGA started...
Init SD card... OK
index.htm... found
Waiting for NTP sync...
Transmit NTP request
No NTP response
Connect to MajorDoMo... OK
Init SD card... OK
1970-01-01 00:00:02 Modul Temperature Init START
1970-01-01 00:00:02 Parasite power ON
1970-01-01 00:00:02 Found 4 devices
1970-01-01 00:00:02 #0: 40 176 100 14 2 0 0 (WRM)
1970-01-01 00:00:02 #1: 40 52 86 24 1 0 0 (U2)
1970-01-01 00:00:02 #2: 40 114 253 23 1 0 0 (STR)
1970-01-01 00:00:02 #3: 40 234 65 114 2 0 0 (No1)
1970-01-01 00:00:03 Modul Temperature Init DONE
1970-01-01 00:00:04 ;Open!
1970-01-01 00:00:04 GET /objects/?object=contHOM&op=m&m=update&v=1
1970-01-01 00:00:04 +Norm
1970-01-01 00:00:04 GET /objects/?object=contCLO&op=m&m=update&v=0
1970-01-01 00:00:05 WRM: 21.37
1970-01-01 00:00:05 GET /objects/?object=WRM&op=m&m=update&v=21.37 HTTP/1.0
1970-01-01 00:00:05 U2: 21.31
1970-01-01 00:00:05 GET /objects/?object=U2&op=m&m=update&v=21.31 HTTP/1.0
1970-01-01 00:00:05 STR: 21.31
1970-01-01 00:00:05 GET /objects/?object=STR&op=m&m=update&v=21.31 HTTP/1.0
1970-01-01 00:00:06 Sensor WRM health: 100%
1970-01-01 00:00:06 Sensor U2 health: 100%
1970-01-01 00:00:06 Sensor STR health: 100%
1970-01-01 00:00:06 Sensor No1 health: 100%
1970-01-01 00:00:06 Modil Temperature Health: 100%
1970-01-01 00:00:07 WRM: 21.44
1970-01-01 00:00:07 GET /objects/?object=WRM&op=m&m=update&v=21.43 HTTP/1.0
1970-01-01 00:00:08 U2: 21.31
1970-01-01 00:00:08 GET /objects/?object=U2&op=m&m=update&v=21.31 HTTP/1.0
1970-01-01 00:00:08 STR: 21.31
1970-01-01 00:00:08 GET /objects/?object=STR&op=m&m=update&v=21.31 HTTP/1.0
Windows 10 + Raspberry Pi3 + ESP8266
-
- Сообщения: 2357
- Зарегистрирован: Пт апр 20, 2012 12:53 pm
- Благодарил (а): 42 раза
- Поблагодарили: 262 раза
Re: Arduino Mega Server
Нет, передаёт он в автоматическом режиме и ему всё равно сколько датчиков. Проблему нужно искать в определении количества датчиков, типа
или
или вот здесь
Код: Выделить всё
byte const MAX_TEMP_SENSORS = 3;
Код: Выделить всё
char objSens[MAX_TEMP_SENSORS][12] = {"tempSTR", "tempHOM", "tempWRM"};
// Sensors ID's
byte idTempDat[MAX_TEMP_SENSORS][MAX_ID_DIGITS] = {
{40, 240, 72, 81, 3, 0, 0}, // STR
{40, 221, 16, 81, 3, 0, 0}, // SRV
{40, 23, 98, 87, 3, 0, 0}, // WRM
};
Код: Выделить всё
getTemperature(0); // STR
getTemperature(1); // HOM (SRV)
getTemperature(2); // WRM
-
- Сообщения: 142
- Зарегистрирован: Вт ноя 25, 2014 2:06 pm
- Благодарил (а): 33 раза
- Поблагодарили: 0
Re: Arduino Mega Server
спасибо за ответ, вот тут я и не менялAlex писал(а):Нет, передаёт он в автоматическом режиме и ему всё равно сколько датчиков. Проблему нужно искать в определении количества датчиков, типа
или вот здесь
Код: Выделить всё
getTemperature(0); // STR getTemperature(1); // HOM (SRV) getTemperature(2); // WRM
Windows 10 + Raspberry Pi3 + ESP8266