Page 1 of 1

Operação aritmética

Posted: Fri Oct 09, 2015 2:44 am
by dcg.david
Boa noite!

Gostaria de saber como fazer uma operação aritmética no script LUA.
Por exemplo: ao acionar o botão, o valor da Tag1 multiplica pela Tag2 e escreve na Tag3.


Obrigado!

David

Re: Operação aritmética

Posted: Fri Oct 09, 2015 4:24 pm
by daniel_bable
Caro David, Boa Tarde!

Para que possamos realizar a uma operação aritmética no script LUA, precisamos criar um script que realize essa operação e associá-lo ao botão.

No script abaixo temos um exemplo de como realizar uma operação aritmética entre dois Tags e escrever o resultado em um outro Tag:

Code: Select all

-- Caminho do Tag

Valor_1    = Tags.Get("Kernel.Tags.Local.TagLocalGroup_001.TagLocal_001")
Valor_2    = Tags.Get("Kernel.Tags.Local.TagLocalGroup_001.TagLocal_002")
Resultado  = Tags.Get("Kernel.Tags.Local.TagLocalGroup_001.TagLocal_003")

-- Realiza a Operação Aritmética(Multiplicação) e escreve no Tag Resultado

Resultado.Value = Valor_1.Value * Valor_2.Value
Resultado:WriteValue() 

Em anexo a esta resposta, se encontra um arquivo de projeto do HIscada Pro exemplificando como realizar uma operação aritmética via script LUA.

Basicamente neste exemplo, foram criados os seguintes itens para permitir tal funcionalidade:
No manual online do HIscada Pro, existe um guia para importar um projeto, presente nesta página, na seção Importando um Projeto.

Em caso de novas dúvidas, basta utilizar nosso fórum!

Re: Operação aritmética

Posted: Fri Oct 09, 2015 5:32 pm
by dcg.david
Boa tarde!


Obrigado pela explicação!


David

Re: Operação aritmética

Posted: Tue Mar 01, 2016 2:54 pm
by Daltro
Daniel,

Utilizando-se do seu exemplo :

Valor_1 = Tags.Get("Kernel.Tags.Local.TagLocalGroup_001.TagLocal_001")
Valor_2 = Tags.Get("Kernel.Tags.Local.TagLocalGroup_001.TagLocal_002")
Valor_3 = 3
Resultado = Tags.Get("Kernel.Tags.Local.TagLocalGroup_001.TagLocal_003")

Resultado.Value = Valor_1.Value * Valor_2.Value * Valor_3.Value
Resultado:WriteValue()

Não funciona mais ???

SDS

Re: Operação aritmética

Posted: Tue Mar 01, 2016 3:08 pm
by daniel_bable
Caro Daltro, Bom dia!

Realizei um teste aqui e funcionou corretamente.

Você esta errando ao colocar o Valor_3.Value, colocamos o .Value quando pegamos o valor de um Tag, no seu caso você atribuiu um valor fixo para Valor_3.

Tente colocar assim:

Valor_1 = Tags.Get("Kernel.Tags.Local.TagLocalGroup_001.TagLocal_001")
Valor_2 = Tags.Get("Kernel.Tags.Local.TagLocalGroup_001.TagLocal_002")
Valor_3 = 3
Resultado = Tags.Get("Kernel.Tags.Local.TagLocalGroup_001.TagLocal_003")

Resultado.Value = Valor_1.Value * Valor_2.Value * Valor_3
Resultado:WriteValue()

Em caso de novas dúvidas, basta utilizar nosso fórum!

Re: Operação aritmética

Posted: Tue Mar 01, 2016 6:39 pm
by Daltro
Obrigado Daniel...

Realmente eu não sabia quando usar ou não o ".Value" , ficou esclarecido...

Um outro detalhe...

Eu percebo que as vezes, comigo é sempre, os scripts não funcionam de primeira... mas tbm o sistema não critica os erros... e temos que acabar achando na unha.

Tem como fazer que o script, ao ser executado, informe onde está o possível erro ?

SDS

Re: Operação aritmética

Posted: Wed Mar 02, 2016 6:32 pm
by daniel_bable
Caro Daltro, Boa tarde!

O HIscada Pro tem uma ferramenta de depuração de script, nesta ferramenta você consegue ver onde o erro ocorreu no script.

1 - Você precisa habilitar o acesso ao depurador conforme imagem a seguir:
HabilitarDepurador.png
HabilitarDepurador.png (25.77 KiB) Viewed 8300 times
2 - Com o projeto rodando você precisa ir ate os ícones na parte inferior direito do computador e clicar em clicar com o botão direito do mouse sobre o ícone Viewer ou Kernel, ai vai depender de onde você criou o seu script, conforme imagem a seguir:
AbreInterfaceDepurador.png
AbreInterfaceDepurador.png (18.57 KiB) Viewed 8300 times
3 - Interface de depuração, se caso o seu script estiver com alguma falha ele indicara a falha na parte inferior da janela, conforme a imagem a seguir:
Depurador.png
Depurador.png (44.2 KiB) Viewed 8300 times
Na janela de depuração você consegue realizar alterações no projeto mais só para depuração, as alterações não serão realizadas no IDE.
Para ver o seu script basta selecionar na parte superior da tela (Consulta script)

Em caso de novas dúvidas, basta utilizar nosso fórum!