Atividade #1355
FechadaCriar interface da Phoenix pra rodar no terminal
Descrição
Na larc desse ano, vão ser usadas vms na cloud. Para não ficar com atrasos no envio das informações, foi sugerido não usar interface gráfica.
Ja fiz um proof of concept de que funciona, falta criar uma interface para que sejam exibidos logs no terminal e que possamos passar parâmetros.
Arquivos
Atualizado por Antonio de Souza Gomes Pereira há mais de 4 anos
Existe uma interface de linha de comando (CLI) para o Labview, no pc da intel ja estava instalado, mas da pra encontrar na internet tranquilamente
Usei como base esses dois tutoriais:
https://zone.ni.com/reference/en-XX/help/371361R-01/lvhowto/cli_running_operations/
https://zone.ni.com/reference/en-XX/help/371361R-01/lvconcepts/cli_predefined_operations/#RunVI
Tem algumas coisas importantes para citar:
1) É necessário habilitar a opção Vi Server em Tools->Options->Vi Server. Precisa deixar habilitado a caixa dizendo TCP/IP.
Caso haja múltiplas versões do LabView no computador, é necessário mudar a porta, eu testei usando a 3378 e funcionou.
2) Caso haja múltiplas versões do Labview no pc, é necessário especificar o path do executável da versão que será utilizada.
Um exemplo de comando que usei para executar uma vi genérica foi o seguinte:
LabVIEWCLI -LabVIEWPath "C:\Program Files (x86)\National Instruments\LabVIEW 2020\LabVIEW.exe" -PortNumber 3378 -OperationName RunVI -VIPath "C:\Users\roboi\OneDrive\Documentos\ConsoleTeste.vi" 101 102
Veja que foi especificado o diretório do LabView 2020 e o diretório da Vi que será executada. O último argumento "101 102" é o vetor de strings que será passado para a vi, nesse caso foram passadas duas strings.
Já testei em uma vi que executa a Phoenix e pareceu funcionar, ficando apenas um pouco lento, mas acho que se colocar para executar diretamente a phoenix o desempenho será melhor.
Segue a foto da vi que fiz:

O control Args passa o vetor de strings para dentro da vi, o indicator exit pode ser 0,1,2,3 e controla a execução da vi(ver links), por último o indicator Output Log passa uma string que será printada no terminal.
O que falta fazer agora é criar essa interface diretamente na Phoenix e setar nela as strings passadas no terminal(ips, portas, etc...) e printar coisas que podem ser úteis durante o jogo.
Atualizado por Antonio de Souza Gomes Pereira há mais de 4 anos
Atualizado por Gabriel Borges da Conceição há mais de 4 anos
Na Phoenix já temos prontos valores das velocidades mandadas e medidas para robôs e bola num while separado pra isso.
Seria bom colocar essas velocidades como saídas da Phoenix pra conseguirmos analisar se está andando devagar e etc.
Atualizado por Antonio de Souza Gomes Pereira há mais de 4 anos
- Situação alterado de Em andamento para Resolvida
- Prioridade alterado de Urgente para Baixa
DONE
Atualizado por Antonio de Souza Gomes Pereira há mais de 4 anos
- Situação alterado de Resolvida para Fechada