35
PyQt no Acelerador de Partículas Brasileiro Gabriel Fedel [email protected] Software de Operação das Linhas de Luz (SOL) Laboratório Nacional de Luz Síncrotron (LNLS) 20 de Agosto, 2017

PyQt no Acelerador de Partículas Brasileiro · 2019-12-24 · PyQt no Acelerador de Partículas Brasileiro GabrielFedel [email protected] Software de Operação das Linhas de

  • Upload
    others

  • View
    18

  • Download
    0

Embed Size (px)

Citation preview

PyQt no Acelerador de PartículasBrasileiro

Gabriel [email protected]

Software de Operação das Linhas de Luz (SOL)Laboratório Nacional de Luz Síncrotron (LNLS)

20 de Agosto, 2017

Introdução Partículas, Luz Síncrotron e Sirius Controle nas Estações Experimentais PyQt (e PyDM) PyQt no LNLS Próximos Desafios Concluindo

Introdução

Tópicos Principais:

I Partículas, Luz Síncrotron e SiriusI Estrutura de Controle nas Estações ExperimentaisI PyQtI PyQt no LNLS (e Sirius)I Próximos DesafiosI Conclusão

Gabriel Fedel PyQt no Acelerador de Partículas Brasileiro 2/35

Introdução Partículas, Luz Síncrotron e Sirius Controle nas Estações Experimentais PyQt (e PyDM) PyQt no LNLS Próximos Desafios Concluindo

Fonte de Luz Síncrotron

Figure: Luz síncrotron

Gabriel Fedel PyQt no Acelerador de Partículas Brasileiro 3/35

Introdução Partículas, Luz Síncrotron e Sirius Controle nas Estações Experimentais PyQt (e PyDM) PyQt no LNLS Próximos Desafios Concluindo

Laboratório Nacional de Luz Síncrotron

Figure: LNLS

Gabriel Fedel PyQt no Acelerador de Partículas Brasileiro 4/35

Introdução Partículas, Luz Síncrotron e Sirius Controle nas Estações Experimentais PyQt (e PyDM) PyQt no LNLS Próximos Desafios Concluindo

Laboratório Nacional de Luz Síncrotron

I Primeira fonte de Luz Síncrotron do hemisfério sul(UVX)

I Única fonte da Amérca LatinaI Inaugurado em 1997I Faz parte do CNPEM

Centro Nacional de Pesquisa em Energia e MateriaisOrganização social qualificada pelo Ministério da Ciência,Tecnologia, Inovações e Comunicações (MCTIC)

Gabriel Fedel PyQt no Acelerador de Partículas Brasileiro 5/35

Introdução Partículas, Luz Síncrotron e Sirius Controle nas Estações Experimentais PyQt (e PyDM) PyQt no LNLS Próximos Desafios Concluindo

Laboratório Nacional de Luz Síncrotron

I Recebe 1200 pesquisadores por anoI Parcerias com indústria nacionalI Áreas de Pesquisa

Meio Ambiente, Agricultura, Energia, Materiais, Saúde, entreoutros

Figure: Usuários por regiãoGabriel Fedel PyQt no Acelerador de Partículas Brasileiro 6/35

Introdução Partículas, Luz Síncrotron e Sirius Controle nas Estações Experimentais PyQt (e PyDM) PyQt no LNLS Próximos Desafios Concluindo

Estações Experimentais (Linhas de Luz)

I Diferentes faixas do espectroI Diferentes experimentosI 18 Estações

Gabriel Fedel PyQt no Acelerador de Partículas Brasileiro 7/35

Introdução Partículas, Luz Síncrotron e Sirius Controle nas Estações Experimentais PyQt (e PyDM) PyQt no LNLS Próximos Desafios Concluindo

Sirius

I Maior e mais complexa infraestrutura científica jáconstruída no Brasil

I Mais intensa fonte de luz síncrotron

Gabriel Fedel PyQt no Acelerador de Partículas Brasileiro 8/35

Introdução Partículas, Luz Síncrotron e Sirius Controle nas Estações Experimentais PyQt (e PyDM) PyQt no LNLS Próximos Desafios Concluindo

Sirius

Figure: Sirius

Gabriel Fedel PyQt no Acelerador de Partículas Brasileiro 9/35

Introdução Partículas, Luz Síncrotron e Sirius Controle nas Estações Experimentais PyQt (e PyDM) PyQt no LNLS Próximos Desafios Concluindo

SOL

I Software para as Estações ExperimentaisI Automação e interfaces de controle

Gabriel Fedel PyQt no Acelerador de Partículas Brasileiro 10/35

