Estudantes: Bruna C. Russi & Eduardo G. S. Barreto
sudo apt install python -y
sudo apt install python3-pip -y
sudo apt install git -y
Tutorial em português (PT-BR) ou español (ES).
mkdir grsim-pria-ws
cd grsim-pria-ws
mkdir src
cd src
source /opt/ros/noetic/setup.bash
catkin_init_workspace
Tutorial disponível aqui.
git clone https://github.com/Los-UruBots-del-Norte/vision_comm.git
git clone https://github.com/Los-UruBots-del-Norte/grsim_ros_bridge_msgs.git
git clone https://github.com/Los-UruBots-del-Norte/grsim_ros_bridge.git
git clone https://github.com/KRSSG/krssg_ssl_msgs.git
Ao final se deve ter cinco diretórios dentro de /grsim-pria-ws/src
: o grSim
e os quatro repositórios clonados acima.
Deve ser colocado o caminho completo do arquivo GrSim dentro da pasta GrSim/bin, exemplo:
/home/SEU_USUARIO_AQUI/grsim-pria-ws/src/grSim/bin/grSim
Use o caminho completo gerado em:
echo $PWD
Além disso se deve entrar em grsim_ros_bridge
e executar
cd ssl-python-clients
pip install .
cd /grSim/bin
./grSim
Game > Division B
Game > Robots Count: 5
Field > Division A > width: 4
Field > Division A > length: 4
Field > Division B > width: 4
Field > Division B > length: 4
E, por fim, reposicionar os jogadores fora do campo de modo que se pareça como na imagem abaixo:
Volte ao diretório grsim-pria-ws
e execute:
source /opt/ros/noetic/setup.bash
catkin_make
source devel/setup.bash
roscd grsim_ros_bridge
O comando acima levará à pasta grsim_ros_bridge. Volte à pasta grsim-pria-ws
e execute finalmente:
roslaunch grsim_ros_bridge launch.launch
Em outro terminal (pasta grsim-pria-ws/src
), faça:
source /opt/ros/noetic/setup.bash
catkin_create_pkg grsim-pria grsim_ros_bridge_msgs rospy roscpp geometry_msgs std_msgs
cd grsim-pria
mkdir scripts
cd scripts
Em grsim-pria/scripts
cole o arquivo game.py
e forneça permissão:
chmod +x game.py
Em seguida retorne ao diretório principal grsim-pria-ws
e recompile:
source /opt/ros/noetic/setup.bash
source devel/setup.bash
catkin_make
Para executar, finalmente:
rosrun grsim-pria game.py
OBS. o código funciona se somente se os jogadores estiverem posicionados dentro do quadrante.