Maqueen Plus V3 x UNIHIKER K10 Lição 6: Robô de Navegação em Vias Complexas
Como os carros autônomos navegam com precisão pelas complexas redes viárias das ruas movimentadas das cidades? Como os robôs logísticos encontram rotas ideais em armazéns labirínticos? Esses desafios aparentemente complexos podem ser explorados e resolvidos com nosso carrinho UNIHIKER K10!
Neste projeto, construiremos um robô de navegação em rede viária. Ele não apenas identificará com precisão cruzamentos em T e cruzamentos convencionais, mas também seguirá trajetos pré-definidos, executando manobras em interseções complexas. Mais do que um projeto de programação desafiador, esta é uma etapa fundamental rumo às tecnologias inteligentes do futuro no transporte.

Objetivo da Tarefa
Utilizar os algoritmos integrados do UNIHIKER K10 para detectar cruzamentos em T e cruzamentos convencionais, permitindo que o veículo identifique com precisão as interseções em redes viárias complexas e execute as manobras especificadas, seguindo trajetos pré-definidos.

Conhecimentos Fundamentais
1. Dominar o uso de algoritmos integrados para reconhecer interseções complexas (cruzamentos convencionais e em T)
2. Aprender os métodos de detecção de interseções e controle de direção
3. Compreender o conceito de "rede viária" e o papel do planejamento de rotas no futuro dos transportes
Conhecimentos-Chave
Lista de Materiais
Hardware necessário:

Software necessário: Software de programação Mind+ (versão V1.8.1 RC1.0 ou superior) ×1
Link para download: https://mindplus.cc/

Prática
Após dominar o controle básico de movimento do carrinho, avançaremos para cenários mais complexos. As duas tarefas a seguir guiarão você na identificação de cruzamentos e navegação com planejamento de rotas, aprimorando sua aplicação integrada das capacidades de percepção e tomada de decisão do veículo.
Tarefa 1: Identificação de Cruzamentos Complexos
Com o carrinho em modo de consulta, ele detectará continuamente o estado do cruzamento atual e fornecerá feedback em tempo real. As informações identificadas serão exibidas na tela do UNIHIKER K10.
Tarefa 2: Trajeto Pré-definido
Com base em um mapa de rotas predeterminado, planeje antecipadamente o percurso do carrinho e programe-o para seguir rigorosamente o caminho estabelecido.
Tarefa 1: Identificação de Cruzamentos Complexos
1. Conexão de Hardware
Conecte o carrinho montado ao computador utilizando um cabo USB 3.0 para Type-C. Observação: A extremidade Type-C deve ser conectada ao UNIHIKER K10.UNIHIKER K10.

2. Preparação do Software
Abra o Mind+ e complete os preparativos do software conforme ilustrado abaixo.

3. Programação
(1) Configuração Inicial
Para utilizar a função integrada de seguimento de linha do Maqueen Plus V3, execute as seguintes operações quando o "UNIHIKER K10 na partida":
1) → Utilize o comando "Inicialização do sistema" para garantir o funcionamento adequado de todos os módulos;
2) → Utilize o comando "Configurar velocidade 1 para seguir linha" para definir o carrinho na velocidade mínima de seguimento;
3) → Utilize o comando "Seguir linha Ativar" para ativar a função e permitir que o carrinho siga a linha preta.

(2) Identificação de Cruzamentos Complexos
Dentro do comando "Repita sempre", utilize a instrução condicional "Se...Então" para determinar o tipo de cruzamento detectado pelo carrinho.
Observação: No modo de consulta, durante o seguimento de linha, o carrinho emite diferentes valores numéricos ao identificar tipos distintos de cruzamentos:
1: Cruzamento (quatro vias)
2: Cruzamento em T
3: Curva à esquerda com retorno
4: Curva à direita com retorno
Quando o comando "Detecção de cruzamento" retornar valor 1, utilize os comandos "Cache exibir texto" e "Mostrar conteúdo em cache" para mostrar a mensagem "Cruzamento detectado" no display do UNIHIKER K10.