Introdução Partículas, Luz Síncrotron e Sirius Controle nas Estações Experimentais PyQt (e PyDM) PyQt no LNLS Próximos Desafios Concluindo

Desafios de Controle

I Diversos equipamentosI Diversos fabricantesI Diversos softwares

Gabriel Fedel PyQt no Acelerador de Partículas Brasileiro 11/35

Introdução Partículas, Luz Síncrotron e Sirius Controle nas Estações Experimentais PyQt (e PyDM) PyQt no LNLS Próximos Desafios Concluindo

EPICS

I Experimental Physics and Industrial Control SystemI Sistema cliente-servidor distribuído usando ChannelAccess como protocolo de comunicação

I IOCServidor de PVs (Variáveis de processo)

Gabriel Fedel PyQt no Acelerador de Partículas Brasileiro 12/35

Introdução Partículas, Luz Síncrotron e Sirius Controle nas Estações Experimentais PyQt (e PyDM) PyQt no LNLS Próximos Desafios Concluindo

EPICS

Figure: Epics

Gabriel Fedel PyQt no Acelerador de Partículas Brasileiro 13/35

Introdução Partículas, Luz Síncrotron e Sirius Controle nas Estações Experimentais PyQt (e PyDM) PyQt no LNLS Próximos Desafios Concluindo

Necessidade de Interfaces

I Escrita/Leitura EPICSI Experimentos (Python)

Flexibilidade para desenvolvimento, pois novos experimentossão criados à todo momentoExemplo: Scan

Gabriel Fedel PyQt no Acelerador de Partículas Brasileiro 14/35

Introdução Partículas, Luz Síncrotron e Sirius Controle nas Estações Experimentais PyQt (e PyDM) PyQt no LNLS Próximos Desafios Concluindo

Interface de usuários (hoje)

I SpecI Linha de comando (Python)I CS-Studio

Gabriel Fedel PyQt no Acelerador de Partículas Brasileiro 15/35

Introdução Partículas, Luz Síncrotron e Sirius Controle nas Estações Experimentais PyQt (e PyDM) PyQt no LNLS Próximos Desafios Concluindo

CS-Studio - Pontos Positivos

I Open SourceI Acesso ao EPICSI Usabilidade Simples

Gabriel Fedel PyQt no Acelerador de Partículas Brasileiro 16/35

Introdução Partículas, Luz Síncrotron e Sirius Controle nas Estações Experimentais PyQt (e PyDM) PyQt no LNLS Próximos Desafios Concluindo

CS-Studio - Pontos Negativos

I Dificuldade de ModificaçãoI Dificuldade de integração com PythonI Mistura entre controle e visualizaçãoI Alto uso de recursos

Gabriel Fedel PyQt no Acelerador de Partículas Brasileiro 17/35

Introdução Partículas, Luz Síncrotron e Sirius Controle nas Estações Experimentais PyQt (e PyDM) PyQt no LNLS Próximos Desafios Concluindo

PyQt

I Bindig do Qt para PythonI Desenvolvido pela RiverbankingI GPL (ou Licença Comercial)I Última versão 5.9 e 4.12

Gabriel Fedel PyQt no Acelerador de Partículas Brasileiro 18/35

Introdução Partículas, Luz Síncrotron e Sirius Controle nas Estações Experimentais PyQt (e PyDM) PyQt no LNLS Próximos Desafios Concluindo

PyQt - Vantagens

I Framework intuitivoI EstávelI Open sourceI PythonI Desenvolvimento rápidoI Boa performanceI Base para outras ferramentas

Orange, MXCube, PyMCA, PyDMI Multiplataforma

Gabriel Fedel PyQt no Acelerador de Partículas Brasileiro 19/35

Introdução Partículas, Luz Síncrotron e Sirius Controle nas Estações Experimentais PyQt (e PyDM) PyQt no LNLS Próximos Desafios Concluindo

PyQt - Vantagens

I Qt DesignerI Fácil desenvolvimento de widgetsI signal e slot

Gabriel Fedel PyQt no Acelerador de Partículas Brasileiro 20/35

Introdução Partículas, Luz Síncrotron e Sirius Controle nas Estações Experimentais PyQt (e PyDM) PyQt no LNLS Próximos Desafios Concluindo

PyDM - https://github.com/slaclab/pydm

I Framework simples que integra PyQt + PyEPICSI Fácil de estenderI PythonI Open Source

Gabriel Fedel PyQt no Acelerador de Partículas Brasileiro 21/35

Introdução Partículas, Luz Síncrotron e Sirius Controle nas Estações Experimentais PyQt (e PyDM) PyQt no LNLS Próximos Desafios Concluindo

