0
Библиотека ни при чём, он ругается на не задекларированные функции. Странно как-то, попробуйте скачать последнюю версию IDE Arduino.
  • avatar
  • stD
0
Нет, код скопировал полностью. Функции есть, просто компилятор почему-то отказывается их понимать. Может быть с библиотекой какие-то проблемы?
  • avatar
  • potaton2
0
У меня складывается впечатление, что Вы не весь скетч скопировали, нету некоторых функций.
  • avatar
  • stD
0
Да
  • avatar
  • potaton2
0
А Вы весь скетч скопировали?
  • avatar
  • stD
0
При компиляции вашего примера возникают следующие ошибки. В чем причина?
Arduino: 1.6.11 (Windows 10), Плата:"Arduino/Genuino Uno"

A:\Мои документы\Arduino\Proverka\Proverka.ino: In function 'void setup()':

Proverka:20: error: 'clearSerialBuffer' was not declared in this scope

Proverka:22: error: 'GetResponse' was not declared in this scope

Proverka:24: error: 'connectWiFi' was not declared in this scope

A:\Мои документы\Arduino\Proverka\Proverka.ino: In function 'void loop()':

Proverka:54: error: 'clearSerialBuffer' was not declared in this scope

Proverka:69: error: 'otvet_klienty' was not declared in this scope

Proverka:73: error: 'clearBuffer' was not declared in this scope

exit status 1
'clearSerialBuffer' was not declared in this scope

Этот отчёт будет иметь больше информации с
включенной опцией Файл -> Настройки ->
"Показать подробный вывод во время компиляции"
  • avatar
  • potaton2
0
sudo /mydom/homestd /dev/ttyAMA0 57600 80 /mydom/ 0
так я правильно понял
0
Подскажите в ардуине можно использовать все 14 digital и 6 analog пинов?
Да.

И второй вопрос если я подключаю распберри к ардуине по UART то надо писать эту строчку
В статье дана ссылка.

«Уарт в Raspberry представляется как устройство /dev/ttyAMA0»
  • avatar
  • stD
0
Добрый день!
Подскажите в ардуине можно использовать все 14 digital и 6 analog пинов?
И второй вопрос если я подключаю распберри к ардуине по UART то надо писать эту строчку
sudo /mydom/homestd /dev/ttyUSB0 57600 80 /mydom/ 0 я так понял тут прописано подключение по USB
0
Файл — это да. Можно брать данные и оттуда, вот только для этих целей вовсе не обязательно использовать homestd, можно использовать cat /dev/ttyUSB0 > /tmp/arduino.dat
Я же говорю о сервере.
  • avatar
  • vashal
0
У Вас и сейчас есть файл file.db, из него и берите данные.
  • avatar
  • stD
0
Homestd тесно связан с ардуиной, он берёт/посылает из/в неё данные. Так же homestd рассчитан для отдачи файлов index.html, jquery.js и style.css, на любой другой запрос отдаст 403.
  • avatar
  • stD
0
Вопрос автору.
Если при запущенном ardunetstd отключить ардуину, терминал начинает выдавать ошибку и не прекращает при повторном подключении. Лечится это только перезапуском процесса. Как можно сделать так, чтобы при отключении ардуины, ardunetsd просто завершал свою работу?
  • avatar
  • Gnork
0
Я это видел. Почему я и задал вопрос: насколько тесно Homestd связан с веб-страничкой? А если у меня их три? И как минимум еще одна планируется в будущем? Плюс дальнейшее расширение функционала. Для меня все упирается как раз в программу-сервер, потому как я не программист и написание такой программы для меня невозможно. Тем более под OpenWRT… А то, что я описал выше — продукт универсальный. Он работает просто как ворота между ардуино и веб-интерфейсом, обладая полезной функцией записи данных в файлы. И ему без разницы какой функционал выполняет контроллер, что он передает в веб-интерфейс и как эти данные обрабатывает страничка. Он просто принимает и, в зависимости от условий, передает дальше.
  • avatar
  • vashal