Da mesma forma, quando o comando "Detecção de cruzamento" retornar valor 2 (indicando um cruzamento em T), exiba a mensagem "Cruzamento em T detectado" no display do UNIHIKER K10.

Para cruzamentos do tipo curva à esquerda com retorno e curva à direita com retorno, aplique a mesma lógica condicional e exibição de mensagens correspondentes. O programa completo segue abaixo:

4. Execução do Programa
Antes de executar o programa, certifique-se que o UNIHIKER K10 está corretamente conectado ao computador via cabo USB. Após verificação, clique no botão "Executar" no software. Posicione o carrinho no mapa de seguimento de linha, ligue a alimentação e o carrinho iniciará o seguimento. Quando cruzamentos complexos forem detectados, a tela do UNIHIKER K10 exibirá o nome do tipo de cruzamento correspondente.

Tarefa 2: Rota de Navegação Especificada
1. Programação
(1) Planejamento de Rota
Antes de iniciar a programação, planejamos uma rota no mapa com 4 tipos diferentes de interseções. O veículo percorrerá do ponto de partida ao destino, passando por: duas interseções de curva à esquerda e reta, uma interseção de curva à direita e reta, duas interseções em cruz, uma interseção em T, com cada interseção claramente marcada com a respectiva direção de viragem. Conforme mostrado abaixo:

(2) Configuração Inicial
1) → Utilize o comando "Inicialização do sistema" para garantir o funcionamento adequado de todos os módulos;
2) → Utilize o comando "Configurar velocidade 1 para seguir linha" para definir a velocidade mínima de seguimento;
3) → Utilize o comando "Seguir linha Ativar" para ativar a função de seguimento, permitindo que o veículo siga a linha preta.

(3) Rota de Navegação Especificada
1)Cruzamentos em T (Interseções 1, 5 e 6)
No percurso ilustrado, o veículo encontra três cruzamentos em T, cada um com uma operação de viragem diferente. Para o primeiro cruzamento em T, utilize o comando "Definir modo Virar à esquerda na bifurcação em T à frente" no "UNIHIKER K10 na partida" para executar a manobra de viragem à esquerda.

No segundo encontro com cruzamento em T, não será possível usar comandos diretos de controle. Dentro do comando "Repita sempre", implemente a lógica condicional usando a instrução "Se...Então" para avaliar o comando "Detecção de cruzamento".

Crie uma nova variável "flag_T" para registrar o número de passagens por cruzamentos em T. Quando o comando "Detecção de cruzamento" retornar valor 1 (condição verdadeira), incremente esta variável usando o comando "Alterar por".

Quando a variável flag_T for igual a 1, indica a segunda passagem do veículo por um cruzamento em T. Utilize o comando "Definir modo Virar à direita na bifurcação em T à frente" para executar a manobra correspondente.

Quando a variável flag_T atingir o valor 3 (terceiro cruzamento em T), utilize o comando "Definir modo Parar seguimento de linha na bifurcação em T à frente" para interromper temporariamente a operação de seguimento.

2)Detecção de Cruzamentos (Interseções 2 e 3)
De modo análogo, para o primeiro cruzamento encontrado, utilize o comando "Definir modo Virar à esquerda no cruzamento à frente" no "UNIHIKER K10 na partida" para executar a manobra de viragem.

Para o segundo cruzamento, dentro do programa de "Repita sempre", avalie o comando "Detecção de cruzamento". Quando o comando "Detecção de cruzamento" retornar o valor 1, utilize o comando "Definir modo [RUNMODE] no cruzamento à frente" para manter a trajetória retilínea.

