BRPI1106214B1 - método para ajustar uma velocidade de uma máquina móvel - Google Patents
método para ajustar uma velocidade de uma máquina móvel Download PDFInfo
- Publication number
- BRPI1106214B1 BRPI1106214B1 BRPI1106214-2A BRPI1106214A BRPI1106214B1 BR PI1106214 B1 BRPI1106214 B1 BR PI1106214B1 BR PI1106214 A BRPI1106214 A BR PI1106214A BR PI1106214 B1 BRPI1106214 B1 BR PI1106214B1
- Authority
- BR
- Brazil
- Prior art keywords
- machine
- data
- mobile
- sensor
- machine controller
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0223—Control 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
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/60—Intended control result
- G05D1/65—Following a desired speed profile
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0231—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
- G05D1/0238—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors
- G05D1/024—Control 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
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0231—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
- G05D1/0242—Control 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
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0231—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
- G05D1/0246—Control 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
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0257—Control of position or course in two dimensions specially adapted to land vehicles using a radar
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0268—Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
- G05D1/0274—Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0276—Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle
- G05D1/0278—Control 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
[0001] 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.
[0002] 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 tornar impossível para que os sistemas de percepção façam observações até seu alcance nominal máximo.
[0003] 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.
[0004] 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.
[0005] 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.
[0006] Modalidades ilustrativas da presente invenção provêem 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
[0007] 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.
[0008] 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.
[0009] 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 uma 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.
[00010] 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 muita pouca atenuação de energia. Um obscurante é qualquer coisa que torna 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 se supõe que um sensor pode perceber e coletar dados precisamente.
[00011] Entretanto, tipicamente, sensores de radar são sensores de resolução angular muito baixa que provêem dados mínimos, o que torna 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.
[00012] 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 retorna a um detector. A maior parte dos leitores de laser mede apenas o primeiro pulso que retorna 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 retorno for detectado para medir múltiplos pulsos de retorno. 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 retorno mensurável seja detectada.
[00013] 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.
[00014] 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.
[00015] 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.
[00016] 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.
[00017] 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 claras 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.
[00018] 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. Alternativamente, 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.
[00019] 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 retorne ao detector.
[00020] 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.
[00021] 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.
[00022] 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.
[00023] 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.
[00024] 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 se pretende 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.
[00025] 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.
[00026] 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.
[00027] 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.
[00028] 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.
[00029] No exemplo representado, o sistema de processamento de dados em 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 outros 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).
[00030] 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.
[00031] 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 armazenamento, galpões de equipamento e estacionamentos. Adicionalmente, a área 116 pode ser contígua ou não contígua.
[00032] 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.
[00033] 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 formas 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.
[00034] 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.
[00035] 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.
[00036] 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.
[00037] 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.
[00038] 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.
[00039] 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.
[00040] 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.
[00041] 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.
[00042] Alternativamente, 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.
[00043] 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.
[00044] Não se pretende 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.
[00045] 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.
[00046] 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.
[00047] 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 se pretende 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.
[00048] 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.
[00049] 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.
[00050] 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.
[00051] 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.
[00052] 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.
[00053] 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 em 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.
[00054] 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.
[00055] 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.
[00056] 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.
[00057] 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.
[00058] 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.
[00059] 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.
[00060] 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.
[00061] 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.
[00062] 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.
[00063] 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.
[00064] 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.
[00065] 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 retornados 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.
[00066] Não se pretende 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.
[00067] 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.
[00068] 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.
[00069] 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.
[00070] 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.
[00071] 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.
[00072] 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 retorno, uma diferença em valores da frequência do sinal de retorno ou uma diferença na posição de um sinal de retorno 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ções matemáticas, função lógica ou algoritmo adequados usando qualquer número de valores.
[00073] 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.
[00074] 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.
[00075] 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.
[00076] 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.
[00077] 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 podem 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.
[00078] 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.
[00079] 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.
[00080] 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.
[00081] 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.
[00082] 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.
[00083] 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.
[00084] 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.
[00085] 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.
[00086] 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 ficai' 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.
[00087] 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.
[00088] 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.
[00089] 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.
[00090] 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.
[00091] 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.
[00092] 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.
[00093] 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.
[00094] 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.
[00095] 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.
[00096] 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.
[00097] 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).
[00098] 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.
[00099] 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 retorna 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.
[000100] 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 torne 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.
[000101] 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 Gradient, 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.
[000102] 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.
[000103] 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 Arnon, Optical wireless communication through fog in the presence of pointing errors, APPLIED OPTICS, Vol. 42, N° 24, 2003, pp. 4946-4954, que é aqui incorporado pela referência.
[000104] 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 retorna para a etapa 802.
[000105] Retornando 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.
[000106] 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 retorna para a etapa 802.
[000107] 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.
[000108] 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.
[000109] 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).
[000110] 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 retorna 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.
[000111] 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 retorna para a etapa 902.
[000112] 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.
[000113] 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.
[000114] 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.
[000115] 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.
[000116] 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 retorna 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.
[000117] 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 retorna para a etapa 1002.
[000118] 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 se percebe 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 se percebe 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.
[000119] A descrição das diferentes modalidades vantajosas foi apresentada com propósitos de ilustração e descrição, e não se pretende 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 (14)
1. Método para ajustar uma velocidade de uma máquina (110, 112, 114) móvel com base em um obscurante, o método compreende: gerar, a partir um primeiro sensor (402-424), através de um controlador da máquina (302), dados atuais do sensor para um local; e comparar, através do controlador da máquina (302), os dados atuais do sensor para o local com os dados previamente gerados do sensor para o local; caracterizado pelo fato de que: determinar, com base na etapa de comparação, através do controlador da máquina (302), uma descontinuidade nos dados do sensor para o local indicando uma presença de um objeto; responsivo à etapa de determinação de descontinuidade nos dados do sensor para o local, o controlador da máquina (302) utiliza um segundo tipo de sensor (402-424) para coletar dados de imagem do local; 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 em que a pontuação de borrão que não representa movimento é uma quantidade de borrão de pelo menos uma borda do objeto detectado nos dados de imagem, e em que o obscurante é determinado que existe se a pontuação de borrão que não representa movimento está acima de um valor limite; e ajustar, pelo controlador da máquina (302), a velocidade da máquina móvel (110, 112, 114) com base em uma densidade ótica do obscurante.
2. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que compreende adicionalmente: determinar, pelo controlador da máquina (302), o local em um ambiente operacional da máquina móvel (110, 112, 114) em que existe a descontinuidade entre os dados atualmente gerados e os dados previamente gerados para o ambiente operacional; e selecionar, pelo controlador da máquina (302), 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.
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 (302), se o ambiente operacional da máquina móvel (110, 112, 114) inclui um obstáculo; determinar, pelo controlador da máquina (302), um tipo do obstáculo e a distância até o obstáculo usando um sistema sensor (310) e uma base de conhecimento (322) associados com a máquina móvel (110, 112, 114); e iniciar, pelo controlador da máquina (302), uma ação para a máquina móvel (110, 112, 114) 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 terceiro sensor (402-424) associado com a máquina móvel (110, 112, 114), pulsos em um ambiente operacional ao redor da máquina móvel (110, 112, 114); receber, pelo terceiro 1 (402-424), reflexos dos pulsos a partir de objetos no ambiente operacional; gerar, pelo controlador da máquina (302), dados atuais para o ambiente operacional com base nos reflexos dos pulsos; comparar, pelo controlador da máquina (302), os dados atuais com os dados previamente gerados para o ambiente operacional; e determinar, pelo controlador da máquina (302), 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; e em que a densidade ótica do obscurante é uma razão da energia recebida no segundo tipo de sensor (402-424) em relação à energia transmitida a partir de um ponto de origem.
6. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que o segundo tipo de sensor (402-424) é uma câmera de vídeo (404, 406).
7. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que o controlador da máquina (302) ajusta a velocidade da máquina móvel (110, 112, 114) pela diminuição de uma velocidade máxima permitida da máquina móvel (110, 112, 114).
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 (110, 112, 114) é 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 (102).
10. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que a máquina móvel (110, 112, 114) é 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 (302) fica localizado na máquina móvel (110, 112, 114).
12. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que o controlador da máquina (302) fica localizado em um dispositivo servidor remoto (106).
13. Método, de acordo com a reivindicação 4, caracterizado pelo fato de que o terceiro tipo de sensor (402-424) é uma câmera de vídeo (404, 406).
14. Método, de acordo com a reivindicação 13, caracterizado pelo fato de que compreende ainda associar pontos de dados de imagem mapeados de dados de imagem previamente coletados para pontos de dados correspondentes nos dados do sensor atualmente gerados.
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 BRPI1106214A2 (pt) | 2015-09-01 |
| BRPI1106214B1 true 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)
| 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)
| 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 |
-
2010
- 2010-10-05 US US12/898,157 patent/US9043129B2/en active Active
-
2011
- 2011-09-26 RU RU2011139265/11A patent/RU2011139265A/ru not_active Application Discontinuation
- 2011-09-30 BR BRPI1106214-2A patent/BRPI1106214B1/pt active IP Right Grant
- 2011-10-04 AU AU2011232739A patent/AU2011232739B2/en active Active
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 |
| BRPI1106214A2 (pt) | 2015-09-01 |
| US20120083982A1 (en) | 2012-04-05 |
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 | |
| US11856883B2 (en) | Moisture and vegetative health mapping | |
| EP2169498B1 (en) | Vehicle with high integrity perception system | |
| US8478493B2 (en) | High integrity perception program | |
| US8437901B2 (en) | High integrity coordination for multiple off-road vehicles | |
| US8818567B2 (en) | High integrity perception for machine localization and safeguarding | |
| CN109459734B (zh) | 一种激光雷达定位效果评估方法、装置、设备及存储介质 | |
| US8639408B2 (en) | High integrity coordination system for multiple off-road vehicles | |
| US20110166705A1 (en) | Autonomous cutting element for sculpting grass | |
| JP2019185213A (ja) | 自律移動ロボット及びその制御方法 | |
| EP3953782B1 (en) | Autonomous machine navigation in lowlight conditions | |
| EP4278320A1 (en) | Systems and methods for monitoring lidar sensor health | |
| CN114415203A (zh) | 一种结合北斗定位和无人机雷达的边坡断面监测预警系统 | |
| CN113625764B (zh) | 基于边界驱动的无人机自主探索方法、导航系统及无人机 | |
| EP4016112A2 (fr) | Procédé de suivi de cultures agricoles | |
| CN119414874A (zh) | 一种基于激光雷达定位的无人机室内巡检方法 |
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. |