API's NetworkTables API completa Dados básicos de segmento Use os seguintes códigos: Java NetworkTableInstance.getDefault().getTable("limelight").getEntry("").getDouble(0); LABView Para retornar os dados: Parâmetro Descrição tv Se tem algum alvo válido (0 ou 1) tx Deslocamento horizontal do ponto alvo (LL1: -27° a 27°/ LL2: -29,8° até 29,8°) ty Deslocamento vertical do ponto alvo (LL1: -20,5° a 20,5° / LL2: -24,85° a 24,85°) ta Área Alvo (0% de imagem a 100%) tl A latência da pipeline (ms). Adicione a cl para conseguir a latência total cl Captura a latência da pipeline (ms). Tempo entre o final da exposição da linha intermediária do sensor até o começo do pipeline de rastreamento tshort Comprimento lateral do lado mais curto da caixa de detecção (pixels) tlong Comprimento lateral do maior lado da caixa de detecção (pixels) thor Comprimento horizontal da caixa de detecção (0 - 320 pixels) tvert Comprimento vertical da caixa de detecção (0 - 320 pixels) getpipe Ìndice de pipeline ativo (0...9) json JSON completo dos alvos de segmentação tclass ID de classe do detector neural primário ou do classificador neural tc Obtenha a cor HSV média abaixo da região da mira como um NumberArray AprilTag e dados 3D Use os seguintes códigos: Java NetworkTableInstance.getDefault().getTable("limelight").getEntry("").getDoubleArray(new double[6]); C++ nt::NetworkTableInstance::GetDefault().GetTable("limelight")->GetNumberArray("",std::vector(6)); Para retornar esse dado: Parâmetro Descrição botpose Transformação do robô no espaço do campo. Translação (X, Y, Z), Rotação (Roll, Pitch, Yaw), latência total (cl+tl) botpose_wpiblue Transformação do robô no espaço do campo (origem na Driver Station azul). Translação (X, Y, Z), Rotação (Roll, Pitch, Yaw), latência total (cl_tl) botpose_wpired Transformação do robô no espaço do campo (origem na Driver Station red). Translação (X, Y, Z), Rotação (Roll, Pitch, Yaw), latência total (cl_tl) camerapose_targetspace Transformação 3D da câmera no sistema de coordenadas da AprilTag em vista (array (6)) targetpose_cameraspace Transformação 3D da AprilTag em vista no sistema de coordenadas da câmera targetpose_robotspace Transformação 3D da AprilTag em vista no sistema de coordenadas do robô camerapose_robotspace Transofmração 3D da câmera no sistema de coordenadas do robô tid ID da AprilTag em vista Controle de câmera Use os seguintes códigos: Java NetworkTableInstance.getDefault().getTable("limelight").getEntry("").setNumber(); LABView C++ nt::NetworkTableInstance::GetDefault().GetTable("limelight")->PutNumber("",); Python NetworkTables.getTable("limelight").putNumber('',) Para definir esse dado: ledMode Definir o estado do LED [0] Usa o modo do LED na pipeline atual [1] Desligado [2] Piscando [3] Ligado camMode Define o modo de operação 0 Processador de visão 1 Câmera de Driver (Desabilita o processamento) pipeline Define a pipeline atual 0..9 Define a pipeline 0...9 stream Define o modo de gravação da LimeLight 0 Padrão - Transmissão simultânea se tiver uma webcam conectada oa robô 1 PiP Principal - A transmissão da câmera secundária é colocada no canto inferior direito ao da principal 2 PiP secundário - A transmissão da câmera principal é colocada no canto inferior direito ao da secundária snapshot Permite aos usuários tirar fotos durante a partida 0 Reseta o modo de foto 1 Tira uma foto crop (Matriz) Define o recorte retângular. A pipeline deve utilizar o corte padrão da interface web. A matriz deve ter 4 entradas. [0] X0 - Mín ou Máx valor de X do recorte retângular (-1 a 1) [1] X1 - Mín ou Máx valor de X do recorte retângular (-1 a 1) [2] Y0 - Mín ou Máx valor de Y do recorte retângular (-1 a 1) [3] Y1 - Mín ou Máx valor de Y do recorte retângular (-1 a 1) camerapose_robotspace_set | (Matriz) Define a posição da câmera no sistema de coordenadas do robô Java double[] cropValues = new double[4]; cropValues[0] = -1.0; cropValues[1] = 1.0; cropValues[2] = -1.0; cropValues[3] = 1.0; NetworkTableInstance.getDefault().getTable("limelight").getEntry("crop").setDoubleArray(cropValues); C++ wip Python Os algoritmos em Python permitem dados arbitrários d eentrada e saída. llpython - NumberArray enviado pelo script de python. Esse dado é acessível pelo código do robô. llrobot - NumberArray eviado pelo robô. É acessível pelo algoritmo de python. Contornos Cantos: Habilite send contours na aba de Output para transmitir as coordenadas dos cantos tcornxy - Matriz das coordenadas [x0, y0, x1, y1...] Alvos brutos: O Limelight envia três contornos brutos para a NetworkTables que não são influenciados pelo modo de agrupamento. Ou seja, eles são filtrados com os parâmetros da sua tubulação, mas nunca agrupados. X e Y são retornados no espaço de tela normalizado (-1 a 1) em vez de graus. Dados Descrição tx0 Espaço de tela X ty0 Espaço de tela Y ta0 Área (0% de imagem a 100%) ts0 Inclinação ou rotação (-90° a 0°) tx1 Espaço de tela X ty1 Espaço de tela Y ta1 Área (0% de imagem a 100%) ts1 Inclinação ou rotação (-90° a 0°) tx2 Espaço de tela X ty2 Espaço de tela Y ta2 Área (0% de imagem a 100%) ts2 Inclinação ou rotação (-90° a 0°) Mira bruta: Se estiver usando dados de direcionamento brutos, ainda é possível utilizar suas miras calibradas: Dados Descrição cx0 Mira A X no espaço de tela cy0 Mira A Y no espaço de tela cx1 Mira B X no espaço de tela cy1 Mira B Y no espaço de tela