em 05-21-2014 09:33 PM
Olá a todos, criei um PI para uso pessoal, porém na hora de tentar implementar uma subVI para tornar o uso mais prático, a resposta da ação de controle fica diferente da resposta sem o uso da subVI. Alguém pode me explicar como consertar esse erro?
Obs1: Segue em anexo os dois arquivos, usando e não usando a subVI.
Obs2: Os valores dos ganhos e setpoint são os setados como constantes no arquivo uso_da_subVI.
em 05-22-2014 11:34 AM
Faltou a SubVI no anexo, né?
em 05-22-2014 11:40 AM
Seguindo sua descrição não consegui entender claramente quem é o subVI e qual sua aplicação.
Quando tentei abrir seu "uso_da_subVI.vi" foi solicitado o arquivo "pi2.vi" que não foi passado.
Especfique melhor seu problema que podemos bolar alguma solução.
em 05-22-2014 12:59 PM
Olá realmente estava dando pau no anexo anterior, espero que este esteja corrigido.
O problema é o seguinte, o arquivo subVI, contém a programação de um controlador PI. E o arquivo uso_da_subVI contém aquela programação criada como uma subVI. Porém, as respostas não estão identicas, acho que há algum problema com o while loop que não sei resolver.
Lembrando que os ganhos que deverão ser usados são os que estão como constantes no arquivo uso_da_subVI.
Consegui deixar mais claro ou ainda está meio estranha minha pergunta? hahah
em 05-22-2014 01:01 PM
Faltou mesmo, deu pau na hora do anexo, na resposta abaixo eu ja postei os arquivo corrigidos.
Valeu o/
em 06-03-2014 01:08 PM
Então cara, dei uma olhada em seu programa e vi que seu subVI possue um While Loop, e seu programa fica preso dentro deste subVi até ser abortado.
Seu subvi deveria fazer as operações matemáticas que deseja, e retornar os valores, para ser exibidos no gráfico presente do painel frontal do seu arquivo "uso_da_subVI.vi".
Rodando seu programa aqui não estou tendo nenhum valor nos gráficos do painel frontal do seu arquivo "uso_da_subVI". Apenas consigo obter algum tipo de dados se eu rodar o programa "subVI.vi" separadamente.
em 06-16-2014 09:45 AM
hvscherer escreveu:
Olá a todos, criei um PI para uso pessoal, porém na hora de tentar implementar uma subVI para tornar o uso mais prático, a resposta da ação de controle fica diferente da resposta sem o uso da subVI. Alguém pode me explicar como consertar esse erro?
Obs1: Segue em anexo os dois arquivos, usando e não usando a subVI.
Obs2: Os valores dos ganhos e setpoint são os setados como constantes no arquivo uso_da_subVI.
Ola hvscherer....
O mau funcionamento de seu conjunto, esta ligado ao fato de que sua Vi principal fica esperando uma resposta de saida de um loop que unca para de executar, ou seja, seu vi principal somente inicia a subVi mas essa ultima nunca termina suas interações .
Para o seu problema existem varias soluções possiveis, mas antes de apresentalas ai vão algumas dicas uteis:
Vamos as soluções possiveis, (acredito que seu código contenmha varios pontos possiveis de melhorias mas vou me atentar em resolver o problema apresentado por você).
subVI
VI PRINCIPAL
2. Utilizando GLOBAL VARIABLE. (essa solução evita grandes modificações em seu código original, mas a utilização em grande escala pode causar problemas em sua aplicação).
subVI
VI PRINCIPAL
Caso tenha duvidas de como trabalhar com GLOBAL VARIABLE esse link pode ajudar:
https://decibel.ni.com/content/docs/DOC-2143
em 06-16-2014 11:25 AM
Muito obrigado pela sugestão. Farei algumas alterações para ver se consigo o resultado esperado.