#python d:\Антоше\Универ\Гит\Software_and_hardware\Версия_2.0\Server.py import serial import serial.tools.list_ports import minimalmodbus import time def find_arduino_port(): ports = list(serial.tools.list_ports.comports()) for port in ports: if "Arduino" in port.description or "CH340" in port.description: return port.device return None # Настройки порта port = find_arduino_port() # Укажите порт, к которому подключен Arduino slave_id = 1 # ID устройства (адрес Arduino) baudrate = 9600 timeout = 1 # Время ожидания в секундах # Настроим модбас клиента client = minimalmodbus.Instrument(port, slave_id) # Создаем объект клиента Modbus client.serial.baudrate = baudrate # Устанавливаем скорость client.serial.timeout = timeout # Время ожидания ответа client.mode = minimalmodbus.MODE_RTU # Используем RTU # Ожидаем получения данных от Arduino try: while True: try: # Чтение 4 регистров с адреса 0 result = client.read_registers(0, 1, functioncode=3) print(f"Полученные данные: {result}") break # Выход из цикла, если данные получены except minimalmodbus.NoResponseError: print("Ошибка: Нет ответа от устройства. Повторяем...") time.sleep(1) # Подождать 1 секунду и попробовать снова except Exception as e: print(f"Ошибка: {e}") break except KeyboardInterrupt: print("Программа остановлена пользователем")