quinta-feira, 23 de agosto de 2012

Comunicação Fluidsim-Excel

A comunicação entre dois softwares distintos é de grande importância no mundo da automação industrial.
apresentaremos nessa postagem como é feita a comunicação do software Fluidsim-Pneumática com o Excel.
O objetivo dessa comunicação é apenas acionar válvulas através de um botão em uma determinada célula do Excel. Mas, uma vez aprendendo como isso é feito você poderá não só acionar válvulas mais sim monitorar variáveis, estabelecer gráficos entre elas com as ferramentas do Excel, fazer cálculos e etc......


Faça desse jeito:

Monte o circuito abaixo:







* Clique em OPÇÕES > CONEXÃO OPC/DDE
* Habilite o MODO DDE
* Abra o Excel e crie uma nova planilha.
*Digite na célula A1 a seguinte frase: =FLSIMP|IOPanel!get_0.
*Digite 1 na célula A2.



*Habilite a aba “Desenvolvedor” (Menu -> Opções do Excel -> Mais Usados).
*Habilite a opção “Mostrar guia Desenvolvedor.

CONFIGURAÇÃO DO EXCEL:
* Na aba Desenvolvedor, insira um botão e nomeie-o como “Start”.



*Clique em Visual Basic (Alt + F11). 
* insira um novo módulo.



*Digite os seguintes códigos no módulo. 


Sub ciclo() 

'ativa saída 1 -> valvula 1y1 
'valor: 1 
Cells(2, 1) = 1 

'abre canal 
canal = Application.DDEInitiate("FLSIMP", "IOPanel") 

'envia dado ao FluidSIM 
Application.DDEPoke canal, "set_0", Cells(2, 1) 

'encerra conexão 
Application.DDETerminate canal 

End Sub 
Sub delay() 

'devido a um bug no excel 2007, os links DDE's não 
'são atualizados automaticamente 
'por isso, faz-se uma rotina ciclica para atualizar todos os itens 
ActiveWorkbook.UpdateLink Name:=ActiveWorkbook.LinkSources, _ 
    Type:=2 
     
'caso o valor recebido seja igual a 1, ou seja, 
'o cilindro chegou ao final, deve-se recuá-lo, ou seja, 
'acionar a valvula 1y2, escrevendo 2 na saída. 
If Cells(1, 1) = 1 Then 
    Cells(2, 1) = 2 
     
    'abre canal 
    canal = Application.DDEInitiate("FLSIMP", "IOPanel") 
     
    'envia dado ao FluidSIM 
    Application.DDEPoke canal, "set_0", Cells(2, 1) 
     
    'encerra conexão 
    Application.DDETerminate canal 
End If 

'cria o loop 
Application.OnTime Now + TimeValue("00:00:01"), "delay" 
End Sub 


*Clique em “EstaPasta_de_trabalho” e coloque o código abaixo.



Private Sub WorkBook_Open( )
Application OnTime now + TimeValue ("00:00:01"), "delay"
End Sub






*Clique com o botão direito do mouse no botão que você nomeio como "Sart" e clique em “Atribuir macro”. 

*Atribua a macro “ciclo” ao botão Start.

Salve o arquivo como extensão “.xlsm” (habilitada para macro). 

– Feche e abra o arquivo novamente. 

– Coloque o arquivo do FluidSIM para rodar. 

– Ao se pressionar o botão Start, o cilindro deve avançar e recuar automaticamente.



Espero que tenham gostado dessa postagem. Realmente é uma ferramento muito importante em várias aplicações.
Se pensarmos um pouco, poderíamos fazer na mesma planilha uma comunicação entre o Excel e um controlador, dessa forma o Fluidsim passa a ser fosse nosso sistema supervisório, Entendeu? 
Não há limites de aplicações.


Qualquer dúvida entre em contato.

Abraço a todos....
Edson Xavier  


Nenhum comentário:

Postar um comentário