codeFlowType:
codeWrite
codeFlowLang:
Python
Напиши код, который на карту города добавляет тепловые камеры и подгружает для него данные с OPC сервера
Для добавления тепловых камер на карту города и подгрузки данных с OPC сервера вы можете использовать такие библиотеки, как folium
для работы с картами и opcua
для взаимодействия с OPC сервером. Ниже представлен пример кода на языке Python, который демонстрирует этот процесс.
# Установка необходимых библиотек
# pip install folium opcua
import folium
from opcua import Client
# Определяем координаты города (например, координаты центра Москвы)
city_latitude = 55.7558
city_longitude = 37.6173
# Создаем карту
city_map = folium.Map(location=[city_latitude, city_longitude], zoom_start=12)
# Параметры OPC сервера
opc_server_url = "opc.tcp://localhost:4840" # адресс вашего OPC сервера
# Подключение к OPC серверу
client = Client(opc_server_url)
try:
client.connect()
print("Подключено к OPC серверу")
# Здесь необходимо указать путь к вашим данным на сервере
node_id = "ns=2;i=2" # Пример node_id
temperature_data = client.get_node(node_id).get_value()
# Список координат тепловых камер (широта, долгота)
thermal_cameras = [
(55.7573, 37.6176), # пример координат камеры 1
(55.7578, 37.6101), # пример координат камеры 2
]
# Добавляем тепловые камеры на карту
for i, (lat, lon) in enumerate(thermal_cameras):
folium.Marker(
location=[lat, lon],
popup=f"Камера {i + 1}<br>Температура: {temperature_data} °C",
icon=folium.Icon(color='red')
).add_to(city_map)
finally:
client.disconnect()
# Сохраняем карту в HTML файл
city_map.save("city_map_with_thermal_cameras.html")
folium
для создания карты и opcua
для работы с OPC сервером.Вы можете запустить этот код, предварительно установив библиотеки с помощью pip
и настроив OPC сервер. После выполнения скрипта вы получите файл city_map_with_thermal_cameras.html
, который можно открыть в веб-браузере для просмотра карты с тепловыми камерами.