Sumo... de robot! 🤖🤼

Para os mais especializados em mecânica e electrónica em LEGO.
Responder
Avatar do Utilizador
AVCampos
Sócio
Sócio
Mensagens: 13699
Registado: 27 fev 2007, 19:26
Localização: Barreiro
Contacto:

Sumo... de robot! 🤖🤼

Mensagem por AVCampos »

No Skærbæk Fan Weekend 2019 houve uma competição de Sumo robótico (documentada aqui), em que cada concorrente previamente desenhou, construiu e programou o seu robot, e depois "amandou-o" contra os dos outros concorrentes. :expectation:

Para o caso de virmos a fazer uma coisa semelhante nos eventos da PLUG, proponho estas regras, adaptadas das que lá se usaram, e que poderemos ir modificando à medida que virmos que é necessário:

O objectivo:
  1. Construir e programar um robot que empurre outro robot para fora de um ringue ou o impeça de competir.
O ringue:
  1. É uma área circular, com um anel exterior de uma cor contrastante com a do interior.
  2. A sua área de combate fica elevada a alguma distância do chão ou outra superfície em que esteja assente.
O robot:
  1. Define-se como "robot" um robot que usa um microcontrolador LEGO e é autónomo.
  2. No início da ronda, o robot deve medir no máximo 15.2 cm x 15.2 cm (19 x 19 módulos) de comprimento e largura.
  3. O robot deve ser construído apenas com peças LEGO. Isto inclui microcontroladores (RCX, NXT, EV3 ou outros), cabos, cordas e elásticos. Não há limite ao número de peças, sensores ou microcontroladores. Pilhas são a excepção a esta regra.
  4. O robot não pode pesar mais do que 1 Kg (pilhas incluídas) aquando do início da ronda.
  5. O robot não pode largar peças intencionalmente nem disparar projécteis durante o combate.
  6. O robot pode transformar-se, desde que no início da ronda ele se mantenha dentro das dimensões máximas estipuladas anteriormente.
  7. O robot é sempre um único robot; não pode separar-se em vários.
O programa:
  1. Qualquer linguagem de programação é permitida.
  2. O programa é completamente autónomo, sem quaisquer controlo externo, como por exemplo via Bluetooth, Wi-Fi ou cabo.
  3. O programa deve permitir ao robot manter-se dentro do ringue por ele próprio por um período indefinido de tempo.
  4. O programa deve estar contido no microcontrolador e não ser transmitido por "streaming" de outro dispositivo.
A partida:
  1. Uma partida consiste em 3 rondas. O vencedor do maior número de rondas é o vencedor da partida.
  2. Cada ronda tem a duração de 2 minutos e será reiniciada se não houver vencedor ao fim desse tempo. Robots parados ou presos um ao outro levarão ao reinício da ronda.
  3. Dependendo do número de participantes, cada robot competirá contra cada um dos outros ou organizar-se-á um campeonato com final, meias-finais, quartos de final e assim sucessivamente.
O início da ronda:
  1. Os robots começam lado a lado, centrados com o centro do ringue, e orientados em direcções opostas.
  2. A activação do robot pode ser feita de qualquer forma que a sua programação permita, desde que o seu comportamento depois disto seja autónomo.
  3. Cada robot deve esperar 5 segundos antes de começar a mover-se.
  4. Cada robot deve tocar a borda do ringue antes de tentar deslocar-se em direcção ao adversário.
Um robot perde a ronda por qualquer destes motivos:
  1. Qualquer parte dele tocar no chão fora do ringue.
  2. Ficar orientado de tal forma que fique impedido de continuar a lutar.
  3. Tiver perdido pelo menos 1/4 da sua massa.
  4. Largar intencionalmente peças (desqualificação).
  5. Tocar no adversário antes de ter tocado pelo uma vez na borda do ringue. Se isto acontecer, a ronda reinicia-se; se acontecer novamente, o robot é desqualificado.
A ronda será reiniciada por qualquer destes motivos:
  1. Se os robots ficarem presos um no outro e não se puderem mover.
  2. Se os robots ficarem presos um no outro e ficarem a mover-se em círculos ou noutro padrão sem vencedor claro.
  3. Se ao fim de 2 minutos de ronda não houver vencedor.
Avatar do Utilizador
AVCampos
Sócio
Sócio
Mensagens: 13699
Registado: 27 fev 2007, 19:26
Localização: Barreiro
Contacto:

Re: Sumo... de robot! 🤖🤼

Mensagem por AVCampos »

Versão tl;dr... ;D
  • Construir e programar um robot.
  • O robot tem de imobilizar o adversário ou empurrá-lo para fora do ringue.
  • O robot não pode medir mais que 19x19 studs de área, nem pesar mais que 1 Kg.
  • No início de cada ronda, o robot tem de esperar 5 segundos antes de começar a andar, e tocar na borda do ringue antes de tocar no adversário.
Avatar do Utilizador
CyberX
Sócio
Sócio
Mensagens: 4341
Registado: 10 mar 2014, 20:09
Localização: Mira Sintra
Contacto:

Re: Sumo... de robot! 🤖🤼

Mensagem por CyberX »

num espaço tão pequeno como é que no início da ronda asseguras que o teu robot se dirige para a borda do ringue sem tocar no adversário?
Jorge Pereira
«De génio, criança e louco... porquê só 1 pouco?»
Avatar do Utilizador
AVCampos
Sócio
Sócio
Mensagens: 13699
Registado: 27 fev 2007, 19:26
Localização: Barreiro
Contacto:

Re: Sumo... de robot! 🤖🤼

Mensagem por AVCampos »

Dadas as orientações iniciais deles, se ambos seguirem em frente quando o combate começa tocam garantidamente na borda antes de um no outro.
Avatar do Utilizador
CyberX
Sócio
Sócio
Mensagens: 4341
Registado: 10 mar 2014, 20:09
Localização: Mira Sintra
Contacto:

Re: Sumo... de robot! 🤖🤼

Mensagem por CyberX »

escapou-me essa parte... distraí-me com um video em que punham os robots a dar umas voltas sobre si mesmos antes de começar o combate e perdi o foco.
Jorge Pereira
«De génio, criança e louco... porquê só 1 pouco?»
Responder