0
Часть этого уже реализовано.
Пятый параметр — может быть 0 или 1. Если указать 1, тогда в папке /tmp/ будет создаваться текстовый файл file.db, в который будут записываться данные полученые от ардуины. Это сделано для того, чтоб можно было забирать эти данные и заносить их куда-либо, например в базу.

Остаётся только написать скрипт, который скажем каждую секунду копирует данные из file.db в ваш журнал.
0
Идея ведения логов пришла ко мне, когда после подключения RFID считывателя самопроизвольно в любой момент времени могло произойти включение сигнализации. То есть словно кто-то поднес запрограммированный в контроллере брелок. Приходилось отлавливать такие моменты подключая ардуину к компу и смотреть, что валится в терминал. А это, мягко говоря, неудобно.
То есть под логами я понимаю что-то, что шлет ардуино в терминал в ответ на какие-либо действия. Включил свет в комнате с выключателя — запись в лог, включил сигнализцию — запись, сигналка сработала — снова запись. И так далее. Плюс к этому ведение журналов изменения температуры в комнатах и на улице и давления. Ну и всего, чего угодно в будущем.
Как я себе это представляю: есть некая программа — сервер на OpenWRT, которая слушает порт и, в зависимости от заданных параметров, либо записывает данные в файлы, либо передает их на веб-страницу. Причем без всякой привязке к количеству или типу этих данных. То есть просто приняла — передала. Так же и в обратном направлении. Принимает данные от странички и передает их в порт.
Реализацию представляю примерно такую: ардуино в начале каждого пакета данных ставит тег — например #l — данные лога — пишутся в лог файл; #w — данные для передачи на веб-страничку; #j — журнал (изменение температуры). Возможно лог и журнал можно объединить.
Программа-сервер считывает тег и раскладывает данные по нужным направлениям. В общем, как-то так.
  • avatar
  • vashal
0
Я так понял homestd и веб-страничка тесно связаны между собой. Хотелось бы понять логику этой связи.

HomestD — это проект для «самых маленьких», понажимал кнопки и всё готово, поэтому есть некоторая связь между веб-страничкой и сервером, однако ничто не мешает вносить изменения. Плюс, я тренировался делать онлайн-конструкторы, так что это пока начальная версия.



Все, в принципе устраивает, но хотелось бы ведение логов

Про какие логи Вы говорите?
Не совсем понимаю Ваших намерений.
  • avatar
  • stD
0
Мистики не бывает, если что-то не так, значит что-то не так сделано. Homestd не нуждается в каких-либо серверах, он сам сервер и работает на заданном порту из указанной папки.
  • avatar
  • stD
0
Добрый день!
Я так понял homestd и веб-страничка тесно связаны между собой. Хотелось бы понять логику этой связи. На данный момент мой умный дом работает на вашем примере с PHP со своими доработками. Все, в принципе устраивает, но хотелось бы ведение логов. В этом проекте ведение логов можно включить, но нет той прозрачности и настройки под пользователя, которая была там. Или просто это уже гораздо дальше от моего понимания.
В общем на данный момент у меня имеется управление освещением и температурой в частном доме. Между ардуиной и веб-интерфейсом передаются данные о температуре в каждой комнате и на улице, заданной температурой, статусе выключателей (вкл/выкл), и значениями атмосферного давления для графика. Обратно уходят данные об изменении температуры и управлении светом. Строка такая: 0,0,0,26,26,26,28,26,-75,255,273,253,255,259,722.6,722.4,722.2,722.0,721.5,1,1. Далее страничка все переводит в приемлимый вид и раскладывает куда надо. Имеются основная страница и страница для мобильных устройств. Вот так выглядит страничка для телефонов: 1
Так же имеется страница настроек умного дома с настройками СМС-уведомлений и задержкой выключения света.
В общем, хотелось бы, чтобы ко всему этому добавилась возможность вести логи. Графики температуры, статистику использования выключателей и т.п., а как это реализовать с помощью схемы PHP — lighttpd, я придумать не могу, так же, как не могу понять как совместить homestd с моим проектом…
  • avatar
  • vashal
0
Упс. Вопрос снимаю. Странно, вчера всё настроил, но данные не получал. Сейчас захожу и всё работает. Прям мистика какая-то.