Publicar um VI na Web e corrê-lo localmente ou na internet

Sabemos que, com o LabView, podemos criar programas (ficheiros com extensão VI) que comunicam com sensores e actuadores através de placas de aquisição e/ou variados tipos de portas, sejam elas ethernet, hdmi ou usb, e que podemos programar para processar os dados adquiridos para apresentar os resultados em qualquer forma, sejam gráficos ou listagens. Com o LabView podemos:

  • observar a variação temporal e frequencial de diferentes variáveis medidas

  • ligar ou desligar equipamentos

  • interagir com actuadores

  • processar os dados medidos

  • criar instrumentos virtuais


O acesso remoto por http (através de um browser) a esses programas, criados pelo LabView e a correr em determinado computador, pode ser útil quando não pretendemos dar acesso total ao computador mas só, e exclusivamente, aos programas. Se assim não fosse o acesso remoto por VPN seria muito mais fácil.


Podemos encontrar as seguintes situações:

  1. Programa LabView, alojado no computador A, com sensores e actuadores ligados por cabo ou por wifi, que pretendemos correr remotamente a partir do computador B, ou de um smartphone, ligados à mesma LAN.

  2. Programa LabView, alojado no computador A, com sensores e actuadores ligados por cabo ou por wifi, que pretendemos correr remotamente a partir do computador B, ou de um smartphone, na internet.


Vejamos um exemplo da 1ª Situação que vamos dividir em passos:

1º Passo - Criar um VI no computador A (NOTA: pode criar um VI qualquer para testar os acessos remotos que propomos, por exemplo, crie um VI com um gerador de números aleatórios apresentados num gráfico, um botão para iniciar a geração de números, um botão para parar a geração de números e um botão para terminar o programa)

No computador A temos instalado o LabView 2020 SP1 32 bits e criamos o seguinte VI, teste.vi, para ler a aceleração medida por um acelerómetro usb Phidgets 1041_0 (ligado a uma porta usb do computador A):

2º Passo - Criar uma página web (teste.html), baseada no ficheiro teste.vi, no computador A:

2.1. No painel frontal de teste.vi, em Tools, seleccionar Web Publishing Tools...


2.2. Em VI name seleccione o ficheiro teste.vi.

Em Viewing Mode escolha a opção Monitor (neste caso os clientes não poderão controlar o VI mas também não precisarão de instalar nem o LabView nem o runtime do LabView)


2.3. Prima Next.


2.4. Nesta janela não precisa de fazer nada se não quiser. Prima Next.


2.5. Nesta última janela, prima Save to Disk, para criar o ficheiro teste.html. Anote o seu URL. Onde está LAPTOP-FCIIUDIH substitua pelo nome do seu computador A na sua LAN (descobre o nome abrindo o prompt command e dando o comando hostname). O URL assim alterado será o endereço a introduzir no browser do seu computador B ou no browser do seu smartphone. (Note que a porta do computador A para aceder a teste.html é a 8000. Este facto é importante para configurar o seu router se quiser correr teste.html de fora da sua LAN)


3º Passo - No computador A corra o seu programa teste.vi. No computador B, ou no seu smartphone, insira na linha de endereços o URL determinado no passo anterior. Note que consegue ver o programa teste.vi a correr mas não pode interagir com ele, isto é, não pode dar comandos.

Se quiser interagir remotamente com o programa teste.vi, tem que ter instalado no seu computador B uma versão do LabView, igual ou superior à versão instalada no computador A, ou então somente o respectivo runtime que é freeware. Depois, tem de alterar em 2.2. a opção Monitor para Embedded. Todos os restantes passos serão iguais.

Para a interacção remota é muito provável que ao tentar abrir teste.html lhe surja uma mensagem de erro a dizer que falta um plugin. Acontece que a maioria dos actuais browsers não têm um plugin que o Microsoft Internet Explorer tinha. No entanto, se utilizar o browser Microsoft Edge poderá resolver a situação (provavelmente, se instalar o Edge no smartphone também poderá resolver o problema). Vá a definições do Edge, opção Browser predefinido e seleccione Permitir em Permite que os sites sejam recarregados no modo Internet Explorer (modo IE). Reinicie o Edge e já está.

Vejamos um exemplo da 2ª Situação:

1º e 2º passos são iguais à situação anterior.

3º Passo - Configurar o seu router para permitir acesso do exterior à sua página web de teste.vi no computador A:

No seu router vá a configurações avançadas (ou semelhante) e escolha Port Forwarding. Preencha os campos como na figura. Onde está LAPTOP-FCIIUDIH deverá aparecer o nome do seu computador A (na caixa de selecção aparecerá certamente o nome do seu computador A).


4º Passo - No computador A corra o programa teste.vi. No computador B ou no smartphone que não estão na sua LAN (Note: para testar ligue o seu smartphone aos dados e não à sua rede wifi, em ligações active PA Móvel e Ancoragem e depois ligue o seu computador B à rede wifi que surge devido ao PA Móvel e Ancoragem. Deste modo coloca o computador B e o smartphone fora da LAN) insira na linha de endereços o seguinte URL "IP externo do seu router/teste.vi". (Note: para saber o IP do seu router, no browser de qualquer computador da sua LAN escreva o endereço My IP. Entre num dos sites encontrados e veja qual é o IP. Normalmente os IPs dos nossos routers são dinâmicos, isto é, o Internet Service Provider, que pode ser a NOS, a MEO, a VODAFONE, ou outro, costuma mudar de tempos a tempos o IP dos routers dos clientes.).

Dependendo da opção escolhida no passo 2.2.:

  • Monitor , só poderá ver o programa de LabView a correr

  • Embedded, e de ter o LabView ou o seu runtime, ambos numa versão igual ou superior à do LabView no computador A, poderá interagir com o VI, isto é, dar comandos.