3)Interseção com Curva à Esquerda e Retorno (Interseção 5)
Este tipo de cruzamento ocorre apenas uma vez. No "UNIHIKER K10 na partida", utilize o comando "Definir modo Seguir em frente no cruzamento à frente" para manter o veículo em trajetória retilínea.

O programa completo segue abaixo:

2. Execução do Programa
Antes de executar o programa, verifique se o UNIHIKER K10 está corretamente conectado ao computador via cabo USB. Após confirmação, clique no botão "Executar" no software. Posicione o veículo no mapa de seguimento de linha, ligue a alimentação e o veículo iniciará o seguimento, percorrendo o trajeto pré-definido.

3. Experimente
Na pasta de materiais há um mapa de rotas em formato de imagem. Você consegue exibir esta imagem na tela da placa UNIHIKER K10? Vamos testar!
Dica: Basta usar o comando "Armazenar em cache a imagem local"!

Conhecimento Básico
1. O que é "Rede Viária"
Rede viária refere-se a um sistema interconectado de vias que formam uma malha de distribuição em determinada área. Em nosso cotidiano, seja em ruas urbanas, campi universitários, fábricas ou armazéns, todos podem ser considerados como uma rede composta por vias e cruzamentos - o que chamamos de "rede viária".

1. Definição e Composição da Rede Viária
A rede viária é um sistema de vias interconectadas em diversos níveis que formam uma malha rodoviária. Em diferentes regiões, a rede pode ser composta por diversos tipos de vias como rodovias, vias urbanas e estradas rurais.
2. Classificação da Rede Viária
Rede rodoviária: Composta principalmente por estradas de diferentes classes, conectando cidades, zonas rurais e principais nós de transporte, sendo o principal componente do sistema regional.
Rede viária urbana: Malha formada por diversas vias dentro do perímetro urbano, constituindo a infraestrutura básica do tráfego citadino.
3. Funções e Importância da Rede Viária
A rede viária serve como esqueleto do sistema de transportes urbanos, fornecendo rotas para diversos meios de locomoção. Ela garante deslocamentos seguros, rápidos, econômicos e confortáveis. O projeto e otimização da rede são fundamentais para reduzir congestionamentos e melhorar a eficiência do tráfego.
2. Qual o papel do planejamento de rotas no transporte futuro?
Imagine cidades futuras onde veículos se movem autonomamente por sistemas inteligentes, sem intervenção humana. Neste contexto, o planejamento de rotas atua como o "cérebro" dos veículos, determinando trajetórias ideais através das complexas redes viárias.

As funções do planejamento de rotas podem ser resumidas nos seguintes pontos:
1. Economia de tempo e redução de congestionamentos
Veículos autônomos selecionam as rotas mais rápidas baseadas em condições de tráfego, evitando congestionamentos para chegar mais rápido ao destino.
2. Garantia de segurança e prevenção de acidentes
O sistema detecta proativamente obstáculos e perigos, ajustando automaticamente a rota para evitar colisões.
3. Melhoria da eficiência geral do tráfego
Com múltiplos veículos planejando rotas inteligentemente, o fluxo urbano torna-se mais fluido com menos tempo de espera.
4. Entrega autônoma confiável
Robôs de entrega e veículos autônomos utilizam planejamento de rotas para navegar precisamente em cidades e armazéns, otimizando recursos humanos.
Em essência, o planejamento de rotas funciona como um mapa de navegação invisível, permitindo que veículos e robôs futuros "enxerguem" caminhos inteligentemente - garantindo chegadas seguras e rápidas. Os sistemas de transporte inteligente do futuro dependem fundamentalmente deste "cérebro inteligente".
Desafie-se
Imagine colocar nosso carrinho em um labirinto complexo - ele conseguiria usar sua "inteligência" para encontrar a saída? Isso não parece fascinante e desafiador? Agora, vamos explorar como projetar um robô solucionador de labirintos capaz de reconhecer caminhos automaticamente, evitar obstáculos e alcançar o destino com sucesso!

