Arduino Mega Server

Модератор: Alex

Allar
Сообщения: 35
Зарегистрирован: Пн авг 22, 2016 9:22 am

Re: Arduino Mega Server

Сообщение Allar »

Планируется ли работа с датчиками температуры? Графики? Архивирование данных? Задание времени архивирования, скачивание архива.
Alex
Сообщения: 2357
Зарегистрирован: Пт апр 20, 2012 12:53 pm

Re: Arduino Mega Server

Сообщение Alex »

Планируется ли работа с датчиками температуры? Графики?
Это есть. Правда пока графики в реальном времени.
Архивирование данных? Задание времени архивирования, скачивание архива.
Сохранение статистики сенсоров на карту памяти планируется, но на всё времени не хватает. Но это могут реализовать заинтересованные энтузиасты самостоятельно.
MadGear
Сообщения: 6
Зарегистрирован: Пт июл 03, 2015 8:10 am

Re: Arduino Mega Server

Сообщение MadGear »

Народ, подскажите пожалуйста, куда копать?
Исходные данные: Arduino Mega, Ethernet Shield (w5100).
На SD карту распаковал все, что было в директории microSD.
Запускаю Adruino IDE (версия 1.6.5), запускаю проверку Arduino Mega Server.h и ловлю такую ошибку:
(ошибка в модуле servers)

server.ino: In function 'void serverWorks()':
server:207: error: 'class EthernetServer' has no member named 'available_'
'class EthernetServer' has no member named 'available_'

