Skip to content

IEEE VSS fisico Iniciando uma partida

Eduardo Makita edited this page Jul 21, 2023 · 3 revisions

Para iniciar uma partida do VSSS físico é necessário alguns passos:

1) Preparar o vision

Ligue o VSS-Vision ou qualquer outra ferramenta de visão computacional, dentro dele faça a segmentação de cores e outras configurações nescessárias. Para configurar o sistema de visão, sugerimos o uso do manual desenvolvido por nós.

2) Ligar os robôs

Garanta que os robôs estão ligados e com as tags corretas. Caso não queira testar com todos os robôs, não é nescessário manter todos ligados.

3) Conectar a estação

Para realizar a comunicação com os robôs por esp-now é nescessario ligar a esp32 estação ao notebook. Após conectar é nescessario executar o comando que a inicia, para isso execute:

sudo chmod 666 [path]

onde o [path] pode variar, mas normalmente é \dev\ttyUSB0, \dev\ttyUSB1 ou \dev\ACM0.

4) Rodar o NeonFC

O último passo é rodar o NeonFC. Para isso é necessário um conjunto de constantes. Essas constantes podem ser passadas através do caminho de um arquivo json por variável de ambiente.

Exemplo de arquivo config_real_life.json:

{
  "network" : {
        "api_address": "127.0.0.1",
        "api_port" : 43210,
        "api_recv_port": 43211
    },
    "match" : {
        "team_side": "left",
        "team_color": "yellow",
        "coach_name": "IRON_2023",
        "category": "3v3",
        "robot_ids": [
            3,
            9,
            0
        ]
    },
    "comm": {
        "comm_port": "/dev/ttyUSB0",
        "baud_rate": 115200
    },
    "api": false
}

Exemplo de chamada:

python3 main_real_life.py --config_file=config_real_life.json
Variavel Descrição
api Se o NeonFC vai utilizar a api para mandar e recebr comandos (true ou false)
network.api_address Endereço de comunicação da api
network.api_port Porta que a api enviará as informações
network.api_recv_port Porta que a api receberá os comandos
match.team_side Lado que o time jogará (left ou right)
match.team_color Cor que o time jogará (yellow ou blue)
match.category Categoria que será jogada (3v3 ou 5v5)
match.robot_ids Lista contendo os ids dos robôs como no SSL-Vision
comm.comm_port Porta da esp-32 (igual a enviada no ultimo comando)
comm.baud_rate Velocidade da comunicação serial com a esp-32