BRPI1106214A2 - Método para ajustar uma velocidade de uma máquina móvel, e, máquina móvel - Google Patents

Método para ajustar uma velocidade de uma máquina móvel, e, máquina móvel Download PDF

Info

Publication number
BRPI1106214A2
BRPI1106214A2 BRPI1106214-2A BRPI1106214A BRPI1106214A2 BR PI1106214 A2 BRPI1106214 A2 BR PI1106214A2 BR PI1106214 A BRPI1106214 A BR PI1106214A BR PI1106214 A2 BRPI1106214 A2 BR PI1106214A2
Authority
BR
Brazil
Prior art keywords
machine
operating environment
data
mobile
mobile machine
Prior art date
Application number
BRPI1106214-2A
Other languages
English (en)
Inventor
Thomas Bonefas Zachary
Wayne Anderson Noel
Original Assignee
Deere & Company
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 Deere & Company filed Critical Deere & Company
Publication of BRPI1106214A2 publication Critical patent/BRPI1106214A2/pt
Publication of BRPI1106214B1 publication Critical patent/BRPI1106214B1/pt

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0223Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving speed control of the vehicle
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/60Intended control result
    • G05D1/65Following a desired speed profile
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0238Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors
    • G05D1/024Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors in combination with a laser
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0242Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using non-visible light signals, e.g. IR or UV signals
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0257Control of position or course in two dimensions specially adapted to land vehicles using a radar
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/0274Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0276Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle
    • G05D1/0278Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle using satellite positioning signals, e.g. GPS