Относительно похожее на форуме есть, но что да как раскурить пока не могу... :(
serghei
Сообщения: 2575
Зарегистрирован: Пт ноя 06, 2015 10:22 am
Откуда: Кишинёв

Re: Arduino Mega Server

Сообщение serghei »

А библиотеки правильно подключили? Можете просто заменить родную и подставить из дистрибутива. И какая плата и версия АМС ?
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
MadGear
Сообщения: 6
Зарегистрирован: Пт июл 03, 2015 8:10 am

Re: Arduino Mega Server

Сообщение MadGear »

serghei писал(а):А библиотеки правильно подключили? Можете просто заменить родную и подставить из дистрибутива. И какая плата и версия АМС ?
только что заменил библиотеку Ethernet (менял тут-> C:\Program Files (x86)\Arduino\libraries) на ту, что шла в комплекте с AMS (AMS\Sketches\ams\Arduino\libraries)
Ошибка поменялась:
void serverWorks() {
for (int sock = 0; sock < MAX_SOCK_NUM - freeSockets; sock++) {
EthernetClient sclient = server.available_(sock); << тут подсветка синтаксиса
serverWorks2(sclient);
}
Ошибка:
SPOILERSPOILER_SHOW
server.ino: In function 'void serverWorks()':
server:207: error: 'class EthernetServer' has no member named 'available_'
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at org.fife.ui.rsyntaxtextarea.DefaultTokenPainter.paintImpl(DefaultTokenPainter.java:106)
at org.fife.ui.rsyntaxtextarea.DefaultTokenPainter.paint(DefaultTokenPainter.java:58)
at org.fife.ui.rsyntaxtextarea.SyntaxView.drawLine(SyntaxView.java:178)
at org.fife.ui.rsyntaxtextarea.SyntaxView.paint(SyntaxView.java:722)
at javax.swing.plaf.basic.BasicTextUI$RootView.paint(BasicTextUI.java:1434)
at javax.swing.plaf.basic.BasicTextUI.paintSafely(BasicTextUI.java:737)
at javax.swing.plaf.basic.BasicTextUI.paint(BasicTextUI.java:881)
at javax.swing.plaf.basic.BasicTextUI.update(BasicTextUI.java:860)
at org.fife.ui.rtextarea.RTextAreaBase.paintComponent(RTextAreaBase.java:719)
at org.fife.ui.rsyntaxtextarea.RSyntaxTextArea.paintComponent(RSyntaxTextArea.java:1993)
at javax.swing.JComponent.paint(JComponent.java:1056)
at javax.swing.JComponent.paintChildren(JComponent.java:889)
at javax.swing.JComponent.paint(JComponent.java:1065)
at javax.swing.JViewport.paint(JViewport.java:728)
at javax.swing.JComponent.paintChildren(JComponent.java:889)
at javax.swing.JComponent.paint(JComponent.java:1065)
at javax.swing.JComponent.paintToOffscreen(JComponent.java:5219)
at javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(RepaintManager.java:1572)
at javax.swing.RepaintManager$PaintManager.paint(RepaintManager.java:1495)
at javax.swing.RepaintManager.paint(RepaintManager.java:1265)
at javax.swing.JComponent._paintImmediately(JComponent.java:5167)
at javax.swing.JComponent.paintImmediately(JComponent.java:4978)
at javax.swing.RepaintManager$4.run(RepaintManager.java:824)
at javax.swing.RepaintManager$4.run(RepaintManager.java:807)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:75)
at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:807)
at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:782)
at javax.swing.RepaintManager.prePaintDirtyRegions(RepaintManager.java:731)
at javax.swing.RepaintManager.access$1300(RepaintManager.java:64)
at javax.swing.RepaintManager$ProcessingRunnable.run(RepaintManager.java:1720)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:756)
at java.awt.EventQueue.access$500(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.awt.EventQueue$3.run(EventQueue.java:703)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:75)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:726)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
'class EthernetServer' has no member named 'available_'
Версия AMS 0.16 (только что скачанная с сайта (брал тут: http://hi-lab.ru/arduino-mega-server/details/download)
Плата Arduino Mega 2560
serghei
Сообщения: 2575
Зарегистрирован: Пт ноя 06, 2015 10:22 am
Откуда: Кишинёв

Re: Arduino Mega Server

Сообщение serghei »

Плата какая! Случайно не Дуя? С ней повозится надо - в менеджере плат добраться до версии 1.6.8
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
MadGear
Сообщения: 6
Зарегистрирован: Пт июл 03, 2015 8:10 am

Re: Arduino Mega Server

Сообщение MadGear »

serghei писал(а):Плата какая! Случайно не Дуя? С ней повозится надо - в менеджере плат добраться до версии 1.6.8
не дуя :) Плата Мега - основная для проекта!
serghei
Сообщения: 2575
Зарегистрирован: Пт ноя 06, 2015 10:22 am
Откуда: Кишинёв

Re: Arduino Mega Server

Сообщение serghei »

Скачай 015 для Меги и просто скомпилируй без загрузки . С 016 не столкнулся, но сейчас попробую
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
MadGear
Сообщения: 6
Зарегистрирован: Пт июл 03, 2015 8:10 am

Re: Arduino Mega Server

Сообщение MadGear »

serghei писал(а):Скачай 015 для Меги и просто скомпилируй без загрузки . С 016 не столкнулся, но сейчас попробую
Сделал хуже! Удалил IDE, поставил самую последнюю версию (1.6.11)
Запускаю компиляцию Arduino mega server, а в ответ мне такое:
SPOILERSPOILER_SHOW
In file included from E:\Desktop\AMS\Sketches\ams\Arduino\arduino_mega_server\arduino_mega_server.ino:115:0:

E:\Desktop\AMS\Sketches\libraries\DS1307RTC/DS1307RTC.h:19:22: error: 'tmElements_t' has not been declared

static bool read(tmElements_t &tm);

^

E:\Desktop\AMS\Sketches\libraries\DS1307RTC/DS1307RTC.h:20:23: error: 'tmElements_t' has not been declared

static bool write(tmElements_t &tm);

^

E:\Desktop\AMS\Sketches\ams\Arduino\arduino_mega_server\rtc.ino: In function 'void rtcInit()':

rtc:10: error: 'setSyncProvider' was not declared in this scope

setSyncProvider(getNtpTime);

^

rtc:14: error: 'setSyncProvider' was not declared in this scope

setSyncProvider(RTC.get); // get time from RTC

^

E:\Desktop\AMS\Sketches\ams\Arduino\arduino_mega_server\rtc.ino: In function 'void rtcSync()':

rtc:24: error: 'setSyncProvider' was not declared in this scope

setSyncProvider(getNtpTime);

^

rtc:26: error: 'timeStatus' was not declared in this scope

if (timeStatus() != timeNotSet) {

^

rtc:26: error: 'timeNotSet' was not declared in this scope

if (timeStatus() != timeNotSet) {

^

E:\Desktop\AMS\Sketches\ams\Arduino\arduino_mega_server\rtc.ino: In function 'void serialRTC()':

rtc:42: error: 'year' was not declared in this scope

Serial.print(year());

^

rtc:44: error: 'month' was not declared in this scope

printDigits(month());

^

rtc:46: error: 'day' was not declared in this scope

printDigits(day());

^

rtc:48: error: 'hour' was not declared in this scope

printDigits(hour());

^

rtc:50: error: 'minute' was not declared in this scope

printDigits(minute());

^

rtc:52: error: 'second' was not declared in this scope

printDigits(second());

^

E:\Desktop\AMS\Sketches\ams\Arduino\arduino_mega_server\rtc.ino: In function 'void showDuration(time_t)':

rtc:73: error: 'SECS_PER_DAY' was not declared in this scope

if(duration >= SECS_PER_DAY){

^

rtc:78: error: 'SECS_PER_HOUR' was not declared in this scope

if(duration >= SECS_PER_HOUR){

^

rtc:83: error: 'SECS_PER_MIN' was not declared in this scope

if(duration >= SECS_PER_MIN){

^

E:\Desktop\AMS\Sketches\ams\Arduino\arduino_mega_server\rtc.ino: In function 'void checkEvent(time_t*)':

rtc:94: error: 'now' was not declared in this scope

time_t timeNow = now();

^

E:\Desktop\AMS\Sketches\ams\Arduino\arduino_mega_server\rtc.ino: In function 'void setNtpInterval()':

rtc:149: error: 'timeStatus' was not declared in this scope

if (timeStatus() == timeNotSet) {

^

rtc:149: error: 'timeNotSet' was not declared in this scope

if (timeStatus() == timeNotSet) {

^

rtc:150: error: 'setSyncInterval' was not declared in this scope

setSyncInterval(18);

^

E:\Desktop\AMS\Sketches\ams\Arduino\arduino_mega_server\server.ino: In function 'void serverWorks()':

server:207: error: 'class EthernetServer' has no member named 'available_'

EthernetClient sclient = server.available_(sock);

^

E:\Desktop\AMS\Sketches\ams\Arduino\arduino_mega_server\server_ajax.ino: In function 'String makeTime()':

server_ajax:226: error: 'hour' was not declared in this scope

s += makeDigits(hour());

^

server_ajax:227: error: 'second' was not declared in this scope

if (second() % 2 == 0) {s += " ";}

^

server_ajax:229: error: 'minute' was not declared in this scope

s += makeDigits(minute());

^

E:\Desktop\AMS\Sketches\ams\Arduino\arduino_mega_server\server_ajax.ino: In function 'void responseDash(EthernetClient)':

server_ajax:789: error: 'day' was not declared in this scope

s += makeTag("day", "", String(day()));

^

server_ajax:790: error: 'month' was not declared in this scope

s += makeTag("month", "", String(month()));

^

server_ajax:791: error: 'weekday' was not declared in this scope

s += makeTag("weekday", "", String(weekday()));

^

E:\Desktop\AMS\Sketches\ams\Arduino\arduino_mega_server\tntp.ino: In function 'time_t getNtpTime()':

tntp:54: error: 'setSyncInterval' was not declared in this scope

setSyncInterval(3600);

^

tntp:55: error: 'SECS_PER_HOUR' was not declared in this scope

return secsSince1900 - 2208988800UL + timeZone * SECS_PER_HOUR;

^

tntp:59: error: 'setSyncInterval' was not declared in this scope

setSyncInterval(18);

^

E:\Desktop\AMS\Sketches\ams\Arduino\arduino_mega_server\upload.ino: In function 'void uploadWorks()':

upload:160: error: 'setSyncProvider' was not declared in this scope

setSyncProvider(RTC.get);

^

upload:162: error: 'timeStatus' was not declared in this scope

if (timeStatus() != timeSet) {

^

upload:162: error: 'timeSet' was not declared in this scope

if (timeStatus() != timeSet) {

^

exit status 1
'setSyncProvider' was not declared in this scope
serghei
Сообщения: 2575
Зарегистрирован: Пт ноя 06, 2015 10:22 am
Откуда: Кишинёв

Re: Arduino Mega Server

Сообщение serghei »

Вот на каком человеческом языке надо писать в каждом втором ответе - ну не будет она компилиться ни какой другой среде , кроме 1.6.5 !!!! Не мучайте себя!
Вложения
Все работает
Все работает
1.6.5.png (50.47 КБ) 13049 просмотров
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
Ответить