Плюсы

вторник, 25 ноября 2014 г.

Прогноз погоды на Arduino

Озадачился я выводом прогноза погоды на LCD 128X64 с помощью Arduino и Ethernet shield.
Так как я начинающий Ардуинист, то пришлось читать много форумов и статей. Местами что-то понял, а кое-что так и осталось для меня непостижимым.
Конечно же прогноз погоды решил брать с сайта, который предоставляет данные о погоде бесплатно. Очень хотелось использовать для снятия данных о погоде сайт rp5.ru, так как довольно часто там приходится смотреть прогноз в браузере. Но данные в формате xml этот сайт предоставляет платно.
Итак, я получаю данные с http://openweathermap.org
Скетч для Arduino был собран из кусков кода в интернете, кое-то придумал свое.
Данные выводимые на экран LCD:
1.  Дата, для которой выводится прогноз;
2. В виде иконки вывожу данные об осадках, облаках и солнце;
3. Вывожу температуру на дневное время и ночное;
4. Давление, скорость ветра, влажность.
Количество дней прогноза от 1 до 7 в скетче можно менять (включается текущая дата).
Иконки сам рисовал, затем использовал программу Image2Code для получения кода картинки.
Дополнительно подключил к Arduino часы RTC DS1307. Когда нет возможности получить данные о погоде с интернета, то на весь экран выводится время.

Код скетча можно скачать с облака.
Проблемы в скетче присутствуют. Перестают выводится данные с интернета. Вывод прогноза должен быть цикличным на пять дней, но бывает так, что прогноз застревает на последнем дне. Причем данные выводятся разное время, а потом перестают. Однако, на вывод текущего времени скетч тоже не переключается, значит соединение с сервером есть.
Самая главная проблема - это корпус для устройства. Его пока нет, хотя уже было несколько претендентов. И Arduino UNO вместе с Ethernet shield довольно громоздкая конструкция.

Комментариев нет:

Отправить комментарий