ARChemist: Autonomous Robotic Chemistry System Architecture
Autores: Hatem Fakhruldeen, Gabriella Pizzuto, Jakub Glowacki, Andrew Ian Cooper · ICRA 2022
Licenças
- Acesso aberto
- Artigo: CC BY 4.0
Tudo o que segue se baseia no artigo completo sob a licença CC BY 4.0; sua figura é mostrada com crédito aos autores.
Em resumo
O ARChemist conecta um manipulador móvel KUKA KMR, um braço Franka Panda e instrumentos de laboratório padrão por meio de ROS e receitas YAML; a triagem de solubilidade teve sucesso em 9 de 10 execuções e a cristalização em 80 % de 5.
Por que importa
O sistema opera robôs comerciais heterogêneos em um único fluxo de trabalho químico, um manipulador móvel para transporte e um braço fixo para manusear frascos, junto com instrumentos comerciais em vez de hardware feito sob medida. Usar ROS como middleware permite adicionar novos robôs e instrumentos sem alterar a lógica central de processamento.
Problema
A maioria dos sistemas robóticos em laboratórios de química é programada para um único experimento, muitas vezes sobre arquiteturas proprietárias ou hardware sob medida como o ChemPU, e sistemas anteriores não integram robôs móveis para levar amostras a estações fora do alcance de um robô fixo. Os químicos, que em geral não são especialistas em robótica, precisam de um sistema fácil de programar, que simplifique a análise de dados e se generalize entre experimentos.
Solução proposta
O ARChemist é uma arquitetura em Python com um State Manager (materiais, robôs, estações, amostras e seus históricos), um Persistence Manager (armazenamento em banco de dados e leitura dos arquivos de configuração e de receitas) e um Workflow Manager (processador de fluxos de trabalho, escalonador de robôs, handlers paralelos de estações e robôs, monitor do sistema e gerenciador de alertas baseado em regras). O ROS é a camada de comunicação com robôs e instrumentos, com drivers próprios escritos para os equipamentos de laboratório. Cada amostra traz uma receita química em YAML legível por humanos que lista materiais, operações das estações e um fluxo de trabalho como máquina de estados, e uma nova estação ou um novo robô é adicionado fornecendo seu arquivo de classe e seu handler, que o sistema descobre na inicialização.
Principais ideias
- Separar o estado centrado no processo (materiais, estações, robôs e suas operações) do estado centrado na amostra (receita, histórico de operações, localização, status) permite que uma mesma instalação execute receitas diferentes, desde que suas estações e operações estejam no arquivo de configuração.
- O acoplamento fraco por meio da tipagem dinâmica e da introspecção de tipos do Python faz com que adicionar uma estação ou um robô exija apenas seu arquivo de classe e seu handler, sem mudanças em outros módulos.
- O manipulador móvel transporta amostras entre estações em diferentes partes do laboratório, e os autores observam que ele poderia trabalhar em paralelo com o braço fixo em outras estações.
- As execuções robóticas são mais lentas que um químico humano, mas os autores buscam livrar os químicos de tarefas repetitivas e executar experimentos por longos períodos sem interrupção.
Principais resultados
- Triagem de solubilidade: 10 execuções, taxa de sucesso de 90 %, tempo médio de execução de 12 minutos; a única falha foi o Quantos atingir o tempo limite durante a tara por causa de vibrações externas.
- Cristalização: 5 execuções, taxa de sucesso de 80 %, tempo médio de execução de 130 minutos (2 horas e 10 minutos); a falha foi o Panda posicionar errado o frasco ao levá-lo à balança.
- Fluxo de trabalho de solubilidade: 15 mg de sal dispensados pelo Quantos, 2 mL de água pela bomba peristáltica, agitação por 1 segundo a 200 rpm e imagens RGB de uma Intel RealSense D435i usadas para calcular a turbidez e detectar a dissolução.
- Fluxo de trabalho de cristalização: 200 mg de cloreto de sódio e 2 mL de água, aquecidos a 60 °C com monitoramento contínuo da massa até ela se estabilizar.
Limitações
- A Workflow User Interface é atualmente uma interface de linha de comando; os autores planejam uma gráfica.
- Apenas dois robôs e um pequeno conjunto de instrumentos (dosadores de sólidos e de líquidos, balança, placa de aquecimento e agitador) foram integrados, e cada instrumento precisou de um driver ROS próprio.
- Por segurança, o sistema completo foi testado em uma bancada aberta com água como único solvente.
- A avaliação é pequena, 10 execuções de solubilidade e 5 de cristalização, com uma falha em cada.
- A tomada de decisão por aprendizado de máquina ainda não está integrada; os autores planejam acrescentá-la.
Impacto na área
O artigo foi finalista do prêmio ICRA 2022 Outstanding Automation Paper e tem 53 citações. Ele traz o link de um vídeo dos dois estudos de caso (https://youtu.be/mcEYyOBjKpU); o artigo não indica um repositório de código.
Resumo
Experimentos de laboratório automatizados têm o potencial de impulsionar novas descobertas, ao mesmo tempo que aumentam a reprodutibilidade e melhoram a segurança dos cientistas no manuseio de materiais perigosos. No entanto, muitos fluxos de trabalho de laboratório automatizados não aproveitaram plenamente os avanços notáveis em robótica e em equipamentos de laboratório digitais. Como resultado, a maioria dos sistemas robóticos usados em laboratórios é programada especificamente para um único experimento, muitas vezes apoiando-se em arquiteturas proprietárias ou usando hardware não convencional. Neste trabalho, enfrentamos esse problema propondo uma nova arquitetura de sistema robótico projetada especificamente com e para químicos, que permite ao cientista reconfigurar facilmente sua montagem para novos experimentos. Especificamente, a força do sistema é sua capacidade de combinar plataformas robóticas heterogêneas com equipamentos de laboratório padrão para criar diferentes montagens experimentais. Por fim, mostramos como a arquitetura pode ser usada em experimentos de laboratório específicos por meio de estudos de caso como triagem de solubilidade e cristalização.
Links
- arXiv 2204.13571: https://arxiv.org/abs/2204.13571
- DOI 10.1109/ICRA46639.2022.9811996: https://doi.org/10.1109/ICRA46639.2022.9811996
- PDF: https://arxiv.org/pdf/2204.13571v1