11.4Kпросмотров
5 августа 2025 г.
📷 ФотоScore: 12.5K
Как настроить вывод погоды на камерах Hikvision с помощью PHP и OpenWeatherMap Отображение погоды в реальном времени на видеопотоке камеры Hikvision помогает улучшить мониторинг окружающей обстановки. В этой инструкции вы узнаете, как настроить PHP-скрипт для получения данных о погоде и их вывода на камеру в виде текстового наложения. --- ### Необходимые условия
1. Камера Hikvision с доступом к сети.
2. Веб-сервер с поддержкой PHP (локальный или облачный).
3. API-ключ OpenWeatherMap (доступен бесплатный тариф).
4. Логин и пароль от камеры. --- ### Шаг 1: Получение API-ключа OpenWeatherMap
1. Зарегистрируйтесь на https://openweathermap.org
2. Перейдите в раздел API Keys в личном кабинете.
3. Создайте новый ключ (например, abcd1234xyz). Сохраните его. --- ### Шаг 2: Настройка PHP-скрипта
Замените значения в скрипте на свои: <?php $apiKey = "abcd1234xyz"; // Ваш API-ключ OpenWeatherMap
$cityId = "Volgodonsk"; // Название города (на английском или местном языке)
$ipaddr = "192.168.1.100"; // IP-адрес камеры
$auth = base64_encode("admin:12345"); // Логин и пароль камеры в Base64
...
#### Генерация заголовка аутентификации
- Используйте base64_encode("логин:пароль") в PHP, либо:
- Через терминал: echo -n "admin:12345" | base64 # Результат: YWRtaW46MTIzNDU= - Вставьте полученное значение в переменную $auth. --- ### Шаг 3: Настройка аутентификации на камере
1. Войдите в веб-интерфейс камеры.
2. Перейдите в Конфигурация → Безопасность → Аутентификация.
3. Установите Тип аутентификации в Digest/Basic.
4. Сохраните изменения. --- ### Шаг 4: Запуск скрипта
1. Сохраните скрипт как weather_overlay.php на сервере.
2. Проверьте работу скрипта: php weather_overlay.php Если ошибок нет, данные отправлены на камеру.
3. Настройте автоматическое обновление (например, каждые 10 минут): crontab -e Добавьте строку: /10 * /usr/bin/php /путь/к/скрипту/weather_overlay.php --- ### Шаг 5: Проверка наложения
1. Откройте видеопоток камеры через браузер или приложение.
2. Убедитесь, что в углу изображения отображается погода (например, "Volgodonsk 22°C / 65%").
3. Измените positionX и positionY в скрипте, чтобы сдвинуть текст. --- ### Решение проблем
- Наложение не отображается? - Убедитесь, что выбран Digest/Basic в настройках камеры. - Проверьте связь между сервером и камерой (например, через ping 192.168.1.100). - Перепроверьте логин, пароль и кодировку Base64. - Ошибки в скрипте - Включите вывод ошибок PHP: error_reporting(E_ALL); ini_set('display_errors', 1); - Проверьте ответ OpenWeatherMap: Перейдите по ссылке http://api.openweathermap.org/data/2.5/weather?q=Volgodonsk&lang=ru&units=metric&APPID=abcd1234xyz в браузере. - Проблемы с сетью Убедитесь, что порт 80 (HTTP) открыт между сервером и камерой. --- ### Дополнительные настройки
- Расширенные данные: Добавьте скорость ветра ($data->wind->speed) или описание ($data->weather[0]->description) в переменную $temp. - Внешний вид: Используйте настройки камеры (Конфигурация → Изображение → Наложение), чтобы изменить шрифт. - Безопасность: В продакшене используйте HTTPS и ограничьте доступ к API и камере. Скрипт здесь: https://t.me/cctvclub_chat/533978 --- Следуя этим шагам, вы сможете выводить погоду на камеры Hikvision. Настройте скрипт под свои нужды и окружение. Канал про Видеонаблюдение и СБ➡️@cctvclub