from flask import Flask, jsonify from pymodbus.client.serial import ModbusSerialClient app = Flask(__name__) # Настройка Modbus клиента port_Arduino = 'COM3' # Убедитесь, что это правильный порт для вашего компьютера baudrate = 115200 client = ModbusSerialClient(port=port_Arduino, baudrate=115200, timeout=1, stopbits=1, bytesize=8, parity='N') # Попытка подключения к Modbus клиенту try: if client.connect(): print("Подключение успешно!") else: print("Не удалось подключиться к порту.") except PermissionError as e: print(f'Ошибка доступа к порту: {e}') except Exception as e: print(f'Ошибка подключения: {e}') STATUS_REGISTER = 0 # Адрес регистра, где хранится статус @app.route('/modbus-status', methods=['GET']) def modbus_status(): try: result = client.read_holding_registers(STATUS_REGISTER, 1) if result.isError(): return jsonify({'error': 'Не удалось прочитать данные с Arduino'}), 500 else: connected = bool(result.registers[0]) return jsonify({'connected': connected}) except Exception as e: return jsonify({'error': str(e)}), 500 @app.route('/') def index(): return ''' Статус пина
''' if __name__ == '__main__': app.run(debug=True, host='0.0.0.0')