PyQt no LNLS

Figure: Controle de Motor

Gabriel Fedel PyQt no Acelerador de Partículas Brasileiro 22/35

Introdução Partículas, Luz Síncrotron e Sirius Controle nas Estações Experimentais PyQt (e PyDM) PyQt no LNLS Próximos Desafios Concluindo

PyQt no LNLS

Figure: Configurações de motor

Gabriel Fedel PyQt no Acelerador de Partículas Brasileiro 23/35

Introdução Partículas, Luz Síncrotron e Sirius Controle nas Estações Experimentais PyQt (e PyDM) PyQt no LNLS Próximos Desafios Concluindo

PyQt no LNLS

Figure: Baking

Gabriel Fedel PyQt no Acelerador de Partículas Brasileiro 24/35

Introdução Partículas, Luz Síncrotron e Sirius Controle nas Estações Experimentais PyQt (e PyDM) PyQt no LNLS Próximos Desafios Concluindo

PyQt no LNLS

Figure: Tela da FAC

Gabriel Fedel PyQt no Acelerador de Partículas Brasileiro 25/35

Introdução Partículas, Luz Síncrotron e Sirius Controle nas Estações Experimentais PyQt (e PyDM) PyQt no LNLS Próximos Desafios Concluindo

PyQt no LNLS

Figure: Tela da FAC

Gabriel Fedel PyQt no Acelerador de Partículas Brasileiro 26/35

Introdução Partículas, Luz Síncrotron e Sirius Controle nas Estações Experimentais PyQt (e PyDM) PyQt no LNLS Próximos Desafios Concluindo

PyQt no LNLS

Figure: Ocean

Gabriel Fedel PyQt no Acelerador de Partículas Brasileiro 27/35

Introdução Partículas, Luz Síncrotron e Sirius Controle nas Estações Experimentais PyQt (e PyDM) PyQt no LNLS Próximos Desafios Concluindo

PyQt no LNLS

Figure: Tela de Scan

Gabriel Fedel PyQt no Acelerador de Partículas Brasileiro 28/35

Introdução Partículas, Luz Síncrotron e Sirius Controle nas Estações Experimentais PyQt (e PyDM) PyQt no LNLS Próximos Desafios Concluindo

Código Tela de Scan

I https://github.com/gabrielfedel/scanGui

Gabriel Fedel PyQt no Acelerador de Partículas Brasileiro 29/35

Introdução Partículas, Luz Síncrotron e Sirius Controle nas Estações Experimentais PyQt (e PyDM) PyQt no LNLS Próximos Desafios Concluindo

Próximos Desafios

I Threads/Assícrono/IPCThreadsProgramação Assíncrona (co-rotinas)Comunicação Via SocketComunicação Via DBus

I Definir padrõesI Controle de acesso

Gabriel Fedel PyQt no Acelerador de Partículas Brasileiro 30/35

Introdução Partículas, Luz Síncrotron e Sirius Controle nas Estações Experimentais PyQt (e PyDM) PyQt no LNLS Próximos Desafios Concluindo

Concluindo

I Experimentem PyQtI Venham nos visitar no LNLS

([email protected])I Estamos com uma vaga no nosso grupo!

http://bit.ly/VagaSOL

Gabriel Fedel PyQt no Acelerador de Partículas Brasileiro 31/35

Introdução Partículas, Luz Síncrotron e Sirius Controle nas Estações Experimentais PyQt (e PyDM) PyQt no LNLS Próximos Desafios Concluindo

Agradecimentos

I VocêsI Organização QtCon BraislI Grupos do LNLS

SOLFACTGMMX2

Gabriel Fedel PyQt no Acelerador de Partículas Brasileiro 32/35

Introdução Partículas, Luz Síncrotron e Sirius Controle nas Estações Experimentais PyQt (e PyDM) PyQt no LNLS Próximos Desafios Concluindo

After party

Gabriel Fedel PyQt no Acelerador de Partículas Brasileiro 33/35

Introdução Partículas, Luz Síncrotron e Sirius Controle nas Estações Experimentais PyQt (e PyDM) PyQt no LNLS Próximos Desafios Concluindo

PyMCA

Figure: PyMCA - http://pymca.sourceforge.net/

Gabriel Fedel PyQt no Acelerador de Partículas Brasileiro 34/35

Introdução Partículas, Luz Síncrotron e Sirius Controle nas Estações Experimentais PyQt (e PyDM) PyQt no LNLS Próximos Desafios Concluindo

MXCuBE

Figure: MXCuBE - http://www.esrf.eu/mxcube2

Gabriel Fedel PyQt no Acelerador de Partículas Brasileiro 35/35