Landscapes

  • Engineering & Computer Science (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Traffic Control Systems (AREA)
  • Guiding Agricultural Machines (AREA)

Abstract

Método para ajustar uma velocidade de uma máquina móvel, e, máquina móvel. É provido um método para ajustar uma velocidade de uma máquina móvel. Dados de imagem de um local são coletados, em que dados do sensor atualmente gerados e dados do sensor previamente gerados indicam uma descontinuidade nos dados do sensor. Os dados de imagem são analisados para determinar se uma pontuação de borrão que não representa movimento para os dados de imagem está acima de um valor limite. Então, a velocidade da máquina móvel é ajustada com base em uma determinação de que a pontuação de borrão que não representa movimento está acima do valor limite.

Description

“MÉTODO PARA AJUSTAR UMA VELOCIDADE DE UMA MÁQUINA MÓVEL, E, MÁQUINA MÓVEL” CAMPO DA INVENÇÃO
A presente invenção diz respeito, no geral, a um sistema de máquina móvel e, mais particularmente, a um método e sistema para gerenciar a velocidade máxima de um veículo autônomo ou semiautônomo. FUNDAMENTOS DA INVENÇÃO
Sistemas de percepção para proteção e localização de veículos autônomos e semiautônomos podem utilizar muitas diferentes modalidades de sensor, tais como, por exemplo, dispositivos de laser, câmeras a cor, câmeras térmicas, dispositivos ultrassônicos e dispositivos de radar, para detectar obstáculos e localizar os veículos em seu ambiente operacional. Entretanto, podem existir muitas condições ambientais que retardarão ou reduzirão o efetivo alcance desses sistemas de percepção. Por exemplo, câmeras e outros tipos de sensores óticos podem não ser capazes de penetrar em obscurantes, tais como poeira, fumaça e neblina. Além do mais, recursos topográficos do terreno no ambiente operacional também podem tomar impossível para que os sistemas de percepção façam observações até seu alcance nominal máximo. SUMÁRIO DA INVENÇÃO
Uma modalidade da presente invenção provê um método de ajuste da velocidade de uma máquina móvel. Dados de imagem de um local são coletados, em que dados do sensor atualmente gerados e dados do sensor previamente gerados indicam uma descontinuidade nos dados do sensor. Os dados de imagem são analisados para determinar se uma pontuação de borrão que não representa movimento para os dados de imagem está acima de um valor limite. Então, a velocidade da máquina móvel é ajustada com base em uma determinação de que a pontuação de borrão que não representa movimento está acima do valor limite.
Os recursos, funções e vantagens podem ser alcançados independentemente em várias modalidades da presente invenção ou podem ser combinados em ainda outras modalidades nas quais detalhes adicionais podem ser vistos em relação à descrição e aos desenhos seguintes.
BREVE DESCRIÇÃO DOS DESENHOS
Os recursos inéditos que, acredita-se, são característicos das modalidades ilustrativas são apresentados nas reivindicações anexas. Entretanto, as modalidades ilustrativas, bem como um modo de uso preferido, objetivos adicionais e vantagens desses, serão mais bem entendidos pela referência à seguinte descrição detalhada de uma modalidade ilustrativa da presente invenção quando lida em conjunto com os desenhos anexos, nos quais: A figura 1 é um diagrama de uma rede de sistemas de processamento de dados na qual uma modalidade ilustrativa pode ser implementada; a figura 2 é um diagrama de blocos de um sistema de processamento de dados no qual uma modalidade ilustrativa pode ser implementada; a figura 3 é um diagrama de blocos de um sistema de máquina móvel de acordo com uma modalidade ilustrativa; a figura 4 é um diagrama de blocos de um sistema sensor de acordo com uma modalidade ilustrativa; a figura 5 é uma representação pictórica de um ambiente operacional de um sistema de máquina móvel de acordo com uma modalidade ilustrativa; a figura 6 é uma representação pictórica da detecção de borda de acordo com uma modalidade ilustrativa; a figura 7 é uma representação pictórica de um recurso topográfico que ocasiona menor alcance de detecção do sensor de acordo com uma modalidade ilustrativa; a figura 8A e a figura 8B compreendem um fluxograma que ilustra um processo de exemplo para ajustar a velocidade máxima de um veículo autônomo ou semiautônomo de acordo com uma modalidade ilustrativa; a figura 9 é um fluxograma que ilustra um processo de exemplo alternativo para ajustar a velocidade máxima de um veículo autônomo ou semiautônomo de acordo com uma modalidade ilustrativa; e a figura 10 é um fluxograma que ilustra um outro processo de exemplo alternativo para ajustar a velocidade máxima de um veículo autônomo ou semiautônomo de acordo com uma modalidade ilustrativa. DESCRIÇÃO DA MODALIDADE PREFERIDA
Modalidades ilustrativas da presente invenção proveem sistemas e métodos para gerenciar a velocidade máxima de um veículo autônomo ou semiautônomo quando condições ambientais e/ou topográficas reduzirem um alcance de detecção máximo efetivo do sistema sensor do veículo. Um controlador da máquina associado com o veículo determina um local em um ambiente operacional do veículo em que existe descontinuidade entre dados de laser atualmente gerados e dados de laser previamente gerados para o ambiente operacional. Então, o controlador da máquina seleciona dados de imagem que correspondem ao local em que existe a descontinuidade entre os dados de laser atualmente gerados e os dados de laser previamente gerados para o ambiente operacional. Além do mais, o controlador da máquina determina se uma pontuação de borrão que não representa movimento para os dados de imagem selecionados está acima de um valor limite pré-determinado. Em resposta à determinação de que a pontuação de borrão que não representa movimento para os dados de imagem selecionados está acima do valor limite, o controlador da máquina determina que o ambiente operacional inclui um obscurante. Então, o controlador da máquina ajusta a velocidade do veículo com base em uma densidade ótica do obscurante no ambiente operacional.
Robôs de campo são um superconjunto de máquinas robóticas móveis teleoperadas, supervisionadas e completamente autônomas de todos os tamanhos. Por exemplo, robôs de campo podem incluir todos os tamanhos de caminhões, tratores, movedores de terra, helicópteros, aeronaves, barcos, submarinos, buldôzeres, colheitadeiras, veículos de serviço, portadoras de suprimento e congêneres. Robôs de serviço são robôs de campo menores, tais como cortadores de grama, limpadores de piscina, esfregões de piso e aspiradores de pó robóticos. Esses sistemas robóticos de campo ou autônomos, algumas vezes referidos como plataformas robóticas móveis, no geral, têm um sistema de controle robótico que controla os sistemas operacionais da máquina móvel.
Entradas de sensor no sistema de controle robótico podem incluir dados associados com o destino da plataforma, informação de caminho pré-programado, informação de obstáculo detectado e informação ambiental detectada. Com base nos dados associados com a informação exposta, os movimentos da plataforma robótica móvel são controlados. Por exemplo, sistemas de detecção de obstáculo em uma plataforma podem usar uma câmera ou múltiplas câmeras para capturar imagens sobre o amplo campo de visualização ou de um espectro em particular no campo de visualização. Para aplicações de detecção de obstáculo de uma máquina robótica móvel, o tempo de resposta para coletar dados de imagem deve ser rápido sobre um amplo campo de visualização para facilitar reconhecimento precoce e evasão de obstáculos.
Além do mais, essas plataformas robóticas móveis também incluem um sistema de locomoção, um sistema de energia, um sistema de carga útil de tarefa, tal como um unidade de corte para colheita e um sistema de planejamento de caminho. Planejamento de caminho pode incluir planejamento ponto a ponto ou planejamento de cobertura de área. A cobertura de área pode ser cobertura aleatória de uma área pela máquina robótica móvel sobre um período de tempo pré-determinado ou pode ser precisa cobertura de área com localização. Por exemplo, dispositivos de percepção de localização ou sensores de local para robôs de serviço podem incluir leitores de laser, bússolas, odômetros, receptores do sistema de posicionamento global e sistemas de triangulação com base em visão. Adicionalmente, essas plataformas robóticas móveis também incluem percepção para proteção para impedir dano à própria máquina ou a outros objetos que podem estar presentes no ambiente operacional da máquina.
Atualmente, muitas máquinas robóticas móveis utilizam sensores de radar em aplicações em que sensores de percepção altamente precisos, tais como leitores de laser, não são exigidos. Radar usa ondas eletromagnéticas e, dependendo da frequência, pode penetrar facilmente em quase qualquer obscurante com muito pouca atenuação de energia. Um obscurante é qualquer coisa que toma um objeto em um ambiente operacional de uma máquina móvel autônoma indistinto ou oculto em relação a detecção por um ou mais sensores da máquina. Em outras palavras, um obscurante reduz uma capacidade do sensor de perceber ou alcançar seu alcance de detecção máximo efetivo. Um alcance de detecção máximo efetivo é a maior distância que supõe-se que um sensor pode perceber e coletar dados precisamente.
Entretanto, tipicamente, sensores de radar são sensores de resolução angular muito baixa que provêem dados mínimos, o que toma a interpretação das leituras do radar menos precisa para os sistemas controladores. Assim, sensores de radar não são adequados para uso independente em um sistema de percepção de uma máquina robótica móvel, especialmente, em um ambiente operacional agrícola, de construção, de cultivo de grama ou de silvicultura. Se apropriadamente utilizados, sistemas de percepção com base em laser podem prover facilidade para interpretar dados e pode detectar obstáculos muito mais sutis com localização muito precisa.
Quando um sistema de percepção com base em laser emitir um pulso de laser em um ambiente operacional de uma máquina robótica móvel, tipicamente, a energia do pulso de laser reflete em múltiplas superfícies e retoma a um detector. A maior parte dos leitores de laser mede apenas o primeiro pulso que retoma ao detector. Em um esforço para alcançar maior penetrabilidade através de obscurantes, modalidades ilustrativas podem utilizar leitores de laser que deixam o detector aberto depois que o primeiro pulso de retomo for detectado para medir múltiplos pulsos de retomo. Entretanto, deve-se notar que toda a energia de um pulso de laser emitido pode ser dissipada por poeira moderada, de maneira tal que nenhuma energia de retomo mensurável seja detectada.
Modalidades ilustrativas para superar essas deficiências de percepção do sensor de máquinas robóticas móveis atuais determinam o alcance de detecção máximo efetivo do sistema de percepção para proteção e localização e, então, gerenciam a velocidade máxima das máquinas robóticas móveis dessa maneira. Basicamente, uma máquina robótica móvel deve aderir ao princípio "não propulsione seus faróis". Em outras palavras, uma máquina robótica móvel não deve operar em uma velocidade além da qual o sistema sensor da máquina é capaz de perceber e reagir a condições ambientais e topográficas no ambiente operacional para operação segura. Reação inclui, sem limitações, parar antes de entrar em contato com um objeto no ambiente, manobrar ao redor do objeto ou de outra forma alterar o comportamento da máquina, se comparado com o comportamento da máquina se o objeto não fosse detectado.
Modalidades ilustrativas usam sensores, tais como radar ou detecção de luz, que variam para "ver através" de obscurantes e para manter um alcance de detecção máximo efetivo do sensor relativamente constante.
Modalidades ilustrativas não melhoram os próprios sensores, mas, em vez disso, usam os dados obtidos pelos sensores para identificar condições ambientais e topográficas que podem diminuir o alcance de detecção máximo efetivo dos sensores.
Modalidades ilustrativas usam uma combinação de dados do leitor de laser e dados de tratamento visual de imagem para detectar obscurantes, tal como poeira. Frequentemente, dados de laser esporádicos são uma indicação de um obscurante. Modalidades ilustrativas analisam os dados de laser em relação a padrões que são indicativos de um obscurante, determinam dinamicamente o alcance de detecção efetivo limitado do sistema sensor e, então, definem um novo limite de velocidade máxima para o veículo robótico móvel com base no menor alcance de detecção efetivo do sistema sensor e na dinâmica do veículo.
Por exemplo, a dinâmica do veículo pode incluir distância de frenagem do veículo, tempo de reação do veículo, raio de conversão do veículo e se uma manobra de evasão ou uma manobra de parada são iniciadas pelo veículo. Além do mais, a topografia do ambiente operacional pode influenciar a dinâmica do veículo. Por exemplo, se o veículo estiver indo em aclive ou declive, então a distância de frenagem e o raio de conversão do veículo podem ser afetados.
Adicionalmente, modalidades ilustrativas analisam dados de imagem provenientes de uma ou mais câmeras para detectar obscurantes. Por exemplo, no geral, uma cena empoeirada produz dados de borda muito fracos para objetos nos dados de imagem. Dados de borda fracos são uma falta de contornos ou definições claros para objetos nos dados de imagem ou são uma falta de textura entre objetos nos dados de imagem. Modalidades ilustrativas podem utilizar um algoritmo de detecção de borda, tal como um algoritmo de detecção de borda Sobel, para determinar essas fracas bordas do objeto nos dados de imagem. Em outras palavras, modalidades ilustrativas podem utilizar essa tecnologia de detecção de borda para determinar se um obscurante está presente no ambiente operacional das máquinas robóticas móveis autônomas ou semiautônomas pela detecção de fracas bordas do objeto em uma imagem do ambiente operacional. A fim de combinar os dados de laser e os dados de imagem da câmera, modalidades ilustrativas calibram os sensores de maneira tal que seja possível associar os dados dos lasers e das câmeras pelo mapeamento de pontos de laser em pontos nos dados de imagem no espaço tridimensional. Altemativamente, pontos nos dados de imagem podem ser mapeados nos pontos de laser. Em decorrência disto, modalidades ilustrativas podem usar uma pluralidade de combinações lógicas que levam a uma abordagem de fusão com sucesso dos diferentes tipos de dados.
Como um exemplo, modalidades ilustrativas podem usar uma abordagem temporal. Com o propósito de proteção do veículo, modalidades ilustrativas visualizam o ambiente operacional como uma coleção de cubos tridimensionais chamados de voxels. Quando um sensor de detecção e de localização de luz emite um pulso de laser em um ambiente operacional da máquina robótica móvel, usualmente, o pulso de laser passa através de diversos voxels até que o pulso de laser acerte um objeto e retome ao detector.
Modalidades ilustrativas contam o número de acertos e passagens através de voxels pelo rastreamento do caminho de cada pulso de laser. Um voxel ou um corpo humano de voxels, que contam relativamente poucos acertos pelo número de vezes que os pulsos de laser passam através dele, são considerados vazios. Entretanto, se esses voxels, que foram previamente classificados como vazios, repentinamente iniciarem a exibir uma razão de acertos muito mais alta, isso pode ser uma indicação de que um obscurante, tal como poeira, ou um obstáculo dinâmico, tal como uma pessoa, entrou no ambiente operacional.
Se baseando apenas nos dados de laser, pode ser muito difícil determinar se o repentino aparecimento de acertos de laser em um volume de espaço é devido a um obscurante ou a um obstáculo dinâmico legítimo. Assim, o exame dos dados de imagem associados com esse volume de espaço em particular em relação à presença de bordas do objeto pode prover às modalidades ilustrativas informação valiosa. Uma falta de fortes bordas do objeto nesse volume de espaço em particular indica quase certamente que um obscurante está presente, em virtude de ser muito raro o fato de um obstáculo legítimo não produzir fortes bordas em uma imagem.
Modalidades ilustrativas também usam sensores para detectar incerteza de terreno devida à topografia. No caso em que o alcance de detecção máximo efetivo ou a distância do sistema sensor da máquina robótica móvel são reduzidos pela topografia da terra, o problema é muito mais simples para as modalidades ilustrativas. Por exemplo, os sensores de laser não serão capazes de fazer interseção com o solo além de uma certa distância, devido ao recurso topográfico, tal como uma colina. Em decorrência disto, não existirá nenhum dado de laser sobre o terreno além desse recurso topográfico.
Entretanto, modalidades ilustrativas podem utilizar mapas topográficos para prever pontos cegos ocasionados pelo terreno. Em um sistema controlador da máquina robótica móvel que tem conhecimento da topografia da terra, os locais de montagem e as características dos sensores de proteção, e o caminho planejado da máquina podem prever precisamente a máxima distância de detecção efetiva do sistema sensor de proteção em qualquer local ao longo do caminho planejado. Usando esse nível de entendimento, modalidades ilustrativas podem habilitar a criação de planos de caminho multiveículos mais efetivos, que podem superar o desempenho de planejadores de caminho bidimensionais.
Agora, em relação às figuras e, em particular, em relação às figuras 1-4, são providos diagramas exemplares de ambientes de processamento de dados nos quais as modalidades ilustrativas podem ser implementadas. Deve-se perceber que as figuras 1-4 são apenas exemplares, e não pretende-se que afirmem ou impliquem nenhuma limitação em relação aos ambientes nos quais diferentes modalidades podem ser implementadas. Muitas modificações nos ambientes representados podem ser feitas. A figura 1 representa um diagrama de uma rede de sistemas de processamento de dados na qual uma modalidade ilustrativa pode ser implementada. O sistema de processamento de dados em rede 100 é uma rede de sistemas de processamento de dados e outros dispositivos na qual as modalidades ilustrativas podem ser implementadas. O sistema de processamento de dados em rede 100 contém a rede 102, que é a mídia usada para prover ligações de comunicações entre vários sistemas de processamento de dados e outros dispositivos conectados em conjunto no sistema de processamento de dados em rede 100. A rede 102 pode incluir conexões, tal como ligações de comunicação com fios ou sem fios, ou cabos de fibra ótica.
No exemplo representado, o servidor 104 e o servidor 106 se conectam na rede 102, juntamente com a unidade de armazenamento 108. Além do mais, o sistema de máquina móvel 110, o sistema de máquina móvel 112 e o sistema de máquina móvel 114 também se conectam na rede 102. O sistema de máquina móvel 110, o sistema de máquina móvel 112 e o sistema de máquina móvel 114 são clientes do servidor 104 e/ou do servidor 106 nesse exemplo.
No exemplo representado, o servidor 104 provê informação, tal como arquivos de inicialização, imagens do sistema operacional e aplicações do sistema de máquina móvel 110, do sistema de máquina móvel 112 e do sistema de máquina móvel 114. O servidor 104 pode representar um servidor local que fica localizado, por exemplo, em um complexo agrícola na área 116. O servidor 106 pode representar um servidor remoto que fica localizado, por exemplo, em um serviço da Internet para controlar máquinas robóticas móveis autônomas e semiautônomas. O sistema de processamento de dados em rede 100 pode incluir servidores, clientes e outros dispositivos adicionais não mostrados. Código de programa localizado no sistema de processamento de dados em rede 100 pode ser armazenado em uma mídia de armazenamento gravável em computador e transferido a um sistema de processamento de dados ou a outro dispositivo para uso. Por exemplo, o código de programa pode ser armazenado em uma mídia de armazenamento gravável em computador no servidor 104 e transferido ao sistema de máquina móvel 110 pela rede 102 para uso no sistema de máquina móvel 110.
No exemplo representado, o sistema de processamento de dados cm rede 100 é a Internet, com a rede 102 representando uma coleção de redes e portas de comunicação mundiais que usa o conjunto de protocolos Protocolo de Controle de Transmissão / Protocolo da Internet (TCP/IP) para comunicarem umas com as outras. No coração da Internet há um cabeamento principal de linhas de comunicação de dados de alta velocidade entre nós principais ou computadores hospedeiros, que consistem em milhares de sistemas de computador comerciais, governamentais, educacionais e ainda outro sistemas de computador que roteiam dados e mensagens. Certamente, sistema de processamento de dados em rede 100 também podem ser implementados como inúmeros diferentes tipos de redes, tais como, por exemplo, uma intranet, uma rede de área local (LAN) ou uma rede de área ampla (WAN).
Sistemas de máquina móvel 110, 112 e 114 são sistemas de processamento de dados que incluem máquinas robóticas móveis autônomas ou semiautônomas que realizam tarefas, tais como colheita de safra, irrigação de safra ou fertilização de safra, na área 116. Além do mais, mesmo embora esse exemplo ilustre três sistemas de máquina móvel, modalidades ilustrativas não são restritas a tal. Em outras palavras, modalidades ilustrativas podem incluir mais ou menos sistemas de máquina móvel para prover tarefas e serviços robóticos autônomos ou semiautônomos na área 116. A área 116 é o ambiente operacional para os sistemas de máquina móvel 110, 112 e 114. Por exemplo, a área 116 pode ser uma zona agrícola para crescimento e colheita de safras, tais como milho, trigo, cevada, batatas, algodão, amendoim e congêneres. Entretanto, a vegetação na área 116 pode incluir qualquer espécie de planta. Além do mais, a área 116 é apenas um exemplo de um ambiente operacional ou local de trabalho da máquina robótica móvel. Outros tipos de locais de trabalho e tarefas da máquina móvel podem incluir, mas sem limitações, rodovias e remoção de neve, campos de golfe e corte de grama, derrubamento de florestas e árvores, e locais de construção e de movimento de terra. A área 116 também pode incluir estruturas, tais como prédios comerciais, casas residenciais, celeiros de annazenamento, galpões de equipamento e estacionamentos. Adicionalmente, a área 116 pode ser contígua ou não contígua.
Adicionalmente, a área 116 também inclui marcador de limite da área 118. O marcador de limite da área 118 marca os limites da área 116 para os sistemas de máquina móvel 110, 112 e 114. Os sistemas de máquina móvel 110, 112 e 114 usam o marcador de limite da área 118 para identificar qual(s) parte(s) da área 116 devem ter tarefas robóticas realizadas. Por exemplo, o marcador de limite da área 118 pode ser um fio elétrico ou uma demarcação ótica do limite.
Também, mesmo embora o marcador de limite da área 118 seja mostrado como um único marcador, nesse exemplo, o marcador de limite da área 118 pode incluir uma pluralidade de marcadores. Além do mais, mesmo embora o marcador de limite da área 118 seja mostrado com uma configuração quadrada, o marcador de limite da área 118 pode ser configurado em quaisquer forma ou configuração necessários. Entretanto, deve-se notar que o marcador de limite da área 118 é um recurso opcional.
Em outras palavras, a área 116 não precisa incluir um marcador de limite para as máquinas robóticas móveis autônomas ou semiautônomas. Além do mais, pretende-se que a figura 1 seja apenas um exemplo, e não uma limitação de arquitetura para as diferentes modalidades ilustrativas.
Agora, em relação à figura 2, é representado um diagrama de blocos de um sistema de processamento de dados no qual uma modalidade ilustrativa pode ser implementada. O sistema de processamento de dados 200 é um exemplo de um sistema de processamento de dados no qual o código de programa usável por computador ou instruções que implementam os processos de uma modalidade ilustrativa podem ficar localizados. O sistema de processamento de dados 200 pode ser implementado em um servidor e/ou um sistema de máquina robótica móvel autônoma ou semiautônoma, tais como o servidor 104 ou o sistema de máquina móvel 110 da figura 1. Nesse exemplo, o sistema de processamento de dados 200 inclui a estrutura de comunicações 202, que provê comunicações entre a unidade de processador 204, a memória 206, o armazenamento persistente 208, a unidade de comunicações 210, a unidade de entrada / saída (I/O) 212 e a tela 214. A unidade de processador 204 serve para executar instruções para software que pode ser carregado na memória 206. A unidade de processador 204 pode ser um conjunto de um ou mais processadores ou pode ser um núcleo multiprocessadores, dependendo da implementação em particular. Adicionalmente, a unidade de processador 204 pode ser implementada usando um ou mais sistemas de processador heterogêneos, nos quais um processador principal está presente com processadores secundários em um único chip. Como um outro exemplo ilustrativo, a unidade de processador 204 pode ser um sistema multiprocessadores simétrico que contém múltiplos processadores do mesmo tipo. A memória 206 e o armazenamento persistente 208 são exemplos de dispositivos de armazenamento 216. Um dispositivo de armazenamento é qualquer parte de hardware que é capaz de armazenar informação, tais como, por exemplo, sem limitações, dados, código de programa em forma funcional e/ou outra informação adequada tanto em uma base temporária quanto em uma base permanente. Por exemplo, a memória 206, nesses exemplos, pode ser uma memória de acesso aleatório ou qualquer outro dispositivo de armazenamento volátil ou não volátil adequados. O armazenamento persistente 208 pode tomar várias formas, dependendo da implementação em particular. Por exemplo, o armazenamento persistente 208 pode conter um ou mais componentes ou dispositivos. Por exemplo, o armazenamento persistente 208 pode ser um disco rígido, uma memória flash, um disco ótico regravável, uma fita magnética regravável ou alguma combinação dos expostos. A mídia usada pelo armazenamento persistente 208 pode ser removível. Por exemplo, um disco rígido removível pode ser usado para o armazenamento persistente 208. A unidade de comunicações 210, nesses exemplos, provêem comunicação com outros sistemas de processamento de dados ou outros sistemas de máquina móvel. Nesses exemplos, a unidade de comunicações 210 é um cartão de interface de rede. A unidade de comunicações 210 pode prover comunicações através do uso de ligações de comunicações tanto físicas quanto sem fios, ou de ambas. A unidade de entrada / saída 212 permite a entrada e saída de dados com outros dispositivos que podem ser conectados no sistema de processamento de dados 200. Por exemplo, a unidade de entrada / saída 212 pode prover uma conexão para entrada de usuário através de um teclado, um mouse e/ou algum outro dispositivo de entrada adequado. Adicionalmente, a unidade de entrada / saída 212 pode enviar saída a uma impressora. A tela 214 provê um mecanismo para exibir informação a um usuário.
Instruções para o sistema operacional, aplicações e/ou programas podem ficar localizadas nos dispositivos de armazenamento 216, que ficam em comunicação com a unidade de processador 204 através da estrutura de comunicações 202. Nesses exemplos ilustrativos, as instruções ficam em uma forma funcional no armazenamento persistente 208. Essas instruções podem ser carregadas na memória 206 para execução pela unidade de processador 204. Os processos das diferentes modalidades podem ser realizados pela unidade de processador 204 usando instruções implementadas por computador, que podem ficar localizadas em uma memória, tal como a memória 206.
Essas instruções são referidas como código de programa, código de programa usável por computador ou código de programa legível por computador que podem ser lidos e executados por um processador na unidade de processador 204. O código de programa, nas diferentes modalidades, pode ser incorporado em diferentes mídias de armazenamento físicas ou legíveis por computador, tais como a memória 206 ou o armazenamento persistente 208. O código de programa 218 fica localizado em uma forma funcional na mídia legível por computador 220, que é seletivamente removível e pode ser carregado no sistema de processamento de dados 200, ou a ele transferido, para execução pela unidade de processador 204. O código de programa 218 e a mídia legível por computador 220 formam o produto de programa de computador 222. Em um exemplo, a mídia legível por computador 220 pode ser a mídia de armazenamento legível por computador 224 ou a mídia de sinal legível por computador 226. A mídia de armazenamento legível por computador 224 pode incluir, por exemplo, um disco ótico ou magnético que é inserido ou colocado em uma unidade de disco ou outro dispositivo que é parte do armazenamento persistente 208 para transferência sobre um dispositivo de armazenamento, tal como um disco rígido, que é parte do armazenamento persistente 208. A mídia de armazenamento legível por computador 224 também pode tomar a forma de um armazenamento persistente, tais como um disco rígido, um pen drive ou uma memória flash, que é conectado no sistema de processamento de dados 200. Em alguns casos, a mídia de armazenamento legível por computador 224 pode não ser removível do sistema de processamento de dados 200.
Altemativamente, o código de programa 218 pode ser transferido ao sistema de processamento de dados 200 usando a mídia de sinal legível por computador 226. A mídia de sinal legível por computador 226 pode ser, por exemplo, um sinal de dados propagado que contém o código de programa 218. Por exemplo, a mídia de sinal legível por computador 226 pode ser um sinal eletromagnético, um sinal ótico e/ou qualquer outro tipo de sinal adequado. Esses sinais podem ser transmitidos em ligações de comunicações, tais como ligações de comunicações sem fios, um cabo de fibra ótica, um cabo coaxial, um fio e/ou qualquer outro tipo adequado de ligação de comunicações. Em outras palavras, a ligação de comunicações e/ou a conexão podem ser físicas ou sem fios nos exemplos ilustrativos. A mídia legível por computador também pode tomar a forma de mídia não tangível, tais como ligações de comunicações ou transmissões sem fios que contêm o código de programa.
Em algumas modalidades ilustrativas, o código de programa 218 pode ser transferido em uma rede ao armazenamento persistente 208 a partir de um outro dispositivo ou sistema de processamento de dados através da mídia de sinal legível por computador 226 para uso no sistema de processamento de dados 200. Por exemplo, o código de programa armazenado em uma mídia de armazenamento legível por computador em um sistema de processamento de dados no servidor pode ser transferido em uma rede do servidor ao sistema de processamento de dados 200. O sistema de processamento de dados que provê o código de programa 218 pode ser um computador servidor, um computador cliente ou algum outro dispositivo capaz de armazenar e transmitir o código de programa 218. Não pretende-se que os diferentes componentes ilustrados para o sistema de processamento de dados 200 provejam limitações de arquitetura à maneira na qual diferentes modalidades podem ser implementadas. As diferentes modalidades ilustrativas podem ser implementadas em um sistema de processamento de dados que inclui componentes além daqueles ilustrados para o sistema de processamento de dados 200, ou no lugar deles. Outros componentes mostrados na figura 2 podem variar dos exemplos ilustrativos mostrados. As diferentes modalidades podem ser implementadas usando qualquer dispositivo ou sistema de hardware capaz de executar o código de programa. Como um exemplo, o sistema de processamento de dados 200 pode incluir componentes orgânicos integrados com componentes inorgânicos e/ou pode ser composto integralmente de componentes orgânicos, excluindo o ser humano. Por exemplo, um dispositivo de armazenamento pode ser composto por um semicondutor orgânico.
Como um outro exemplo, um dispositivo de armazenamento no sistema de processamento de dados 200 é qualquer aparelho de hardware que pode armazenar dados. A memória 206, o armazenamento persistente 208 e a mídia legível por computador 220 são exemplos de dispositivos de armazenamento em uma forma tangível.
Em um outro exemplo, um sistema de barramento pode ser usado para implementar a estrutura de comunicações 202 e pode ser composto por um ou mais barramentos, tais como um barramento de sistema ou um barramento de entrada / saída. Certamente, o sistema de barramento pode ser implementado usando qualquer tipo de arquitetura adequado que provê uma transferência de dados entre diferentes componentes ou dispositivos anexados no sistema de barramento. Adicionalmente, uma unidade de comunicações pode incluir um ou mais dispositivos usados para transmitir e receber dados, tais como um modem ou um adaptador de rede. Adicionalmente, uma memória pode ser, por exemplo, a memória 206 ou uma memória cache, tal como encontrada em uma interface e no concentrador do controlador de memória que podem estar presentes na estrutura de comunicações 202.
Agora, em relação à figura 3, um diagrama de blocos de um sistema de máquina móvel é representado de acordo com uma modalidade ilustrativa. Por exemplo, o sistema de máquina móvel 300 pode ser o sistema de máquina móvel 110 da figura 1. Entretanto, deve-se notar que pretende-se que o sistema de máquina móvel 300 seja apenas um exemplo de uma possível implementação de um sistema de máquina móvel. O sistema de máquina móvel 300 pode ser uma máquina robótica móvel autônoma ou semiautônoma que é configurada para realizar uma ou mais tarefas e/ou serviços em um ou mais ambientes operacionais designados, tal como a área 116 da figura 1. Também, as uma ou mais áreas designadas podem ser marcadas ou definidas por um ou mais marcadores, tal como o marcador de limite da área 118 da figura 1, que identifica as áreas desejadas para o desempenho da tarefa, tal como a aragem de campos, por sistema de máquina móvel 300. O sistema de máquina móvel 300 inclui o controlador da máquina 302, o sistema de propulsão 304, o sistema de direção 306, o sistema de frenagem 308, o sistema sensor 310, o sistema de carga útil da tarefa 312, o sistema de monitoramento 314, a unidade de comunicações 316 e o dispositivo de armazenamento de dados 318. O controlador da máquina 302 inclui o módulo de transferência 320, a base de conhecimento de horticultura 322, a interface de usuário 324, o software de controle 326 e o software de relógio / calendário 328. Por exemplo, o controlador da máquina 302 pode ser um sistema de processamento de dados, tal como o sistema de processamento de dados 200 da figura 2, ou algum outro dispositivo que executa instruções ou processos para controlar funções do sistema de máquina móvel 300. Assim, o controlador da máquina 302 pode ser um computador, um circuito integrado de aplicação específica e/ou algum outro dispositivo adequado.
Além do mais, diferentes tipos de dispositivos e sistemas podem ser usados para prover redundância e tolerância de falha. O controlador da máquina 302 executa processos usando o software de controle 326 para controlar o sistema de propulsão 304, o sistema de direção 306, o sistema de frenagem 308 e o sistema sensor 310, que direcionam e controlam o movimento do sistema de máquina móvel 300 no ambiente operacional. Também, o controlador da máquina 302 pode executar processos usando o software de controle 326 para controlar o sistema de carga útil da tarefa 312, que realiza tarefas robóticas, tais como, por exemplo, corte de árvores no ambiente operacional do sistema de máquina móvel 300.
Além do mais, o controlador da máquina 302 pode executar processos usando o software de controle 326 para controlar o sistema de monitoramento 314, que monitora o uso da energia do sistema de carga útil da tarefa 312 durante cada desempenho de tarefa durante o tempo. O controlador da máquina 302 pode usar esses dados de uso de energia para ajustar adaptativamente o agendamento de tarefas, tal como corte de vegetação com base na densidade da vegetação. A densidade da vegetação pode ser indiretamente determinada pela quantidade de energia consumida pelo sistema de carga útil da tarefa 312 durante cada tarefa de corte e por um modelo de crescimento de vegetação conhecido. O controlador da máquina 302 pode enviar vários comandos a esses componentes para operar o sistema de máquina móvel 300 em diferentes modos de operação. Esses comandos podem tomar várias formas, dependendo da implementação. Por exemplo, os comandos podem ser sinais elétricos analógicos nos quais uma mudança de voltagem e/ou de corrente é usada para controlar esses sistemas. Em outras implementações, os comandos podem tomar a forma de dados enviados aos sistemas para iniciar as funções ou ações desejadas. O módulo de transferência 320 provê atualização em linha da base de conhecimento de horticultura 322 por um servidor na rede, tais como o servidor 104 ou o servidor 106 da figura 1. Além do mais, o módulo de transferência 320 também pode prover atualização era linha de dados ou fatores ambientais atuais e futuros a partir de um ou mais serviços de previsão do tempo local, regional e nacional. A base de conhecimento de horticultura 322 contém informação sobre o ambiente operacional, tais como, por exemplo, um mapa georreferenciado que mostra a topografia, estruturas, locais de árvore, locais de vegetação, locais de estrada e outros tipos e locais de objeto, tais como lagos, rios e equipamento de irrigação. Além do mais, a base de conhecimento de horticultura 322 também pode conter informação, tais como, mas sem limitações, espécie de vegetação localizada no ambiente operacional; estágios de crescimento e ciclos de vida da espécie de vegetação localizada no ambiente operacional; condição climática atual para o ambiente operacional; histórico de condição climática para o ambiente operacional; recursos ambientais específicos do ambiente operacional que podem afetar o sistema de máquina móvel 300 e congêneres. Deve-se notar que a base de conhecimento de horticultura 322 pode ficar integralmente localizada no sistema de máquina móvel 300, ou uma parte da base de conhecimento de horticultura 322, ou toda ela, pode ficar localizada em um local remoto, tal como o armazenamento 108 da figura 1, que o sistema de máquina móvel 300 pode acessar por meio da unidade de comunicações 316. Por exemplo, a unidade de comunicações 316 pode ser a unidade de comunicações 210 da figura 2. A interface de usuário 324, em uma modalidade ilustrativa, pode ser implementada em um dispositivo de exibição, tal como a tela 214 da figura 2. A interface de usuário 324 pode ser montada no sistema de máquina móvel 300 e visualizável por um usuário. Por exemplo, a interface de usuário 324 pode exibir os dados do sensor obtidos a partir do sistema sensor 310, considerando o ambiente operacional que circunda o sistema de máquina móvel 300, bem como mensagens, alertas e consultas, para o usuário. Em outras modalidades ilustrativas, a interface de usuário 324 pode ser implementada em um dispositivo de exibição remoto seguro pelo usuário ou pode ser implementada em um sistema de processamento de dados remoto, tal como o servidor 104 da figura 1. O software de relógio / calendário 328 é uma aplicação de software que provê informação de hora e data. Além do mais, o software de relógio / calendário 328 é capaz de receber entradas do usuário em relação a tarefas e atividades agendadas no ambiente operacional. Assim, o controlador da máquina 302 pode usar software de relógio / calendário 328 para determinar quando enviar comandos de inicialização ao sistema de máquina móvel 300 com base na tarefa agenda 330, para determinar estações do ano para modelos de crescimento de vegetação conhecidos e para determinar quando ajustar a agenda de tarefas 330.
Nesse exemplo, o sistema de propulsão 304 propulsiona ou move o sistema de máquina móvel 300 em resposta a comandos provenientes do controlador da máquina 302. O sistema de propulsão 304 pode manter, diminuir ou aumentar a velocidade na qual o sistema de máquina móvel 300 se move em resposta às instruções recebidas a partir do controlador da máquina 302. O sistema de propulsão 304 pode ser um sistema de propulsão eletricamente controlado. Além do mais, por exemplo, o sistema de propulsão 304 pode ser um motor a diesel, um motor de combustão interna, um sistema híbrido de motor de combustão interna / elétrico, um motor elétrico ou algum outro sistema de propulsão adequado. O sistema de direção 306 controla a direção ou navegação do sistema de máquina móvel 300 em resposta a comandos recebidos a partir do controlador da máquina 302. Por exemplo, o sistema de direção 306 pode ser um sistema de direção hidráulico eletricamente controlado, um sistema de direção tipo cremalheira e pinhão eletricamente acionado, um sistema de direção Ackerman, um sistema de direção tipo direção deslizante, um sistema de direção diferencial ou algum outro sistema de direção adequado. O sistema de frenagem 308 desacelera e/ou para o sistema de máquina móvel 300 em resposta a comandos provenientes do controlador da máquina 302. O sistema de frenagem 308 pode ser um sistema de frenagem eletricamente controlado. Além do mais, por exemplo, o sistema de frenagem 308 pode ser um sistema de frenagem hidráulico, um sistema de frenagem por atrito ou algum outro sistema de frenagem adequado que pode ser eletricamente controlado. O sistema sensor 310 é um sistema de percepção de alta integridade e pode ser um conjunto de sensores usado para coletar informação sobre o ambiente operacional ao redor do sistema de máquina móvel 300. Nesse exemplo, o sistema sensor 310 envia a informação coletada ao controlador da máquina 302 para prover dados para identificar como o sistema de máquina móvel 300 deve operar no ambiente. Por exemplo, o sistema sensor 310 pode enviar dados ao controlador da máquina 302 considerando a presença de um obscurante ou obstáculo no ambiente operacional. O sistema sensor 310 pode detectar a presença de um obscurante ou obstáculo no ambiente operacional pelo uso, por exemplo, de um sensor de detecção e de localização de luz e uma câmera. Nesse exemplo, um conjunto diz respeito a dois ou mais sensores. A unidade de comunicações 316 é um sistema de comunicações de alta integridade e pode prover múltiplas ligações e canais de comunicações redundantes ao controlador da máquina 302 a fim de que o controlador da máquina 302 receba informação. As ligações e canais de comunicação podem ser componentes redundantes heterogêneos e/ou homogêneos que provêem comunicação sem falhas. Por exemplo, essa informação recebida pode incluir dados, comandos e/ou instruções. A unidade de comunicações 316 pode tomar várias formas. Por exemplo, a unidade de comunicações 316 pode incluir um sistema de comunicações sem fios, tal como um sistema de telefone celular, um sistema de tecnologia de fidelidade sem fios (Wi-Fi), um sistema de tecnologia sem fios Bluetooth e/ou algum outro sistema de comunicações sem fios adequado. Adicionalmente, a unidade de comunicações 316 também pode incluir uma porta de comunicações, tais como, por exemplo, uma porta do barramento serial universal, um interface serial, um interface de porta paralela, uma interface de rede e/ou alguma outra porta adequada para prover uma ligação de comunicações física. A unidade de comunicações 316 pode ser usada para comunicar com um usuário, um outro sistema de máquina móvel ou um sistema de processamento de dados remoto, tal como um servidor. O dispositivo de armazenamento de dados 318 é um exemplo de armazenamento persistente 208 da figura 2. O dispositivo de armazenamento de dados 318 armazena agenda de tarefas 330, dados de imagem 332 e dados de laser 334. O controlador da máquina 302 usa a agenda de tarefas 330 para determinar quando enviar um comando ao sistema de máquina móvel 300 para realizar uma tarefa. A agenda de tarefas 330 pode ser uma agenda de tarefas padrão, uma agenda de tarefas inserida pelo usuário por meio da interface de usuário 324 ou uma agenda de tarefas modificada gerada pelo controlador da máquina 302.
Dados de imagem 332 são um arquivo que armazena informação em relação a imagens capturadas ao redor do sistema de máquina móvel 300 no ambiente operacional. Dados de imagem 332 são capturados por um dispositivo de formação de imagem, tal como uma câmera, no sistema sensor 310. Dados de imagem 332 podem incluir dados, tais como, por exemplo, imagens estáticas capturadas por uma câmera, imagens de vídeo capturadas por uma câmera de vídeo, imagens estereográficas capturadas por um sistema de câmera estereográfica e/ou imagens térmicas capturadas por uma câmera infravermelha. Além do mais, o controlador da máquina 302 pode mapear pontos encontrados nos dados de imagem 332 em um mapa tridimensional virtual do ambiente operacional que circunda o sistema de máquina móvel 300.
Adicionalmente, o controlador da máquina 302 pode associar esses pontos de dados de imagem mapeados com pontos de laser correspondentes encontrados nos dados de laser 334. Dados de laser 334 são um arquivo que armazena informação em relação a pulsos de laser retomados recebidos ao redor do sistema de máquina móvel 300 no ambiente operacional. Os pulsos de laser são emitidos por um leitor de laser, tal como um dispositivo de detecção e localização de luz no sistema sensor 310. Além do mais, o controlador da máquina 302 pode mapear pontos encontrados nos dados de laser 334 no mapa tridimensional virtual do ambiente operacional que circunda o sistema de máquina móvel 300 e associar esses pontos de dados de laser mapeados com correspondentes pontos de imagem encontrados nos dados de imagem 332. Não pretende-se que a ilustração do sistema de máquina móvel 300 da figura 3 implique limitações físicas ou de arquitetura na maneira na qual diferentes modalidades vantajosas podem ser implementadas. Outros componentes, além daqueles ilustrados, ou no lugar deles, podem ser usados. Alguns componentes podem ser desnecessários em algumas modalidades vantajosas. Também, os blocos são apresentados para ilustrar alguns componentes funcionais e combinados e/ou divididos em blocos diferentes quando implementados em hardware e/ou software. Por exemplo, em algumas modalidades vantajosas, a base de conhecimento de horticultura 322 pode ser separada e distinta do sistema de máquina móvel 300, mas capaz de ser usada pelo sistema de máquina móvel 300.
Agora, em relação à figura 4, um diagrama de blocos de um sistema sensor é representado de acordo com uma modalidade ilustrativa. O sistema sensor 400 é um exemplo de uma implementação do sistema sensor 310 da figura 3.
Da forma ilustrada, o sistema sensor 400 inclui o sensor de detecção e de localização de luz (LIDAR) bidimensional / tridimensional 402, a câmera de luz visível 404, a câmera infravermelha 406, detecção e localização por rádio (RADAR) 408, sensor do sistema de posicionamento global (GPS) 410, sensores de mobilidade 412, sensor de umidade do solo 414, sensor de chuva 416, sensor de temperatura 418, sensor de vento 420, sensor de luz ambiente 422 e sensor de limite 424. Um controlador da máquina, tal como o controlador da máquina 302 da figura 3, pode usar esses diferentes sensores para identificar condições em um ambiente operacional de uma máquina robótica móvel autônoma ou semiautônoma, tal como o sistema de máquina móvel 300 da figura 3. O controlador da máquina pode selecionar a partir desses diferentes sensores no sistema sensor 400, de maneira tal que pelo menos um desses sensores seja sempre capaz de perceber a informação necessária para operar a máquina robótica móvel de forma segura e efetiva em diferentes ambientes operacionais. O sensor de detecção e de localização de luz bidimensional / tridimensional 402 emite pulsos de laser no ambiente operacional da máquina robótica móvel. Então, o sensor de detecção e de localização de luz bidimensional / tridimensional 402 captura os pulsos de laser refletidos para gerar dados de laser, tais como dados de laser 334 da figura 3. Por exemplo, os dados de laser podem ser pontos de laser correspondentes a matrizes de alcance bidimensional ou tridimensional para objetos no ambiente operacional. O controlador da máquina usa os dados de laser para determinar a distância até um objeto ou a superfície pela medição do atraso de tempo entre a transmissão de um pulso de laser e a detecção do sinal refletido.
Além do mais, o controlador da máquina pode usar os dados de laser para determinar se um objeto dinâmico entrou no ambiente operacional pela comparação dos sinais refletidos com dados de laser previamente gerados para o ambiente operacional. Por exemplo, se existir continuidade entre os sinais de laser refletidos e os dados de laser previamente gerados, então nenhum novo objeto entrou no ambiente operacional. Em outras palavras, nenhum novo reflexo do pulso de laser é detectado no ambiente operacional, se comparado com os dados de laser previamente gerados. Assim, existe continuidade entre os sinais de laser atualmente refletidos e os reflexos do sinal de laser previamente gravados em virtude de os dados de laser atuais e os dados de laser previamente gerados serem, essencialmente, os mesmos.
Inversamente, se não existir continuidade entre os sinais de laser refletidos e os dados de laser previamente gerados, então, um ou mais novos objetos entraram no ambiente operacional. Em outras palavras, novos reflexos do pulso de laser são detectados no ambiente operacional, se comparados com os dados de laser previamente gerados. Em decorrência disto, não existe continuidade entre os sinais de laser atualmente refletidos e os reflexos do sinal de laser previamente gravados, em virtude de os dados de laser atuais e os dados de laser previamente gerados serem diferentes.
Uma descontinuidade inclui, sem limitações, uma diferença no tempo de voo ou faixa de valores, uma diferença nos valores da intensidade do sinal de retomo, uma diferença em valores da frequência do sinal de retomo ou uma diferença na posição de um sinal de retomo em um campo de visualização. Tipicamente, pequenas variações na diferença entre um primeiro valor de sinal e um segundo valor de sinal ocorrerão no curso da operação normal do sensor. Essas pequenas variações ou ruído no valor da diferença do sinal podem ser ocasionadas, por exemplo, sem limitações, por erro de conversão analógico para digital nos sinais originais. Assim, um valor de diferença limite pode ser usado para definir quando a diferença é uma descontinuidade e não ruído. O limite pode ser precisamente definido ou definido sem limitação em termos de uma probabilidade, uma função de afiliação difusa ou outro meio de classificação adequado. Uma descontinuidade pode ser calculada como uma simples diferença numérica entre dois valores. Uma descontinuidade também pode ser calculada usando quaisquer função matemática, função lógica ou algoritmo adequados usando qualquer número de valores.
Também, o sensor de detecção e de localização de luz bidimensional / tridimensional 402 pode incluir um sensor de luz estruturada. O sensor de luz estruturada emite luz em um padrão, tais como uma ou mais linhas, relê os reflexos da luz padrão através de uma câmera e interpreta os reflexos para detectar e medir objetos no ambiente operacional. Por exemplo, o controlador da máquina também pode usar o sensor de luz estruturada para detectar obscurantes e obstáculos no ambiente operacional. A câmera de luz visível 404 pode ser uma câmera de imagem estática padrão, que pode ser usada individualmente para informação de cor ou com uma segunda câmera para gerar imagens estereoscópicas ou tridimensionais. Quando câmera de luz visível 404 for usada juntamente com uma segunda câmera para gerar imagens estereoscópicas, as duas ou mais câmeras podem ser ajustadas com diferentes configurações de exposição para prover melhor desempenho em relação a uma faixa de condições de iluminação. A câmera de luz visível 404 também pode ser uma câmera de vídeo que captura e grava imagens. Em decorrência disto, a câmera de luz visível 404 pode ser um componente em um sistema de reconhecimento de objeto com base em vídeo. O sistema de reconhecimento de objeto com base em vídeo usa reconhecimento de forma para disparar alertas quando um alvo corresponder.
Uma capacidade provida pelo sistema de monitoramento de vídeo do ambiente operacional é detecção de obscurante e de obstáculo. O controlador da máquina pode usar a informação em relação à detecção de um obscurante, tal como poeira, ou de um obstáculo no ambiente operacional para ajustar ou diminuir a velocidade máxima da máquina robótica móvel para operação segura. Além do mais, o controlador da máquina pode usar essa informação para iniciar uma ação, tal como uma manobra de evasão, para a máquina robótica móvel. Além do mais, o controlador da máquina pode comunicar essa informação a outras máquinas robóticas móveis que operam na área. Adicionalmente, o sistema de reconhecimento de objeto com base em vídeo pode ser usado para verificar se a máquina robótica móvel está operando na seção correta do ambiente operacional.
Embora modalidades ilustrativas possam usar detecção e localização e visão de luz para identificar o obscurante quando um obstáculo estiver presente, modalidades ilustrativas também pode usar luz estruturada, especialmente, para detecção de um obscurante quando nenhum obstáculo estiver presente. Na forma básica, um padrão de luz de laser ou de uma outra fonte de luz é projetado no ambiente operacional e uma câmera é usada para obter uma imagem do padrão de luz à medida que ela atinge objetos no ambiente operacional. A falta de, ou a mancha de, bordas das linhas, pontos e/ou regiões de luz estruturada na imagem da câmera podem ser indicativas de um obscurante. A câmera infravermelha 406 pode formar uma imagem usando radiação infravermelha. Assim, a câmera infravermelha 406 pode detectar calor indicativo de um ser vivo em relação a um objeto inanimado no ambiente operacional da máquina robótica móvel. Detecção e localização por rádio 408 é um sistema de detecção de objeto que usa ondas eletromagnéticas para identificar o alcance, a altitude, a direção ou a velocidade de objetos tanto móveis quanto fixos no ambiente operacional. Detecção e localização por rádio 408 pode ser usada em um modo de tempo de voo para calcular a distância até um objeto bem como em modo Doppler para calcular a velocidade de um objeto. O controlador da máquina pode usar o sensor do sistema de posicionamento global (GPS) 410 para identificar o local da máquina robótica móvel em relação a outros objetos no ambiente operacional. O sensor do sistema de posicionamento global 410 pode ser qualquer tipo de esquema de triangulação por radiofrequência com base na intensidade do sinal e/ou no tempo de voo. Exemplos incluem, sem limitação, o Sistema de Posicionamento Global, Glonass, Galileo e intensidade do sinal em relação à torre de telefonia celular. A posição é tipicamente relatada como latitude e longitude, com um erro que depende de fatores, tais como condição da ionosfera, constelação de satélite e atenuação de sinal a partir da vegetação. O controlador da máquina pode usar sensores de mobilidade 412 para guiar segura e eficientemente a máquina robótica móvel através do ambiente operacional designado. Sensores de mobilidade 412 podem incluir, por exemplo, um odômetro, uma bússola para navegação por cálculo, sensores de visão e ultrassônicos para detecção de obstáculo / objeto e/ou qualquer outro sensor adequado. O sensor de umidade do solo 414 detecta a umidade do solo atual in situ a partir de partes específicas do ambiente operacional. O sistema sensor 400 pode retransmitir esses dados da umidade do solo in situ a um servidor, tal como o servidor 104 da figura 1, para auxiliar o servidor na determinação de quando um sistema de irrigação deve aguar a vegetação no ambiente operacional. O sensor de chuva 416 detecta precipitação na superfície exterior da máquina robótica móvel. O sensor de temperatura 418 detecta a temperatura ambiente do ambiente operacional. O sensor de vento 420 detecta a velocidade do vento no ambiente operacional. O sensor de luz ambiente 422 mede a quantidade de luz ambiente no ambiente operacional.
Em uma modalidade ilustrativa, um ou mais dos sensores 416 -422 podem ficar localizados em uma estação de carregamento em vez de na máquina robótica móvel. Além do mais, um ou mais desses sensores, tais como o sensor de temperatura 418 e o sensor de vento 420, podem ser recursos opcionais do sistema sensor 400. Também, uma unidade de comunicações, tal como a unidade de comunicações 316 da figura 3, pode transmitir dados obtidos por um ou mais desses sensores a uma base de dados em linha, tal como o armazenamento 108 da figura 1. O sensor de limite 424 detecta um marcador de limite, tal como o marcador de limite da área 118 da figura 1. Por exemplo, o marcador de limite pode ser um fio que identifica o limite do ambiente operacional para a máquina robótica móvel. O controlador da máquina usa o sensor de limite 424 para determinar que a máquina robótica móvel está saindo ou está prestes a sair do ambiente operacional designado. Adicionalmente, em resposta à detecção do marcador de limite, o controlador da máquina pode direcionar a máquina robótica móvel para iniciar uma função específica, tal como mudar a direção de movimento.
Além do mais, o controlador da máquina pode recuperar e coordenar dados a partir de dois ou mais sensores do sistema sensor 400 para obter diferentes perspectivas do ambiente operacional. Por exemplo, o controlador da máquina pode obter dados de laser a partir do sensor de detecção e de localização de luz bidimensional / tridimensional 402, dados de imagem a partir da câmera de luz visível 404 e dados de local a partir do sensor do sistema de posicionamento global 410 ou a partir de mapas topográficos armazenados em uma base de conhecimento de horticultura, tal como a base de conhecimento de horticultura 322 da figura 3, para determinar a presença e o local de obscurantes ou obstáculos no ambiente operacional.
Agora, em relação à figura 5, uma representação pictórica de um ambiente operacional de um sistema de máquina móvel é realizada de acordo com uma modalidade ilustrativa. Por exemplo, o ambiente operacional 500 pode ser a área 116 da figura 1. Nesse exemplo, o ambiente operacional 500 é um ambiente agrícola, onde a máquina móvel 502 e a máquina móvel 504 estão realizando tarefas. Entretanto, deve-se notar que modalidades ilustrativas não são limitadas a ambientes agrícolas operacionais, mas podem ser implementadas em qualquer tipo de ambiente operacional para máquinas robóticas móveis autônomas e semiautônomas.
Também, nesse exemplo, a máquina móvel 502 e a máquina móvel 504 são representadas como tratores, mas podem representar qualquer tipo de máquina robótica móvel. Por exemplo, a máquina móvel 502 e a máquina móvel 504 podem ser o sistema de máquina móvel 110 e o sistema de máquina móvel 112 da figura 1. Adicionalmente, a máquina móvel 502 e a máquina móvel 504 podem ficar em comunicação uma com a outra por meio de uma rede, tal como a rede 102 da figura 1, usando uma unidade de comunicações, tal como a unidade de comunicações 316 da figura 3. O ambiente operacional 500 inclui o obscurante 506 e o obstáculo 508. Nesse exemplo, o obscurante 506 é poeira pesada, que é produzida por máquinas móveis 502 e 504 durante o desempenho da tarefa no ambiente operacional 500. Entretanto, deve-se notar que, além de ser poeira, o obscurante 506 também pode ser neblina, fumaça, neve, chuva, cinzas ou vapor no ambiente operacional 500. O obscurante 506 obscurece o obstáculo 508 em relação a um sensor de tratamento de imagem, tal como a câmera de luz visível 404 da figura 4, que é incluído em um sistema sensor localizado na máquina móvel 504. Em outras palavras, o obscurante 506 impede que o sensor de tratamento de imagem detecte bordas agudas do obstáculo 508 nos dados da imagem capturada.
Assim, a máquina móvel 504 pode usar dados obtidos a partir de uma pluralidade de sensores do sistema sensor, tais como dois ou mais sensores do sistema sensor 400 da figura 4, para detectar e localizar o obscurante 506 e o obstáculo 508 no ambiente operacional 500. Especificamente, a máquina móvel 504 usa um controlador da máquina, tal como o controlador da máquina 302 da figura 3, para correlacionar os dados obtidos pela pluralidade de sensores. Por exemplo, o controlador da máquina pode correlacionar os dados da imagem capturada pelo sensor de tratamento de imagem e os dados de laser gerados por um sensor de laser para detectar e localizar o obscurante 506 e o obstáculo 508. Por exemplo, o sensor de laser pode ser o sensor de detecção e de localização de luz bidimensional / tridimensional 402 da figura 4.
Com base na correlação dos dados obtidos a partir da pluralidade de sensores, o controlador da máquina pode ajustar ou diminuir a velocidade máxima da máquina móvel 504 para operação segura devido ao obscurante 506 estar presente no ambiente operacional 500, o que ocasiona uma diminuição no alcance máximo efetivo de um ou mais dos sensores do sistema sensor. Adicionalmente, o controlador da máquina pode transmitir o ajuste de velocidade máxima da máquina móvel 504 à máquina móvel 502 para um correspondente ajuste de velocidade máxima na máquina móvel 502, especialmente, se as máquinas móveis 502 e 504 estiverem desempenhando tarefas coordenadas usando um plano de caminho multiveículos. Também, a comunicação do ajuste de velocidade máxima da máquina móvel 504 à máquina móvel 502 pode impedir a perda de comunicações entre as duas máquinas, devido à maior separação. Além do mais, o controlador da máquina pode iniciar uma ação, tais como uma manobra de evasão ou uma manobra de parada, para a máquina móvel 504 com base na distância até o obstáculo 508. O ambiente operacional 500 também inclui o recurso topográfico 510. Nesse exemplo, o recurso topográfico 510 é uma colina ou uma elevação no terreno do ambiente operacional 500. Entretanto, o recurso topográfico 510 pode ser qualquer recurso que reduz ou limita o alcance máximo efetivo do sistema sensor. Em outras palavras, o recurso topográfico 510 impede que os sensores do sistema sensor percebam qualquer coisa além do recurso topográfico 510, mesmo embora o alcance máximo efetivo real do sistema sensor possa alcançar além do recurso topográfico 510.
Agora, em relação à figura 6, uma representação pictórica da detecção de borda é realizada de acordo com uma modalidade ilustrativa. Dados de imagem sem obscurante 600 representam dados da imagem de um obstáculo capturada por um sensor de tratamento de imagem associado com uma máquina robótica móvel em um ambiente operacional que não inclui um obscurante. Por exemplo, os dados de imagem podem ser os dados de imagem 332 da figura 3. Por exemplo, o obstáculo pode ser o obstáculo 506 no ambiente operacional 500 da figura 5. Por exemplo, o sensor de tratamento de imagem pode ser a câmera de luz visível 404 da figura 4.
Os dados de imagem com o obscurante 602 representam dados de imagem do obstáculo, que é borrado por um obscurante, tal como o obscurante 506 da figura 5. Assim, dados de imagem com o obscurante 602 ilustram os efeitos de um obscurante, tal como poeira pesada, nos dados da imagem capturada pelo sensor de tratamento de imagem montado na máquina robótica móvel. Máscara aplicada nos dados de imagem sem obscurante 604 representam o resultado da aplicação de um algoritmo de detecção de borda nos dados de imagem sem obscurante 600. Por exemplo, o algoritmo de detecção de borda pode ser um algoritmo de detecção de borda Sobel. Máscara aplicada nos dados de imagem sem obscurante 604 ilustram que o obstáculo tem bordas agudas ou bem definidas depois da aplicação do algoritmo de detecção de borda. Um controlador da máquina para a máquina robótica móvel, tal como o controlador da máquina 302 da figura 3, pode detectar facilmente as bordas do obstáculo nos dados de imagem depois da aplicação da máscara pelo algoritmo de detecção de borda. A máscara aplicada nos dados de imagem com obscurante 606 representa o resultado da aplicação do algoritmo de detecção de borda nos dados de imagem com obscurante 602. Nesse exemplo, o controlador da máquina pode achar difícil, se não impossível, detectar as bordas do obstáculo nos dados de imagem depois da aplicação da máscara pelo algoritmo de detecção de borda. Consequentemente, modalidades ilustrativas usam uma fusão das entradas do sensor provenientes de uma pluralidade de diferentes sensores associados com a máquina robótica móvel para detectar e localizar obscurantes e obstáculos no ambiente operacional.
Agora, em relação à figura 7, uma representação pictórica de um recurso topográfico que ocasiona menor alcance de detecção do sensor é realizada de acordo com uma modalidade ilustrativa. O máximo alcance de detecção do sensor sem recurso topográfico 702 representa a maior distância de percepção de um sistema sensor associado com uma máquina robótica móvel desimpedida por um recurso topográfico em um ambiente operacional. Por exemplo, o sistema sensor pode ser o sistema sensor 310 da figura 3 ou o sistema sensor 400 da figura 4. O máximo alcance de detecção do sensor com recurso topográfico 704 representa uma máxima distância de percepção limitada ou restrita do sistema sensor, que é impedido por um recurso topográfico em um ambiente operacional. Por exemplo, o recurso topográfico pode ser o recurso topográfico 510 da figura 5. Nesse exemplo, o recurso topográfico é uma colina. A colina diminui o alcance de detecção do sistema sensor para perceber dados, mesmo embora o sistema sensor seja capaz de perceber dados em uma distância maior.
Agora, em relação à figura 8A e à figura 8B, um fluxograma que ilustra um processo de exemplo para ajustar a velocidade máxima de um veículo autônomo ou semiautônomo é mostrado de acordo com uma modalidade ilustrativa. O processo mostrado nas figuras 8A-8B pode ser implementado em uma máquina robótica móvel, tal como o sistema de máquina móvel 300 da figura 3. O processo começa quando a máquina robótica móvel usar um sensor de detecção e de localização de luz, tal como o sensor de detecção e de localização de luz bidimensional / tridimensional 402 da figura 4, para emitir pulsos de laser em um ambiente operacional, tal como o ambiente operacional 500 da figura 5 (etapa 802). Depois de emitir os pulsos de laser na etapa 802, o sensor de detecção e de localização de luz recebe reflexos dos pulsos de laser a partir dos objetos no ambiente operacional (etapa 804). Então, um controlador da máquina, tal como o controlador da máquina 302 da figura 3, que é comunicativamente acoplado no sensor de detecção e de localização de luz, gera dados de laser atuais para o ambiente operacional com base nos reflexos dos pulsos de laser (etapa 806).
Subsequente à geração dos dados de laser atuais na etapa 806, o controlador da máquina compara os dados de laser atuais com os dados de laser previamente gerados para o ambiente operacional, tais como os dados de laser 334 da figura 3 (etapa 808). Então, o controlador da máquina faz uma determinação se existe continuidade entre os dados de laser atuais e os dados de laser previamente gerados para o ambiente operacional (etapa 810). Continuidade significa que os dados de laser e os dados de laser previamente gerados para o ambiente operacional são essencialmente equivalentes ou os mesmos. Em outras palavras, nenhuma mudança nos dados de laser está presentes, se comparados com os dados de laser previamente gerados.
Se o controlador da máquina determinar que existe continuidade entre os dados de laser atuais e os dados de laser previamente gerados para o ambiente operacional, sim é a saída da etapa 810, então, o processo retoma para a etapa 802. Se o controlador da máquina determinar que não existe continuidade entre os dados de laser atuais e os dados de laser previamente gerados para o ambiente operacional, não é a saída da etapa 810, então, o controlador da máquina determina um local no ambiente operacional em que existe descontinuidade entre os dados de laser atuais e os dados de laser previamente gerados (etapa 812). Depois da determinação do local da descontinuidade na etapa 812, o controlador da máquina seleciona os dados da imagem capturada por um dispositivo de formação de imagem que correspondem ao local no ambiente operacional onde existe a descontinuidade entre os dados de laser atuais e os dados de laser previamente gerados (etapa 814). Por exemplo, o dispositivo de formação de imagem pode ser a câmera de luz visível 404 da figura 4.
Subsequentemente, o controlador da máquina analisa os dados de imagem selecionados que correspondem ao local no ambiente operacional onde existe a descontinuidade entre os dados de laser atuais e os dados de laser previamente gerados (etapa 816). Posteriormente, o controlador da máquina calcula uma pontuação de borrão que não representa movimento para os dados de imagem selecionados usando um algoritmo de borrão sem referência (etapa 818). Uma pontuação de borrão que não representa movimento é uma pontuação de borrão de uma imagem ou subimagem de objeto que reduz ou elimina significativamente a contribuição de borrão da máquina robótica móvel ou proveniente de um objeto quando um ou ambos estiverem em movimento. Uma pontuação de borrão que não representa movimento é um valor calculado que representa uma quantidade de borrão das bordas detectadas nos dados de imagem. Borrão é a difusão das bordas de forma que o contraste entre objetos nos dados de imagem se tome menos distinto. Em outras palavras, à medida que o borrão da borda aumenta, a nitidez das bordas entre os objetos nos dados de imagem diminui. Tipicamente, isso é devido à absorção e ao espalhamento de luz por um obscurante à medida que a luz se desloca da superfície a partir da qual ela foi refletida até o sensor ótico. Por exemplo, um objeto pode ser uma planta, uma árvore, uma pessoa, uma cerca, um recurso topográfico, um sulco no solo ou o horizonte. Um algoritmo de borrão sem referência é um processo para determinar o borrão da borda em uma imagem do ambiente operacional com base na análise das larguras das intensidades da borda, sem exigir pontos de referência pré-determinados no ambiente operacional para a análise.
Algoritmos de borrão sem referência são uma área de pesquisa ativa. Exemplos de documentos que discutem algoritmos de borrão sem referência incluem: Renting Liu, Zhaorong Li & Jiaya Jia, Image Partial Blur Detection and Classification, IEEE CONFERENCE ON COMPUTER VISION AND PATTERN RECOGNITION, 2008, pp. 1-8; Ming-Jun Chen & Alan Bovik, No-Reference Image Blur Assessment Using Multiscale Gradíent, QUALITY OF MULTIMEDIA EXPERIENCE, 2009, pp. 70-74; e Yun-Chung Chung, Shyang-Lih Chang, Jung-Ming Wang & Sei-Wang Chen, An Edge Analysis Based Blur Measure for Image Processing Applications, JOURNAL OF TAIWAN NORMAL UNIVERSITY: MATHEMATICS, SCIENCE & TECHNOLOGY, Vol. 51, N°. 1, 2006. Esses documentos de exemplo são aqui incorporados pela referência.
Depois de calcular a pontuação de borrão que não representa movimento na etapa 818, o controlador da máquina faz uma determinação se a pontuação de borrão que não representa movimento para os dados de imagem selecionados está acima de um valor limite pré-determinado (etapa 820). Se o controlador da máquina determinar que a pontuação de borrão que não representa movimento para os dados de imagem selecionados está acima do valor limite pré-determinado, sim é a saída da etapa 820, então, o controlador da máquina determina que o ambiente operacional inclui um obscurante (etapa 822). Por exemplo, o obscurante pode ser poeira pesada, tal como o obscurante 506 da figura 5.
Depois de determinar que um obscurante está localizado no ambiente operacional na etapa 822, o controlador da máquina calcula uma densidade ótica do obscurante e uma distância até o obscurante (etapa 824). A densidade ótica do obscurante é uma razão da energia recebida em um sensor em relação à energia transmitida ou refletida a partir de um ponto de origem. Frequentemente, a densidade ótica pode estar correlacionada com atributos físicos do obscurante, tais como, por exemplo, densidade do material, composição do material ou tamanho de partícula. Um exemplo de um documento que discute densidade ótica é: Debbie Kedar & Shlomi Amon, Optical wireless communícation through fog in the presence of pointing errors, APPLIED OPTICS, Vol. 42, N° 24, 2003, pp. 4946-4954, que é aqui incorporado pela referência.
Então, o controlador da máquina ajusta a velocidade máxima da máquina robótica móvel com base na densidade ótica do obscurante no ambiente operacional, e na distância até ele (etapa 826). Em outras palavras, o controlador da máquina reduz ou diminui a velocidade máxima permitida da máquina robótica móvel para prover ao sistema sensor mais tempo para coletar dados, devido às menores capacidades de percepção do sistema sensor ocasionadas pelo obscurante. Além do mais, diminuir a velocidade máxima permitida da máquina robótica móvel permite ao controlador da máquina mais tempo para analisar e reagir aos dados de entrada do sensor. Posteriormente, o processo retoma para a etapa 802.
Retomando novamente para a etapa 820, se o controlador da máquina determinar que a pontuação de borrão que não representa movimento para os dados de imagem selecionados não está acima do valor limite pré-determinado, não é a saída da etapa 820, então, o controlador da máquina determina que o ambiente operacional não inclui um obscurante (etapa 828). Adicionalmente, o controlador da máquina determina que o ambiente operacional inclui um obstáculo, tal como o obstáculo 508 da figura 5 (etapa 830). Posteriormente, o controlador da máquina determina o tipo de obstáculo e a distância até o obstáculo usando um sistema sensor e uma base de conhecimento associada com a máquina robótica móvel (etapa 832). Por exemplo, o sistema sensor e a base de conhecimento podem ser o sistema sensor 310 e a base de conhecimento de horticultura 322 da figura 3.
Subsequente à determinação do tipo de obstáculo e da distância até ele na etapa 832, o controlador da máquina inicia uma ação para a máquina robótica móvel com base no tipo de obstáculo e na distância até ele (etapa 834). Por exemplo, a ação pode ser uma manobra de evasão ou uma manobra de parada dependendo do tipo de obstáculo e da distância até ele. Posteriormente, o processo retoma para a etapa 802.
Agora, em relação à figura 9, um fluxograma que ilustra um processo de exemplo alternativo para ajustar a velocidade máxima de um veículo autônomo ou semiautônomo é mostrado de acordo com uma modalidade ilustrativa. O processo mostrado na figura 9 pode ser implementado em uma máquina robótica móvel, tal como o sistema de máquina móvel 300 da figura 3. O processo começa quando a máquina robótica móvel usar um dispositivo de formação de imagem para capturar dados de imagem de um ambiente operacional que circunda a máquina robótica móvel (etapa 902). Por exemplo, o dispositivo de formação de imagem pode ser a câmera de luz visível 404 da figura 4 e os dados de imagem podem ser, por exemplo, os dados de imagem 332 da figura 3. Por exemplo, o ambiente operacional pode ser o ambiente operacional 500 da figura 5.
Depois que o dispositivo de formação de imagem capturar os dados de imagem na etapa 902, um controlador da máquina, que é comunicativamente acoplado no dispositivo de formação de imagem, analisa os dados de imagem do ambiente operacional que circunda a máquina robótica móvel (etapa 904). Por exemplo, o controlador da máquina pode ser o controlador da máquina 302 da figura 3. Subsequentemente, o controlador da máquina calcula uma pontuação de borrão que não representa movimento para os dados de imagem do ambiente operacional que circunda a máquina robótica móvel usando um algoritmo de borrão sem referência (etapa 906). Então, o controlador da máquina faz uma determinação se a pontuação de borrão que não representa movimento para os dados de imagem do ambiente operacional está acima de um valor limite pré-determinado (etapa 908).
Se o controlador da máquina determinar que a pontuação de borrão que não representa movimento para os dados de imagem do ambiente operacional não está acima do valor limite pré-determinado, não é a saída da etapa 908, então, o processo retoma para a etapa 902. Se o controlador da máquina determinar que a pontuação de borrão que não representa movimento para os dados de imagem do ambiente operacional está acima do valor limite pré-determinado, sim é a saída da etapa 908, então, o controlador da máquina determina que o ambiente operacional inclui um obscurante (etapa 910). Por exemplo, o obscurante pode ser o obscurante 506 da figura 5.
Depois da determinação de que um obscurante está localizado no ambiente operacional na etapa 910, o controlador da máquina calcula uma densidade ótica do obscurante no ambiente operacional com base na pontuação de borrão que não representa movimento calculado (etapa 912). Então, o controlador da máquina ajusta a velocidade máxima da máquina robótica móvel com base em uma quantidade que é proporcional à densidade ótica calculada do obscurante no ambiente operacional (etapa 914). Posteriormente, o processo retoma para a etapa 902.
Agora, em relação à figura 10, um fluxograma que ilustra um outro processo de exemplo alternativo para ajustar a velocidade máxima de um veículo autônomo ou semiautônomo é mostrado de acordo com uma modalidade ilustrativa. O processo mostrado na figura 10 pode ser implementado em uma máquina robótica móvel, tal como o sistema de máquina móvel 300 da figura 3. O processo começa quando a máquina robótica móvel usar um sensor de detecção e de localização de luz para projetar um padrão de luz em um ambiente operacional que circunda a máquina robótica móvel (etapa 1002). Por exemplo, o sensor de detecção e de localização de luz pode ser o sensor de detecção e de localização de luz bidimensional / tridimensional 402 da figura 4. Por exemplo, o ambiente operacional pode ser o ambiente operacional 500 da figura 5.
Depois de projetar o padrão de luz no ambiente operacional na etapa 1002, o sensor de detecção e de localização de luz captura uma imagem do padrão de luz projetado no ambiente operacional que circunda a máquina robótica móvel (etapa 1004). Então, um controlador da máquina, que é comunicativamente acoplado no sensor de detecção e de localização de luz, analisa a imagem do padrão de luz projetado (etapa 1006). Por exemplo, o controlador da máquina pode ser o controlador da máquina 302 da figura 3.
Subsequentemente, o controlador da máquina calcula uma pontuação de nitidez para as bordas detectadas na imagem do padrão de luz projetado usando um algoritmo de nitidez sem referência (etapa 1008). Uma pontuação de nitidez é um valor calculado que representa uma quantidade de nitidez das bordas detectadas na imagem do padrão de luz projetado. Nitidez são bordas bem definidas, de forma que a imagem do padrão de luz projetado seja distinta. Em outras palavras, à medida que a nitidez da borda aumenta, o borrão das bordas diminui. Um algoritmo de nitidez sem referência é um processo para determinar a nitidez da borda na imagem do padrão de luz projetado no ambiente operacional com base na análise das larguras das intensidades da borda, sem exigir pontos de referências pré-determinados no ambiente operacional para a análise.
Depois de calcular a pontuação de nitidez na etapa 1008, o controlador da máquina faz uma determinação se a pontuação de nitidez para as bordas detectadas na imagem do padrão de luz projetado está acima de um valor limite pré-determinado (etapa 1010). Se o controlador da máquina determinar que a pontuação de nitidez para as bordas detectadas na imagem do padrão de luz projetado está acima do valor limite pré-determinado, sim é a saída da etapa 1010, então, o processo retoma para a etapa 1002. Se o controlador da máquina determinar que a pontuação de nitidez para as bordas detectadas na imagem do padrão de luz projetado não está acima do valor limite pré-determinado, não é a saída da etapa 1010, então, o controlador da máquina determina que o ambiente operacional inclui um obscurante (etapa 1012). Por exemplo, o obscurante pode ser o obscurante 506 da figura 5.
Depois de determinar que um obscurante está localizado no ambiente operacional na etapa 1012, o controlador da máquina calcula uma densidade ótica do obscurante no ambiente operacional com base na pontuação de nitidez calculado (etapa 1014). Então, o controlador da máquina ajusta a velocidade máxima da máquina robótica móvel com base em uma quantidade que é inversamente proporcional à densidade ótica calculada do obscurante no ambiente operacional (etapa 1016). Posteriormente, o processo retoma para a etapa 1002.
Assim, modalidades ilustrativas provêem um método e um sistema para gerenciar a velocidade máxima permitida de uma máquina robótica móvel autônoma ou semiautônoma quando um alcance efetivo máximo do sistema sensor associado com a máquina diminuir. Os fluxogramas das figuras ilustram a funcionalidade e a operação de possíveis implementações de métodos e sistemas de acordo com várias modalidades da presente invenção. Nesse particular, cada bloco dos fluxogramas pode representar um módulo, segmento ou parte de código que compreende uma ou mais instruções executáveis para implementar a(s) função(ões) lógica(s) especificada(s). Também percebe-se que, em algumas implementações alternativas, as funções apontadas no bloco podem ocorrer fora da ordem apontada nas figuras. Por exemplo, blocos mostrados em sucessão podem, de fato, ser executados de forma substancialmente concorrente, ou algumas vezes, os blocos podem ser executados em uma ordem integralmente diferente ou em ordem inversa, dependendo da funcionalidade envolvida. Também percebe-se que cada bloco das ilustrações do fluxograma, e combinações dos blocos nas ilustrações do fluxograma, pode ser implementado por sistemas com base em hardware de uso especial que realizam as funções ou atos especificados ou por combinações de hardware de uso especial e instruções de computador. A descrição das diferentes modalidades vantajosas foi apresentada com propósitos de ilustração e descrição, e não pretende-se que seja completa ou limitada às modalidades na forma divulgada. Muitas modificações e variações ficarão aparentes aos versados na técnica. Adicionalmente, diferentes modalidades podem prover diferentes vantagens, se comparadas com outras modalidades. A modalidade ou modalidades selecionadas são escolhidas e descritas a fim de mais bem explicar os princípios da invenção, a aplicação prática e para habilitar que outros versados na técnica entendam a invenção em relação às várias modalidades com várias modificações adequadas ao uso em particular contemplado.

Claims (20)

1. Método para ajustar uma velocidade de uma máquina móvel, caracterizado pelo fato de que o método compreende: coletar dados de imagem de um local em que dados do sensor atualmente gerados e dados do sensor previamente gerados indicam uma descontinuidade nos dados do sensor; analisar os dados de imagem para determinar se uma pontuação de borrão que não representa movimento para os dados de imagem está acima de um valor limite; e ajustar, por um controlador da máquina, uma velocidade da máquina móvel com base em uma determinação de que a pontuação de borrão que não representa movimento está acima do valor limite.
2. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que compreende adicionalmente: determinar, pelo controlador da máquina, o local em um ambiente operacional da máquina móvel em que existe a descontinuidade entre os dados atualmente gerados e os dados previamente gerados para o ambiente operacional; selecionar, pelo controlador da máquina, os dados de imagem que correspondem ao local em que existe a descontinuidade entre os dados atualmente gerados e os dados previamente gerados para o ambiente operacional; determinar, pelo controlador da máquina, se a pontuação de borrão que não representa movimento para os dados de imagem selecionados está acima do valor limite; responsivo a uma determinação de que a pontuação de borrão que não representa movimento para os dados de imagem selecionados está acima do nível limite, determinar, pelo controlador da máquina, que o ambiente operacional inclui um obscurante; e ajustar, pelo controlador da máquina, a velocidade da máquina móvel com base em uma densidade ótica do obscurante no ambiente operacional.
3. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que compreende adicionalmente: responsivo a uma determinação de que a pontuação de borrão que não representa movimento para os dados de imagem não está acima do valor limite, determinar, pelo controlador da máquina, se o ambiente operacional da máquina móvel inclui um obstáculo; determinar, pelo controlador da máquina, o tipo do obstáculo e a distância até o obstáculo usando um sistema sensor e uma base de conhecimento associados com a máquina móvel; e iniciar, pelo controlador da máquina, uma ação para a máquina móvel com base no tipo de obstáculo e na distância até ele.
4. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que compreende adicionalmente: emitir, por um sensor associado com a máquina móvel, pulsos em um ambiente operacional ao redor da máquina móvel; receber, pelo sensor, reflexos dos pulsos a partir de objetos no ambiente operacional; gerar, pelo controlador da máquina, dados atuais para o ambiente operacional com base nos reflexos dos pulsos; comparar, pelo controlador da máquina, os dados atuais com os dados previamente gerados para o ambiente operacional; e determinar, pelo controlador da máquina, se existe continuidade entre os dados atuais e os dados previamente gerados.
5. Método, de acordo com a reivindicação 2, caracterizado pelo fato de que o obscurante é pelo menos um de poeira, neblina, fumaça, neve, chuva, cinzas ou vapor no ambiente operacional.
6. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que os dados de imagem que correspondem ao local em que existe a descontinuidade entre os dados atualmente gerados e os dados previamente gerados são capturados por um dispositivo de formação de imagem, e em que o dispositivo de formação de imagem é uma câmera de vídeo.
7. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que o controlador da máquina ajusta a velocidade da máquina móvel pela diminuição de uma velocidade máxima permitida da máquina móvel.
8. Método, de acordo com a reivindicação 3, caracterizado pelo fato de que a ação é uma manobra de evasão.
9. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que a máquina móvel é uma de uma pluralidade de máquinas móveis que realizam tarefas em um ambiente operacional, e em que a pluralidade de máquinas móveis ficam em comunicação umas com as outras por meio de uma rede.
10. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que a máquina móvel é uma máquina robótica móvel autônoma.
11. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que o controlador da máquina fica localizado no dispositivo móvel.
12. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que o controlador da máquina fica localizado em um dispositivo servidor remoto.
13. Máquina móvel, caracterizada pelo fato de que compreende: um sistema de propulsão; um sistema de direção; um sistema sensor para coletar dados em relação a um ambiente operacional da máquina móvel; e um controlador da máquina acoplado no sistema de propulsão, no sistema de direção e no sistema sensor, em que o controlador da máquina coleta dados de imagem de um local em que dados do sensor atualmente gerados e dados do sensor previamente gerados indicam uma descontinuidade nos dados do sensor, analisa os dados de imagem para determinar se uma pontuação de borrão que não representa movimento para os dados de imagem está acima de um valor limite e ajusta a velocidade da máquina móvel com base em uma determinação de que a pontuação de borrão que não representa movimento está acima do valor limite.
14. Máquina móvel, de acordo com a reivindicação 13, caracterizada pelo fato de que o controlador da máquina determina o local em um ambiente operacional da máquina móvel em que existe a descontinuidade entre os dados atualmente gerados e os dados previamente gerados para o ambiente operacional, seleciona os dados de imagem que correspondem ao local em que existe a descontinuidade entre os dados atualmente gerados e os dados previamente gerados para o ambiente operacional, determina se a pontuação de borrão que não representa movimento para os dados de imagem selecionados está acima do valor limite, determina se o ambiente operacional inclui um obscurante em resposta a uma determinação de que a pontuação de borrão que não representa movimento para os dados de imagem selecionados está acima do valor limite e ajusta a velocidade da máquina móvel com base em uma densidade ótica do obscurante no ambiente operacional.
15. Máquina móvel, de acordo com a reivindicação 13, caracterizada pelo fato de que o controlador da máquina determina se um ambiente operacional da máquina móvel inclui um obstáculo em resposta a uma determinação de que a pontuação de borrão que não representa movimento para os dados de imagem não está acima do valor limite, determina o tipo do obstáculo e a distância até o obstáculo usando o sistema sensor e uma base de conhecimento associados com a máquina móvel e inicia uma ação para a máquina móvel com base no tipo de e na distância até o obstáculo.
16. Máquina móvel, de acordo com a reivindicação 13, caracterizada pelo fato de que um sensor associado com a máquina móvel emite pulsos em um ambiente operacional ao redor da máquina móvel e recebe reflexos dos pulsos a partir de objetos no ambiente operacional, e em que o controlador da máquina gera dados atuais para o ambiente operacional com base nos reflexos dos pulsos, compara os dados atuais com os dados previamente gerados para o ambiente operacional e determina se existe continuidade entre os dados atuais e os dados previamente gerados.
17. Máquina móvel, de acordo com a reivindicação 14, caracterizada pelo fato de que o obscurante é pelo menos um de poeira, neblina, Aimaça, neve, chuva, cinzas ou vapor no ambiente operacional.
18. Máquina móvel, de acordo com a reivindicação 13, caracterizada pelo fato de que os dados de imagem que correspondem ao local em que existe a descontinuidade entre os dados atualmente gerados e os dados previamente gerados são capturados por um dispositivo de formação de imagem, e em que o dispositivo de formação de imagem é uma câmera de vídeo.
19. Máquina móvel, de acordo com a reivindicação 13, caracterizada pelo fato de que o controlador da máquina ajusta a velocidade da máquina móvel pela diminuição da velocidade máxima permitida da máquina móvel.
20. Máquina móvel, de acordo com a reivindicação 13, caracterizada pelo fato de que a ação é uma manobra de evasão.
BRPI1106214-2A 2010-10-05 2011-09-30 método para ajustar uma velocidade de uma máquina móvel BRPI1106214B1 (pt)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/898157 2010-10-05
US12/898,157 US9043129B2 (en) 2010-10-05 2010-10-05 Method for governing a speed of an autonomous vehicle

Publications (2)

Publication Number Publication Date
BRPI1106214A2 true BRPI1106214A2 (pt) 2015-09-01
BRPI1106214B1 BRPI1106214B1 (pt) 2020-10-20

Family

ID=45890516

Family Applications (1)

Application Number Title Priority Date Filing Date
BRPI1106214-2A BRPI1106214B1 (pt) 2010-10-05 2011-09-30 método para ajustar uma velocidade de uma máquina móvel

Country Status (4)

Country Link
US (1) US9043129B2 (pt)
AU (1) AU2011232739B2 (pt)
BR (1) BRPI1106214B1 (pt)
RU (1) RU2011139265A (pt)

Families Citing this family (187)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8467623B2 (en) 2010-03-26 2013-06-18 Brain Corporation Invariant pulse latency coding systems and methods systems and methods
US9122994B2 (en) 2010-03-26 2015-09-01 Brain Corporation Apparatus and methods for temporally proximate object recognition
US9311593B2 (en) 2010-03-26 2016-04-12 Brain Corporation Apparatus and methods for polychronous encoding and multiplexing in neuronal prosthetic devices
US9405975B2 (en) 2010-03-26 2016-08-02 Brain Corporation Apparatus and methods for pulse-code invariant object recognition
US9906838B2 (en) 2010-07-12 2018-02-27 Time Warner Cable Enterprises Llc Apparatus and methods for content delivery and message exchange across multiple content delivery networks
US9152915B1 (en) 2010-08-26 2015-10-06 Brain Corporation Apparatus and methods for encoding vector into pulse-code output
US9070039B2 (en) 2013-02-01 2015-06-30 Brian Corporation Temporal winner takes all spiking neuron network sensory processing apparatus and methods
US9047568B1 (en) 2012-09-20 2015-06-02 Brain Corporation Apparatus and methods for encoding of sensory data using artificial spiking neurons
PL2562309T3 (pl) * 2011-08-22 2014-09-30 Joseph Voegele Ag Wykańczarka z urządzeniem pomiarowym
GB2494414A (en) * 2011-09-06 2013-03-13 Land Rover Uk Ltd Terrain visualisation for vehicle using combined colour camera and time of flight (ToF) camera images for augmented display
US9098811B2 (en) 2012-06-04 2015-08-04 Brain Corporation Spiking neuron network apparatus and methods
US8924011B2 (en) * 2012-04-03 2014-12-30 Knu-Industry Cooperation Foundation Intelligent robot apparatus responsive to environmental change and method of controlling and reconfiguring intelligent robot apparatus
NL2008674C2 (nl) * 2012-04-20 2013-10-23 Lely Patent Nv Samenstel van autonome voertuigen.
US9224090B2 (en) 2012-05-07 2015-12-29 Brain Corporation Sensory input processing apparatus in a spiking neural network
US9129221B2 (en) 2012-05-07 2015-09-08 Brain Corporation Spiking neural network feedback apparatus and methods
AU2013266703A1 (en) * 2012-05-24 2014-11-27 Syngenta Participations Ag Continuously calibrating chemigation injection unit
EP2867611A4 (en) 2012-06-27 2016-12-07 Pentair Water Pool & Spa Inc SWIMMING POOL CLEANER WITH LASER REMOVAL MEASUREMENT SYSTEM AND METHOD THEREFOR
US9412041B1 (en) * 2012-06-29 2016-08-09 Brain Corporation Retinal apparatus and methods
US9311594B1 (en) 2012-09-20 2016-04-12 Brain Corporation Spiking neuron network apparatus and methods for encoding of sensory data
US9110196B2 (en) 2012-09-20 2015-08-18 Google, Inc. Detecting road weather conditions
US9499172B2 (en) * 2012-09-20 2016-11-22 Google Inc. Detecting road weather conditions
US9218563B2 (en) 2012-10-25 2015-12-22 Brain Corporation Spiking neuron sensory processing apparatus and methods for saliency detection
US9111226B2 (en) 2012-10-25 2015-08-18 Brain Corporation Modulated plasticity apparatus and methods for spiking neuron network
US9183493B2 (en) 2012-10-25 2015-11-10 Brain Corporation Adaptive plasticity apparatus and methods for spiking neuron network
US9275326B2 (en) 2012-11-30 2016-03-01 Brain Corporation Rate stabilization through plasticity in spiking neuron network
US9123127B2 (en) 2012-12-10 2015-09-01 Brain Corporation Contrast enhancement spiking neuron network sensory processing apparatus and methods
US9091628B2 (en) 2012-12-21 2015-07-28 L-3 Communications Security And Detection Systems, Inc. 3D mapping with two orthogonal imaging views
US9367065B2 (en) 2013-01-25 2016-06-14 Google Inc. Modifying behavior of autonomous vehicles based on sensor blind spots and limitations
US9177245B2 (en) 2013-02-08 2015-11-03 Qualcomm Technologies Inc. Spiking network apparatus and method with bimodal spike-timing dependent plasticity
US9142063B2 (en) * 2013-02-15 2015-09-22 Caterpillar Inc. Positioning system utilizing enhanced perception-based localization
KR102040353B1 (ko) * 2013-04-11 2019-11-04 웨이모 엘엘씨 차량 온보드 센서들을 사용하여 날씨 상태들을 검출하는 방법들 및 시스템들
US9025140B2 (en) 2013-05-07 2015-05-05 Google Inc. Methods and systems for detecting weather conditions including sunlight using vehicle onboard sensors
US8983705B2 (en) 2013-04-30 2015-03-17 Google Inc. Methods and systems for detecting weather conditions including fog using vehicle onboard sensors
US9207323B2 (en) 2013-04-11 2015-12-08 Google Inc. Methods and systems for detecting weather conditions including wet surfaces using vehicle onboard sensors
US9632210B2 (en) 2013-05-07 2017-04-25 Google Inc. Methods and systems for detecting weather conditions using vehicle onboard sensors
US9164511B1 (en) 2013-04-17 2015-10-20 Google Inc. Use of detected objects for image processing
US10247854B2 (en) * 2013-05-07 2019-04-02 Waymo Llc Methods and systems for detecting weather conditions using vehicle onboard sensors
US9239985B2 (en) 2013-06-19 2016-01-19 Brain Corporation Apparatus and methods for processing inputs in an artificial neuron network
US9436909B2 (en) 2013-06-19 2016-09-06 Brain Corporation Increased dynamic range artificial neuron network apparatus and methods
US9080866B1 (en) * 2013-06-26 2015-07-14 Google Inc. Methods and systems for detection of reflective markers at long range
US9552546B1 (en) 2013-07-30 2017-01-24 Brain Corporation Apparatus and methods for efficacy balancing in a spiking neuron network
WO2015057637A1 (en) * 2013-10-14 2015-04-23 Kinze Manufacturing, Inc. Autonomous systems, methods, and apparatus for ag based operations
US9489623B1 (en) 2013-10-15 2016-11-08 Brain Corporation Apparatus and methods for backward propagation of errors in a spiking neuron network
US20150142251A1 (en) * 2013-11-21 2015-05-21 International Business Machines Corporation Vehicle control based on colors representative of navigation information
US9626776B2 (en) * 2013-12-20 2017-04-18 Cognex Corporation Apparatus, systems, and methods for processing a height map
US9989967B2 (en) * 2014-03-04 2018-06-05 Cybernet Systems Corporation All weather autonomously driven vehicles
US9533413B2 (en) 2014-03-13 2017-01-03 Brain Corporation Trainable modular robotic apparatus and methods
US9987743B2 (en) 2014-03-13 2018-06-05 Brain Corporation Trainable modular robotic apparatus and methods
US9939253B2 (en) 2014-05-22 2018-04-10 Brain Corporation Apparatus and methods for distance estimation using multiple image sensors
US10194163B2 (en) * 2014-05-22 2019-01-29 Brain Corporation Apparatus and methods for real time estimation of differential motion in live video
US9713982B2 (en) 2014-05-22 2017-07-25 Brain Corporation Apparatus and methods for robotic operation using video imagery
CN106415598B (zh) * 2014-05-27 2020-08-28 罗伯特·博世有限公司 用于车载式相机系统的镜头污染的检测、识别和缓解
US9848112B2 (en) 2014-07-01 2017-12-19 Brain Corporation Optical detection apparatus and methods
US10057593B2 (en) 2014-07-08 2018-08-21 Brain Corporation Apparatus and methods for distance estimation using stereo imagery
US9409644B2 (en) * 2014-07-16 2016-08-09 Ford Global Technologies, Llc Automotive drone deployment system
US10055850B2 (en) 2014-09-19 2018-08-21 Brain Corporation Salient features tracking apparatus and methods using visual initialization
US9881349B1 (en) 2014-10-24 2018-01-30 Gopro, Inc. Apparatus and methods for computerized object identification
EP3971672A1 (en) 2014-12-17 2022-03-23 Husqvarna AB Multi-sensor, autonomous robotic vehicle with mapping capability
EP3234718B1 (en) * 2014-12-17 2018-10-24 Husqvarna AB Robotic vehicle learning site boundary
US9840003B2 (en) * 2015-06-24 2017-12-12 Brain Corporation Apparatus and methods for safe navigation of robotic devices
US10197664B2 (en) 2015-07-20 2019-02-05 Brain Corporation Apparatus and methods for detection of objects using broadband signals
US10034421B2 (en) 2015-07-24 2018-07-31 Irobot Corporation Controlling robotic lawnmowers
US10183667B2 (en) * 2015-09-15 2019-01-22 Deere & Company Human presence detection on a mobile machine
DE102015118767A1 (de) * 2015-11-03 2017-05-04 Claas Selbstfahrende Erntemaschinen Gmbh Umfelddetektionseinrichtung für landwirtschaftliche Arbeitsmaschine
DE102015224553A1 (de) * 2015-12-08 2017-06-08 Robert Bosch Gmbh Verfahren, Computerprogramm, Speichermedium und Elektronische Steuereinheit zum Betreiben eines Fahrzeugs
KR101786237B1 (ko) * 2015-12-09 2017-10-17 현대자동차주식회사 운전자보조시스템용 센서의 고장진단 및 보정을 위한 장치 및 방법
WO2017106874A1 (en) * 2015-12-18 2017-06-22 Intellifarm, Inc. Autonomous integrated farming system
US11612092B1 (en) 2015-12-18 2023-03-28 Realmfive, Inc. Agricultural system having actuatable work tool assemblies
BR102016024930B1 (pt) 2016-01-06 2021-08-24 Cnh Industrial America Llc Sistema de controle para um veículo de reboque e método para controlar um veículo agrícola
US10264431B2 (en) * 2016-02-01 2019-04-16 Caterpillar Inc. Work site perception system
US9817403B2 (en) * 2016-03-31 2017-11-14 Intel Corporation Enabling dynamic sensor discovery in autonomous devices
US20170315515A1 (en) * 2016-05-02 2017-11-02 Caterpillar Inc. System for controlling operation of a machine
US10245730B2 (en) * 2016-05-24 2019-04-02 Asustek Computer Inc. Autonomous mobile robot and control method thereof
WO2018002910A1 (en) 2016-06-28 2018-01-04 Cognata Ltd. Realistic 3d virtual world creation and simulation for training automated driving systems
CN106408589B (zh) * 2016-07-14 2019-03-29 浙江零跑科技有限公司 基于车载俯视相机的车辆运动测量方法
US9976284B2 (en) * 2016-07-18 2018-05-22 Caterpillar Inc. Control system for headlights of a machine
CN107765680B (zh) * 2016-08-15 2021-01-05 深圳市朗驰欣创科技股份有限公司 一种机器人及其转运方法
US20180047177A1 (en) * 2016-08-15 2018-02-15 Raptor Maps, Inc. Systems, devices, and methods for monitoring and assessing characteristics of harvested specialty crops
EP3508048B1 (en) * 2016-08-31 2023-10-18 Positec Power Tools (Suzhou) Co., Ltd Autonomous lawn-mower and method of recognizing an obstacle by an autonomous lawn mower
US10728523B1 (en) * 2017-02-13 2020-07-28 Valmont Industries, Inc. System and method for use of 3D visual sensors on mechanized irrigation machinery
JP6579144B2 (ja) * 2017-03-28 2019-09-25 株式会社Soken 障害物検知装置
US11493348B2 (en) 2017-06-23 2022-11-08 Direct Current Capital LLC Methods for executing autonomous rideshare requests
US10621448B2 (en) 2017-08-02 2020-04-14 Wing Aviation Llc Systems and methods for determining path confidence for unmanned vehicles
US10393528B2 (en) 2017-08-02 2019-08-27 Wing Aviation Llc Systems and methods for navigation path determination for unmanned vehicles
US10545500B2 (en) 2017-08-02 2020-01-28 Wing Aviation Llc Model for determining drop-off spot at delivery location
US11339580B2 (en) 2017-08-22 2022-05-24 Pentair Water Pool And Spa, Inc. Algorithm for a pool cleaner
US10850732B2 (en) * 2017-09-05 2020-12-01 Aptiv Technologies Limited Automated speed control system
KR102521656B1 (ko) 2018-01-03 2023-04-13 삼성전자주식회사 객체를 인식하는 방법 및 장치
EP3521532B1 (en) * 2018-02-04 2021-01-06 Maytronics Ltd. Pool cleaning robot and a method for imaging a pool
US11533593B2 (en) * 2018-05-01 2022-12-20 New York University System method and computer-accessible medium for blockchain-based distributed ledger for analyzing and tracking environmental targets
US11144775B2 (en) * 2018-06-25 2021-10-12 Cnh Industrial Canada, Ltd. System and method for illuminating the field of view of a vision-based sensor mounted on an agricultural machine
CN110660229A (zh) * 2018-06-29 2020-01-07 比亚迪股份有限公司 车速的测量方法、装置及车辆
JP7160606B2 (ja) * 2018-09-10 2022-10-25 株式会社小松製作所 作業機械の制御システム及び方法
US11079725B2 (en) 2019-04-10 2021-08-03 Deere & Company Machine control using real-time model
US11589509B2 (en) 2018-10-26 2023-02-28 Deere & Company Predictive machine characteristic map generation and control system
US11240961B2 (en) 2018-10-26 2022-02-08 Deere & Company Controlling a harvesting machine based on a geo-spatial representation indicating where the harvesting machine is likely to reach capacity
US11467605B2 (en) 2019-04-10 2022-10-11 Deere & Company Zonal machine control
US11957072B2 (en) 2020-02-06 2024-04-16 Deere & Company Pre-emergence weed detection and mitigation system
US11653588B2 (en) 2018-10-26 2023-05-23 Deere & Company Yield map generation and control system
US11178818B2 (en) 2018-10-26 2021-11-23 Deere & Company Harvesting machine control system with fill level processing based on yield data
US12069978B2 (en) 2018-10-26 2024-08-27 Deere & Company Predictive environmental characteristic map generation and control system
US11672203B2 (en) 2018-10-26 2023-06-13 Deere & Company Predictive map generation and control
US11641800B2 (en) 2020-02-06 2023-05-09 Deere & Company Agricultural harvesting machine with pre-emergence weed detection and mitigation system
JP7081444B2 (ja) * 2018-11-01 2022-06-07 トヨタ自動車株式会社 車両制御システム
CN109696846A (zh) * 2018-12-26 2019-04-30 北京百度网讯科技有限公司 一种感知系统的固定装置及其固定方法
US11770988B2 (en) * 2019-03-06 2023-10-03 Cnh Industrial America Llc Adjustable closing system for an agricultural implement
CN109947109B (zh) * 2019-04-02 2022-06-21 北京石头创新科技有限公司 机器人工作区域地图构建方法、装置、机器人和介质
CN110286670A (zh) * 2019-04-09 2019-09-27 丰疆智能科技股份有限公司 多台自动收割机的行驶路径规划系统及其方法
US11778945B2 (en) * 2019-04-10 2023-10-10 Deere & Company Machine control using real-time model
US11234366B2 (en) 2019-04-10 2022-02-01 Deere & Company Image selection for machine control
WO2020218528A1 (ja) * 2019-04-25 2020-10-29 株式会社クボタ 収穫機等の農作業機
US11674288B2 (en) 2019-05-30 2023-06-13 Deere & Company System and method for obscurant mitigation
US11240426B2 (en) * 2019-06-20 2022-02-01 Cilag Gmbh International Pulsed illumination in a hyperspectral, fluorescence, and laser mapping imaging system
US11617541B2 (en) 2019-06-20 2023-04-04 Cilag Gmbh International Optical fiber waveguide in an endoscopic system for fluorescence imaging
US11574089B2 (en) * 2019-06-28 2023-02-07 Zoox, Inc. Synthetic scenario generator based on attributes
US11568100B2 (en) * 2019-06-28 2023-01-31 Zoox, Inc. Synthetic scenario simulator based on events
JP7349277B2 (ja) * 2019-07-10 2023-09-22 ヤンマーパワーテクノロジー株式会社 作業車両用の自動走行システム
EP4290878A3 (en) * 2019-07-23 2024-03-06 R-Go Robotics Ltd Techniques for co-optimization of motion and sensory control
FI20195678A1 (fi) * 2019-08-14 2021-02-15 Ponsse Oyj Menetelmä ja järjestelmä metsäkoneessa
US11814816B2 (en) * 2019-09-11 2023-11-14 Deere & Company Mobile work machine with object detection and machine path visualization
US11755028B2 (en) * 2019-09-11 2023-09-12 Deere & Company Mobile work machine with object detection using vision recognition
CN110703776B (zh) * 2019-09-19 2023-04-18 北京星航机电装备有限公司 一种汽车搬运agv与调度中心的信息交换系统及方法
US20210109523A1 (en) * 2019-10-10 2021-04-15 Waymo Llc Sensor field of view in a self-driving vehicle
US12225846B2 (en) 2020-02-06 2025-02-18 Deere & Company Machine control using a predictive map
US12035648B2 (en) 2020-02-06 2024-07-16 Deere & Company Predictive weed map generation and control system
US12329148B2 (en) 2020-02-06 2025-06-17 Deere & Company Predictive weed map and material application machine control
US12016257B2 (en) 2020-02-19 2024-06-25 Sabanto, Inc. Methods for detecting and clearing debris from planter gauge wheels, closing wheels and seed tubes
US11526721B1 (en) 2020-02-21 2022-12-13 Zoox, Inc. Synthetic scenario generator using distance-biased confidences for sensor data
US11477940B2 (en) 2020-03-26 2022-10-25 Deere & Company Mobile work machine control based on zone parameter modification
US11472416B2 (en) * 2020-04-30 2022-10-18 Deere & Company Multi-dimensional mobile machine path visualization and control system
SE2030214A1 (en) * 2020-06-29 2021-12-30 Epiroc Rock Drills Ab Method and arrangement for a work machine
SE2030215A1 (en) * 2020-06-29 2021-12-30 Epiroc Rock Drills Ab Method and arrangement for a work machine
US12461083B2 (en) 2020-08-03 2025-11-04 Sabanto, Inc. Methods for improved agricultural procedures
US11849671B2 (en) 2020-10-09 2023-12-26 Deere & Company Crop state map generation and control system
US11871697B2 (en) 2020-10-09 2024-01-16 Deere & Company Crop moisture map generation and control system
US11474523B2 (en) 2020-10-09 2022-10-18 Deere & Company Machine control using a predictive speed map
US11635765B2 (en) 2020-10-09 2023-04-25 Deere & Company Crop state map generation and control system
US11592822B2 (en) 2020-10-09 2023-02-28 Deere & Company Machine control using a predictive map
US11874669B2 (en) 2020-10-09 2024-01-16 Deere & Company Map generation and control system
US11825768B2 (en) 2020-10-09 2023-11-28 Deere & Company Machine control using a predictive map
US11849672B2 (en) 2020-10-09 2023-12-26 Deere & Company Machine control using a predictive map
US20220110258A1 (en) 2020-10-09 2022-04-14 Deere & Company Map generation and control system
US12013245B2 (en) 2020-10-09 2024-06-18 Deere & Company Predictive map generation and control system
US11889788B2 (en) 2020-10-09 2024-02-06 Deere & Company Predictive biomass map generation and control
US11844311B2 (en) 2020-10-09 2023-12-19 Deere & Company Machine control using a predictive map
US11864483B2 (en) 2020-10-09 2024-01-09 Deere & Company Predictive map generation and control system
US12419220B2 (en) 2020-10-09 2025-09-23 Deere & Company Predictive map generation and control system
US12550802B2 (en) 2020-10-08 2026-02-17 Deere & Company Predictive machine characteristic map generation and control system
US11895948B2 (en) 2020-10-09 2024-02-13 Deere & Company Predictive map generation and control based on soil properties
US11675354B2 (en) 2020-10-09 2023-06-13 Deere & Company Machine control using a predictive map
US11845449B2 (en) 2020-10-09 2023-12-19 Deere & Company Map generation and control system
US11711995B2 (en) 2020-10-09 2023-08-01 Deere & Company Machine control using a predictive map
US12422847B2 (en) 2020-10-09 2025-09-23 Deere & Company Predictive agricultural model and map generation
US11650587B2 (en) 2020-10-09 2023-05-16 Deere & Company Predictive power map generation and control system
US11983009B2 (en) 2020-10-09 2024-05-14 Deere & Company Map generation and control system
US11727680B2 (en) 2020-10-09 2023-08-15 Deere & Company Predictive map generation based on seeding characteristics and control
US12178158B2 (en) 2020-10-09 2024-12-31 Deere & Company Predictive map generation and control system for an agricultural work machine
US12386354B2 (en) 2020-10-09 2025-08-12 Deere & Company Predictive power map generation and control system
US11946747B2 (en) 2020-10-09 2024-04-02 Deere & Company Crop constituent map generation and control system
US20220110238A1 (en) 2020-10-09 2022-04-14 Deere & Company Machine control using a predictive map
US12069986B2 (en) 2020-10-09 2024-08-27 Deere & Company Map generation and control system
US11927459B2 (en) 2020-10-09 2024-03-12 Deere & Company Machine control using a predictive map
US11889787B2 (en) 2020-10-09 2024-02-06 Deere & Company Predictive speed map generation and control system
US12250905B2 (en) 2020-10-09 2025-03-18 Deere & Company Machine control using a predictive map
JP7489287B2 (ja) * 2020-10-12 2024-05-23 ヤンマーホールディングス株式会社 建設機械
US12127500B2 (en) 2021-01-27 2024-10-29 Deere & Company Machine control using a map with regime zones
US12296694B2 (en) 2021-03-10 2025-05-13 Techtronic Cordless Gp Lawnmowers
US12229886B2 (en) 2021-10-01 2025-02-18 Deere & Company Historical crop state model, predictive crop state map generation and control system
US12443180B2 (en) 2021-11-10 2025-10-14 Techtronic Cordless Gp Robotic lawn mowers
US12310286B2 (en) 2021-12-14 2025-05-27 Deere & Company Crop constituent sensing
US12302791B2 (en) 2021-12-20 2025-05-20 Deere & Company Crop constituents, predictive mapping, and agricultural harvester control
US12245549B2 (en) 2022-01-11 2025-03-11 Deere & Company Predictive response map generation and control system
US12520759B2 (en) 2022-01-26 2026-01-13 Deere & Company Systems and methods for predicting material dynamics
US12082531B2 (en) 2022-01-26 2024-09-10 Deere & Company Systems and methods for predicting material dynamics
AU2023200381A1 (en) 2022-01-31 2023-08-17 Techtronic Cordless Gp Robotic garden tool
US12295288B2 (en) 2022-04-05 2025-05-13 Deere &Company Predictive machine setting map generation and control system
US12284934B2 (en) 2022-04-08 2025-04-29 Deere & Company Systems and methods for predictive tractive characteristics and control
US12358493B2 (en) 2022-04-08 2025-07-15 Deere & Company Systems and methods for predictive power requirements and control
US12298767B2 (en) 2022-04-08 2025-05-13 Deere & Company Predictive material consumption map and control
US12582035B2 (en) 2022-04-08 2026-03-24 Deere & Company Systems and methods for predictive power requirements and control
US12058951B2 (en) 2022-04-08 2024-08-13 Deere & Company Predictive nutrient map and control
EP4270138A1 (en) 2022-04-28 2023-11-01 Techtronic Cordless GP Creation of a virtual boundary for a robotic garden tool
US12472611B2 (en) 2022-05-31 2025-11-18 Techtronic Cordless Gp Peg driver
EP4310621B1 (en) 2022-07-19 2025-02-12 Techtronic Cordless GP Display for controlling robotic tool
AU2023206123A1 (en) 2022-07-29 2024-02-15 Techtronic Cordless Gp Generation of a cryptography key for a robotic garden tool
JP2024092482A (ja) * 2022-12-26 2024-07-08 井関農機株式会社 作業車両
US12310285B2 (en) 2023-02-27 2025-05-27 Deere & Company Agricultural operation evaluation system and method

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4779095A (en) * 1986-10-28 1988-10-18 H & G Systems, Inc. Image change detection system
US5040116A (en) * 1988-09-06 1991-08-13 Transitions Research Corporation Visual navigation and obstacle avoidance structured light system
US5787385A (en) 1996-02-28 1998-07-28 Sun Microsystems, Inc. Computer controlled laser fog tracking
DE59809476D1 (de) * 1997-11-03 2003-10-09 Volkswagen Ag Autonomes Fahrzeug und Verfahren zur Steuerung eines autonomen Fahrzeuges
US6563432B1 (en) 2001-01-12 2003-05-13 Safegate International Ab Aircraft docking system and method with automatic checking of apron and detection of fog or snow
US20030076981A1 (en) * 2001-10-18 2003-04-24 Smith Gregory Hugh Method for operating a pre-crash sensing system in a vehicle having a counter-measure system
DE10301468B4 (de) * 2002-01-18 2010-08-05 Honda Giken Kogyo K.K. Vorrichtung zur Beobachtung der Umgebung eines Fahrzeugs
US7164118B2 (en) 2004-10-29 2007-01-16 Deere & Company Method and system for obstacle detection
JP4130435B2 (ja) * 2004-11-30 2008-08-06 本田技研工業株式会社 撮像装置の異常検知装置
JP2006259895A (ja) * 2005-03-15 2006-09-28 Omron Corp 移動体の発進制御装置
US7310190B2 (en) * 2006-02-09 2007-12-18 Delphi Technologies, Inc. Vehicle imaging system with windshield condition determination
JP4730267B2 (ja) * 2006-07-04 2011-07-20 株式会社デンソー 車両用視界状況判定装置
US7865285B2 (en) * 2006-12-27 2011-01-04 Caterpillar Inc Machine control system and method
US8478493B2 (en) 2008-09-11 2013-07-02 Deere & Company High integrity perception program
US8818567B2 (en) 2008-09-11 2014-08-26 Deere & Company High integrity perception for machine localization and safeguarding
US9188980B2 (en) 2008-09-11 2015-11-17 Deere & Company Vehicle with high integrity perception system
US8437901B2 (en) 2008-10-15 2013-05-07 Deere & Company High integrity coordination for multiple off-road vehicles
US8639408B2 (en) 2008-10-15 2014-01-28 Deere & Company High integrity coordination system for multiple off-road vehicles

Also Published As

Publication number Publication date
RU2011139265A (ru) 2013-04-10
US9043129B2 (en) 2015-05-26
AU2011232739B2 (en) 2015-07-23
AU2011232739A1 (en) 2012-04-19
US20120083982A1 (en) 2012-04-05
BRPI1106214B1 (pt) 2020-10-20

Similar Documents

Publication Publication Date Title
US9043129B2 (en) Method for governing a speed of an autonomous vehicle
US8996171B2 (en) Pheromone for robotic boundary
EP2169503B1 (en) Multi-vehicle high intensity perception
US9274524B2 (en) Method for machine coordination which maintains line-of-site contact
US20110166705A1 (en) Autonomous cutting element for sculpting grass
EP2169498B1 (en) Vehicle with high integrity perception system
US8478493B2 (en) High integrity perception program
US8818567B2 (en) High integrity perception for machine localization and safeguarding
US8437901B2 (en) High integrity coordination for multiple off-road vehicles
US8639408B2 (en) High integrity coordination system for multiple off-road vehicles
RU2652482C2 (ru) Измерительная система для измерений в отношении дерева
US8576056B2 (en) Vehicle guidance system
US20210364632A1 (en) Methods and Systems for Map Creation and Calibration of Localization Equipment in an Outdoor Environment
JP2019185213A (ja) 自律移動ロボット及びその制御方法
EP3953782B1 (en) Autonomous machine navigation in lowlight conditions
EP4016112A2 (fr) Procédé de suivi de cultures agricoles
CN119414874A (zh) 一种基于激光雷达定位的无人机室内巡检方法
Lee et al. Designing a Perception System for Safe Autonomous Operations in Agriculture

Legal Events

Date Code Title Description
B03A Publication of a patent application or of a certificate of addition of invention [chapter 3.1 patent gazette]
B06F Objections, documents and/or translations needed after an examination request according [chapter 6.6 patent gazette]
B06U Preliminary requirement: requests with searches performed by other patent offices: procedure suspended [chapter 6.21 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 30/09/2011, OBSERVADAS AS CONDICOES LEGAIS.