BR112019025752B1 - Sistema de realidade virtual para simular um ambiente cirúrgico robótico, método implementado por computador para simular um ambiente cirúrgico robótico em um sistema de realidade virtual e sistema de realidade virtual para simular a cirurgia robótica - Google Patents

Sistema de realidade virtual para simular um ambiente cirúrgico robótico, método implementado por computador para simular um ambiente cirúrgico robótico em um sistema de realidade virtual e sistema de realidade virtual para simular a cirurgia robótica Download PDF

Info

Publication number
BR112019025752B1
BR112019025752B1 BR112019025752-7A BR112019025752A BR112019025752B1 BR 112019025752 B1 BR112019025752 B1 BR 112019025752B1 BR 112019025752 A BR112019025752 A BR 112019025752A BR 112019025752 B1 BR112019025752 B1 BR 112019025752B1
Authority
BR
Brazil
Prior art keywords
virtual
user
tool
environment
robotic
Prior art date
Application number
BR112019025752-7A
Other languages
English (en)
Other versions
BR112019025752A2 (pt
Inventor
Eric Mark Johnson
Pablo Eduardo Garcia Kilroy
Bernard Fai Kin Siu
Haoran YU
Original Assignee
Verb Surgical Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Verb Surgical Inc filed Critical Verb Surgical Inc
Publication of BR112019025752A2 publication Critical patent/BR112019025752A2/pt
Publication of BR112019025752B1 publication Critical patent/BR112019025752B1/pt

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B34/00Computer-aided surgery; Manipulators or robots specially adapted for use in surgery
    • A61B34/10Computer-aided planning, simulation or modelling of surgical operations
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B9/00Simulators for teaching or training purposes
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B34/00Computer-aided surgery; Manipulators or robots specially adapted for use in surgery
    • A61B34/20Surgical navigation systems; Devices for tracking or guiding surgical instruments, e.g. for frameless stereotaxis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0346Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04815Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B23/00Models for scientific, medical, or mathematical purposes, e.g. full-sized devices for demonstration purposes
    • G09B23/28Models for scientific, medical, or mathematical purposes, e.g. full-sized devices for demonstration purposes for medicine
    • G09B23/285Models for scientific, medical, or mathematical purposes, e.g. full-sized devices for demonstration purposes for medicine for injections, endoscopy, bronchoscopy, sigmoidscopy, insertion of contraceptive devices or enemas
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B17/00Surgical instruments, devices or methods, e.g. tourniquets
    • A61B2017/00681Aspects not otherwise provided for
    • A61B2017/00707Dummies, phantoms; Devices simulating patient or parts of patient
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B34/00Computer-aided surgery; Manipulators or robots specially adapted for use in surgery
    • A61B34/10Computer-aided planning, simulation or modelling of surgical operations
    • A61B2034/101Computer-aided simulation of surgical operations
    • A61B2034/102Modelling of surgical devices, implants or prosthesis
    • A61B2034/104Modelling the effect of the tool, e.g. the effect of an implanted prosthesis or for predicting the effect of ablation or burring
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B34/00Computer-aided surgery; Manipulators or robots specially adapted for use in surgery
    • A61B34/10Computer-aided planning, simulation or modelling of surgical operations
    • A61B2034/101Computer-aided simulation of surgical operations
    • A61B2034/105Modelling of the patient, e.g. for ligaments or bones
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B34/00Computer-aided surgery; Manipulators or robots specially adapted for use in surgery
    • A61B34/10Computer-aided planning, simulation or modelling of surgical operations
    • A61B2034/107Visualisation of planned trajectories or target regions
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B34/00Computer-aided surgery; Manipulators or robots specially adapted for use in surgery
    • A61B34/30Surgical robots
    • A61B34/35Surgical robots for telesurgery

Abstract

A presente invenção refere-se a um sistema de realidade virtual que proporciona um ambiente cirúrgico robótico virtual, e métodos para usar o sistema de realidade virtual. O sistema de realidade virtual pode simular um ambiente cirúrgico robótico no qual um usuário pode operar não só um instrumento cirúrgico controlado roboticamente usando um controlador de mão, mas também um instrumento cirúrgico laparoscópico manual enquanto ainda adjacente à mesa do paciente. Por exemplo, o sistema de realidade virtual f pode incluir um ou mais processadores configurados para gerar um ambiente cirúrgico robótico virtual que compreende pelo menos um braço robótico virtual e pelo menos uma ferramenta laparoscópica manual virtual, um primeiro dispositivo de mão acoplado em modo de comunicação ao controlador de realidade virtual para manipular o pelo menos um braço robótico virtual no ambiente cirúrgico robótico virtual, e um segundo dispositivo de mão que compreende uma porção de mão e uma característica de ferramenta representativa de pelo menos uma porção da ferramenta laparoscópica manual, em que o segundo dispositivo de mão é acoplado em modo de comunicação ao controlador de realidade virtual para manipular a pelo menos uma ferramenta laparoscópica manual virtual no ambiente cirúrgico robótico virtual.

Description

REFERÊNCIA CRUZADA AOS PEDIDOS RELACIONADOS
[0001] O presente pedido reivindica prioridade ao pedido de patente US n° 62/526.896, depositado em 29 de junho de 2017, cujo conteúdo é aqui incorporado por referência em sua totalidade.
[0002] CAMPO DA TÉCNICA
[0003] A presente invenção refere-se em geral ao campo da cirurgia robótica e, mais especificamente, a sistemas e métodos novos e úteis para fornecer ambientes cirúrgicos robóticos virtuais.
ANTECEDENTES DA INVENÇÃO
[0004] Cirurgia minimamente invasiva (MIS), tal como cirurgia laparoscópica, envolve técnicas pretendidas para reduzir dano ao tecido durante um procedimento cirúrgico. Por exemplo, procedimentos laparoscópicos tipicamente envolvem criar um número de pequenas incisões no paciente (por exemplo, no abdômen), e introduzir um ou mais instrumentos cirúrgicos (por exemplo, um efetor terminal, pelo menos uma câmera, etc.) através das incisões dentro o paciente. Os procedimentos cirúrgicos podem então ser realizados usando os instrumentos cirúrgicos introduzidos, com o auxiliar de visualização proporcionado pela câmera.
[0005] Em geral, o MIS oferece vários benefícios, como redução de cicatrizes do paciente, menos dor no paciente, períodos mais curtos de recuperação do paciente e custos mais baixos de tratamento médico associados à recuperação do paciente. Em algumas modalidades, o MIS pode ser realizado com sistemas robóticos que incluem um ou mais braços robóticos para manipular instrumentos cirúrgicos com base em comandos de um operador. Um braço robótico pode, por exemplo, suportar em sua extremidade distal vários dispositivos, como efetores terminais cirúrgicos, dispositivos de imagem, cânulas para fornecer acesso à cavidade do corpo e órgãos do paciente, etc.
[0006] Sistemas cirúrgicos robóticos são em geral sistemas complexos que realizam procedimentos complexos. Desse modo, um usuário (por exemplo, cirurgiões) em geral pode necessitar de significante treinamento e experiência para operar com sucesso um sistema cirúrgico robótico. Os referidos treinamento e experiência são vantajosos para efetivamente planejar as especificidades dos procedimentos de MIS (por exemplo, determinar número, localização, e orientação ótima dos braços robóticos, determinar o número e a localização ótica das incisões, determinar tipos e tamanhos ótimos dos instrumentos cirúrgicos, determinar a ordem das ações em um procedimento, etc.).
[0007] Adicionalmente, o processo de configuração dos sistemas cirúrgicos robóticos pode também ser complicado. Por exemplo, aprimoramentos em hardware (por exemplo, braços robóticos) são prototipados como modalidades físicas e fisicamente testados. Aprimoramentos em software (por exemplo, algoritmos de controle para braços robóticos) podem também necessitar de modalidades físicas. Os referidos protótipos e testes cíclicos são em geral cumulativamente onerosos e demorados.
SUMÁRIO DA INVENÇÃO
[0008] Em geral, um sistema de realidade virtual para proporcionar um ambiente cirúrgico robótico virtual pode incluir um processador de realidade virtual (por exemplo, um processador em um computador que implementa instruções armazenadas na memória) para gerar um ambiente cirúrgico robótico virtual, uma tela montada na cabeça que pode ser usada por um usuário, e um ou mais controladores portáteis manipuláveis pelo usuário para interagir com o ambiente cirúrgico robótico virtual. O processador de realidade virtual pode, em algumas variações, ser configurado para gerar um ambiente cirúrgico robótico virtual com base em pelo menos um arquivo de configuração predeterminada que descreve um componente virtual (por exemplo, componente robótico virtual) no ambiente virtual. A tela montada na cabeça pode incluir uma tela de imersão para exibir o ambiente cirúrgico robótico virtual para o usuário (por exemplo, com uma vista em perspectiva de primeira pessoa do ambiente virtual). Em algumas variações, o sistema de realidade virtual pode adicional ou alternativamente incluir uma tela externa para exibir o ambiente cirúrgico robótico virtual. A tela de imersão e a tela externa, se ambas estiverem presentes, podem ser sincronizadas para mostrar o mesmo conteúdo ou conteúdo similar. O sistema de realidade virtual pode ser configurado para gerar um ambiente cirúrgico robótico virtual dentro do qual um usuário pode navegar em torno de uma sala de operação virtual e interagir com objetos virtuais por meio da tela montada na cabeça e/ou controladores portáteis. O sistema de realidade virtual (e variações dos mesmos, como adicionalmente descrito aqui) pode funcionar como uma ferramenta útil com relação à cirurgia robótica, em aplicações que incluem, mas não são limitadas a treinamento, simulação, e/ou colaboração entre múltiplas pessoas.
[0009] Em algumas variações, um sistema de realidade virtual pode interfacear com uma sala de operação real ou atual (não-virtual). O sistema de realidade virtual pode permitir a visualização de um ambiente cirúrgico robótico, e pode incluir um processador de realidade virtual configurado para gerar um ambiente cirúrgico robótico virtual que compreende pelo menos um componente robótico virtual, e pelo menos um sensor em um ambiente cirúrgico robótico. O sensor pode estar em comunicação com o processador de realidade virtual e configurado para detectar um status de um componente robótico que corresponde ao componente robótico virtual. O processador de realidade virtual é configurado para receber o status detectado do componente robótico e modificar o componente robótico virtual com base pelo menos em parte no status detectado de modo que o componente robótico virtual mimetiza o componente robótico.
[0010] Por exemplo, um usuário pode monitorar um procedimento cirúrgico robótico atual em uma sala de operação real por meio de um sistema de realidade virtual que interfaceia com a sala de operação real (por exemplo, o usuário pode interagir com um ambiente de realidade virtual que é um reflexo das condições na sala de operação real). As posições detectadas dos componentes robóticos durante um procedimento cirúrgico podem ser comparadas com as suas posições esperadas como determinado a partir do pré-planejamento cirúrgico em um ambiente virtual, de modo que desvios a partir do plano cirúrgico podem fazer com que um cirurgião realize ajustes para evitar colisões (por exemplo, mudar a posição de um braço robótico, etc.).
[0011] Em algumas variações, os um ou mais sensores podem ser configurados para detectar características ou status de um componente robótico tal como posição, orientação, rapidez, e/ou velocidade. Como um exemplo ilustrativo, os um ou mais sensores no ambiente cirúrgico robótico podem ser configurados para detectar posição e/ou orientação de um componente robótico tal como um braço robótico. A posição e a orientação do braço robótico podem ser alimentadas para o processador de realidade virtual, que move ou de outro modo modifica um braço robótico virtual que corresponde ao braço robótico atual. Como tal, um usuário que está vendo o ambiente cirúrgico robótico virtual pode visualizar o braço robótico virtual ajustado. Como outro exemplo ilustrativo, um ou mais sensores podem ser configurados para detectar a colisão envolvendo o componente robótico no ambiente cirúrgico robótico, e o sistema pode proporcionar um alarme notificando o usuário da ocorrência da colisão.
[0012] Dentro do sistema de realidade virtual, vários modos de usuário permitem diferentes tipos de interações entre um usuário e o ambiente cirúrgico robótico virtual. Por exemplo, uma variação de um método para facilitar a navegação de um ambiente cirúrgico robótico virtual inclui exibir uma vista em perspectiva de primeira pessoa do ambiente cirúrgico robótico virtual a partir de um primeiro ponto de vantagem dentro do ambiente cirúrgico robótico virtual, exibir uma primeira vista da janela do ambiente cirúrgico robótico virtual a partir de um segundo ponto de vantagem e exibir uma segunda vista da janela do ambiente cirúrgico robótico virtual a partir de um terceiro ponto de vantagem. A primeira e segunda vistas da janela podem ser exibidas em regiões respectivas da vista exibida em perspectiva de primeira pessoa. Adicionalmente, o método pode incluir, em resposta a uma entrada de informação do usuário associando a primeira e segunda vistas da janela, que ligam em sequência a primeira e segunda vistas da janela para gerar uma trajetória entre o segundo e terceiro pontos de vantagem. As vistas de janela do ambiente cirúrgico robótico virtual podem ser exibidas em diferentes fatores de escala (por exemplo, níveis de zoom), e pode oferecer vistas do ambiente virtual a partir de qualquer ponto de vantagem adequado no ambiente virtual, tal como dentro de um paciente virtual, acima do paciente virtual, etc.
[0013] Em resposta a uma entrada de informação do usuário que indica a seleção de uma vista de janela particular, o método pode incluir exibir uma nova vista em perspectiva de primeira pessoa do ambiente virtual a partir do ponto de vantagem da vista da janela selecionada. Em outras palavras, as vistas de janela podem, por exemplo, operar como portais que facilitam o transporte entre diferentes pontos de vantagem dentro do ambiente virtual.
[0014] Como outro exemplo de interação do usuário entre um usuário e o ambiente cirúrgico robótico virtual, uma variação de um método para facilitar visualização de um ambiente cirúrgico robótico virtual inclui exibir uma vista em perspectiva de primeira pessoa do ambiente cirúrgico robótico virtual a partir de um primeiro ponto de vantagem dentro do ambiente cirúrgico robótico virtual, receber um entrada de informação do usuário que indica a colocação de uma câmera virtual em um segundo ponto de vantagem dentro do ambiente cirúrgico robótico virtual diferente a partir do primeiro ponto de vantagem, gerar uma vista em perspectiva da câmera virtual do ambiente cirúrgico robótico virtual a partir do segundo ponto de vantagem, e exibir a vista em perspectiva da câmera virtual em uma região da vista exibida em perspectiva de primeira pessoa. A vista da câmera pode, por exemplo, proporcionar uma vista suplementar do ambiente virtual para o usuário que permite que o usuário monitore vários aspectos do ambiente simultaneamente ao mesmo tempo em que ainda mantém foco principal em uma vista em perspectiva de primeira pessoa principal. Em algumas variações, o método pode adicionalmente incluir receber uma entrada de informação do usuário que indica a seleção de um tipo de câmera virtual (por exemplo, câmera de cinema configurada para ser disposta fora de um paciente virtual, uma câmera endoscópica configurada para ser disposta dentro de um paciente virtual, uma câmera de 360 graus, etc.) e exibir um modelo virtual do tipo de câmera virtual selecionada no segundo ponto de vantagem dentro do ambiente cirúrgico robótico virtual. Outros exemplos de interações do usuário com o ambiente virtual são descritos neste documento.
[0015] Em outra variação de um sistema de realidade virtual, o sistema de realidade virtual pode simular um ambiente cirúrgico robótico no qual um usuário pode operar não só um instrumento cirúrgico controlado roboticamente usando um controlador de mão, mas também um instrumento cirúrgico laparoscópico manual (por exemplo, enquanto ainda adjacente à mesa do paciente, ou "sobre o leito"). Por exemplo, um sistema de realidade virtual para simular um ambiente cirúrgico robótico pode incluir um controlador de realidade virtual configurado para gerar um ambiente cirúrgico robótico virtual que compreende pelo menos um braço robótico virtual e pelo menos um ferramenta laparoscópica manual virtual, um primeiro dispositivo de mão acoplado em modo de comunicação ao controlador de realidade virtual para manipular o pelo menos um braço robótico virtual no ambiente cirúrgico robótico virtual, e um segundo dispositivo de mão que compreende uma porção de mão e uma característica de ferramenta representativa de pelo menos uma porção de uma ferramenta laparoscópica manual, em que o segundo dispositivo de mão é acoplado em modo de comunicação ao controlador de realidade virtual para manipular a pelo menos uma ferramenta laparoscópica manual virtual no ambiente cirúrgico robótico virtual. Por exemplo, em algumas variações, a característica de ferramenta pode incluir um eixo de ferramenta e um adaptador de eixo para acoplar um eixo de ferramenta à porção de mão do segundo dispositivo de mão (por exemplo, o adaptador de eixo pode incluir prendedores). O segundo dispositivo de mão pode ser uma ferramenta laparoscópica manual em funcionamento ou um protótipo (por exemplo, versão de fac-símile ou genérica) de uma ferramenta laparoscópica manual, cujos movimentos (por exemplo, em uma característica de ferramenta) pode ser mapeada pelo controlador de realidade virtual para corresponder aos movimentos de uma ferramenta laparoscópica manual virtual.
[0016] O segundo dispositivo de mão pode ser modular. Por exemplo, a característica de ferramenta pode ser removível a partir da porção de mão do segundo dispositivo de mão, desse modo permitindo o segundo dispositivo de mão para funcionar como um dispositivo laparoscópico de mão (para controlar a ferramenta laparoscópica manual virtual) quando a característica de ferramenta é fixada à porção de mão, assim como um dispositivo de mão não laparoscópico (por exemplo, para controlar uma ferramenta roboticamente controlada ou braço robótico) quando a característica de ferramenta é destacada a partir da porção de mão. Em algumas variações, a porção de mão do segundo dispositivo de mão pode ser substancialmente similar ao primeiro dispositivo de mão.
[0017] A porção de mão do segundo dispositivo de mão pode incluir uma característica interativa, tal como um gatilho ou botão, que aciona uma função da ferramenta laparoscópica manual virtual em resposta ao engate das características interativas por um usuário. Por exemplo, um gatilho na porção de mão do segundo dispositivo de mão pode ser mapeado para um gatilho virtual na ferramenta laparoscópica manual virtual. Como um exemplo ilustrativo, em uma variação na qual a ferramenta laparoscópica manual virtual é um grampeador laparoscópico manual virtual, um gatilho na porção de mão pode ser mapeado para lançar um grampo virtual no ambiente virtual. Outros aspectos do sistema podem adicionalmente aproximar a configuração da ferramenta virtual no ambiente virtual. Por exemplo, o sistema de realidade virtual pode adicionalmente incluir um simulador de paciente (por exemplo, protótipo do abdômen do paciente) que inclui uma cânula configurada para receber pelo menos uma porção da característica de ferramenta do segundo dispositivo de mão para, desse modo, adicionalmente simular a sensação do usuário de uma ferramenta laparoscópica manual.
[0018] Em geral, um método implementado por computador para operar um ambiente cirúrgico robótico virtual pode incluir gerar um ambiente cirúrgico robótico virtual usando uma aplicação de usuário, onde o ambiente cirúrgico robótico virtual inclui pelo menos um componente robótico virtual, e passar informação entre duas aplicações de software de modo a efetuar movimentos do componente robótico virtual. Por exemplo, em resposta a uma entrada de informação do usuário para mover o pelo menos um componente robótico virtual no ambiente cirúrgico robótico virtual, o método pode incluir passar informação de status relativa ao pelo menos um componente robótico virtual a partir da aplicação de usuário para uma aplicação de servidor, gerar um comando de acionamento com base na entrada de informação do usuário e a informação de status usando a aplicação de servidor, passar o comando de acionamento a partir da aplicação de servidor para a aplicação de usuário, e mover o pelo menos um componente robótico virtual com base no comando de acionamento. A aplicação de usuário e a aplicação de servidor podem ser rodadas em um dispositivo processador compartilhado, ou em dispositivos processadores separados.
[0019] Em algumas variações, passar informação de status e/ou passar o comando de acionamento pode incluir invocar uma interface de programação de aplicação (API) para suportar comunicação entre as aplicações de cliente e de servidor. A API pode incluir uma ou mais definições de estruturas de dados para componentes robóticos virtuais e outros componentes virtuais no ambiente virtual. Por exemplo, a API pode incluir uma pluralidade de estruturas de dados para um braço robótico virtual, um segmento de braço robótico virtual (por exemplo, ligação), uma mesa de paciente virtual, uma cânula virtual, e/ou um instrumento cirúrgico virtual. Como outro exemplo, a API pode incluir uma estrutura de dados para um ponto de toque virtual para permitir a manipulação de pelo menos um componente robótico virtual (por exemplo, braço robótico virtual) ou outro componente virtual.
[0020] Por exemplo, o método pode incluir passar informação de status relativa a um braço robótico virtual, tal como posição e orientação (por exemplo, pose do braço robótico virtual). A aplicação de usuário pode passar a referida informação de status para a aplicação de servidor, com o que a aplicação de servidor pode gerar um comando de acionamento com base em cinemáticas associadas com o braço robótico virtual.
[0021] Como descrito neste documento, há várias aplicações e usos para o sistema de realidade virtual. Em uma variação, o sistema de realidade virtual pode ser usado para acelerar o ciclo R&D durante o desenvolvimento de um sistema cirúrgico robótico, tal como por permitir simulação de projeto potencial sem o tempo e as despesas significantes de protótipos físicos. Por exemplo, um método para projetar um sistema cirúrgico robótico pode incluir gerar um modelo virtual de um sistema cirúrgico robótico, testar o modelo virtual do sistema cirúrgico robótico no ambiente da sala de operação virtual, modificar o modelo virtual do sistema cirúrgico robótico com base no teste, e gerar um modelo real do sistema cirúrgico robótico com base no modelo virtual modificado. Testar o modelo virtual pode, por exemplo, envolver realizar um procedimento cirúrgico virtual usando um braço robótico virtual e um instrumento cirúrgico virtual suportado pelo braço robótico virtual, tal como através da aplicação de usuário descrito neste documento. Durante um teste, o sistema pode detectar um ou mais eventos de colisão envolvendo o braço robótico virtual, que pode, por exemplo, engatilhar a modificação para o modelo virtual (por exemplo, modificar o braço robótico virtual no comprimento, diâmetro, da ligação, etc.) em resposta ao evento de colisão detectado. Teste adicional do modelo virtual modificado pode então ser realizado, para desse modo confirmar se a modificação reduziu a probabilidade de um evento de colisão ocorrendo durante o procedimento cirúrgico virtual. Desse modo, testar e modificar os projetos do sistema cirúrgico robótico em um ambiente virtual pode ser usado para identificar itens antes de testar protótipos físicos dos projetos.
[0022] Em outra variação, o sistema de realidade virtual pode ser usado para testar um modo controlado para um componente cirúrgico robótico. Por exemplo, um método para testar um modo controlado para um componente cirúrgico robótico pode incluir gerar um ambiente cirúrgico robótico virtual, o ambiente cirúrgico robótico virtual que compreende pelo menos um componente robótico virtual que corresponde ao componente cirúrgico robótico, emular um modo controlado para o componente cirúrgico robótico no ambiente cirúrgico robótico virtual, e, em resposta a um entrada de informação do usuário para mover o pelo menos um componente robótico virtual, mover o pelo menos um componente robótico virtual de acordo com o modo controlado emulado. Em algumas variações, mover o componente robótico virtual pode incluir passar informação de status relativa ao pelo menos um componente robótico virtual a partir de uma primeira aplicação (por exemplo, aplicação de um ambiente de operação virtual) para uma segunda aplicação (por exemplo, aplicação de cinemáticas), gerar um comando de acionamento com base na informação de status e no modo controlado emulado, passar o comando de acionamento a partir da segunda aplicação para a primeira aplicação, e mover o pelo menos um componente robótico virtual no ambiente cirúrgico robótico virtual com base no comando de acionamento.
[0023] Por exemplo, o modo controlado para ser testado pode ser a trajetória em seguida do modo controlado para um braço robótico. Na trajetória seguinte, o movimento do braço robótico pode ser programado então emulado usando o sistema de realidade virtual. Desse modo, quando o sistema é usado para emular a trajetória em seguida do modo controlado, o comando de acionamento gerado pela aplicação de cinemáticas pode incluir gerar um comando acionado para cada uma de uma pluralidade de juntas virtuais no braço robótico virtual. O referido conjunto de comandos acionados pode ser implementado por uma aplicação de um ambiente de operação virtual para mover o braço robótico virtual no ambiente virtual, desse modo permitindo testar para colisão, volume ou espaço de trabalho de movimento, etc.
[0024] Outras variações e exemplos dos sistemas de realidade virtual, os seus modos de usuário e interações, e aplicações e usos dos sistemas de realidade virtual são descritos em detalhes adicionais neste documento.
[0025] BREVE DESCRIÇÃO DOS DESENHOS
[0026] A Figura 1A ilustra um exemplo de um arranjo de sala de operação com um sistema cirúrgico robótico e um console do cirurgião. A Figura 1B é uma ilustração esquemática de um exemplo de variação de um manipulador de braço robótico, acionador de ferramenta, e cânula com uma ferramenta cirúrgica.
[0027] A Figura 2A é uma ilustração esquemática de uma variação de um sistema de realidade virtual. A Figura 2B é uma ilustração esquemática de uma tela de imersão para exibir uma vista de imersão de um ambiente de realidade virtual.
[0028] A Figura 3 é uma ilustração esquemática de componentes de um sistema de realidade virtual.
[0029] A Figura 4A é um exemplo de estrutura para a comunicação entre uma aplicação de ambiente de realidade virtual e uma aplicação de cinemáticas para uso em um sistema de realidade virtual. As Figuras 4B e 4C são tabelas que resumem exemplos de estruturas de dados e campos para uma interface de programa de aplicação para comunicação entre a aplicação de ambiente de realidade virtual e a aplicação de cinemáticas.
[0030] A Figura 5A é uma ilustração esquemática de outra variação de um sistema de realidade virtual que inclui um exemplo de variação de um controlador laparoscópico de mão. A Figura 5B é uma ilustração esquemática de uma tela de imersão para exibir uma vista de imersão de um ambiente de realidade virtual que inclui a ferramenta laparoscópica manual virtual controlada pelo controlador laparoscópico de mão.
[0031] A Figura 6A é uma vista em perspectiva de um exemplo de variação de um controlador laparoscópico de mão. A Figura 6B é uma ilustração esquemática de uma ferramenta laparoscópica manual virtual sobreposta em parte do controlador laparoscópico de mão mostrado na Figura 6A. As Figuras 6C-6E são uma vista lateral, uma vista em perspectiva parcial detalhada, e uma vista em seção transversal parcial, respectivamente, do controlador laparoscópico de mão mostrado na Figura 6A.
[0032] A Figura 7 é uma ilustração esquemática de outra variação de um sistema de realidade virtual que interfaceia com um ambiente cirúrgico robótico.
[0033] A Figura 8 é uma ilustração esquemática de um menu exibido para selecionar um ou mais modos de usuário de uma variação de um sistema de realidade virtual.
[0034] As Figuras 9A a 9C são ilustrações esquemáticas de um ambiente cirúrgico robótico virtual com exemplo de portais.
[0035] As Figuras 10A e 10B são ilustrações esquemáticas de um exemplo de ambiente cirúrgico robótico virtual visto em um modo de voo. A Figura 10C é uma ilustração esquemática de uma região de transição para modificar a vista do exemplo de ambiente cirúrgico robótico virtual em modo de voo.
[0036] A Figura 11 é uma ilustração esquemática de um ambiente cirúrgico robótico virtual visto a partir de um ponto de vantagem proporcionando um exemplo de vista em forma de maquete de uma sala de operação virtual.
[0037] A Figura 12 é uma ilustração esquemática de uma vista de um ambiente cirúrgico robótico virtual com um exemplo de exibição ampliada para exibir vistas suplementares.
[0038] A Figura 13 é uma ilustração esquemática de uma tela proporcionada por uma variação de um sistema de realidade virtual que opera em um modo de estação de comando virtual.
[0039] A Figura 14 é um gráfico de fluxo de um exemplo de variação de um método para operar um menu de modo de usuário para a seleção de modos de usuário em um sistema de realidade virtual.
[0040] A Figura 15 é um gráfico de fluxo de um exemplo de variação de um método para operar em um modo de rotação de vista do ambiente em um sistema de realidade virtual.
[0041] A Figura 16 é um gráfico de fluxo de um exemplo de variação de um método para operar um modo de usuário permitindo pontos de pressão em um ambiente virtual.
DESCRIÇÃO DETALHADA
[0042] Exemplos de vários aspectos e variações da presente invenção são descritos neste documento e ilustrados nos desenhos em anexo. A descrição a seguir não se destina a limitar a invenção a essas modalidades, mas sim a permitir que uma pessoa versada na técnica faça e use a presente invenção.
VISÃO GERAL DO SISTEMA CIRÚRGICO ROBÓTICO
[0043] Um exemplo de sistema cirúrgico robótico e ambiente cirúrgico é ilustrado na Figura 1A. Como mostrado na Figura 1A, um sistema cirúrgico robótico 150 pode incluir um ou mais braços robóticos 160 localizados em uma plataforma cirúrgica (por exemplo, mesa, cama, etc.), onde efetores terminais ou ferramenta cirúrgicas são fixadas às extremidades distais dos braços robóticos 160 por executar um procedimento cirúrgico. Por exemplo, um sistema cirúrgico robótico 150 pode incluir, como mostrado no exemplo esquemático da Figura 1B, pelo menos um braço robótico 160 acoplado à plataforma cirúrgica, e um acionador de ferramenta 170 em geral fixado à extremidade distal do braço robótico 160. A cânula 100 acoplada à extremidade de um acionador de ferramenta 170 pode receber e guiar um instrumento cirúrgico 190 (por exemplo, efetor terminal, câmera, etc.). Adicionalmente, o braço robótico 160 pode incluir uma pluralidade de ligações que são acionadas de modo a posicionar e orientar um acionador de ferramenta 170, que aciona o instrumento cirúrgico 190. O sistema cirúrgico robótico pode adicionalmente incluir uma torre de controle 152 (por exemplo, que inclui uma fonte de energia, equipamento de computação, etc.) e/ou outro equipamento adequado para dar suporte funcional aos componentes robóticos.
[0044] Em algumas variações, um usuário (tal como um cirurgião ou outro operador) pode usar um console de usuário 100 para manipular remotamente os braços robóticos 160 e/ou instrumentos cirúrgicos (por exemplo, teleoperação). O console de usuário 100 pode ser localizado na mesma sala de procedimento que o sistema robótico 150, como mostrado na Figura 1A. Em outras modalidades, o console de usuário 100 pode ser localizado em uma sala adjacente ou próxima, ou teleoperado a partir de uma localização remota em um edifício, cidade, ou país diferente. Em um exemplo, o console de usuário 100 compreende um assento 110, controles operados por pé 120, um ou mais dispositivos de interface de usuário portáteis 122, e pelo menos uma tela de usuário 130 configurada para exibir, por exemplo, a vista do campo cirúrgico dentro de um paciente. Por exemplo, como mostrado no exemplo de console de usuário mostrado na Figura 1C, um usuário localizado no assento 110 e que está vendo a tela de usuário 130 pode manipular os controles operados por pé 120 e/ou dispositivos de interface de usuário portáteis para remotamente controlar os braços robóticos 160 e/ou instrumentos cirúrgicos.
[0045] Em algumas variações, um usuário pode operar o sistema cirúrgico robótico 150 em um modo "sobre o leito" (OTB), no qual o usuário está no lado do paciente e simultaneamente manipular um acionador de ferramenta/efetor terminal roboticamente acionado fixado ao mesmo (por exemplo, com um dispositivo de interface de usuário de mão 122 segurado em uma mão) e a ferramenta laparoscópica manual. Por exemplo, a mão esquerda do usuário pode estar manipulando um dispositivo de interface de usuário de mão 122 para controlar um componente cirúrgico robótico, enquanto a mão direita do usuário pode estar manipulando a ferramenta laparoscópica manual. Assim, nas referidas variações, o usuário pode realizar não só MIS com auxílio robótico, mas também técnicas laparoscópicas manuais em um paciente.
[0046] Durante um exemplo de procedimento ou cirurgia, o paciente é preparado e coberto em um modo estéril, e anestesia é alcançada. O acesso inicial ao campo cirúrgico pode ser realizado manualmente com o sistema robótico 150 em uma configuração de reboque ou configuração de retirada para facilitar acesso ao campo cirúrgico. Uma vez que o acesso está completado, o posicionamento e/ou a preparação inicial do sistema robótico pode ser realizado. Durante o procedimento cirúrgico, um cirurgião ou outro usuário no console de usuário 100 pode utilizar os controles operados por pé 120 e/ou dispositivos de interface de usuário 122 para manipular vários efetores terminais e/ou sistemas de imagem para realizar o procedimento. Assistência manual pode também ser proporcionada na mesa de procedimento por pessoal com vestuário estéril, que pode realizar tarefas que incluem, mas não são limitadas a recolher órgãos, ou realizar reposicionamento manual ou troca de ferramenta envolvendo um ou mais braços robóticos 160. Pessoal com vestuário não estéril pode também estar presente para auxiliar o cirurgião no console de usuário 100. Quando o procedimento ou cirurgia é completado, o sistema robótico 150 e/ou o console de usuário 100 pode ser configurado ou ajustado em um estado para facilitar um ou mais procedimentos pós-operatórios, que incluem, mas não são limitados a sistema robótico 150 limpeza e/ou esterilização, e/ou entrada ou impressão de registro de assistência médica, se eletrônica ou cópia impressa, tal como por meio do console de usuário 100.
[0047] Na Figura 1A, os braços robóticos 160 são mostrados com um sistema montado na mesa, mas em outras modalidades, os braços robóticos podem ser montados em um carrinho, teto ou parede lateral, ou em outra superfície de suporte adequada. A comunicação entre o sistema robótico 150, o console de usuário 100, e quaisquer outras telas pode ser por meio de conexões com fio e/ou sem fio. Quaisquer conexões com fio podem ser opcionalmente construídas no piso e/ou paredes ou teto. A comunicação entre o console de usuário 100 e o sistema robótico 150 pode ser com fio e/ou sem fio, e pode ser proprietária e/ou realizada usando qualquer um de uma variedade de protocolos de comunicação de dados. Em ainda outras variações, o console de usuário 100 não inclui uma tela integrada 130, mas pode proporcionar uma saída de vídeo que pode ser conectada para saída a uma ou mais telas genéricas, que inclui telas remotas acessíveis por meio da internet ou da rede. A saída ou alimentação de vídeo também pode ser criptografada para garantir a privacidade e toda ou parte da saída de vídeo pode ser salva em um servidor ou sistema de registro eletrônico de saúde.
[0048] Em outros exemplos, consoles de usuário 100 adicionais podem ser proporcionados, por exemplo, para controlar instrumentos cirúrgicos adicionais, e/ou para obter controle de um ou mais instrumentos cirúrgicos em um console de usuário principal. Isso permitirá, por exemplo, um cirurgião assumir ou ilustrar uma técnica durante um procedimento cirúrgico com estudantes de medicina e médicos em treinamento, ou auxiliar durante cirurgias complexas que exijam múltiplos cirurgiões agindo simultaneamente ou de maneira coordenada.
SISTEMA DE REALIDADE VIRTUAL
[0049] Um sistema de realidade virtual para proporcionar um ambiente cirúrgico robótico virtual é descrito neste documento. Como mostrado na Figura 2A, um sistema de realidade virtual 200 pode incluir um processador de realidade virtual 210 (por exemplo, um processador em um computador que implementa instruções armazenadas na memória) para gerar um ambiente cirúrgico robótico virtual, uma tela montada na cabeça 220 que pode ser usada por um usuário U, e um ou mais controladores portáteis 230 manipuláveis pelo usuário U para interagir com o ambiente cirúrgico robótico virtual. Como mostrado na Figura 2B, a tela montada na cabeça 220 pode incluir uma tela de imersão 222 para exibir o ambiente cirúrgico robótico virtual para o usuário U (por exemplo, com uma vista em perspectiva de primeira pessoa do ambiente virtual). A tela de imersão pode, por exemplo, ser uma tela estereoscópica proporcionadas por conjuntos de peças oculares. Em algumas variações, o sistema de realidade virtual 200 pode adicional ou alternativamente incluir uma tela externa 240 para exibir o ambiente cirúrgico robótico virtual. A tela de imersão 222 e a tela externa 240, se ambas estiverem presentes, podem ser sincronizadas para mostrar o mesmo conteúdo ou conteúdo similar.
[0050] Como descrito em detalhes adicionais neste documento, o sistema de realidade virtual (e variações dos mesmos, como adicionalmente descrito neste documento) pode funcionar como uma ferramenta útil com relação a cirurgia robótica, em aplicações que incluem, mas não são limitadas a treinamento, simulação, e/ou colaboração entre múltiplas pessoas. Exemplos mais específicos de aplicações e usos do sistema de realidade virtual são descritos neste documento.
[0051] Em geral, o processador de realidade virtual é configurado para gerar um ambiente cirúrgico robótico virtual dentro do qual um usuário pode navegar em torno de uma sala de operação virtual e interagir com objetos virtuais por meio da tela montada na cabeça e/ou controladores portáteis. Por exemplo, um sistema cirúrgico robótico virtual pode ser integrado dentro de uma sala de operação virtual, com um ou mais componentes robóticos virtuais tendo malhas tridimensionais e características selecionadas (por exemplo, dimensões e restrições de cinemática de braços robóticos virtuais e/ou ferramentas cirúrgicas virtuais, número e arranjo dos mesmos, etc.). Outros objetos virtuais, tais como torres de controle virtuais ou outro equipamento virtual que representa equipamento suportando o sistema cirúrgico robótico, um paciente virtual, uma mesa virtual ou outra superfície para o paciente, equipe médica virtual, um console de usuário virtual, etc., podem também ser integrados dentro da sala de operação de realidade virtual.
[0052] Em algumas variações, a tela montada na cabeça 220 e/ou os controladores portáteis 230 podem ser versões modificadas das incluídas em qualquer sistema de hardware de realidade virtual adequado que está disponível no comércio para aplicações que incluem ambientes virtuais e de realidade aumentada (por exemplo, para jogos e/ou objetivos militares) e são familiares para aqueles versados na técnica. Por exemplo, a tela montada na cabeça 220 e/ou os controladores portáteis 230 podem ser modificados para permitir a interação por um usuário com um ambiente cirúrgico robótico virtual (por exemplo, um controlador de mão 230 pode ser modificado como descrito abaixo para operar como um controlador laparoscópico de mão). O controlador de mão pode incluir, por exemplo, um dispositivo portado (por exemplo, bastão, dispositivo remoto, etc.) e/ou a vestuário usado nas mãos do usuário (por exemplo, luvas, anéis, pulseiras, etc.) e que inclui sensores e/ou configurado para cooperar com sensores externos para, desse modo, proporcionar o rastreamento das mãos do usuário(s), dedo(s) individual(s), punho(s), etc. Outros controladores adequados podem adicional ou alternativamente ser usados (por exemplo, mangas configuradas para proporcionar rastreamento do(s) braço(s) do usuário).
[0053] Em geral, um usuário U pode vestir a tela montada na cabeça 220 e transportar (ou vestir) pelo menos um controlador de mão 230 enquanto ele se move em torno de um espaço de trabalho físico, como uma sala de treinamento. Enquanto estiver usando o monitor montado na cabeça 220, o usuário pode visualizar uma vista em perspectiva de imersão em primeira pessoa do ambiente cirúrgico robótico virtual gerado pelo processador de realidade virtual 210 e exibido no monitor imersivo 222. Como mostrado na Figura 2B, a vista exibida na tela de imersão 222 pode incluir uma ou mais representações gráficas 230 dos controladores portáteis (por exemplo, modelos virtuais dos controladores portáteis, modelos virtuais de mãos humanas no lugar de controladores portáteis ou controladores portáteis, etc.). Uma vista em perspectiva em primeira pessoa semelhante pode ser exibida em uma tela externa 240 (por exemplo, para assistentes, mentores ou outras pessoas adequadas para ver). Na medida em que o usuário se move e navega dentro do espaço de trabalho, o processador de realidade virtual 210 pode mudar a visão do ambiente cirúrgico robótico virtual exibido na tela de imersão 222 com base pelo menos em parte na localização e orientação da tela montada na cabeça (e, portanto, localização e orientação do usuário), permitindo que o usuário sinta como se estivesse explorando e se movendo dentro do ambiente cirúrgico robótico virtual.
[0054] Adicionalmente, o usuário pode adicionalmente interagir com o ambiente cirúrgico robótico virtual por mover e/ou manipular os controladores portáteis 230. Por exemplo, os controladores portáteis 230 podem incluir um ou mais botões, gatilhos, características de tela de toque, esferas de rolagem, chaves, e/ou outras características adequadas interativas que o usuário pode manipular para interagir com o ambiente virtual. Na medida em que o usuário move os controladores portáteis 230, o processador de realidade virtual 210 pode mover as representações gráficas 230’ dos controladores portáteis (ou um cursor ou outro ícone representativo) dentro do ambiente cirúrgico robótico virtual. Adicionalmente, engatar uma ou mais características interativas dos controladores portáteis 230 pode permitir que o usuário manipule aspectos do ambiente virtual. Por exemplo, o usuário pode mover um controlador de mão 230 até que a representação gráfica 230’ do controlador de mão esteja em proximidade a um ponto de toque virtual (por exemplo, localização selecionável) em um braço robótico virtual no ambiente, engatar um gatilho ou outras características interativas no controlador de mão 230 para selecionar o ponto de toque virtual, então mover o controlador de mão 230 ao mesmo tempo em que engata o gatilho para arrastar ou de outro modo manipular o braço robótico virtual por meio do ponto de toque virtual. Outros exemplos de interações do usuário com o ambiente cirúrgico robótico virtual são descritos em detalhes adicionais abaixo.
[0055] Em algumas variações, o sistema de realidade virtual pode engatar outros sentidos do usuário. Por exemplo, o sistema de realidade virtual pode incluir um ou mais dispositivos de áudio (por exemplo, fones de ouvido para o usuário, caixas de som, etc.) para retransmitir feedback de áudio para o usuário. Como outro exemplo, o sistema de realidade virtual pode proporcionar feedback tátil, tal como vibração, em um ou mais dos controladores portáteis 230, a tela montada na cabeça 220, ou outros dispositivos hápticos que entram em contato com o usuário (por exemplo, luvas, pulseiras, etc.).
PROCESSADOR DE REALIDADE VIRTUAL
[0056] O processador de realidade virtual 210 pode ser configurado para gerar um ambiente cirúrgico robótico virtual dentro do qual um usuário pode navegar em torno de uma sala de operação virtual e interagir com objetos virtuais. Uma ilustração em geral esquemática de um exemplo de interação entre o processador de realidade virtual e pelo menos alguns componentes do sistema de realidade virtual são mostrados na Figura 3.
[0057] Em algumas variações, o processador de realidade virtual 210 pode estar em comunicação com componentes de hardware tal como a tela montada na cabeça 220, e/ou controladores portáteis 230. Por exemplo, o processador de realidade virtual 210 pode receber entrada a partir de sensores em uma tela montada na cabeça 220 para determinar a localização e a orientação do usuário dentro do espaço físico de trabalho, que pode ser usado para gerar uma vista em perspectiva de primeira pessoa adequada correspondente do ambiente virtual para exibir na tela montada na cabeça 220 para o usuário. Como outro exemplo, o controle de realidade virtual 210 pode receber entrada a partir de sensores no controladores portáteis 230 para determinar a localização e a orientação do controladores portáteis 230, que pode ser usado para gerar representações gráficas adequadas dos controladores portáteis 230 para exibir em uma tela montada na cabeça 220 para o usuário, assim como traduzir a entrada de informação do usuário (para interagir com o ambiente virtual) em modificações correspondentes do ambiente cirúrgico robótico virtual. O processador de realidade virtual 210 pode ser acoplado a uma tela externa 240 (por exemplo, uma tela de monitor) que é visível para o usuário em um modo de não imersão e/ou para outras pessoas tais como assistentes ou mentores que pode desejar ver as interações do usuário com o ambiente virtual.
[0058] Em algumas variações, o processador de realidade virtual 210 (ou múltiplas máquinas processadoras) pode ser configurado para executar uma ou mais aplicações de software para gerar o ambiente cirúrgico robótico virtual. Por exemplo, como mostrado na Figura 4, o processador de realidade virtual 210 pode utilizar pelo menos duas aplicações de software, que inclui uma aplicação de um ambiente de operação virtual 410 e uma aplicação de cinemáticas 420. A aplicação de um ambiente de operação virtual e a aplicação de cinemáticas podem se comunicar por meio de um modelo cliente-servidor. Por exemplo, a aplicação de um ambiente de operação virtual pode operar como um cliente, embora a aplicação de cinemáticas possa operar como um servidor. A aplicação de ambiente de operação virtual 410 e a aplicação de cinemáticas 420 podem ser executadas na mesma máquina de processamento, ou em máquinas de processamento separadas acopladas por meio de uma rede de computador (por exemplo, o cliente ou o servidor pode ser um dispositivo remoto, ou as máquinas podem ser em uma rede de computador local). Adicionalmente, deve ser entendido que em outras variações, a aplicação de um ambiente de operação virtual 410 e/ou a aplicação de cinemáticas 420 pode interfacear com outros componentes de software. Em algumas variações, a aplicação de um ambiente de operação virtual 410 e a aplicação de cinemáticas 520 pode invocar uma ou mais interfaces de programa de aplicação (APIs), que definem a maneira pela qual as aplicações se comunicam uma com a outra.
[0059] O ambiente de operação virtual 410 pode permitir uma descrição ou definição de um ambiente da sala de operação virtual (por exemplo, a sala de operação, mesa de operação, torre de controle ou outros componentes, console de usuário, braços robóticos, ligações do adaptador da mesa acoplando os braços robóticos à mesa de operação, etc.). Pelo menos algumas descrições de um ambiente da sala de operação virtual podem ser salvos (por exemplo, em um banco de dados de componente de realidade virtual modelo 202) e proporcionado para o processador como arquivos de configuração. Por exemplo, em algumas variações, como mostrado na Figura 3, o processador de realidade virtual (tal como através de uma aplicação de um ambiente de operação virtual 410 descrito acima) pode estar em comunicação com um banco de dados de componente de realidade virtual modelo 202 (por exemplo, armazenadas em um servidor, disco rígido local ou remoto, ou outra memória adequada). O banco de dados de componente de realidade virtual modelo 202 pode armazenar um ou mais arquivos de configuração que descrevem componentes virtuais do ambiente cirúrgico robótico virtual. Por exemplo, o banco de dados 202 pode armazenar arquivos que descrevem diferentes tipos de salas de operação (por exemplo, variando em formato do ambiente ou dimensões do ambiente), mesas de operação ou outras superfícies nas quais um paciente se encontra (por exemplo, variando em tamanho, altura, superfícies, construção de material, etc.), torres de controle (por exemplo, variando em tamanho e formato), console de usuário (por exemplo, variando em configuração do assento do usuário), braços robóticos (por exemplo, configuração de ligações e juntas de braço, número e arranjo dos mesmos, número e localização de pontos de toque virtual no braço, etc.), ligações do adaptador da mesa acoplando braços robóticos a uma mesa de operação (por exemplo, configuração de ligações do adaptador da mesa e juntas, número e arranjo dos mesmos, etc.), tipos de paciente (por exemplo, variando em sexo, idade, peso, altura, circunferência, etc.) e/ou equipe médica (por exemplo, representações gráficas genéricas de pessoas, representações gráficas de equipe médica atual, etc.). Como um exemplo específico, um arquivo de configuração em Unified Robot Description Format (URDF) pode armazenar a configuração de um braço robótico particular, que inclui definições ou valores para campos tais como número de ligações de braço, número de juntas de braço conectando as ligações de braço, comprimento de cada ligação de braço, diâmetro ou circunferência de cada ligação de braço, massa de cada ligação de braço, tipo de junta de braço (por exemplo, rolo, passo, guinada etc.), etc. Adicionalmente, restrições de cinemática podem ser carregadas como um "envoltório" sobre um componente robótico virtual (por exemplo, braço) para adicionalmente definir o comportamento cinemático do componente robótico virtual. Em outras variações, o processador de realidade virtual 210 pode receber quaisquer descrições adequadas de componentes virtuais para carregar e gerar no ambiente cirúrgico robótico virtual. Desse modo, o processador de realidade virtual 210 pode receber e utilizar diferentes combinações de arquivos de configuração e/ou outras descrições de componentes virtuais para gerar ambientes cirúrgicos robóticos virtuais particulares.
[0060] Em algumas variações, como mostrado na Figura 3, o processador de realidade virtual 210 pode adicional ou alternativamente estar em comunicação com um banco de dados de registros de paciente 204, que pode armazenar informação específica de paciente. A referida informação específica de paciente pode incluir, por exemplo, dados de imagem do paciente (por exemplo, raio X, MRI, CT, ultrassom, etc.), históricos médicos, e/ou métricas do paciente (por exemplo, idade, peso, altura, etc.), embora outra informação adequada específica de paciente pode adicional ou alternativamente ser armazenada no banco de dados de registros de paciente 204. Quando gerar o ambiente cirúrgico robótico virtual, o processador de realidade virtual 210 pode receber informação específica de paciente a partir do banco de dados de registros de paciente 204 e integrar pelo menos algumas das informações recebidas dentro do ambiente de realidade virtual. Por exemplo, uma representação realística do corpo do paciente ou outro tecido pode ser gerada e incorporada dentro do ambiente de realidade virtual (por exemplo, um modelo 3D gerado a partir de uma pilha combinada de imagens 2D, tal como imagens de MRI), que pode ser útil, por exemplo, para determinar arranjos desejáveis de braços robóticos em torno do paciente, colocação de porta ótima, etc. específica para um paciente particular, como adicionalmente descrito neste documento. Como outro exemplo, dados de imagem do paciente podem ser sobrepostos sobre uma porção do campo do usuário de vista do ambiente virtual (por exemplo, sobrepondo uma imagem de ultrassom de um tecido do paciente sobre o tecido virtual do paciente).
[0061] Em algumas variações, o processador de realidade virtual 210 pode incluir um ou mais algoritmos de cinemática por meio da aplicação de cinemáticas 420 para pelo menos parcialmente descrever o comportamento de um ou mais componentes do sistema robótico virtual no ambiente cirúrgico robótico virtual. Por exemplo, um ou mais algoritmos podem definir como um braço robótico virtual responde a interações do usuário (por exemplo, mover o braço robótico virtual por seleção e manipulação de um ponto de toque no braço robótico virtual), ou como um braço robótico virtual opera em um modo controlado selecionado. Outros algoritmos de cinemática, tais como os que definem a operação de um acionador de ferramenta virtual, uma mesa de paciente virtual, ou outros componentes virtuais, podem adicional ou alternativamente ser embutidos no ambiente virtual. Por embutir no ambiente virtual um ou mais algoritmos de cinemática que descrevam com precisão o comportamento de um sistema cirúrgico robótico atual (real), o processador de realidade virtual 210 pode permitir que o sistema cirúrgico robótico virtual funcione com precisão ou de modo realista comparado a uma implementação física de um sistema cirúrgico robótico real correspondente. Por exemplo, o processador de realidade virtual 210 pode embutir pelo menos um algoritmo de controle que representa ou corresponde a um ou mais modos controlados que definem o movimento de um componente robótico (por exemplo, braço) em um sistema cirúrgico robótico atual.
[0062] Por exemplo, a aplicação de cinemáticas 420 pode permitir a descrição ou a definição de um ou mais modos de controle virtuais, tal como para os braços robóticos virtuais ou outros componentes virtuais adequados no ambiente virtual. Em geral, por exemplo, um modo controlado para um braço robótico virtual pode corresponder a um bloco de função que permite que o braço robótico virtual realize ou execute uma tarefa particular. Por exemplo, como mostrado na Figura 4, um sistema de controle 430 pode incluir múltiplos modos de controle virtuais 432, 434, 436, etc. governando o acionamento de pelo menos uma junta no braço robótico virtual. Os modos de controle virtuais 432, 434, 436, etc. podem incluir pelo menos um modo primitivo (que governa o comportamento subjacente para o acionamento de pelo menos uma junta) e/ou pelo menos um modo de usuário (que governa um nível mais alto, comportamento específico de tarefa e pode utilizar um ou mais modos primitivos). Em algumas variações, um usuário pode ativar uma superfície de ponto de toque virtual de um braço robótico virtual ou outro objeto virtual, desse modo engatilhando um modo controlado particular (por exemplo, por meio de uma máquina de estado ou outro controlador). Em algumas variações, um usuário pode diretamente selecionar um modo controlado particular através, por exemplo, de um menu exibido em uma vista em perspectiva de primeira pessoa do ambiente virtual.
[0063] Exemplos de modos primitivos de controle virtuais incluem, mas não são limitados a modo de comando de junta (que permite que um usuário diretamente acione uma única junta virtual individualmente, e/ou múltiplas juntas virtuais coletivamente), o modo de compensação de gravidade (no qual o braço robótico virtual mantém a si mesmo em uma pose particular, com posição e orientação particular das ligações e juntas, sem arrastar para baixo em virtude de gravidade simulada), e modo de seguir a trajetória (no qual o braço robótico virtual pode se mover para seguir a sequência de um ou mais comandos Cartesianos ou outros comandos de trajetória). Exemplos de modos de usuário que incorporam um ou mais modos de controle primitivos incluem, mas não são limitados a um modo inativo (no qual o braço robótico virtual pode ficar em uma pose atual ou de partida aguardando por comandos adicionais), um modo de configuração (no qual o braço robótico virtual pode fazer uma transição para uma pose de configuração de partida ou uma predeterminada pose de modelo para um tipo de procedimento cirúrgico particular), e um modo de ancoragem (no qual o braço robótico facilita o processo no qual o usuário fixa o braço robótico a uma parte, tal como com compensação de gravidade, etc.).
[0064] Em geral, a aplicação de um ambiente de operação virtual 410 e a aplicação de cinemáticas 420 podem se comunicar uma com a outra por meio de um predefinido protocolo de comunicação, tal como uma interface de programa de aplicação (APIs) que organiza informação (por exemplo, status ou outras características) de objetos virtuais e outros aspectos do ambiente virtual. Por exemplo, a API pode incluir estruturas de dados que especificam como comunicar informação sobre objetos virtuais tal como um braço robótico virtual (em uma base total e/ou em uma base de segmento-por-segmento) à mesa virtual, um adaptador de mesa virtual conectando um braço virtual à mesa virtual, uma cânula virtual, uma ferramenta virtual, um ponto de toque virtual para facilitar a interação do usuário com o ambiente virtual, sistema de entrada de informação do usuário, dispositivos controladores portáteis, etc. Adicionalmente, a API pode incluir uma ou mais estruturas de dados que especificam como comunicar informação sobre eventos no ambiente virtual (por exemplo, um evento de colisão entre duas entidades virtuais) ou outros aspectos relativos ao ambiente virtual (por exemplo, quadro de referência para exibir o ambiente virtual, estrutura de sistema de controle, etc.). Exemplo de estruturas de dados e exemplo de campos para conter a sua informação são listados e descritos na Figura 4B e 4C, embora deva ser entendido que outras variações de uma API possam incluir quaisquer tipos adequados, nomes e números de estruturas de dados e exemplo de estruturas de campo.
[0065] Em algumas variações, como em geral ilustrado de modo esquemático na Figura 4A, a aplicação de um ambiente de operação virtual 410 passa informação de status para a aplicação de cinemáticas 420, e a aplicação de cinemáticas 420 passa comandos para a aplicação de um ambiente de operação virtual 410 por meio da API, onde os comandos são gerados com base na informação de status e subsequentemente usados pelo processador de realidade virtual 210 para gerar mudanças no ambiente cirúrgico robótico virtual. Por exemplo, um método para inserir um ou mais algoritmos de cinemática em um ambiente cirúrgico robótico virtual para o controle de um braço robótico virtual pode incluir passar informação de status relativa a pelo menos uma porção do braço robótico virtual a partir de uma aplicação de um ambiente de operação virtual 410 para uma aplicação de cinemáticas 420, algoritmicamente determinando um comando de acionamento para acionar pelo menos uma junta virtual do braço robótico virtual, e passar o comando de acionamento a partir de uma aplicação de cinemáticas 420 para a aplicação de um ambiente de operação virtual 410. O processador de realidade virtual 210 pode subsequentemente mover o braço robótico virtual de acordo com o comando de acionamento.
[0066] Como um exemplo ilustrativo para controlar um braço robótico virtual, um modo de compensação de gravidade controlado por um braço robótico virtual pode ser invocado, desse modo necessitando de um ou mais comandos de acionamento de junta virtual de modo a neutralizar as forças de gravidade simuladas nas juntas virtuais no braço robótico virtual. A aplicação de um ambiente de operação virtual 410 pode passar para a aplicação de cinemáticas 420 informação de status relevante relativa ao braço robótico virtual (por exemplo, posição de pelo menos uma porção do braço robótico virtual, posição da mesa de paciente virtual na qual o braço robótico virtual está montado, posição de um ponto de toque virtual que o usuário pode ter manipulado para mover o braço robótico virtual, ângulos de junta entre ligações de braço virtual adjacentes) e informação de status (por exemplo, direção de força gravitacional simulada no braço robótico virtual). Com base na informação recebida de status a partir de uma aplicação de um ambiente de operação virtual 410 e propriedades cinemática e/ou dinâmica conhecidas do braço robótico virtual e/ou acionamento de ferramenta virtual fixada ao braço robótico virtual (por exemplo, conhecida a partir de um arquivo de configuração, etc.), o sistema de controle 430 pode algoritmicamente determinar qual força acionada em cada junta virtual é necessária para compensar a força gravitacional simulada que atua naquela junta virtual. Por exemplo, o sistema de controle 430 pode utilizar um algoritmo de cinemática para frente, um algoritmo inverso, ou qualquer algoritmo adequado. Uma vez que o comando de força acionada para cada junta virtual relevante do braço robótico virtual é determinado, a aplicação de cinemáticas 420 pode enviar os comandos de fora para a aplicação de um ambiente de operação virtual 410. O processador de realidade virtual subsequentemente pode acionar as juntas virtuais do braço robótico virtual de acordo com os comandos de força, desse modo fazendo com que o braço robótico virtual seja visualizado como mantendo a sua pose atual apesar da força gravitacional simulada no ambiente virtual (por exemplo, em vez de cair ou colapsar sob força gravitacional simulada).
[0067] Outro exemplo para controlar um braço robótico virtual é seguir a trajetória de um braço robótico. Ao seguir a trajetória, o movimento do braço robótico pode ser programado e então emulado usando o sistema de realidade virtual. Desse modo, quando o sistema é usado para emular um modo de controle de planejamento de trajetória, o comando de acionamento gerado pela aplicação de cinemáticas pode incluir gerar um comando acionado para cada uma de uma pluralidade de juntas virtuais no braço robótico virtual. Esse conjunto de comandos acionados pode ser implementado pela aplicação de um ambiente de operação virtual para mover o braço robótico virtual no ambiente virtual, desse modo permitindo testar para colisão, volume ou espaço de trabalho de movimento, etc.
[0068] Outros algoritmos de controle virtuais para o braço robótico virtual e/ou outros componentes virtuais (por exemplo, ligações do adaptador de mesa virtual acoplando o braço robótico virtual a uma mesa de operação virtual) pode ser implementado por meio de comunicação similar entre a aplicação de um ambiente de operação virtual 410 e a aplicação de cinemáticas 420.
[0069] Embora o processador de realidade virtual 210 seja em geral referido neste documento como um único processador, deve ser entendido que em algumas variações, múltiplos processadores podem ser usados para realizar os processadores descritos neste documento. Os um ou mais processadores podem incluir, por exemplo, um processador de um computador de objetivo geral, um computador ou controlador para fins especiais, ou outro aparelho ou componente programável de processamento de dados, etc. Geralmente, o um ou mais processadores podem ser configurados para executar instruções armazenadas em qualquer mídia legível por computador adequada. A mídia legível por computador pode incluir, por exemplo, mídia magnética, mídia óptica, mídia magneto-óptica e dispositivos de hardware que são configurados especialmente para armazenar e executar o código do programa, como circuitos integrados específicos para aplicativos (ASICs), dispositivos lógicos programáveis (PLDs), dispositivos ROM e RAM, memória flash, EEPROMs, dispositivos ópticos (por exemplo, CD ou DVD), discos rígidos, unidades de disquete ou qualquer outro dispositivo adequado. Exemplos de código de programa de computador incluem código de máquina, como produzido por um compilador, e arquivos que contêm código de nível superior que são executados por um computador usando um intérprete. Por exemplo, uma variação pode ser implementada usando C++, JAVA ou outra linguagem de programação orientada a objetos e ferramentas de desenvolvimento adequadas. Como outro exemplo, outra variação pode ser implementada em circuitos conectados no lugar de, ou em combinação com, instruções de software executáveis por máquina. TELA MONTADA NA CABEÇA E CONTROLADORES PORTÁTEIS
[0070] Como mostrado na Figura 2A, um usuário U pode usar uma tela montada na cabeça 220 e/ou segurar um ou mais controladores portáteis 230. A tela montada na cabeça 220 e os controladores portáteis 230 podem em geral permitir que um usuário navegue e/ou interaja com o ambiente cirúrgico robótico virtual gerado pelo processador de realidade virtual 210. A tela montada na cabeça 220 e/ou os controladores portáteis 230 podem comunicar sinais para o processador de realidade virtual 210 por meio de uma conexão com fio ou sem fio.
[0071] Em algumas variações, a tela montada na cabeça 220 e/ou os controladores portáteis 230 podem ser versões modificadas das incluídas em qualquer sistema de hardware de realidade virtual adequado que está disponível no comércio para aplicações que incluem ambientes de realidade virtual e aumentada. Por exemplo, a tela montada na cabeça 220 e/ou os controladores portáteis 230 podem ser modificados para permitir a interação por um usuário com um ambiente cirúrgico robótico virtual (por exemplo, um controlador de mão 230 pode ser modificado como descrito abaixo para operar como um controlador laparoscópico de mão). Em algumas variações, o sistema de realidade virtual pode adicionalmente incluir um ou mais emissores de rastreamento 212 que emitem luz infravermelha dentro de um espaço de trabalho para o usuário U. Os emissores de rastreamento 212 podem, por exemplo, ser montados em uma parede, teto, fixação, ou outra superfície de montagem adequada. Sensores podem ser acoplados a superfícies voltadas para fora da tela montada na cabeça 220 e/ou controladores portáteis 230 para detectar a luz infravermelha emitida. Com base na localização de quaisquer sensores que detectam a luz emitida e quando os referidos sensores detectam a luz emitida após a luz ser emitida, o processador de realidade virtual 220 pode ser configurado para determinar (por exemplo, através de triangulação) a localização e a orientação da tela montada na cabeça 220 e/ou os controladores portáteis 230 dentro do espaço de trabalho. Em outras variações, outros meios adequados (por exemplo, outras tecnologias de sensor, tais como acelerômetros ou giroscópios, outros arranjos de sensor, etc.) podem ser usados para determinar a localização e a orientação da tela montada na cabeça 220 e dos controladores portáteis 230.
[0072] Em algumas variações, a tela montada na cabeça 220 pode incluir tiras (por exemplo, com fivelas, elásticos, molas, etc.) que facilitam a montagem da tela 220 na cabeça do usuário. Por exemplo, a tela montada na cabeça 220 pode ser estruturada de forma semelhante aos óculos de proteção, uma faixa para a cabeça ou fone de ouvido, uma tampa, etc. A tela montada na cabeça 220 pode incluir dois conjuntos de oculares que fornecem uma tela de imersão estereoscópica, embora, alternativamente, possa incluir qualquer tela adequada.
[0073] Os controladores portáteis 230 podem incluir características interativas que o usuário pode manipular para interagir com o ambiente cirúrgico robótico virtual. Por exemplo, os controladores portáteis 230 podem incluir um ou mais botões, gatilhos, características de tela de toque, esferas de rolagem, chaves, e/ou outras características adequadas interativas. Adicionalmente, os controladores portáteis 230 podem ter qualquer um dos vários fatores de forma, tal como um bastão, pinças, formas em geral redondas (por exemplo, em forma de bola ou de ovo), etc. Em algumas variações, as representações gráficas 230' exibidas na tela montada na cabeça 220 e/ou na tela externa 240 geralmente podem imitar o fator de forma dos controladores de mão reais atuais 230. Em algumas variações, o controlador de mão pode incluir um dispositivo transportado (por exemplo, varinha, dispositivo remoto etc.) e/ou uma peça de vestuário usada na mão do usuário (por exemplo, luvas, anéis, pulseiras, etc.) e incluindo sensores e/ou configurados para cooperar com sensores externos para, assim, rastrear as mãos do usuário, dedos individuais, pulsos, etc. Outros controladores adequados podem ser usados adicional ou alternativamente (por exemplo, mangas) configurados para fornecer rastreamento do(s) braço(s) do usuário).
CONTROLADOR LAPAROSCÓPICO DE MÃO
[0074] Em algumas variações, como mostrado na ilustração esquemática da Figura 5A, o controlador de mão 230 pode adicionalmente incluir pelo menos uma característica de ferramenta 232 que é representativa de pelo menos uma porção da ferramenta laparoscópica manual, desse modo formando um controlador laparoscópico de mão 234 que pode ser usado para controlar a ferramenta laparoscópica manual virtual. Em geral, por exemplo, a característica de ferramenta 232 pode funcionar para adaptar o controlador de mão 230 em um controlador substancialmente similar em forma (por exemplo, sensação do usuário e toque) para uma ferramenta laparoscópica manual. O controlador laparoscópico de mão 234 pode ser acoplado em modo de comunicação para o processador de realidade virtual 210 para manipular a ferramenta laparoscópica manual virtual no ambiente cirúrgico robótico virtual, e pode ajudar a permitir que o usuário sinta como se ele ou ela estivesse usando uma ferramenta laparoscópica manual atual ao mesmo tempo em que interage com o ambiente cirúrgico robótico virtual. Em algumas variações o dispositivo laparoscópico de mão pode ser um protótipo (por exemplo, versão de fac-símile ou genérica) de uma ferramenta laparoscópica manual, embora em outras variações o dispositivo laparoscópico de mão possa ser uma ferramenta laparoscópica manual em funcionamento. Movimentos de pelo menos uma porção do controlador laparoscópico de mão podem ser mapeados pelo controlador de realidade virtual para corresponder a movimentos de uma ferramenta laparoscópica manual virtual. Assim, em algumas variações, o sistema de realidade virtual pode simular o uso de uma ferramenta laparoscópica manual para MIS manual.
[0075] Como mostrado na Figura 5A, o controlador laparoscópico de mão 234 pode ser usado com uma configuração simulada do paciente para adicionalmente simular a sensação de uma ferramenta laparoscópica manual virtual. Por exemplo, o controlador laparoscópico de mão 234 pode ser inserido na cânula 250 (por exemplo, uma cânula atual usada em procedimentos de MIS para proporcionar sensação realística de uma ferramenta manual dentro da cânula, ou uma representação adequada dos mesmos, tal como um tubo com uma luz para receber uma porção do eixo de ferramenta do controlador laparoscópico de mão 234). A cânula 250 pode ser disposta em um protótipo do abdômen do paciente 260, tal como um corpo de espuma com um ou mais campos ou portas de inserção para receber a cânula 250. Alternativamente, outra configuração simulada adequada de pacientes pode ser usada, tal como uma cavidade proporcionando resistência (por exemplo, com fluido, etc.) com sensação similar à de um abdômen real de paciente.
[0076] Adicionalmente, como mostrado na Figura 5B, o processador de realidade virtual pode gerar um ambiente cirúrgico robótico virtual que inclui uma ferramenta laparoscópica manual virtual 236’ e/ou uma cânula virtual 250’ com relação a um paciente virtual (por exemplo, a representação gráfica 250’ da cânula ilustrada como inserida no paciente virtual). Como tal, o ambiente virtual com a ferramenta laparoscópica manual virtual 236’ e a cânula virtual 250’ pode ser exibido em uma tela de imersão proporcionada pela tela montada na cabeça 220, e/ou na tela externa 240. Um procedimento de calibragem pode ser realizado para mapear o controlador laparoscópico de mão 234 para uma ferramenta laparoscópica manual virtual 236’ dentro do ambiente virtual. Desse modo, na medida em que o usuário se move e manipula o controlador laparoscópico de mão 234, a combinação da pelo menos uma característica de ferramenta 234 e a configuração simulada do paciente pode permitir que o usuário tenha a sensação tátil de como se ele ou ela estivesse usando a ferramenta laparoscópica manual no ambiente cirúrgico robótico virtual. Da mesma forma, na medida em que o usuário se move e manipula o controlador laparoscópico de mão 234, os movimentos correspondentes da ferramenta laparoscópica manual virtual 236’ pode permitir que o usuário visualize a simulação de que ele ou ela está usando a ferramenta laparoscópica manual no ambiente cirúrgico robótico virtual.
[0077] Em algumas variações, o procedimento de calibragem para o controlador laparoscópico de mão em geral mapeia o controlador laparoscópico de mão 234 para a ferramenta laparoscópica manual virtual 236’. Por exemplo, em geral, o procedimento de calibragem pode "zerar" a sua posição com relação ao ponto de referência dentro do ambiente virtual. Em um exemplo de procedimento de calibragem, o usuário pode inserir o controlador laparoscópico de mão através da cânula 250 dentro de um protótipo do abdômen do paciente 260, que pode ser disposto na mesa na frente do usuário (por exemplo, em uma altura que é representativa da altura de uma mesa de operação real do paciente). O usuário pode continuar a inserir o controlador laparoscópico de mão dentro do protótipo do abdômen do paciente 260 em uma profundidade adequada representativa da profundidade alcançada durante um procedimento laparoscópico real. Uma vez que o controlador laparoscópico de mão é adequadamente disposto no protótipo do abdômen do paciente 260, o usuário pode proporcionar uma entrada (por exemplo, apertar um gatilho ou empurrar um botão no controlador laparoscópico de mão, por comando de voz, etc.) para confirmar e orientar o paciente virtual para a localização e altura do protótipo do abdômen do paciente 260. Adicionalmente, outros aspectos do ambiente virtual podem ser calibrados para alinhar com os aspectos reais, tangíveis do sistema, tal como por ilustrar os componentes virtuais que podem ser ajustados de modo móvel a locais-alvo e permitir a entrada de informação do usuário para confirmar o novo alinhamento do componente virtual com locais-alvo (por exemplo, por apertar um gatilho ou empurrar um botão no controlador laparoscópico de mão, comando de voz, etc.). A orientação dos componentes virtuais (por exemplo, orientação rotacional de um eixo) pode ser ajustada com uma almofada de toque, esfera de rolagem ou outra entrada adequada no controlador de mão laparoscópico ou outro dispositivo. Por exemplo, a sala de operações virtual pode estar alinhada com a sala real em que o usuário está, uma extremidade distal da cânula ou trocarte virtual pode estar alinhada com o local de entrada real no abdômen simulado do paciente, etc. Além disso, em algumas variações, um efetor terminal virtual (por exemplo, corte final, cortador) pode ser localizado e orientado através do controlador de mão laparoscópico para um novo local de destino e orientação de maneiras semelhantes.
[0078] Em algumas variações, como mostrado na Figura 5B, o sistema pode incluir não só um controlador de mão 230, mas também um controlador laparoscópico de mão 234. Desse modo, o processador de realidade virtual pode gerar um ambiente virtual que inclui não só uma representação gráfica 230’ de um controlador de mão 230 (com na fixação laparoscópica), mas também a ferramenta laparoscópica manual virtual 236’ como descrito acima. O controlador de mão 230 pode ser acoplado em modo de comunicação para o processador de realidade virtual 210 para manipular pelo menos um braço robótico virtual, e o controlador laparoscópico de mão 234 pode ser acoplado em modo de comunicação ao processador de realidade virtual 210 para manipular a ferramenta laparoscópica manual virtual 236’. Assim, em algumas variações, o sistema de realidade virtual pode simular um modo "sobre o leito" de usar um sistema cirúrgico robótico, no qual um operador está no lado do paciente e manipula não só um braço robótico (por exemplo, com uma mão) proporcionando MIS com auxílio robótico, mas também uma ferramenta laparoscópica manual proporcionando MIS manual.
[0079] A característica de ferramenta 232 pode incluir qualquer característica adequada em geral que se aproxima ou que representa uma porção de uma ferramenta laparoscópica manual. Por exemplo, a característica de ferramenta 232 pode em geral aproximar um eixo laparoscópico da ferramenta (por exemplo, inclui um membro alongado que se estende a partir de uma porção de mão do controlador). Como outro exemplo, a característica de ferramenta 232 pode incluir um gatilho, botão, ou outras características laparoscópicas interativas similares àquelas presentes na ferramenta laparoscópica manual que engata as características interativas no controlador de mão 230, mas proporciona um fator de forma realística mimetizando a sensação da ferramenta laparoscópica manual (por exemplo, a característica de ferramenta 232 pode incluir um maior engatilhamento tendo um fator de forma realística que é sobreposta com e engata as características genéricas interativas no controlador de mão 230). Como ainda outro exemplo, a característica de ferramenta 232 pode incluir que os materiais e/ou massas selecionadas criem um controlador laparoscópico de mão 234 tendo uma distribuição de peso que é similar a um tipo particular de ferramenta laparoscópica manual. Em algumas variações, a característica de ferramenta 232 pode incluir plástico (por exemplo, policarbonato, acrilonitrila butadieno estireno (ABS), náilon, etc.) que é moldado à injeção, usinado, impresso em 3D, ou outro material adequado formado de qualquer forma adequada. Em outras variações, a característica de ferramenta 232 pode incluir metal ou outro material adequado que é usinado, fundido, etc.
[0080] Em algumas variações, a característica de ferramenta 236 pode ser um adaptador ou outra fixação que é formada separadamente a partir do controlador de mão 230 e acoplada ao controlador de mão 230 por meio de prendedores (por exemplo, parafusos, magnetos, etc.), características de intertravamento (por exemplo, roscas ou características de encaixe tais como abas e fendas, etc.), epóxi, soldagem (por exemplo, soldagem ultrassônica), etc. A característica de ferramenta 236 pode ser acoplada de modo reversível ao controlador de mão 230. Por exemplo, a característica de ferramenta 236 pode ser seletivamente fixada ao controlador de mão 230 de modo a adaptar um controlador de mão 230 quando um controlador de mão de estilo laparoscópico 230 for desejado, enquanto a característica de ferramenta 236 pode ser seletivamente destacada a partir do controlador de mão 230 quando a controlador de mão de estilo laparoscópico 230 não for desejado. Alternativamente, a característica de ferramenta 236 pode ser permanentemente acoplada à porção de mão 234, tal como durante a fabricação. Adicionalmente, em algumas variações, a porção de mão 234 e a característica de ferramenta 236 pode ser integralmente formada (por exemplo, moldada à injeção junto com uma única peça).
[0081] Um exemplo de variação de um controlador laparoscópico de mão é mostrado na Figura 6A. O controlador laparoscópico de mão 600 pode incluir uma porção de mão 610 (por exemplo, similar ao controlador de mão 230 descrito acima), um eixo de ferramenta 630, e um adaptador de eixo 620 para acoplar um eixo de ferramenta 630 à porção de mão 610. Como mostrado na Figura 6B, o controlador laparoscópico de mão 600 pode em geral ser usado para controlar um ferramenta de grampeador laparoscópico manual virtual 600’, embora o controlador laparoscópico de mão 600 pode ser usado para controlar outros tipos de ferramentas laparoscópicas manuais virtuais (por exemplo, tesouras, dissecadores, pinças, porta-agulhas, sondas, fórceps, ferramentas de biópsia, etc. Por exemplo, a porção de mão 610 pode ser associada com uma haste virtual 610’ da ferramenta de grampeador laparoscópico manual virtual 600’ tendo um efetor terminal grampeador 640’, de modo que a manipulação do usuário da porção de mão 610 é mapeada para manipulação da haste virtual 610’. De modo similar, um eixo de ferramenta 630 pode corresponder a um eixo de ferramenta virtual 630’ da ferramenta de grampeador laparoscópico manual virtual 600’. Um eixo de ferramenta 630 e o eixo de ferramenta virtual 630’ podem ser inseridos na cânula e na cânula virtual, respectivamente, de modo que movimento de um eixo de ferramenta 630 com relação à cânula é mapeado para o movimento do eixo de ferramenta virtual 630’ dentro da cânula virtual no ambiente cirúrgico robótico virtual.
[0082] A porção de mão 610 pode incluir uma ou mais características interativas, tal como gatilho de dedos 612 e/ou botão 614, que pode receber entrada de informação do usuário a partir dos dedos, palmas do usuário, etc. e ser acoplado em modo de comunicação a um processador de realidade virtual. No referido exemplo de modalidade, o gatilho de dedos 612 pode ser mapeado para um gatilho virtual 612’ na ferramenta de grampeador laparoscópico manual virtual 600’. O gatilho virtual 612’ pode ser visualizado como acionando o efetor terminal virtual 640’ (por exemplo, fazendo com que os membros virtuais do efetor terminal virtual 640’ fechem e acionem os grampos) para grampear tecido virtual no ambiente virtual. Desse modo, quando o usuário aciona o gatilho de dedos 612 no controlador laparoscópico de mão, o sinal a partir de gatilho de dedos 612 pode ser comunicado para o processador de realidade virtual, que modifica a ferramenta de grampeador laparoscópico manual virtual 600’ para interagir dentro do ambiente virtual em simulação de uma ferramenta de grampeador laparoscópico manual atual. Em outra variação, uma fixação de gatilho pode fisicamente se assemelhar (por exemplo, em formato e forma) ao gatilho virtual 612’ na ferramenta de grampeador laparoscópico manual virtual 600’ e pode ser acoplado ao gatilho de dedos 612, que pode permitir que o controlador laparoscópico de mão 600 mimetize ainda mais proximamente a sensação do usuário da ferramenta de grampeador laparoscópico manual virtual 600’.
[0083] Como mostrado nas Figuras 6C a 6E, o adaptador de eixo 620 pode em geral funcionar para acoplar um eixo de ferramenta 630 para a porção de mão 610, que pode, por exemplo, adaptar um controlador de mão (similar ao controlador de mão 210 descrito acima) dentro de um controlador laparoscópico de mão. O adaptador de eixo 620 pode em geral incluir uma primeira extremidade para acoplar à porção de mão 610 e uma segunda extremidade para acoplar a um eixo de ferramenta 630. Como melhor mostrado na Figura 6E, a primeira extremidade do adaptador de eixo 620 pode incluir uma porção proximal 620a e uma porção distal 620b configurado para grampear na característica da porção de mão 610. Por exemplo, a porção de mão 610 pode incluir em geral uma porção em forma de anel definindo um espaço central 614 que recebe a porção proximal 620a e a porção distal 620b. A porção proximal 620a e a porção distal 620b podem grampear em cada lado da porção em forma de anel em seu diâmetro interno, e ser fixadas à porção em forma de anel por meio de prendedores (não mostrado) passando através de orifícios de prendedor 622, desse modo fixando o adaptador de eixo 620 na porção de mão 610. Adicional ou alternativamente, o adaptador de eixo 620 pode acoplar à porção de mão 610 em qualquer modo adequado, tal como um encaixe de interferência, epóxi, características de intertravamento (por exemplo, entre a porção proximal 620a e a porção distal 620b), etc. Como também mostrado na Figura 6E, a segunda extremidade do adaptador de eixo 620 pode incluir uma reentrância para receber um eixo de ferramenta 620. Por exemplo, a reentrância pode ser em geral cilíndrica para receber uma extremidade em geral cilíndrica de uma porção do eixo de ferramenta 630, tal como através de um encaixe de pressão, encaixe de fricção, ou outro encaixe de interferência. Adicional ou alternativamente, um eixo de ferramenta 620 pode ser acoplado para o adaptador de eixo 620 com prendedores (por exemplo, parafusos, pinos, epóxi, soldagem ultrassônica, etc.). Um eixo de ferramenta 630 pode ser qualquer tamanho adequado (por exemplo, comprimento, diâmetro) para mimetizar ou representar a ferramenta laparoscópica manual.
[0084] Em algumas variações, o adaptador de eixo 620 pode ser seletivamente removível a partir da porção de mão 610 para permitir o uso seletivo da porção de mão 610 não só como um controlador de mão independente (por exemplo, controlador de mão 210), mas também como um controlador laparoscópico de mão 600. Adicional ou alternativamente, um eixo de ferramenta 630 pode ser seletivamente removível a partir do adaptador de eixo 620 (por exemplo, embora o adaptador de eixo 620 pode ser intencionalmente fixado à porção de mão 610, um eixo de ferramenta 620 pode ser seletivamente removível a partir do adaptador de eixo 620 para converter o controle laparoscópico de mão 600 para um controlador de mão independente 210).
[0085] Em geral, a característica de ferramenta do controlador laparoscópico de mão 600, tal como o adaptador de eixo 620 e um eixo de ferramenta 630, podem ser produzidos de um plástico ou metal rígido ou semirrígido, e podem ser formados através de qualquer processo de fabricação adequado, tal como impressão em 3D, moldagem de injeção, trituração, giro, etc. A característica de ferramenta pode incluir múltiplos tipos de materiais, e/ou pesos ou outras massas para adicionalmente simular a sensação do usuário de uma ferramenta laparoscópica manual particular.
VARIAÇÕES DO SISTEMA
[0086] Um ou mais aspectos do sistema de realidade virtual descrito acima podem ser incorporados em outras variações de sistemas. Por exemplo, em algumas variações, um sistema de realidade virtual para proporcionar um ambiente cirúrgico robótico virtual pode interfacear com uma ou mais características de um ambiente cirúrgico robótico real. Por exemplo, como mostrado na Figura 3, um sistema 700 pode incluir um ou mais processadores (por exemplo, um processador de realidade virtual 210) configurado para gerar um ambiente cirúrgico robótico virtual, e um ou mais sensores 750 em um ambiente cirúrgico robótico, onde os um ou mais sensores 750 estão em comunicação com os um ou mais processadores. Informação do sensor a partir do ambiente cirúrgico robótico pode ser configurado para detectar status de um aspecto do ambiente cirúrgico robótico, de modo a mimetizar ou replicar as características do ambiente cirúrgico robótico no ambiente cirúrgico robótico virtual. Por exemplo, um usuário pode monitorar um procedimento cirúrgico robótico atual na sala de operação real por meio de um sistema de realidade virtual que interfaceia com a sala de operação real (por exemplo, o usuário pode interagir com um ambiente de realidade virtual que é um reflexo das condições na sala de operação real).
[0087] Em algumas variações, um ou mais sensores 750 podem ser configurados para detectar status de pelo menos um componente robótico (por exemplo, um componente de um sistema cirúrgico robótico, tal como um braço robótico, um acionador de ferramenta acoplada a um braço robótico, uma mesa de operação do paciente à qual um braço robótico é fixado, uma torre de controle, etc.) ou outro componente de uma sala de operação cirúrgica robótica. O referido status pode indicar, por exemplo, posição, orientação, rapidez, velocidade, estado operativo (por exemplo, ligado ou desligado, nível de energia, modo), ou qualquer outro status adequado do componente.
[0088] Por exemplo, um ou mais acelerômetros podem ser acoplados a uma ligação de braço robótico e ser configurados para proporcionar informação sobre a posição, a orientação, e/ou a velocidade de movimento da ligação de braço robótico, etc. Múltiplos acelerômetros em múltiplos braços robóticos podem ser configurados para proporcionar informação relativa a colisões iminentes e/ou presentes entre os braços robóticos, entre diferentes ligações de um braço robótico, ou entre um braço robótico e um obstáculo próximo tendo uma posição conhecida.
[0089] Como outro exemplo, um ou mais sensores de proximidade (por exemplo, sensor de infravermelho, sensor capacitivo) podem ser acoplados à porção de um braço robótico ou outros componentes do sistema cirúrgico robótico ou ambiente cirúrgico. Os referidos sensores de proximidade podem, por exemplo, ser configurados para proporcionar informação relativa a colisões iminentes entre objetos. Adicional ou alternativamente, sensores de contato ou de toque podem ser acoplados à porção de um braço robótico ou outros componentes do ambiente cirúrgico robótico, e podem ser configurados para proporcionar informação relativa à presente colisão entre objetos.
[0090] Em outro exemplo, um ou mais componentes do sistema cirúrgico robótico ou ambiente cirúrgico podem incluir marcadores (por exemplo, marcadores de infravermelho) para facilitar rastreamento óptico da posição, orientação, e/ou velocidade de vários componentes, tais como com sensores superiores monitorando os marcadores no ambiente cirúrgico. De modo similar, o ambiente cirúrgico pode adicional ou alternativamente incluir câmeras para a leitura e/ou a modelagem do ambiente cirúrgico e de seu conteúdo. Os referidos sensores de rastreamento óptico e/ou câmeras podem ser configurados para proporcionar informação relativa a colisões iminentes e/ou presentes entre objetos.
[0091] Como outro exemplo, um ou mais sensores 750 podem ser configurados para detectar um status de um paciente, um cirurgião, ou outro pessoal da equipe do cirúrgico. O referido status pode indicar, por exemplo, posição, orientação, rapidez, velocidade, e/ou métricas biológicas tais como frequência cardíaca, pressão sanguínea, temperatura, etc. Por exemplo, um monitor de frequência cardíaca, um monitor de pressão sanguínea, termômetro, e/ou sensor de oxigenação, etc. podem ser acoplados ao paciente e permitem que um usuário observe as condições do paciente.
[0092] Em geral, nas referidas variações, um processador de realidade virtual 210 pode gerar um ambiente cirúrgico robótico virtual similar àquele descrito em algum ponto neste documento. Adicionalmente, ao receber informação de status a partir dos um ou mais sensores 750, o processador de realidade virtual 210 ou outro processador no sistema pode incorporar o status detectado em qualquer um ou mais modos adequados. Por exemplo, em uma variação, o processador de realidade virtual 210 pode ser configurado para gerar uma réplica ou quase uma réplica de realidade virtual de um ambiente cirúrgico robótico e/ou um procedimento cirúrgico robótico realizado no mesmo. Por exemplo, os um ou mais sensores 750 no ambiente cirúrgico robótico podem ser configurados para detectar um status de um componente robótico que corresponde a um componente robótico virtual no ambiente cirúrgico robótico virtual (por exemplo, o componente robótico virtual pode ser substancialmente representativo do componente robótico em forma e/ou função visual). Nesta referida variação, o processador de realidade virtual 210 pode ser configurado para receber o status detectado do componente robótico, e então modificar o componente robótico virtual com base pelo menos em parte no status detectado de modo que o componente robótico virtual mimetiza o componente robótico. Por exemplo, se um cirurgião move um braço robótico durante um procedimento cirúrgico robótico para uma pose particular, então um braço robótico virtual no ambiente virtual pode se mover de modo correspondente.
[0093] Como outro exemplo, o processador de realidade virtual 210 pode receber informação de status que indica um evento de alarme, tal como uma colisão iminente ou presente entre objetos, ou uma condição pobre de saúde do paciente. Ao receber a referida informação, o processador de realidade virtual 210 pode proporcionar um aviso ou alarme para o usuário da ocorrência do evento, tal como por exibir um alerta visual (por exemplo, texto, ícone que indica colisão, uma vista dentro do ambiente virtual ilustrando uma colisão, etc.), alerta de áudio, etc.
[0094] Como ainda outro exemplo, os um ou mais sensores no ambiente cirúrgico robótico podem ser usados para comparar um procedimento cirúrgico atual (ocorrendo no ambiente cirúrgico robótico não virtual) com um procedimento cirúrgico planejado como planejado em um ambiente cirúrgico robótico virtual. Por exemplo, uma posição esperada de pelo menos um componente robótico (por exemplo, braço robótico) pode ser determinada durante o pré-planejamento cirúrgico, como visualizado como um componente robótico virtual correspondente em um ambiente cirúrgico robótico virtual. Durante um procedimento cirúrgico atual, um ou mais sensores podem proporcionar informação sobre uma posição medida do componente robótico atual. Quaisquer diferenças entre a posição esperada e a medida do componente robótico podem indicar desvios a partir de um plano cirúrgico que foi construído no ambiente de realidade virtual. Uma vez que os referidos desvios podem eventualmente resultar em consequências indesejadas (por exemplo, colisões não intencionadas entre braços robóticos, etc.), a identificação de desvios pode permitir que o usuário ajuste o plano cirúrgico desse modo (por exemplo, reconfigurar a abordagem ao campo cirúrgico, mudar instrumentos cirúrgicos, etc.).
MODOS DE USUÁRIO
[0095] Em geral, o sistema de realidade virtual pode incluir um ou mais modos de usuário para permitir que um usuário interaja com o ambiente cirúrgico robótico virtual por mover e/ou manipular os controladores portáteis 230. As referidas interações podem incluir, por exemplo, mover objetos virtuais (por exemplo, braço robótico virtual, ferramenta virtual, etc.) no ambiente virtual, adicionar pontos de vista da câmera para visualizar o ambiente virtual simultaneamente a partir de múltiplos pontos de vantagem, navegar dentro do ambiente virtual sem precisar que o usuário mova a tela montada na cabeça 220 (por exemplo, por andar), etc. como adicionalmente descrito abaixo.
[0096] Em algumas variações, o sistema de realidade virtual pode incluir uma pluralidade de modos de usuário, onde cada modo de usuário está associado com um respectivo subconjunto de interações do usuário. Como mostrado na Figura 8, pelo menos alguns dos modos de usuário podem ser mostrados em uma tela (por exemplo, tela montada na cabeça 220) para seleção pelo usuário. Por exemplo, pelo menos alguns dos modos de usuário podem corresponder a ícones selecionáveis de modo de usuário 812 exibidos em um menu de modo de usuário 810. O menu de modo de usuário 810 pode ser sobreposto na tela do ambiente cirúrgico robótico virtual de modo que uma representação gráfica 230’ do controlador de mão (ou mão do usuário, outro ícone representativo adequado, etc.) pode ser manobrado pelo usuário para selecionar um ícone de modo de usuário, desse modo ativando o modo de usuário que corresponde ao ícone de modo de usuário selecionado. Como mostrado na Figura 8, os ícones de modo de usuário 812 podem ser em geral arranjados em uma paleta ou círculo, mas podem ser alternativamente arranjados em uma grade ou outro arranjo adequado. Em algumas variações, um subconjunto selecionado de possíveis modos de usuário pode ser apresentado no menu 810 com base, por exemplo, nas preferências do usuário (por exemplo, associadas com um conjunto de informação de login do usuário), preferências de usuários similares ao usuário atual, tipo de procedimento cirúrgico, etc.
[0097] A Figura 14 ilustra um método de operação 1400 de um exemplo de variação de um menu de modo de usuário que proporciona seleção de um ou mais ícones de modo de usuário. Para ativar o menu do usuário, o usuário pode ativar uma entrada de informação do método de usuário associado com o menu. Por exemplo, um método de entrada pode ser ativado por um usuário pegando com um controlador de mão (por exemplo, dispositivo de interface de usuário de mão), tal como por pressionar um botão ou outra característica adequada no controlador de mão (1410). Como outro exemplo, um método de entrada pode ser ativado por um usuário que engata um pedal ou outra característica de um console de usuário (1410’). Comandos de voz e/ou outros dispositivos podem adicional ou alternativamente ser usados para ativar um método de entrada associado com o menu. Embora o método de entrada seja engatado (1412), o sistema de realidade virtual pode proporcionar e exibir uma estrutura de ícones de modo de usuário (por exemplo, arranjados em uma paleta em torno de uma origem central como mostrado na Figura 8A). A estrutura de ícones de modo de usuário pode ser em geral exibida próxima ou em torno de uma representação gráfica do controlador de mão e/ou em um cursor proporcionado que é controlado pelo controlador de mão.
[0098] Por exemplo, em uma variação na qual um controlador de mão inclui um botão de menu circular e a representação gráfica do controlador de mão também tem um botão de menu circular exibido no ambiente de realidade virtual, a estrutura de ícones de modo de usuário pode ser centralizada em torno de e alinhada com o botão de modo de menu que os vetores normais do plano de menu e botão de menu estão substancialmente alinhados. O menu circular ou radial pode incluir, por exemplo, múltiplas diferentes regiões de menu (1414) ou setores, cada um dos quais pode estar associado com uma faixa de ângulo (por exemplo, um segmento arqueado no menu circular) e um ícone de modo de usuário (por exemplo, como mostrado na Figura 8). Cada região pode ser alternada entre um estado selecionado e um estado não selecionado.
[0099] O método 1400 pode em geral incluir determinar a seleção de um modo de usuário pelo usuário e receber confirmação que o usuário pode preferir para ativar o modo de usuário selecionado para o sistema de realidade virtual. Para selecionar um modo de usuário no menu de modo de usuário, o usuário pode mover o controlador de mão (1420) para livremente manipular a representação gráfica do controlador de mão e navegar através dos ícones de modo de usuário no menu de modo de usuário. Em geral, a posição/orientação do controlador de mão (e posição/orientação da representação gráfica do controlador de mão que se move em correspondência com o controlador de mão) pode ser analisada para determinar se o usuário selecionou um ícone particular de modo de usuário. Por exemplo, em variações nas quais os ícones de modo de usuário são arranjados em uma paleta em geral circular em torno de uma origem central, o método pode incluir determinar a distância radial e/ou a orientação angular da representação gráfica do controlador de mão com relação à origem central. Por exemplo, um teste para determinar a seleção pelo usuário de um ícone de modo de usuário pode incluir um ou mais pontas, que podem ser satisfeitas em qualquer ordem adequada. Em uma primeira ponta (1422), a distância da representação gráfica do controlador de mão para o centro do menu de modo de usuário (ou outro ponto de referência no menu de modo de usuário) é comparada ao limiar de distância. A distância pode ser expressa em termos de distância absoluta (por exemplo, número de pixels) ou relações (por exemplo, percentual de distância entre um ponto central e o ícones de modo de usuário arranjados em torno da periferia do menu de modo de usuário, tal como 80% ou mais). Se a distância é menor do que o limiar, então pode ser determinado que nenhum ícone de modo de usuário é selecionado. Adicional ou alternativamente, a seleção de um ícone de modo de usuário pode depender de uma segunda ponta (1424). Na segunda ponta (1424), a orientação da representação gráfica do controlador de mão é medida e correlacionada a um ícone de modo de usuário associado com um segmento arqueado do menu. Se a orientação é correspondente a um segmento arqueado do menu selecionado, então pode ser determinado que um modo de usuário particular (associado com o segmento arqueado selecionado) é selecionado pelo usuário. Por exemplo, um ícone de modo de usuário pode ser determinado como selecionado pelo usuário se não só a distância, mas também a orientação angular da representação gráfica do controlador de mão com relação à origem satisfaz as condições (1422) e (1424).
[00100] Após determinar que um usuário selecionou um ícone de modo de usuário particular, o método pode, em algumas variações, transportar a referida seleção para o usuário (por exemplo, como confirmação) por indicações visual e/ou auditivas. Por exemplo, em algumas variações, o método pode incluir proporcionar uma ou mais pistas visuais (1430) no ambiente de realidade virtual exibido em resposta a determinar que um usuário selecionou um ícone de modo de usuário. Como mostrado na Figura 14, exemplos de pistas visuais (1432) incluem modificar a aparência do ícone de modo de usuário selecionado (e/ou o segmento arqueado associado com o ícone de modo de usuário selecionado) com destaques (por exemplo, contornos espessados), animação (por exemplo, linhas oscilantes, ícone "dançando" ou "pulsante"), alteração no tamanho (por exemplo, ampliação do ícone), alteração na profundidade aparente, alteração na cor ou opacidade (por exemplo, mais ou menos translúcida, alteração no preenchimento do padrão do ícone), mudança de posição (por exemplo, mova-se radialmente para fora ou para dentro da origem central, etc.) e / ou qualquer modificação visual adequada. Em algumas variações, indicar ao usuário dessa ou de qualquer maneira adequada pode informar ao usuário qual modo de usuário será ativado, antes que o usuário confirme a seleção de um modo de usuário específico. Por exemplo, o método pode incluir proporcionar uma ou mais pistas visuais (1430) conforme o usuário navega ou rola pelos vários ícones do modo de usuário no menu.
[00101] O usuário pode confirmar a aprovação do ícone de modo de usuário selecionado em uma ou mais diversas maneiras. Por exemplo, o usuário pode liberar ou desativar a entrada de informação do método de usuário (1440) associada com o menu (por exemplo, liberando um botão no controlador de mão, desengatando um pedal de pé), tal como para indicar a aprovação do modo de usuário selecionado. Em outras variações, o usuário pode confirmar a seleção por pairar sobre o ícone de modo de usuário selecionado por pelo menos um predeterminado período de tempo (por exemplo, pelo menos 5 segundos), clicar duas vezes na entrada de informação do método de usuário associada com o menu do usuário (por exemplo, clicar duas vezes o botão, etc.), falar um comando verbal que indica aprovação, etc.
[00102] Em algumas variações, ao receber confirmação que o usuário aprova o modo de usuário selecionado, o método pode incluir verificar qual ícone de modo de usuário foi selecionado. Por exemplo, como mostrado na Figura 14, um teste para verificar qual ícone de modo de usuário foi selecionado pode incluir uma ou mais pontas, que podem ser satisfeitas em qualquer ordem adequada. Por exemplo, em variações nas quais os ícones de modo de usuário são arranjados em uma paleta em geral circular em torno de uma origem central, o método pode incluir determinar a distância radial com relação à origem central (1442) e/ou a orientação angular da representação gráfica do controlador de mão com relação à origem central (1446) quando o usuário indica a aprovação da seleção do ícone de modo de usuário. Em algumas variações, as pontas (1442) e (1446) podem ser similares às (1422) e (1424) descrito acima, respectivamente. Se pelo menos uma das referidas pontas (1442) e (1444) é não satisfeita, então a liberação da entrada de informação do método de usuário pode se correlacionar a uma não seleção de um ícone de modo de usuário (por exemplo, o usuário pode ter mudado de opinião quanto a selecionar um novo modo de usuário). Desse modo, se a representação gráfica do controlador de mão falhar em satisfazer um limiar de distância (1442) então o modo de usuário original ou anterior pode ser retido (1444). De modo similar, se a representação gráfica do controlador de mão falhar para corresponder a um segmento arqueado do menu (1446), então o modo de usuário original ou anterior pode ser retido (1448). Se a representação gráfica do controlador de mão satisfaz um limiar de distância (1442) e corresponde a um segmento arqueado do menu, então o modo de usuário selecionado pode ser ativado (1450). Em outras variações, um modo de usuário pode adicional ou alternativamente ser selecionado com outras interações, tais como comando de voz, rastreamento ocular por meio de sensores, etc. Além disso, o sistema pode sugerir adicional ou alternativamente a ativação de um ou mais modos do usuário com base em critérios como a atividade do usuário no (por exemplo, se o usuário estiver virando a cabeça com frequência para ver detalhes na extremidade do seu campo de visão, o sistema pode sugerir um modo de usuário que permita o posicionamento de uma câmera para fornecer uma visualização da janela da tela superior de um ponto de vista desejado, conforme descrito abaixo), tipo de procedimento cirúrgico, etc.
PREENSÃO DO OBJETO
[0100] Um exemplo de modo de usuário com o ambiente cirúrgico robótico virtual permite que um usuário pegue, mova, ou de outro modo manipule objetos virtuais no ambiente virtual. Exemplos de objetos virtuais manipuláveis incluem, mas não são limitados a representações virtuais de itens físicos (por exemplo, um ou mais braços robóticos virtuais, um ou mais acionadores de ferramenta virtual, ferramentas laparoscópicas manuais virtuais, mesa de operação do paciente virtual ou outra superfície de repouso, torre de controle virtual ou outro equipamento, console de usuário virtual, etc.) e outras construções virtuais ou gráficas tais como portais, tela de janela, imagem do paciente ou outras projeções em uma tela ampliada, etc. que são adicionalmente descritos abaixo.
[0101] Pelo menos alguns dos objetos virtuais podem incluir ou ser associados com pelo menos um ponto de toque virtual ou característica selecionável. Quando o ponto de toque virtual é selecionado por um usuário, o usuário pode mover (por exemplo, ajustar a posição e/ou a orientação) o objeto virtual associado com o ponto de toque virtual selecionado. Adicionalmente, múltiplos pontos de toque virtuais podem ser simultaneamente selecionados (por exemplo, com múltiplos controladores portáteis 230 e as suas representações gráficas 230’) no mesmo objeto virtual ou múltiplos objetos virtuais separados.
[0102] O usuário pode em geral selecionar um ponto de toque virtual por mover um controlador de mão 230 para mover de modo correspondente a representação gráfica 230’ para o ponto de toque virtual no ambiente virtual, então engatar as características interativas tal como um gatilho ou botão no controlador de mão 230 para indicar seleção do ponto de toque virtual. Em algumas variações, um ponto de toque virtual pode permanecer selecionado desde que o usuário engate as características interativas no controlador de mão 230 (por exemplo, desde que o usuário pressione um gatilho) e pode se tornar não selecionado quando o usuário libera as características interativas. Por exemplo, o ponto de toque virtual pode permitir que o usuário "clique e arraste" o objeto virtual por meio do ponto de toque virtual. Em algumas variações, um ponto de toque virtual pode ser alternado entre um estado selecionado e um estado não selecionado, em que um ponto de toque virtual pode permanecer selecionado após um único engate das características interativas no controlador de mão até que um segundo engate das características interativas alterne o ponto de toque virtual para um estado não selecionado. No ambiente cirúrgico robótico virtual, um ou ambos os tipos de pontos de toque virtual podem estar presentes.
[0103] Um objeto virtual pode incluir pelo menos um ponto de toque virtual para manipulação direta do objeto virtual. Por exemplo, um braço robótico virtual no ambiente virtual pode incluir um ponto de toque virtual em uma de suas ligações de braço virtual. O usuário pode mover um controlador de mão 230 até que a representação gráfica 230’ do controlador de mão esteja em proximidade a (por exemplo, pairar sobre) o ponto de toque virtual, engatar um gatilho ou outras características interativas no controlador de mão 230 para selecionar o ponto de toque virtual, então mover o controlador de mão 230 para manipular o braço robótico virtual por meio do ponto de toque virtual. Desse modo, o usuário pode manipular o controlador de mão 230 de modo a reposicionar o braço robótico virtual em uma nova pose, tal como para criar um espaço de trabalho mais espaçoso no ambiente virtual pelo paciente, faixa de teste de movimento do braço robótico virtual para determinar a probabilidade de colisões entre o braço robótico virtual e outros objetos, etc.
[0104] Um objeto virtual pode incluir pelo menos um ponto de toque virtual que está associado com um segundo objeto virtual, para manipulação indireta do segundo objeto virtual. Por exemplo, um painel de controle virtual pode incluir um ponto de toque virtual em uma chave virtual ou botão que está associada com uma mesa de operação do paciente. A chave virtual ou botão pode, por exemplo, controlar a altura ou ângulo da mesa de operação do paciente virtual no ambiente virtual, similar a como uma chave ou botão em um painel de controle real deve eletrônica ou mecanicamente modificar a altura ou o ângulo de uma mesa de operação real do paciente. O usuário pode mover um controlador de mão 230 até que a representação gráfica 230’ do controlador de mão esteja em proximidade (por exemplo, pairar sobre) ao ponto de toque virtual, engate um gatilho ou outras características interativas no controlador de mão 230 para selecionar o ponto de toque virtual, então mover o controlador de mão 230 para manipular a chave virtual ou botão por meio do ponto de toque virtual. Desse modo, o usuário pode manipular o controlador de mão 230 de modo a modificar a altura ou ângulo do ambiente virtual, tal como para aprimorar ângulo de abordagem ou acesso ao espaço de trabalho no ambiente virtual.
[0105] Quando um ponto de toque virtual é selecionado, o processador de realidade virtual pode modificar o ambiente cirúrgico robótico virtual para indicar para o usuário que o ponto de toque virtual está de fato selecionado. Por exemplo, o objeto virtual que inclui o ponto de toque virtual pode ser destacado por ser graficamente proporcionado em uma cor diferente (por exemplo, azul ou vermelho) e/ou delineado em uma linha diferente em peso ou cor, de modo a visualmente contrastar com o objeto virtual afetado a partir de outros objetos virtuais no ambiente virtual. Adicional ou alternativamente, o processador de realidade virtual pode proporcionar feedback de áudio (por exemplo, um tom, bip, ou conhecimento verbal) através de um dispositivo de áudio que indica a seleção do ponto de toque virtual, e/ou feedback tátil (por exemplo, uma vibração) através de um controlador de mão 230, uma tela montada na cabeça 220, ou outro dispositivo adequado.
NAVEGAÇÃO
[0106] Outro exemplo de modos de usuário com o ambiente cirúrgico robótico virtual pode permitir que um usuário navegue e explore o espaço virtual dentro do ambiente virtual.
PONTOS DE PRESSÃO
[0107] Em algumas variações, o sistema pode incluir um modo de usuário permitindo "pontos de pressão", ou alvos virtuais dentro de um ambiente virtual que pode ser usado para ajudar a navegação do usuário dentro do ambiente virtual. Um ponto de pressão pode, por exemplo, ser disposto em uma localização selecionada pelo usuário ou default dentro do ambiente virtual e permite que um usuário rapidamente navegue para aquela localização com a seleção do ponto de pressão. Um ponto de pressão pode, em algumas variações, ser associado com uma orientação dentro do ambiente virtual e/ou uma escala aparente (nível de zoom) da tela do ambiente a partir daquele ponto de vantagem. Pontos de pressão podem, por exemplo, ser visualmente indicados como pontos coloridos ou outros marcadores coloridos graficamente exibidos em uma vista em perspectiva de primeira pessoa. Por selecionar um ponto de pressão, o usuário pode ser transportado para o ponto de vantagem do ponto de pressão selecionado dentro do ambiente cirúrgico robótico virtual.
[0108] Por exemplo, a Figura 16 ilustra o método de operação 1600 de um exemplo de variação de um modo de usuário permitindo pontos de pressão. Como mostrado na Figura 16, um ponto de pressão pode ser posicionado (1610) no ambiente virtual por um usuário ou como um ajuste predeterminado. Por exemplo, um usuário pode navegar através de um menu de modo de usuário como descrito acima, e selecionar ou "pegar" um ícone de ponto de pressão a partir do menu com um controlador de mão (por exemplo, indicado com um ponto colorido ou outro marcador adequado) e arrastar e posicionar o ícone de ponto de pressão a uma localização e/ou orientação desejada no ambiente virtual. O ponto de pressão pode, em algumas variações, ser reposicionado pelo usuário ao selecionar de novo o ponto de pressão (por exemplo, mover a representação gráfica do controlador de mão até que a mesma intersecte com o ponto de pressão ou um limite de volume de colisão em torno do ponto de pressão, então engatar uma entrada característica tal como um botão ou gatilho) e arrastar e posicionar o ícone de ponto de pressão em uma nova localização desejada. Em algumas variações, o usuário pode configurar a escala ou nível de zoom do ponto de vantagem (1620) associado com o ponto de pressão, de modo a ajustar uma exibida barra de rolagem ou roda do mouse, movimentos como descrito acima para configurar um nível de escala para um manipulação da vista ambiental, etc. O ponto de pressão pode, em alguns exemplos, ter um nível de escala de default associada com todos ou uma subcategoria de pontos de pressão, a nível de escala associada com o ponto de vantagem atual do usuário quando o usuário coloca o ponto de pressão, ou ajustado como descrito acima. Adicionalmente, uma vez que um ponto de pressão é disposto, o ponto de pressão pode ser armazenado (1630) na memória (por exemplo, armazenamento local ou remoto) para acesso futuro. Um ponto de pressão pode, em algumas variações, ser deletado a partir do ambiente virtual e a partir de memória. Por exemplo, um ponto de pressão pode ser selecionado (em uma maneira similar como por reposicionamento do ponto de pressão) e projetado para deleção por arrastar o mesmo fora da tela para uma predeterminada localização (por exemplo, recipiente de lixo virtual) e/ou mover o mesmo com uma predeterminada velocidade (por exemplo, "atirado" em uma direção em afastamento a partir do ponto de vantagem do usuário com uma rapidez maior do que um limiar predeterminado), seleção de uma opção de menu secundário, comando de voz, etc.
[0109] Uma vez que um ou mais pontos de pressão para um ambiente virtual são armazenadas na memória, o usuário pode selecionar um dos pontos de pressão armazenados (1640) para uso. Por exemplo, com a seleção de um ponto de pressão armazenado, o ponto de vantagem do usuário pode ser ajustado para a posição, orientação, e/ou escala das configurações do ponto de pressão selecionado (1650), desse modo permitindo que o usuário sinta como se ele estivesse se transportando para a localização associada com o ponto de pressão selecionado. Em algumas variações, o ponto de vantagem anterior do usuário pode ser armazenado como um ponto de pressão (1660) para permitir o fácil "desfazer" do teletransporte percebido pelo usuário e faça a transição do usuário de volta ao seu ponto de vista anterior. Esse ponto de pressão pode ser temporário (por exemplo, desaparecer após um período de tempo predeterminado, como após 5 a 10 segundos). Em alguns exemplos, o ponto de vantagem anterior do usuário pode ser armazenado como um ponto de ajuste apenas se o local anterior do usuário não for um ponto de ajuste preexistente. Além disso, em algumas variações, uma trilha ou trajetória virtual (por exemplo, linha ou arco) pode ser exibida no ambiente virtual conectando o ponto de vista anterior do usuário ao novo ponto de vista do usuário associado ao ponto de encaixe selecionado, que pode, por exemplo, fornecer ao usuário o contexto de como ele se teletransportou no ambiente virtual. Essa indicação visual pode ser removida da exibição do ambiente virtual após um período predeterminado de tempo (por exemplo, após 5-10 segundos).
[0110] Geralmente, em algumas variações, um ponto de pressão pode operar de maneira semelhante aos portais descritos abaixo, exceto que um ponto de pressão pode indicar um ponto de vantagem sem fornecer uma visualização em janela do ambiente virtual. Por exemplo, pontos de pressão podem ser colocados em pontos de vantagem selecionados pelo usuário fora e/ou dentro do paciente virtual e podem ser vinculados a uma ou mais trajetórias semelhantes aos portais, como descrito acima. Em algumas variações, as trajetórias de ponto de pressão podem ser definidas pelo usuário de maneira semelhante à descrita abaixo para portais.
PORTAIS
[0111] Em algumas variações, o sistema pode incluir um modo de usuário que facilita colocação de um ou mais portais, ou pontos de teletransporte, nos locais selecionados pelo usuário no ambiente virtual. Cada portal pode, por exemplo, servir como uma porta de transporte para um ponto de vantagem correspondente no ambiente virtual, desse modo permitindo que o usuário altere rapidamente pontos de vista para visualizar e navegar no ambiente virtual. Geralmente, após a seleção (por exemplo, com um ou mais controladores portáteis 230) de um portal, a localização aparente do usuário pode fazer a transição para a localização do portal selecionado, de modo que o usuário visualize o ambiente virtual a partir do ponto de vista do portal selecionado e tenha a sensação de "pular" pelo ambiente virtual. Ao colocar um ou mais portais em torno do ambiente virtual, o usuário pode ter a capacidade de se mover rapidamente entre vários pontos de vantagem. A localização, ajuste, armazenamento e/ou navegação de portais em todo o ambiente virtual podem ser semelhantes aos pontos de pressão descritos acima.
[0112] Por exemplo, como em geral descrito acima, o sistema pode exibir uma vista em perspectiva de primeira pessoa do ambiente cirúrgico robótico virtual a partir de um primeiro ponto de vantagem dentro do ambiente cirúrgico robótico virtual. O usuário pode navegar através de um menu para selecionar um modo de usuário que permite a colocação de um portal. Como mostrado na Figura 9A, o usuário pode manipular a representação gráfica 230’ do controlador de mão para posicionar um portal 910 em uma localização selecionada no ambiente virtual. Por exemplo, o usuário pode engatar a característica (por exemplo, gatilho ou botão) no controlador de mão enquanto um modo de usuário de permissão de colocação de portal é ativado, de modo que enquanto a característica é engatada e o usuário move a posição e/ou orientação do controlador de mão, um portal 910 pode aparecer e ser movido dentro do ambiente virtual. Um ou mais indicadores de colocação de portal 920 (por exemplo, uma ou mais setas, uma linha, um arco, etc. conectando a representação gráfica 230’ a uma localização de portal possível) podem ajudar a comunicar para o usuário a localização possível de um portal 910, tal como por ajudar com a percepção de profundidade. O tamanho do portal 910 pode ser ajustado "agarrando" e esticando ou encolhendo as laterais do portal 910 através dos controladores portáteis. Quando a localização do portal 910 é confirmada (por exemplo, pelo usuário liberando o recurso ativado no controlador de mão, clicando duas vezes, etc.), a localização aparente do usuário no ambiente virtual pode ser atualizada para corresponder ao ponto de vantagem associado ao portal 910. Em algumas variações, como descrito abaixo, pelo menos alguns pontos de vantagem dentro do local virtual podem ser proibidos. Os referidos pontos de vantagem proibidos podem ser armazenados na memória (por exemplo, armazenamento local ou remoto). Nas referidas variações, se um local do portal 910 for confirmado em um local proibido (por exemplo, comparado e correspondido a uma lista de pontos de vantagem proibidos armazenados na memória), a localização aparente do usuário no ambiente virtual poderá ser mantida sem alterações. No entanto, se um local do portal 910 for confirmado como permitido (por exemplo, comparado e não correspondido entre a lista de pontos de vista proibidos), a localização aparente do usuário no ambiente virtual poderá ser atualizada como descrito acima.
[0113] Em algumas variações, uma vez que o usuário colocou o portal 910 em um ponto de vantagem desejado, uma visualização em janela do ambiente virtual a partir do ponto de vantagem do portal 910 colocado pode ser exibida dentro do portal 910, oferecendo assim uma "pré-visualização" da vista oferecida pelo portal 910. O usuário pode, por exemplo, ver através do portal 910 com paralaxe completa, de modo que o portal 910 se comporte como um tipo de lente de aumento. Por exemplo, enquanto olha pelo portal 910, o usuário pode visualizar o ambiente virtual como se o usuário tivesse sido escalado para o inverso do fator de escala do portal (que afeta a distância interpupilar e a distância focal) e como se o usuário tivesse sido traduzido para o recíproco do fator de escala do portal (1/fator de escala do portal) da distância do portal 910 até a localização atual do usuário. Além disso, o portal 910 pode incluir um "horizonte de eventos" que pode ser uma textura em um plano que é proporcionado, por exemplo, usando uma ou mais câmeras adicionais (descritas abaixo) na cena do ambiente virtual posicionada como descrito acima. Nessas variações, ao "viajar" através do portal 910 após selecionar o portal 910 para teletransporte, a visão do usuário do ambiente virtual pode convergir naturalmente com o ponto de vantagem aparente do usuário durante a abordagem do usuário ao portal, uma vez que o ponto de vantagem do usuário é deslocado como uma fração da distância do portal (por 1/fator de escala do portal). Consequentemente, o usuário pode sentir como se estivesse entrando suave e naturalmente na visualização do ambiente virtual no fator de escala associado ao portal selecionado.
[0114] Como mostrado na Figura 9A, em algumas variações, o portal 910 pode ser em geral circular. No entanto, em outras variações, um ou mais portais 910 pode ser qualquer formato adequado, tal como elíptico, quadrado, retangular, irregular, etc. Adicionalmente, a vista da janela do ambiente virtual que é exibida no portal pode exibir o ambiente virtual em um fator de escala associado com o portal, de modo que a vista do ambiente virtual exibida em diferentes portais pode ser exibida em diferente níveis de zoom (por exemplo, 1x, 1,5x, 2x, 2,5x, 3x, etc.), desse modo também mudando a escala do usuário com relação ao ambiente. Um fator de escala da vista da janela em um portal pode também indicar ou corresponder com a escala da vista que seria exibida se o usuário fosse transportado para aquele ponto de vantagem do portal. Por exemplo, se a vista do ambiente virtual fora de um paciente virtual é cerca de 1x, então a vista da janela do ambiente virtual dentro do paciente virtual pode ser cerca de 2x ou mais, desse modo proporcionando um usuário com mais detalhes do tecido interno do paciente virtual. O fator de escala pode ser definido pelo usuário ou predeterminado pelo sistema (por exemplo, com base em localização do portal no ambiente virtual). Em algumas variações, um fator de escala pode se correlacionar ao tamanho exibido do portal 910, embora em outras variações, o fator de escala pode ser independente do tamanho do portal.
[0115] Em algumas variações, um portal 910 pode ser disposto em substancialmente qualquer ponto de vantagem no ambiente virtual que o usuário deseja. Por exemplo, um portal 910 pode ser disposto em qualquer ponto em uma superfície de terreno virtual de uma sala de operação virtual ou em um objeto virtual (por exemplo, mesa, cadeira, console de usuário, etc.). Como outro exemplo, como mostrado na Figura 9B, um portal 910 pode ser disposto no meio em qualquer elevação adequada acima da superfície de terreno virtual. Como ainda outro exemplo, como mostrado na Figura 9C, um portal pode ser disposto em ou dentro de um paciente virtual, tal como portais 910a e 910b que são dispostos no abdômen de um paciente e permitem vistas dos intestinos e outros órgãos internos do paciente virtual (por exemplo, realidade aumentada simulada). No referido exemplo, o paciente virtual pode ser gerado a partir de imagem médica e outra informação para um paciente real (não virtual), de modo que os portais 910a e 910b podem permitir que o usuário tenha uma vista de imersão de uma representação precisa do tecido real do paciente (por exemplo, para ver tumores, etc.), e/ou gerados a partir de câmeras virtuais internas (descrito abaixo) dispostas dentro do paciente. Em algumas variações, o sistema pode limitar a colocação de um portal 910 de acordo com orientações predefinidas (por exemplo, apenas fora do paciente ou apenas dentro do paciente), que podem corresponder, por exemplo, a um tipo de procedimento cirúrgico simulado ou a um nível de treinamento (por exemplo, nível de usuário "iniciante" ou "avançado") associado com o ambiente virtual. Os referidos locais proibidos podem ser indicados ao usuário, por exemplo, por uma alteração visual no portal 910 na medida em que o mesmo é colocado (por exemplo, alterando a cor do contorno, exibindo uma visualização em cinza ou opaca da janela dentro da porta 910 enquanto ele está sendo colocado) e/ou indicações auditivas (por exemplo, sinal sonoro, tom, feedback verbal). Em ainda outras variações, o sistema pode incluir adicional ou alternativamente um ou mais portais 910 colocados em locais predeterminados, como em um console virtual do usuário no ambiente virtual adjacente à mesa virtual do paciente, etc. Os referidos locais predeterminados podem, por exemplo, depender do tipo de procedimento, ou seja, salvo como parte de um arquivo de configuração.
[0116] Um portal 910 pode ser visível a partir de qualquer "lado" (por exemplo, lado da frente e lado de trás) do portal. Em algumas variações, a vista de um lado do portal 910 pode ser diferente de um lado oposto do portal 910. Por exemplo, quando visto de um primeiro lado (por exemplo, de frente) do portal 910, o portal pode fornecer uma vista do ambiente virtual com um fator de escala e efeitos de paralaxe, conforme descrito acima, enquanto que quando visto de um segundo lado (por exemplo, de trás) do portal 910, o portal pode fornecer uma visão do ambiente virtual com um fator de escala de cerca de um. Como outro exemplo, o portal pode fornecer uma visão do ambiente virtual com um fator de escala e efeitos de paralaxe quando visualizados do primeiro lado e do segundo lado do portal.
[0117] Em algumas variações, múltiplos portais 910 podem ser ligados em sequência para incluir a trajetória no ambiente virtual. Por exemplo, como mostrado na Figura 9C, uma vista em perspectiva de primeira pessoa do ambiente cirúrgico robótico virtual a partir de um primeiro ponto de vantagem pode ser exibida (por exemplo, uma vista de imersão). O usuário pode dispor um primeiro portal 910a em um segundo ponto de vantagem que é diferente a partir do primeiro ponto de vantagem (por exemplo, mais próximo do paciente virtual do que o primeiro ponto de vantagem) e uma primeira vista da janela do ambiente cirúrgico robótico virtual a partir do segundo ponto de vantagem pode ser exibida no primeiro portal 910a. De modo similar, o usuário pode dispor um segundo portal 910b em um terceiro ponto de vantagem (por exemplo, mais próximo para o paciente do que o primeiro e segundo pontos de vantagem), e uma segunda vista da janela do ambiente cirúrgico robótico virtual pode ser exibida em um segundo portal 910b. O usuário pode proporcionar uma entrada de informação do usuário associando o primeiro e segundo portais 910a e 910b (por exemplo, por seleção com os controladores portáteis, desenhar uma linha entre o primeiro e segundo portais com os controladores portáteis, etc.) de modo que o primeiro e segundo portais são ligados em sequência, desse modo gerando a trajetória entre o primeiro e segundo portais.
[0118] Em algumas variações, depois de vários portais 910 serem vinculados para gerar uma trajetória, o transporte ao longo da trajetória pode não exigir a seleção explícita de cada portal sequencial. Por exemplo, uma vez na trajetória (por exemplo, no segundo ponto de vantagem), a viagem entre portais vinculados pode ser realizada pelo acionamento de um gatilho, botão, almofada de toque, roda de rolagem, outro recurso interativo do controlador de mão, comando de voz, etc.
[0119] Portais adicionais podem ser vinculados de maneira semelhante. Por exemplo, dois, três ou mais portais podem ser vinculados em série para gerar uma trajetória estendida. Como outro exemplo, vários portais podem formar trajetórias "ramificadas", em que pelo menos duas trajetórias compartilham pelo menos um portal em comum, mas, de outra forma, cada trajetória possui pelo menos um portal exclusivo para essa trajetória. Como outro exemplo, vários portais podem formar duas ou mais trajetórias que não compartilham portais em comum. O usuário pode selecionar a trajetória na qual viajar, tal como ao usar os controladores de mão e/ou comando de voz, etc. Uma ou mais trajetórias entre portais podem ser visualmente indicadas (por exemplo, com uma linha pontilhada, código de cores dos portais ao longo da mesma trajetória, etc.), e essa indicação visual de trajetórias pode ser ativada e desativada, como com base na preferência do usuário.
[0120] Outras características do portal podem facilitar a navegação fácil das trajetórias entre portais. Por exemplo, um portal pode mudar de cor quando o usuário entra e passa por esse portal. Como mostrado na Figura 9C, em outro exemplo, um próprio portal pode ser exibido com setas de direção indicando a direção permitida da trajetória incluindo esse portal. Além disso, o deslocamento ao longo das trajetórias pode ser realizado com um comando "desfazer" (via controladores de mão e/ou comando de voz, etc.) que retorna o usuário ao ponto de vantagem anterior (por exemplo, exibe a visão do ambiente virtual a partir do anterior ponto de vista). Em algumas variações, um ponto de vantagem inicial ou padrão pode ser estabelecido (como de acordo com a preferência do usuário ou as configurações do sistema) para permitir que o usuário retorne rapidamente a esse ponto de vantagem inicial com um comando de atalho, como um recurso interativo em um controlador de mão ou um comando de voz (por exemplo, "Redefinir minha posição"). Por exemplo, um ponto de vista inicial ou padrão pode estar em um console virtual do usuário ou adjacente à tabela de pacientes virtuais.
[0121] O modo de usuário que facilita a colocação e o uso de portais, ou outro modo de usuário separado, pode adicionalmente facilitar a deleção de um ou mais portais. Por exemplo, um portal pode ser selecionado para deleção com os controladores portáteis. Como outro exemplo, um ou mais portais podem ser selecionados para deleção por meio de comando de voz (por exemplo, "deletar todos os portais" ou "deletar o portal A").
NAVEGAÇÃO LIVRE
[0122] O sistema pode incluir um modo de usuário que facilita a livre navegação em torno do ambiente cirúrgico robótico virtual. Por exemplo, como descrito neste documento, o sistema pode ser configurado para detectar os movimentos de caminhada do usuário com base em sensores em uma tela montada na cabeça e/ou controladores portáteis, e pode correlacionar os movimentos do usuário em reposicionamento dentro de uma sala de operação virtual.
[0123] Em outra variação, o sistema pode incluir um modo de voo que permite ao usuário navegar rapidamente no ambiente virtual de uma maneira "voadora" em diferentes elevações e/ou velocidades e em diferentes ângulos. Por exemplo, o usuário pode navegar no modo de voo direcionando um ou mais controladores de mão e/ou o fone de ouvido na direção desejada para o voo. Características interativas no controlador de mão podem controlar ainda mais o voo. Por exemplo, uma almofada direcional ou almofada de toque pode fornecer controle para movimentos para frente, para trás, de lado a lado, etc., mantendo substancialmente a mesma vista em perspectiva do ambiente virtual. A tradução pode, em algumas variações, ocorrer sem aceleração, pois a aceleração pode aumentar a probabilidade de enjoo pelo simulador. Em outra configuração do usuário, um teclado direcional ou almofada de toque (ou orientação do fone de ouvido) podem fornecer controle para a elevação da localização aparente do usuário no ambiente virtual. Além disso, em algumas variações semelhantes às descritas acima em relação aos portais, um ponto de vantagem inicial ou padrão dentro do modo de voo pode ser estabelecido para permitir que um usuário retorne rapidamente a esse ponto de vantagem inicial com um comando de atalho. Parâmetros como velocidade de voo em resposta a uma entrada de informação do usuário podem ser ajustáveis pelo usuário e/ou definidos pelo sistema por default.
[0124] Além disso, no modo de voo, o fator de escala da vista exibida pode ser controlado pelos controladores de mão. O fator de escala pode, por exemplo, afetar a elevação aparente da localização do usuário no ambiente virtual. Em algumas variações, o usuário pode usar os controladores de mão para separar dois pontos na visualização exibida para diminuir o zoom e aproximar dois pontos na visualização exibida para aumentar o zoom ou, inversamente, separar dois pontos na visualização exibida para ampliar dois pontos na vista exibida para diminuir o zoom. Adicional ou alternativamente, o usuário pode utilizar comandos de voz (por exemplo, "aumentar o zoom para 2x") para alterar o fator de escala da vista exibida. Por exemplo, as Figuras 10A e 10B ilustram vistas exemplares do ambiente virtual que são relativamente "ampliadas" e "reduzidas", respectivamente. Parâmetros como a velocidade da alteração do fator de escala, faixa mínima e máxima do fator de escala, etc. podem ser ajustáveis pelo usuário e/ou definidos pelo sistema por default.
[0125] Na medida em que o usuário navega livremente no ambiente virtual no modo de voo, a vista exibida pode incluir recursos para reduzir a fadiga ocular, náusea etc. Por exemplo, em algumas variações, o sistema pode incluir um "modo de conforto" em que regiões externas da vista exibida são removidas à medida que o usuário navega no modo de voo, o que pode, por exemplo, ajudar a reduzir o enjoo por movimento do usuário. Como mostrado na Figura 10C, quando no modo de conforto, o sistema pode definir uma região de transição 1030 entre um limite de transição interno 1010 e um limite de transição externo 1020 em torno de uma área focal (por exemplo, centro) da visão do usuário. Dentro da região de transição (dentro do limite de transição interno 1010), é exibida uma vista normal do ambiente cirúrgico robótico virtual. Fora da região de transição (fora do limite de transição externa 1020), uma vista neutra ou plano de fundo simples (por exemplo, um plano de fundo cinza claro) é exibido. Dentro da região de transição 1030, a vista exibida pode ter um gradiente que transita gradualmente a vista do ambiente virtual para a vista neutra. Embora a região de transição 1030 mostrada na Figura 10C seja representada como em geral circular, com limites de transição internos e externos em geral circulares 1010 e 1020, em outras variações os limites de transição interno e externo 1010 e 1020 podem definir uma região de transição 1030 que é elíptica ou outra forma adequada. Além disso, em algumas variações, vários parâmetros da região de transição, como tamanho, forma, gradiente, etc. podem ser ajustáveis pelo usuário e/ou definidos pelo sistema por default.
[0126] Em algumas variações, como mostrado na Figura 11, o usuário pode visualizar o ambiente cirúrgico robótico virtual a partir de a vista em forma de maquete que permite que o usuário visualize a sala de operação virtual a partir de um ponto de vantagem superior, com uma perspectiva de cima para baixo. Na vista em forma de maquete, a sala de operação virtual pode ser exibida em um fator de escala menor (por exemplo, menor do que tamanho natural) na tela, desse modo mudando a escala do usuário com relação à sala de operação virtual. A vista em forma de maquete pode proporcionar o usuário com ciência contextual adicional do ambiente virtual, na medida em que o usuário pode ver toda a sala de operação virtual de uma vez, assim como o arranjo de seus conteúdos, tais como equipamento virtual, pessoal virtual, paciente virtual, etc. Através da vista em forma de maquete, por exemplo, o usuário pode rearranjar objetos virtuais na sala de operação virtual com ciência contextual mais ampla. A vista em forma de maquete pode, em algumas variações, ser ligada em uma trajetória ao longo de portais e/ou pontos de pressão descritos acima.
ROTAÇÃO DA VISTA DO AMBIENTE
[0127] Em algumas variações, o sistema pode incluir um modo de usuário que permite que o usuário navegue o ambiente cirúrgico robótico virtual por mover o ambiente virtual em torno de seu ponto de vantagem atual. O modo de rotação de vista do ambiente pode oferecer uma maneira diferente na qual o usuário pode navegar o ambiente virtual, tal como por "pegar" e manipular o ambiente como se fosse um objeto. Na medida em que o usuário navega através do ambiente virtual desse modo, um "modo de conforto" similar àquele descrito acima pode adicionalmente ser implementado para ajudar a reduzir enjoo por movimento relacionado à simulação. Por exemplo, em um modo de rotação de vista do ambiente, o usuário pode girar uma cena exibida em torno de um ponto de vantagem atual por selecionar e arrastar a vista do ambiente virtual em torno do ponto de vantagem do usuário atual. Em outras palavras, no modo de rotação de vista do ambiente, a localização aparente do usuário no ambiente virtual aparece fixa enquanto o ambiente virtual pode ser movido. Isso é um contraste com relação a outros modos, tal como, por exemplo, o modo de voo descrito acima, no qual em geral o ambiente pode aparecer fixo enquanto o usuário se move. Similar aos ajustes de fator de escala descrito acima para modo de voo, no modo de rotação de vista do ambiente, o fator de escala da vista exibida do ambiente pode ser controlado pelos controladores portáteis e/ou comandos de voz (por exemplo, por usar os controladores portáteis para selecionar e separar dois pontos na vista exibida para ampliar, etc.).
[0128] Por exemplo, como mostrado na Figura 15, em um exemplo de variação de um método 1500 para operar em um modo de rotação de vista do ambiente, o usuário pode ativar uma entrada de informação do método de usuário (1510) tal como em um controlador de mão (por exemplo, um botão ou engatilhar ou outra característica adequada) ou qualquer dispositivo adequado. Em algumas variações, um controlador de mão (1520) pode ser detectado com a ativação da entrada de informação do método de usuário. A posição original do controlador de mão no momento de ativação pode ser detectada e armazenada (1522). Posteriormente, na medida em que o usuário move o controlador de mão (por exemplo, enquanto continua a ativar a entrada de informação do método de usuário), a posição atual do controlador de mão pode ser detectada (1524). Um vetor diferença entre a posição original (ou anterior) e a posição atual do controlador de mão pode ser calculada (1526), e a posição do ponto de vantagem do usuário pode ser ajustada (1528) com base pelo menos parcialmente na diferença de vetor calculada, desse modo criando um efeito que faz com que o usuário tenha a sensação de estar "pegando" e arrastando o ambiente virtual ao redor.
[0129] Em algumas variações, dois controladores portáteis (1520’) podem ser detectados com a ativação da entrada de informação do método de usuário. As posições originais dos controladores portáteis podem ser detectadas (1522’), e um ponto central e um vetor original entre as posições originais dos controladores portáteis (1523’) podem ser calculadas e armazenadas. Posteriormente, na medida em que o usuário se move um ou mais ou ambos os controladores portáteis (por exemplo, enquanto continuam para ativar a entrada de informação do método de usuário), as posições atuais dos controladores portáteis podem ser detectadas (1524’) e usadas para formar a base para a diferença de vetor calculada entre os vetores original e atual entre controladores portáteis (1528’). A posição e/ou a orientação do ponto de vantagem do usuário pode ser ajustada (1528’), com base na diferença de vetor calculada. Por exemplo, a orientação ou a rotação da vista exibida pode ser girada em torno do ponto central entre os locais do controlador de mão, desse modo criando um efeito que faz com que o usuário tenha a sensação de que ele está "pegando" e arrastando o ambiente ao redor. De modo similar, a escala da tela do ambiente virtual (1529’) pode ser ajustada com base na diferença calculada em distância entre os dois controladores portáteis, desse modo criando um efeito de que faz o usuário sentir que está "pegando" e ampliando e reduzindo a vista exibida do ambiente virtual.
[0130] Embora os modos de usuário acima descritos sejam descritos separadamente, deve ser entendido que aspectos dos referidos modos caracterizam exemplos de modos nos quais um usuário pode navegar o ambiente cirúrgico robótico virtual, e podem ser combinados em um único modo de usuário. Além disso, alguns dos referidos aspectos podem estar perfeitamente ligados. Por exemplo, um ponto de vista aéreo em geral associado ao modo de voo pode ser sequencialmente ligado a um ou mais portais em uma trajetória. Além disso, em algumas variações, um ponto de vantagem ou uma vista exibida do ambiente virtual (por exemplo, conforme ajustado por um ou mais dos modos de usuário acima) pode ser ligado a pelo menos um ponto de vantagem padrão (por exemplo, padrão na posição, orientação e/ou escala). Por exemplo, ativando uma entrada de informação do usuário (por exemplo, em um controlador de mão, pedal, etc.), um usuário pode "redefinir" o ponto de vantagem atual para um ponto de vantagem designado ou predeterminado no ambiente virtual. O ponto de vantagem atual do usuário pode, por exemplo, ser gradual e suavemente animado para fazer a transição para os valores padrão de posição, orientação e/ou escala.
VISTAS SUPLEMENTARES
[0131] Em algumas variações, um exemplo de modo de usuário ou modos do sistema pode exibir uma ou mais vistas suplementares de informação adicional a um usuário, tal como sobreposta sobre ou inserida na principal, vista em perspectiva de primeira pessoa do ambiente cirúrgico robótico virtual. Por exemplo, como mostrado na Figura 12, uma tela de exibição ampliada 1210 (HUD) pode fornecer uma sobreposição transparente sobre uma vista em perspectiva primária em primeira pessoa do ambiente virtual. A HUD 1210 pode ser ligada e desligada, permitindo assim ao usuário controlar se a HUD 1210 deve ser exibida a qualquer momento. Vistas suplementares de informações adicionais, tais como as descritas abaixo, podem ser colocadas na HUD, de modo que o usuário possa observar as vistas complementares sem desviar o olhar da vista principal. Por exemplo, as vistas suplementares podem "aderir" à HUD 1210 e se mover com o movimento da cabeça do usuário, de modo que as vistas complementares estejam sempre no campo de visão do usuário. Como outro exemplo, visualizações suplementares de informações adicionais podem ser fixadas livremente na HUD 1210, pois as visualizações suplementares podem ser pequenas ou pelo menos parcialmente ocultadas fora da tela ou na visão periférica quando a cabeça do usuário geralmente está voltada para a frente, mas um pequeno ou leve movimento da cabeça para um lado pode expandir e/ou trazer uma ou mais vistas suplementares para o campo de visão do usuário. As uma ou mais vistas suplementares podem ser dispostas na HUD 1210 em uma fileira, grade ou outro arranjo adequado. Em algumas variações, a HUD 1210 pode incluir pontos pré-determinados de "encaixe" nos quais as vistas suplementares (por exemplo, vistas da câmera, etc.) estão posicionadas. Por exemplo, o usuário pode selecionar uma vista suplementar na HUD 1210 para uma inspeção mais detalhada e, em seguida, substituir a vista suplementar na HUD 1210 arrastando a mesma em geral na direção de um ponto de encaixe, no qual a vista suplementar pode ser desenhada e fixada no ponto de encaixe sem precisar ser precisamente colocada lá pelo usuário.
[0132] Como outro exemplo, em um modo de estação de comando virtual, uma ou mais visualizações suplementares podem ser exibidas em um espaço virtual com uma ou mais janelas ou painéis de conteúdo dispostos na frente do usuário no espaço virtual (por exemplo, semelhante a um menu navegável). Por exemplo, como mostrado na Figura 13, várias janelas de conteúdo (por exemplo, 1310a, 1310b, 1310c e 1310d) podem ser posicionadas em um arranjo semicircular ou em outro arranjo adequado para exibição ao usuário. A disposição das janelas de conteúdo pode ser ajustada pelo usuário (por exemplo, usando controladores de mão com suas representações gráficas 230' para selecionar e arrastar ou girar janelas de conteúdo). As janelas de conteúdo podem exibir, por exemplo, uma transmissão de vídeo do endoscópio, uma visão do portal, uma visão aérea do "estádio" da sala de operações virtual, dados do paciente (por exemplo, imagens), outras visualizações da câmera ou de informações do paciente, como as descritas neste documento, etc. Ao visualizar vários painéis simultaneamente, o usuário pode monitorar simultaneamente vários aspectos da sala de operações virtual e/ou com o paciente, permitindo assim que o usuário tenha uma percepção abrangente e ampla do ambiente virtual. Por exemplo, o usuário pode tomar conhecimento e responder mais rapidamente a qualquer evento adverso no ambiente virtual (por exemplo, reações negativas simuladas do paciente virtual durante um procedimento cirúrgico simulado).
[0133] Além disso, o modo da estação de comando virtual pode permitir que um usuário selecione qualquer uma das janelas de conteúdo e fique imerso no conteúdo exibido (por exemplo, com uma perspectiva em primeira pessoa). Esse modo totalmente imersivo pode descartar temporariamente as outras janelas de conteúdo ou minimizar (por exemplo, ser relegado a uma HUD sobreposta ao conteúdo de imersão selecionado). Como um exemplo ilustrativo, no modo de estação de comando virtual, o sistema pode exibir várias janelas de conteúdo, incluindo uma transmissão de vídeo de câmera endoscópica que mostra o interior do abdômen de um paciente virtual. O usuário pode selecionar a transmissão de vídeo da câmera endoscópica para ficar totalmente imersa no abdômen do paciente virtual (por exemplo, ao mesmo tempo em que ainda manipula braços robóticos e instrumentos anexados aos braços).
VISTAS DAS CÂMERAS
[0134] Em algumas variações, um modo de usuário pode permitir ao usuário colocar a câmera virtual em um ponto de vantagem selecionado no ambiente virtual, e a vista da janela do ambiente virtual a partir do ponto de vantagem selecionado pode ser exibida na HUD de modo que o usuário pode simultaneamente ver não só o seu campo de visão em primeira pessoa, mas também a vista da câmera (a vista proporcionada pela câmera virtual) que pode atualizar em tempo real. A câmera virtual pode ser disposta em qualquer localização adequada no ambiente virtual (por exemplo, dentro ou fora do paciente, acima do paciente, acima da sala de operação virtual, etc.). Por exemplo, como mostrado na Figura 12, o usuário pode dispor a câmera virtual 1220 (por exemplo, usando preensão do objeto como descrito acima) perto da região pélvica de um paciente virtual e de frente para o abdômen do paciente, de modo a fornecer uma "transmissão de vídeo virtual" do abdômen do paciente. Uma vez colocada, uma câmera virtual 1220 pode ser subsequentemente reposicionada. Uma visualização da câmera (por exemplo, uma visualização circular inserida ou janela de qualquer formato adequado) pode ser colocada na HUD como uma vista da janela mostrando a transmissão de vídeo virtual do ponto de vista da câmera virtual 1220. Da mesma forma, várias câmeras virtuais podem ser colocadas no ambiente virtual para permitir que várias vistas da câmera sejam mostradas na HUD. Em algumas variações, um arranjo predeterminado de uma ou mais câmeras virtuais pode ser carregado como parte de um arquivo de configuração para o processador de realidade virtual incorporar ao ambiente virtual.
[0135] Em algumas variações, o sistema pode oferecer uma faixa de diferentes tipos de câmeras virtuais, que pode proporcionar diferentes tipos de vistas de câmera. Um exemplo de variação da câmera virtual é uma câmera de "cinema" que é configurada para proporcionar uma transmissão virtual ao vivo do ambiente virtual (por exemplo, vista da câmera de cinema 1212 na Figura 12). Outro exemplo de variação da câmera virtual é uma câmera endoscópica que é fixada a um endoscópio virtual a ser disposto em um paciente virtual. Nesta referida variação, o usuário pode, por exemplo, realizar virtualmente a técnica para introduzir a câmera do endoscópio virtual no paciente virtual e subsequentemente monitorar o espaço de trabalho interno dentro do paciente por ver a transmissão de vídeo endoscópico virtual (por exemplo, vista da câmera endoscópica 1214 na Figura 12). Em outro exemplo de variação, a câmera virtual pode ser uma câmera grande angular (por exemplo, 360-graus, panorâmica, etc.) que é configurada para proporcionar um maior campo de visão do ambiente virtual. Nesta referida variação, a visão da câmera na janela pode, por exemplo, ser exibida como um olho de peixe ou tela em geral esférica.
[0136] Vários aspectos da vista da câmera podem ser ajustados pelo usuário. Por exemplo, o usuário pode ajustar a localização, tamanho, fator de escala, etc. da vista da câmera (por exemplo, similar a ajustes de portais como descrito acima). Como outro exemplo, o usuário pode selecionar um ou mais filtros ou outros efeitos de imagem especiais para serem aplicados à vista da câmera. Exemplos de filtros incluem filtros que destacam uma característica anatômica particular (por exemplo, tumores) ou características de tecido (por exemplo, perfusão) do paciente virtual. Em algumas variações, uma ou mais câmeras virtuais podem ser desmarcadas ou "desligadas" (por exemplo, ter uma câmera virtual e/ou vista de câmera associada seletivamente ocultada) ou deletada, tal como se a câmera virtual ou sua vista de câmera associada estivesse obstruindo a vista do ambiente virtual do usuário atrás da câmera virtual ou da vista da câmera.
[0137] Em algumas variações, a vista da câmera pode funcionar de modo similar a um portal (descrito acima) para permitir que o usuário navegue rapidamente em torno do ambiente virtual. Por exemplo, com referência à Figura 12, um usuário pode selecionar a vista da câmera 1212 (por exemplo, destacar ou pegar e puxar a vista da câmera 1212 em direção a si mesmo) para ser transportado para o ponto de vantagem da vista da câmera 1212.
VISTAS DE DADOS DO PACIENTE, ETC.
[0138] Em algumas variações, um modo de usuário pode permitir exibir dados do paciente e outra informação na HUD ou outra localização adequada na tela. Por exemplo, informação de imagem do paciente (por exemplo, ultrassom, raio X, MRI, etc.) pode ser exibida em uma tela suplementar, sobreposta sobre o paciente (por exemplo, como realidade aumentada simulada). Um usuário pode, por exemplo, ver imagens do paciente como referência enquanto interage com o paciente virtual. Como outro exemplo, sinais vitais do paciente (por exemplo, frequência cardíaca, pressão sanguínea, etc.) pode ser exibido para o usuário em uma vista suplementar.
[0139] Em outra variação, um modo de usuário pode permitir a exibição de outra informação adequada, tal como vídeos de treinamento (por exemplo, exemplo de procedimentos cirúrgicos registrados a partir de um procedimento anterior), transmissão de vídeo a partir de um mentor ou cirurgião treinador, etc. proporcionando orientação a um usuário.
APLICAÇÕES DO SISTEMA DE REALIDADE VIRTUAL
[0140] Em geral, o sistema de realidade virtual pode ser usado em qualquer cenário adequado no qual é útil para simular ou replicar um ambiente cirúrgico robótico. Em algumas variações, o sistema de realidade virtual pode ser usado para fins de treinamento, tal como permitir que um cirurgião pratique controlar um sistema cirúrgico robótico e/ou pratique realizar um tipo particular de procedimento cirúrgico minimamente invasivo usando um sistema cirúrgico robótico. O sistema de realidade virtual pode permitir que um usuário melhor entenda os movimentos do sistema cirúrgico robótico em resposta aos comandos do usuário, não só dentro, mas também fora do paciente. Por exemplo, um usuário pode usar a tela montada na cabeça sob supervisão de um mentor ou treinador que pode ver o ambiente de realidade virtual ao lado do usuário (por exemplo, através de uma segunda tela montada na cabeça, através de uma tela externa, etc.) e guiar o usuário através de operações de um sistema cirúrgico robótico virtual dentro do ambiente de realidade virtual. Como outro exemplo, um usuário pode usar a tela montada na cabeça e pode ver, como visto na tela de imersão (por exemplo, em uma janela de conteúdo, a HUD, etc.) um vídeo relacionado a treinamento tal como um registro de um procedimento cirúrgico anteriormente realizado.
[0141] Como outro exemplo, o sistema de realidade virtual pode ser usado para fins de planejamento cirúrgico. Por exemplo, um usuário pode operar o sistema de realidade virtual para planejar o fluxo de trabalho cirúrgico. Arquivos de configuração de objetos virtuais (por exemplo, sistema cirúrgico robótico que inclui braços e acionador de ferramentas, console de usuário, efetores terminais, outro equipamento, leito do paciente, paciente, pessoal, etc.) pode ser carregado dentro de um ambiente cirúrgico robótico virtual como representativo de objetos atuais que estarão na sala de operação atual (isto é, não virtual, ou real). Dentro do ambiente de realidade virtual, o usuário pode ajustar as características da sala de operação virtual, tal como posicionamento do console de usuário, leito do paciente, e outro equipamento um relativo ao outro em um arranjo desejado. O usuário pode adicional ou alternativamente usar o sistema de realidade virtual para planejar aspectos do sistema cirúrgico robótico, tais como selecionar o número e a localização das portas para entrada dos instrumentos cirúrgicos, ou determinar o número ótimo e a posição/orientação (por exemplo, localização de montagem, pose do braço, etc.) de braços robóticos para um procedimento, tal como para minimizar colisões potenciais entre componentes do sistema durante o procedimento cirúrgico. Os referidos arranjos virtuais podem ser com base, por exemplo, em tentativa e erro, configurações anteriores para procedimentos cirúrgicos similares e/ou pacientes similares, etc. Em algumas variações, o sistema pode adicional ou alternativamente propor arranjos virtuais selecionados com base em técnicas de aprendizagem por máquina aplicadas a conjuntos de dados de procedimentos cirúrgicos anteriormente realizados para vários tipos de pacientes.
[0142] Como ainda outro exemplo, o sistema de realidade virtual pode ser usado para fins de R&D (por exemplo, simulação). Por exemplo, um método para projetar um sistema cirúrgico robótico pode incluir gerar um modelo virtual de um sistema cirúrgico robótico, testar o modelo virtual do sistema cirúrgico robótico no ambiente da sala de operação virtual, modificar o modelo virtual do sistema cirúrgico robótico com base no teste, e construir o sistema cirúrgico robótico com base no modelo virtual modificado. Aspectos do modelo virtual do sistema cirúrgico robótico que podem ser testados no ambiente da sala de operação virtual incluem características físicas de um ou mais componentes do sistema cirúrgico robótico (por exemplo, diâmetro ou comprimento de ligações de braço). Por exemplo, um modelo virtual de uma configuração particular de um braço robótico pode ser construído e implementado em um ambiente virtual, onde o modelo virtual pode ser testado com relação a movimentos particulares do braço, procedimentos cirúrgicos, etc. (por exemplo, teste de probabilidade de colisão entre o braço robótico e outros objetos). Desse modo, a configuração de um braço robótico (ou de modo similar, qualquer outro componente do sistema cirúrgico robótico) pode ser pelo menos inicialmente testado por testar uma implementação virtual de uma configuração, em vez de testar um protótipo físico, desse modo acelerando o ciclo R&D e reduzindo os custos.
[0143] Outros aspectos que podem ser testados incluem funcionalidade de um ou mais componentes do sistema cirúrgico robótico (por exemplo, modos controlados de um sistema de controle). Por exemplo, como descrito acima, a aplicação de um ambiente de operação virtual pode passar informação de status para a aplicação de cinemáticas, e a aplicação de cinemáticas pode gerar e passar comandos com base em algoritmos de controle, onde o processador de realidade virtual pode usar os comandos para promover mudanças no ambiente cirúrgico robótico virtual (por exemplo, mover um braço robótico virtual em um modo particular de acordo com algoritmos de controle relevantes). Como tal, algoritmos de software de controle podem ser incorporados em um sistema robótico virtual para testar, refinar, etc. sem precisar de um protótipo físico do componente robótico relevante, desse modo conservando os recursos R&D e acelerando o ciclo R&D.
[0144] Em outro exemplo, o sistema de realidade virtual pode ser usado para permitir que múltiplos cirurgiões colaborem no mesmo ambiente de realidade virtual. Por exemplo, múltiplos usuários podem usar telas montadas na cabeça e interagir um com o outro (e com o mesmo sistema robótico virtual, o mesmo paciente virtual, etc.) no ambiente de realidade virtual. Os usuários podem estar fisicamente no mesmo ambiente ou localização geral, ou podem estar distantes um a partir do outro. Por exemplo, um usuário pode teleorientar o outro na medida em que colaboram para realizar um procedimento cirúrgico no paciente virtual.
[0145] Exemplos de aplicações ilustrativas específicas do sistema de realidade virtual são descritos em detalhes adicionais abaixo. No entanto, deve ser entendido que aplicações do sistema de realidade virtual não são limitados aos referidos exemplos e aos cenários de aplicação geral descritos neste documento.
EXEMPLO 1 - SOBRE O LEITO
[0146] Um usuário pode usar o sistema de realidade virtual para simular um cenário sobre a cama, no qual ele está adjacente a uma cama ou mesa de paciente e opera um sistema cirúrgico robótico e uma ferramenta laparoscópica manual. Essa simulação pode ser útil para treinamento, planejamento cirúrgico, etc. Por exemplo, o usuário pode grampear tecidos em um segmento-alvo do intestino de um paciente virtual usando uma ferramenta robótica virtual e uma ferramenta manual virtual.
[0147] No referido exemplo, o usuário veste a tela montada na cabeça proporcionando uma vista de imersão de um ambiente de realidade virtual, e pode usar controladores portáteis para navegar dentro do ambiente de realidade virtual para ser adjacente a uma mesa de paciente virtual na qual um paciente virtual está deitado. Uma extremidade proximal de um braço robótico virtual é fixada à mesa de paciente virtual, e a extremidade distal do braço robótico virtual suporta um acionador de ferramenta virtual que aciona o fórceps virtual que é posicionado dentro do abdômen do paciente virtual. Uma ferramenta de grampeador laparoscópico manual virtual é passada através da cânula virtual e tendo a extremidade distal posicionada dentro do abdômen do paciente virtual. Adicionalmente, uma câmera endoscópica é posicionada dentro do abdômen do paciente virtual, e proporciona uma transmissão da câmera virtual mostrando o espaço de trabalho cirúrgico dentro do abdômen do paciente virtual (que inclui tecido do paciente, fórceps virtual roboticamente controlado, e uma ferramenta de grampeador laparoscópico manual virtual).
[0148] O usuário continua a ver o ambiente virtual através da tela de imersão na tela montada na cabeça, assim como a transmissão da câmera endoscópica virtual exibida na vista da janela na exibição ampliada sobreposta no campo de vista do usuário. O usuário possui em uma mão um controlador de mão configurado para controlar o fórceps virtual acionado por robô. O usuário segura em outra mão um controlador de mão laparoscópico que está configurado para controlar a ferramenta de grampeador manual laparoscópica virtual, com o controlador de mão laparoscópico passando por uma cânula montada em um corpo falso de paciente feito de espuma. O controlador manual laparoscópico é calibrado para corresponder à ferramenta grampeador manual laparoscópica virtual. O usuário manipula o controlador de mão para operar os fórceps controlados por robô para manipular o intestino do paciente virtual e descobrir um segmento-alvo do intestino. Com o segmento-alvo do intestino exposto e acessível, o usuário manipula o controlador manual laparoscópico para aplicar grampos virtuais ao segmento-alvo por meio da ferramenta grampeador manual laparoscópico virtual.
EXEMPLO 2 - RESOLUÇÃO DE COLISÃO A PARTIR DO CONSOLE DO USUÁRIO
[0149] Quando se usa o sistema de realidade virtual, um usuário pode querer resolver colisões entre componentes virtuais do sistema cirúrgico robótico virtual, embora o usuário possa não estar adjacente aos componentes virtuais em colisão (por exemplo, o usuário pode estar sentado a uma distância da mesa do paciente virtual, como em um console do usuário virtual). Neste exemplo, o usuário veste uma tela montada na cabeça, fornecendo uma visão de imersão fornecida por um endoscópio virtual colocado dentro do abdômen de um paciente virtual. As extremidades proximais de dois braços robóticos virtuais são anexadas a locais separados em uma mesa de pacientes virtuais, na qual o paciente virtual se encontra. As extremidades distais dos braços robóticos virtuais suportam os respectivos acionadores de ferramenta que acionam o fórceps virtual que estão posicionados dentro do abdômen do paciente virtual. O usuário manipula os controladores portáteis para operar os dois fórceps virtuais controlados por robô, que manipulam tecido virtual dentro do paciente virtual. Esse movimento pode causar uma colisão envolvendo pelo menos um dos braços robóticos virtuais (por exemplo, um braço robótico virtual pode ser colocado de modo a criar uma colisão consigo mesmo, os braços robóticos virtuais podem ser colocados de modo a criar uma colisão entre si, um braço robótico virtual pode ser posicionado para criar uma colisão com o paciente ou um obstáculo próximo, etc.).
[0150] O sistema de realidade virtual detecta a colisão com base em informação de status dos braços robóticos virtuais, e alerta o usuário com relação à colisão. O sistema exibe uma vista superior ou outra vista adequada a partir de um ponto de vantagem adequado do sistema cirúrgico robótico virtual, tal como em uma vista da janela (por exemplo, visualização imagem em imagem). A localização da colisão é destacada em uma vista exibida da janela, tal como por delinear os componentes colidentes afetados com uma cor vermelha ou outra cor contrastante. Alternativamente, o usuário pode detectar a colisão em si por monitorar a transmissão da câmera de vídeo a partir da câmera virtual disposta acima da mesa de paciente virtual.
[0151] Ao tomar conhecimento da colisão, o usuário pode diminuir o zoom ou ajustar a escala de sua visão de imersão do ambiente de realidade virtual. O usuário pode ativar um modo de controle de reposicionamento do braço que bloqueia a posição e a orientação do fórceps virtual dentro do paciente. Usando os controladores de mão em um modo de usuário que pega o objeto, o usuário pode agarrar pontos de contato virtuais nos braços robóticos virtuais e reposicionar (repousar) os braços robóticos virtuais, a fim de resolver a colisão enquanto o modo de controle mantém a posição e a orientação do fórceps virtual durante o reposicionamento do braço. Uma vez que os braços robóticos virtuais são reposicionados de modo que a colisão seja resolvida, o usuário pode voltar ao ponto de vantagem anterior, desativar o modo de controle de reposicionamento do braço e continuar usando os controladores portáteis para operar o fórceps virtual no paciente virtual.
EXEMPLO 3 - REALOCAÇÃO COORDENADA DE MÚLTIPLOS INSTRUMENTOS CIRÚRGICOS A PARTIR DE CONSOLE DE USUÁRIO
[0152] Ao usar o sistema de realidade virtual, um usuário pode achar útil permanecer substancialmente em uma visão endoscópica e realocar vários instrumentos cirúrgicos virtuais (por exemplo, efetores finais, câmeras) como um grupo, em vez de individualmente no paciente virtual, economizando tempo, além de tornar mais fácil para o usuário manter a consciência contextual dos instrumentos em relação à anatomia do paciente virtual. Neste exemplo, o usuário veste uma tela montada na cabeça, fornecendo uma vista de imersão fornecida por um endoscópio virtual colocado dentro do abdômen de um paciente virtual. As extremidades proximais de dois braços robóticos virtuais são anexadas a locais separados em uma mesa de pacientes virtuais, na qual o paciente virtual se encontra. As extremidades distais do braço robótico virtual suportam os respectivos acionadores de ferramenta que acionam o fórceps virtual que estão posicionados na área pélvica do paciente virtual. O usuário pode manipular controladores portáteis para operar o fórceps virtual.
[0153] O usuário pode desejar mover o endoscópio virtual e o fórceps virtual para outra região-alvo do abdômen do paciente virtual, como o baço. Em vez de mover cada instrumento cirúrgico individualmente, o usuário pode ativar um modo de realocação coordenada. Quando esse modo é ativado, a visão da câmera endoscópica diminui o zoom ao longo do eixo do endoscópio a uma distância suficiente para permitir que o usuário visualize a nova região de destino (baço). Um indicador esférico é exibido na extremidade distal do endoscópio que encapsula a extremidade distal do endoscópio virtual e as extremidades distais do fórceps virtual. O usuário manipula pelo menos um controlador de mão para retirar o endoscópio virtual e o fórceps virtual do espaço de trabalho cirúrgico (por exemplo, até que o usuário possa ver a extremidade distal da cânula virtual na vista endoscópica virtual) e, em seguida, agarra e move a agulha esférica indicadora da área pélvica até o baço. Uma vez que o usuário finaliza a nova região de destino movendo o indicador esférico para a nova região de destino, o endoscópio virtual e o fórceps virtual viajam automaticamente para a nova região de destino e a vista da câmera endoscópica virtual é ampliada para mostrar a nova região de destino. Durante esse movimento relativamente em larga escala, o usuário visualiza o ambiente virtual com uma vista endoscópica substancial do ambiente virtual, permitindo que ele mantenha a consciência da anatomia do paciente virtual em vez de transferir seu foco entre o instrumento e a anatomia.
[0154] A descrição anterior, para fins de explicação, usou nomenclatura específica para fornecer uma compreensão completa da presente invenção. No entanto, será evidente para aquele versado na técnica que não são necessários detalhes específicos para praticar a presente invenção. Assim, as descrições anteriores de modalidades específicas da presente invenção são apresentadas para fins de ilustração e descrição. Não pretendem ser exaustivas ou limitar a invenção às formas precisas descritas; obviamente, muitas modificações e variações são possíveis em vista dos ensinamentos acima. As modalidades foram escolhidas e descritas a fim de melhor explicar os princípios da invenção e suas aplicações práticas, permitindo assim que outros especialistas na técnica utilizem melhor a invenção e várias modalidades com várias modificações, conforme adequado ao uso particular contemplado. É pretendido que as reivindicações a seguir e seus equivalentes definam o escopo da invenção.

Claims (20)

1. Sistema de realidade virtual para simular um ambiente cirúrgico robótico, caracterizado pelo fato de que o sistema compreende: um processador de realidade virtual configurado para gerar um ambiente cirúrgico robótico virtual que compreende pelo menos um braço robótico virtual e pelo menos uma ferramenta laparoscópica manual virtual; um primeiro dispositivo de mão acoplado em modo de comunicação para o processador de realidade virtual para manipular o pelo menos um braço robótico virtual no ambiente cirúrgico robótico virtual; e um segundo dispositivo de mão que compreende uma porção de mão e a característica de ferramenta que é removível a partir da porção de mão e é representativa de pelo menos a porção de a ferramenta laparoscópica manual, em que o segundo dispositivo de mão é acoplado em modo de comunicação para o processador de realidade virtual para manipular a pelo menos uma ferramenta laparoscópica manual virtual no ambiente cirúrgico robótico virtual.
2. Sistema de realidade virtual, de acordo com a reivindicação 1, caracterizado pelo fato de que o segundo dispositivo de mão é modular.
3. Sistema de realidade virtual, de acordo com a reivindicação 2, caracterizado pelo fato de que a característica de ferramenta é removível a partir da porção de mão do segundo dispositivo de mão.
4. Sistema de realidade virtual, de acordo com a reivindicação 3, caracterizado pelo fato de que a característica de ferramenta compreende um eixo de ferramenta e um adaptador de eixo para acoplar um eixo de ferramenta à porção de mão do segundo dispositivo de mão.
5. Sistema de realidade virtual, de acordo com a reivindicação 4, caracterizado pelo fato de que o adaptador de eixo compreende prendedores.
6. Sistema de realidade virtual, de acordo com a reivindicação 3, caracterizado pelo fato de que a porção de mão do segundo dispositivo de mão é substancialmente similar ao primeiro dispositivo de mão.
7. Sistema de realidade virtual, de acordo com a reivindicação 1, caracterizado pelo fato de que a porção de mão compreende uma característica interativa que aciona uma função da ferramenta laparoscópica manual virtual em resposta ao engate das características interativas por um usuário.
8. Sistema de realidade virtual, de acordo com a reivindicação 7, caracterizado pelo fato de que a característica interativa compreende um gatilho.
9. Sistema de realidade virtual, de acordo com a reivindicação 1, caracterizado pelo fato de que a ferramenta laparoscópica manual virtual é um grampeador laparoscópico manual virtual.
10. Sistema de realidade virtual, de acordo com a reivindicação 1, caracterizado pelo fato de que adicionalmente compreende um simulador de paciente que compreende uma cânula configurada para receber pelo menos uma porção da característica de ferramenta do segundo dispositivo de mão.
11. Método implementado por computador para simular um ambiente cirúrgico robótico em um sistema de realidade virtual, caracterizado pelo fato de que o método compreende: gerar, por um ou mais processadores, um ambiente cirúrgico robótico virtual que compreende pelo menos um braço robótico virtual e uma ferramenta laparoscópica manual virtual; acoplar um primeiro dispositivo de mão em modo de comunicação aos processadores para manipular pelo menos um braço robótico virtual no ambiente cirúrgico robótico virtual; acoplar um segundo dispositivo de mão em modo de comunicação aos processadores para manipular a ferramenta laparoscópica manual virtual no ambiente cirúrgico robótico virtual, em que o segundo dispositivo de mão compreende uma porção de mão e uma característica de ferramenta que é removível a partir da porção de mão e é representativa de pelo menos uma porção da ferramenta laparoscópica manual; e simular uma cirurgia sobre o leito no sistema de realidade virtual com base em uma manipulação do usuário de pelo menos um braço robótico virtual com o primeiro dispositivo de mão e a ferramenta laparoscópica manual virtual com o segundo dispositivo de mão.
12. Método implementado por computador, de acordo com a reivindicação 11, caracterizado pelo fato de que a característica de ferramenta é removível acoplada a uma porção de mão do segundo dispositivo de mão.
13. Método implementado por computador, de acordo com a reivindicação 12, caracterizado pelo fato de que a característica de ferramenta compreende um eixo de ferramenta e um adaptador de eixo para acoplar um eixo de ferramenta a uma porção de mão do segundo dispositivo de mão, e em que o adaptador de eixo compreende prendedores.
14. Método implementado por computador, de acordo com a reivindicação 12, caracterizado pelo fato de que a porção de mão do segundo dispositivo de mão é substancialmente similar ao primeiro dispositivo de mão.
15. Método implementado por computador, de acordo com a reivindicação 12, caracterizado pelo fato de que a porção de mão do segundo dispositivo de mão compreende um gatilho que aciona uma função da ferramenta laparoscópica manual virtual em resposta ao engate do gatilho por um usuário.
16. Método implementado por computador, de acordo com a reivindicação 11, caracterizado pelo fato de que a ferramenta laparoscópica manual virtual é um de um grampeador, uma tesoura, um dissecador, uma garra, um porta-agulha, uma sonda, um fórceps e uma ferramenta de biópsia.
17. Método implementado por computador, de acordo com a reivindicação 11, caracterizado pelo fato de que adicionalmente compreende: gerar um paciente virtual; e receber pelo menos uma porção da característica de ferramenta do segundo dispositivo de mão através da cânula virtual inserida no paciente virtual em um campo cirúrgico virtual para simular a cirurgia sobre o leito.
18. Sistema de realidade virtual para simular a cirurgia robótica, caracterizado pelo fato de que o sistema compreende: um processador configurado para gerar uma sala de operação virtual que compreende pelo menos um braço robótico virtual montados em uma mesa de operação virtual e pelo menos uma ferramenta laparoscópica manual virtual; um primeiro dispositivo de mão acoplado em modo de comunicação ao processador para manipular o pelo menos um braço robótico virtual na sala de operação virtual; e um segundo dispositivo de mão acoplado em modo de comunicação ao processador para manipular a pelo menos uma ferramenta laparoscópica manual virtual na sala de operação virtual, o segundo dispositivo de mão compreendendo uma porção de mão e uma característica de ferramenta que é removível a partir da porção de mão e é representativa de pelo menos uma porção da ferramenta laparoscópica manual.
19. Sistema de realidade virtual, de acordo com a reivindicação 18, caracterizado pelo fato de que o processador é adicionalmente configurado para gerar um paciente virtual na mesa de operação virtual.
20. Sistema de realidade virtual, de acordo com a reivindicação 19, caracterizado pelo fato de que o processador é adicionalmente configurado para simular uma cirurgia sobre o leito no paciente virtual usando o pelo menos um braço robótico virtual manipulado pelo primeiro dispositivo de mão e a pelo menos uma ferramenta laparoscópica manual virtual manipulada pelo segundo dispositivo de mão.
BR112019025752-7A 2017-06-29 2018-06-27 Sistema de realidade virtual para simular um ambiente cirúrgico robótico, método implementado por computador para simular um ambiente cirúrgico robótico em um sistema de realidade virtual e sistema de realidade virtual para simular a cirurgia robótica BR112019025752B1 (pt)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201762526896P 2017-06-29 2017-06-29
US62/526,896 2017-06-29
US16/018,012 US10610303B2 (en) 2017-06-29 2018-06-25 Virtual reality laparoscopic tools
US16/018,012 2018-06-25
PCT/US2018/039778 WO2019005983A1 (en) 2017-06-29 2018-06-27 LAPAROSCOPIC TOOLS WITH VIRTUAL REALITY

Publications (2)

Publication Number Publication Date
BR112019025752A2 BR112019025752A2 (pt) 2020-06-23
BR112019025752B1 true BR112019025752B1 (pt) 2023-01-10

Family

ID=64741910

Family Applications (1)

Application Number Title Priority Date Filing Date
BR112019025752-7A BR112019025752B1 (pt) 2017-06-29 2018-06-27 Sistema de realidade virtual para simular um ambiente cirúrgico robótico, método implementado por computador para simular um ambiente cirúrgico robótico em um sistema de realidade virtual e sistema de realidade virtual para simular a cirurgia robótica

Country Status (9)

Country Link
US (2) US10610303B2 (pt)
EP (1) EP3646309B1 (pt)
JP (2) JP2020523629A (pt)
KR (1) KR102441640B1 (pt)
CN (1) CN110800033B (pt)
AU (1) AU2018292597B2 (pt)
BR (1) BR112019025752B1 (pt)
CA (1) CA3066476C (pt)
WO (1) WO2019005983A1 (pt)

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10600245B1 (en) * 2014-05-28 2020-03-24 Lucasfilm Entertainment Company Ltd. Navigating a virtual environment of a media content item
JP6515615B2 (ja) * 2015-03-19 2019-05-22 セイコーエプソン株式会社 制御装置、電子機器の制御方法及びプログラム
US11270601B2 (en) 2017-06-29 2022-03-08 Verb Surgical Inc. Virtual reality system for simulating a robotic surgical environment
US11011077B2 (en) 2017-06-29 2021-05-18 Verb Surgical Inc. Virtual reality training, simulation, and collaboration in a robotic surgical system
US11284955B2 (en) 2017-06-29 2022-03-29 Verb Surgical Inc. Emulation of robotic arms and control thereof in a virtual reality environment
US10610303B2 (en) * 2017-06-29 2020-04-07 Verb Surgical Inc. Virtual reality laparoscopic tools
EP3651677B1 (en) * 2017-07-13 2024-02-21 Intuitive Surgical Operations, Inc. Systems and methods for switching control between multiple instrument arms
US11189379B2 (en) * 2018-03-06 2021-11-30 Digital Surgery Limited Methods and systems for using multiple data structures to process surgical data
WO2020059007A1 (ja) * 2018-09-18 2020-03-26 オリンパス株式会社 内視鏡用トレーニングシステム、コントローラ及び記録媒体
US10810416B2 (en) * 2018-12-14 2020-10-20 Palo Alto Reseach Center Incorporated Method and system for facilitating dynamic materialization for real-world interaction with virtual reality
US11301110B2 (en) * 2018-12-27 2022-04-12 Home Box Office, Inc. Pull locomotion in a virtual reality environment
WO2020146249A1 (en) * 2019-01-07 2020-07-16 Butterfly Network, Inc. Methods and apparatuses for tele-medicine
US20220096164A1 (en) * 2019-02-12 2022-03-31 Intuitive Surgical Operations, Inc. Systems and methods for facilitating optimization of an imaging device viewpoint during an operating session of a computer-assisted operation system
US11540883B2 (en) * 2019-03-08 2023-01-03 Thomas Jefferson University Virtual reality training for medical events
US11413111B2 (en) * 2019-05-24 2022-08-16 Karl Storz Imaging, Inc. Augmented reality system for medical procedures
WO2020262391A1 (ja) * 2019-06-28 2020-12-30 富士フイルム株式会社 表示制御装置、表示制御方法、及びプログラム
US11262887B2 (en) * 2019-09-13 2022-03-01 Toyota Research Institute, Inc. Methods and systems for assigning force vectors to robotic tasks
WO2021059100A1 (en) * 2019-09-26 2021-04-01 Auris Health, Inc. Systems and methods for collision avoidance using object models
US11559366B2 (en) * 2019-09-30 2023-01-24 Cilag Gmbh International Communicating closure effort for robotic surgical tools background
FR3102592B1 (fr) * 2019-10-29 2022-02-11 Immersion Procédé d’interaction avec un utilisateur d’un système immersif et dispositif pour la mise en œuvre d’un tel procédé
US11931119B1 (en) 2019-11-15 2024-03-19 Verily Life Sciences Llc Integrating applications in a surgeon console user interface of a robotic surgical system
US11918307B1 (en) * 2019-11-15 2024-03-05 Verily Life Sciences Llc Integrating applications in a surgeon console user interface of a robotic surgical system
US10705597B1 (en) * 2019-12-17 2020-07-07 Liteboxer Technologies, Inc. Interactive exercise and training system and method
GB2593473A (en) * 2020-03-23 2021-09-29 Cmr Surgical Ltd Virtual console for controlling a surgical robot
NL2025627B1 (en) 2020-05-20 2021-12-07 Adjuvo Motion B V A virtual or augmented reality training system
US11769302B2 (en) 2020-06-05 2023-09-26 Verb Surgical Inc. Remote surgical mentoring
US11958198B2 (en) 2020-08-04 2024-04-16 Artificial, Inc. Predictive instruction text with virtual lab representation highlighting
CN114533263B (zh) * 2020-11-24 2023-12-22 上海微创医疗机器人(集团)股份有限公司 机械臂碰撞提示方法、可读存储介质、手术机器人及系统
CN112617729B (zh) * 2020-12-07 2022-09-02 苏州法兰克曼医疗器械有限公司 一种消化内窥镜输送机构
CN112568998B (zh) * 2020-12-08 2022-08-05 北京天使之手机器人科技有限公司 一种远程主从交互式医疗系统及方法
US11673258B2 (en) * 2021-01-13 2023-06-13 GM Global Technology Operations LLC Modular robotic device and method to operate a modular robotic device
US11334215B1 (en) * 2021-04-09 2022-05-17 Htc Corporation Method of generating user-interactive object, multimedia system, and non-transitory computer-readable medium
CA3220345A1 (en) * 2021-05-26 2022-12-01 Zhan Tao WANG Portable virtual endoscopic tool simulator with haptic feedback enhanced handheld controller
US11699269B2 (en) 2021-08-25 2023-07-11 Bank Of America Corporation User interface with augmented work environments
WO2023049489A1 (en) * 2021-09-27 2023-03-30 Covidien Lp System of operating surgical robotic systems with access ports of varying length
CN114360349B (zh) * 2021-12-09 2022-09-23 深圳先进技术研究院 手术培训装置、系统及手术器械运动信息获取方法
WO2023114470A1 (en) * 2021-12-16 2023-06-22 University Of Miami Augmented and mixed reality incorporating pathology results in surgical settings
WO2023238157A1 (en) * 2022-06-10 2023-12-14 Srivastava Sudhir Prem A system and method for virtual reality training, simulation of a virtual robotic surgery environment
CN115602032B (zh) * 2022-12-13 2023-02-28 深圳智触计算机系统有限公司 基于虚拟现实的消化内镜手术培训系统

Family Cites Families (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5731804A (en) * 1995-01-18 1998-03-24 Immersion Human Interface Corp. Method and apparatus for providing high bandwidth, low noise mechanical I/O for computer systems
US5792165A (en) * 1993-07-21 1998-08-11 Charles H. Klieman Endoscopic instrument with detachable end effector
GB2302655A (en) * 1995-06-27 1997-01-29 Mark Steven Whiteley Hand-piece for laparoscopic instruments
US8600551B2 (en) 1998-11-20 2013-12-03 Intuitive Surgical Operations, Inc. Medical robotic system with operatively couplable simulator unit for surgeon training
US8527094B2 (en) 1998-11-20 2013-09-03 Intuitive Surgical Operations, Inc. Multi-user medical robotic system for collaboration or training in minimally invasive surgical procedures
FR2808366B1 (fr) * 2000-04-26 2003-12-19 Univ Paris Vii Denis Diderot Procede et systeme d'apprentissage en realite virtuelle, et application en odontologie
US7607440B2 (en) 2001-06-07 2009-10-27 Intuitive Surgical, Inc. Methods and apparatus for surgical planning
US8010180B2 (en) 2002-03-06 2011-08-30 Mako Surgical Corp. Haptic guidance system and method
CN1263433C (zh) * 2003-08-15 2006-07-12 北京航空航天大学 机器人导航骨科手术装置
US7317955B2 (en) 2003-12-12 2008-01-08 Conmed Corporation Virtual operating room integration
US20070275359A1 (en) * 2004-06-22 2007-11-29 Rotnes Jan S Kit, operating element and haptic device for use in surgical simulation systems
US8414475B2 (en) 2005-04-18 2013-04-09 M.S.T. Medical Surgery Technologies Ltd Camera holder device and method thereof
US8073528B2 (en) 2007-09-30 2011-12-06 Intuitive Surgical Operations, Inc. Tool tracking systems, methods and computer products for image guided surgery
US9789608B2 (en) 2006-06-29 2017-10-17 Intuitive Surgical Operations, Inc. Synthetic representation of a surgical robot
KR101274595B1 (ko) 2005-06-30 2013-06-13 인튜어티브 서지컬 인코포레이티드 멀티암 로보트 원격 외과수술에서 툴 상태에 대한 인디케이터와 통신
CN200979766Y (zh) * 2006-12-13 2007-11-21 王行环 腹腔镜外科手术训练模拟器
JP4916011B2 (ja) * 2007-03-20 2012-04-11 株式会社日立製作所 マスタ・スレーブ式マニピュレータシステム
DE102008013495A1 (de) 2008-03-10 2009-09-24 Polydimensions Gmbh Vorrichtung zur Erzeugung eines haptischen Eindrucks
US8521331B2 (en) * 2009-11-13 2013-08-27 Intuitive Surgical Operations, Inc. Patient-side surgeon interface for a minimally invasive, teleoperated surgical instrument
DE102010029275A1 (de) * 2010-05-25 2011-12-01 Siemens Aktiengesellschaft Verfahren zum Bewegen eines Instrumentenarms eines Laparoskopierobotors in einer vorgebbare Relativlage zu einem Trokar
DE102012206350A1 (de) * 2012-04-18 2013-10-24 Deutsches Zentrum für Luft- und Raumfahrt e.V. Verfahren zum Betreiben eines Roboters
US9563266B2 (en) * 2012-09-27 2017-02-07 Immersivetouch, Inc. Haptic augmented and virtual reality system for simulation of surgical procedures
WO2014151621A1 (en) 2013-03-15 2014-09-25 Sri International Hyperdexterous surgical system
EP4154836A1 (en) 2013-03-15 2023-03-29 Intuitive Surgical Operations, Inc. System for positioning a manipulator arm by clutching within a null-perpendicular space concurrent with null-space movement
US9271797B2 (en) * 2013-07-02 2016-03-01 Gyrus Acmi, Inc. Robotic surgery
US10228242B2 (en) 2013-07-12 2019-03-12 Magic Leap, Inc. Method and system for determining user input based on gesture
KR102405656B1 (ko) * 2013-12-20 2022-06-07 인튜어티브 서지컬 오퍼레이션즈 인코포레이티드 의료 절차 훈련을 위한 시뮬레이터 시스템
CN104915979A (zh) * 2014-03-10 2015-09-16 苏州天魂网络科技有限公司 跨移动平台实现沉浸式虚拟现实的系统
EP2988288A1 (en) * 2014-08-22 2016-02-24 Moog B.V. Medical simulator handpiece
KR20230059843A (ko) 2014-11-13 2023-05-03 인튜어티브 서지컬 오퍼레이션즈 인코포레이티드 통합된 사용자 환경
US20160314717A1 (en) 2015-04-27 2016-10-27 KindHeart, Inc. Telerobotic surgery system for remote surgeon training using robotic surgery station coupled to remote surgeon trainee and instructor stations and associated methods
EP3708102A1 (en) * 2015-08-31 2020-09-16 Eubanks, Steve Laparoscopic surgical instrument
US20170076016A1 (en) 2015-09-10 2017-03-16 Maysam MIR AHMADI Automated layout generation
CN111329551A (zh) 2016-03-12 2020-06-26 P·K·朗 用于脊柱和关节手术的增强现实引导
US10799294B2 (en) 2016-06-13 2020-10-13 Synaptive Medical (Barbados) Inc. Virtual operating room layout planning and analysis tool
US10888399B2 (en) 2016-12-16 2021-01-12 Align Technology, Inc. Augmented reality enhancements for dental practitioners
US10610303B2 (en) * 2017-06-29 2020-04-07 Verb Surgical Inc. Virtual reality laparoscopic tools

Also Published As

Publication number Publication date
AU2018292597B2 (en) 2021-07-08
CA3066476A1 (en) 2019-01-03
EP3646309C0 (en) 2023-08-09
KR20200012926A (ko) 2020-02-05
US11013559B2 (en) 2021-05-25
CN110800033A (zh) 2020-02-14
JP2022070862A (ja) 2022-05-13
JP2020523629A (ja) 2020-08-06
CA3066476C (en) 2022-11-08
US10610303B2 (en) 2020-04-07
KR102441640B1 (ko) 2022-09-13
WO2019005983A1 (en) 2019-01-03
US20190133689A1 (en) 2019-05-09
EP3646309A1 (en) 2020-05-06
CN110800033B (zh) 2023-06-06
JP7350908B2 (ja) 2023-09-26
US20200261159A1 (en) 2020-08-20
BR112019025752A2 (pt) 2020-06-23
EP3646309B1 (en) 2023-08-09
AU2018292597A1 (en) 2020-01-16

Similar Documents

Publication Publication Date Title
US11580882B2 (en) Virtual reality training, simulation, and collaboration in a robotic surgical system
US11944401B2 (en) Emulation of robotic arms and control thereof in a virtual reality environment
US11013559B2 (en) Virtual reality laparoscopic tools
US20220101745A1 (en) Virtual reality system for simulating a robotic surgical environment
CN112201131B (zh) 用于医疗程序培训的模拟器系统
KR102477325B1 (ko) 로봇 수술 시스템용 다중 패널 그래픽 사용자 인터페이스
CN117558171A (zh) 一种基于虚拟现实技术的磁导航医疗操作仿真训练平台
Pednekar et al. Application of Virtual Reality In Surgery Simulation

Legal Events

Date Code Title Description
B350 Update of information on the portal [chapter 15.35 patent gazette]
B06W Patent application suspended after preliminary examination (for patents with searches from other patent authorities) chapter 6.23 patent gazette]
B09A Decision: intention to grant [chapter 9.1 patent gazette]
B16A Patent or certificate of addition of invention granted [chapter 16.1 patent gazette]

Free format text: PRAZO DE VALIDADE: 20 (VINTE) ANOS CONTADOS A PARTIR DE 27/06/2018, OBSERVADAS AS CONDICOES LEGAIS