Agrarsense
|
Topic | Link |
---|---|
Getting Started | Getting Started |
Using the Simulator | Using the Simulator |
Using Vehicles | Using Vehicles |
Using Walkers | Using Walkers |
Sensors | Sensors |
Setupping sensors | Setupping sensor |
Creating own levels | Creating own levels |
Building from source on Linux | Building on Linux |
Building from source on Windows | Building on Windows |
Installing on Linux | Installing on Linux |
Installing on Windows | Installing on Windows |
Navigate to AGRARSENSE Azure Artifact page
Click "1 published" link
This leads to Azure Artifact storage page where you can now download the latest build.
AgrarsenseBuild.zip
has been downloaded, unzip it to any location where you have enough space.Agrarsense.exe
located in UN_ZIP_PATH/Agrarsense/Windows/If the Agrarsense.exe asks to install Unreal prerequisites click yes. These are required to run applications made with Unreal Engine.
To communicate between the Simulator and ROS, you need to install ROS with below instructions. If you are just testing the Simulator, ROS is not required to run the Simulator.
This part only needs to be done once.
Ubuntu WSL is required for the project to be able to communicate between AGRARSENSE Simulator and ROS.
AGRARSENSE Simulator works without a ROS installation but you cannot get or send any data to or from the simulator.
WSL can be installed either from the Microsoft Store (as of November 2022), or from the command line. If installing from the command line won't work, try installing from the Microsoft Store.
Install Ubuntu WSL by putting this command in command prompt.
wsl
command to command promptWhen WSL installation is ready, follow this guide to install ROS.
Install ROSBridge
https://github.com/code-iai/ROSIntegration states this: >The recommended way to install rosbridge is from source (requires the rosauth package) – Even though you could install rosbridge using apt, there have been numersous issues where these apt packages do not reflect the code in the ros1 branch. Hence, it is best to install from source.
When launching ROS server, you can either launch it manually from Ubuntu WSL Terminal roslaunch rosbridge_server rosbridge_tcp.launch bson_only_mode:=True
or in windows terminal wsl -e bash -lic "roslaunch rosbridge_server rosbridge_tcp.launch bson_only_mode:=True"
To run python scripts with ROS connection you need to install Python ROS packages: ```sh pip install –extra-index-url https://rospypi.github.io/simple/ rospy pip install –extra-index-url https://rospypi.github.io/simple/ tf2_ros ``` If connection doesn't go through from windows to Ubuntu WSL, you need to set **"ROS_IP"** in command prompt. ```sh set ROS_IP=192.168.x.x ```
When ROS is installed follow this guide to install ROS2 (Foxy). First, you need to install ROS2 without ros1_bridge.
Launch new terminal ``` locale # check for UTF-8
sudo apt update && sudo apt install locales sudo locale-gen en_US en_US.UTF-8 sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 export LANG=en_US.UTF-8
locale # verify settings
sudo apt install software-properties-common sudo add-apt-repository universe
sudo apt update && sudo apt install curl sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(. /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null
sudo apt update && sudo apt install -y \ libbullet-dev \ python3-pip \ python3-pytest-cov \ ros-dev-tools
python3 -m pip install -U \ argcomplete \ flake8-blind-except \ flake8-builtins \ flake8-class-newline \ flake8-comprehensions \ flake8-deprecated \ flake8-docstrings \ flake8-import-order \ flake8-quotes \ pytest-repeat \ pytest-rerunfailures \ pytest
sudo apt install –no-install-recommends -y \ libasio-dev \ libtinyxml2-dev
sudo apt install –no-install-recommends -y \ libcunit1-dev
mkdir -p ~/ros2_foxy/src cd ~/ros2_foxy vcs import –input https://raw.githubusercontent.com/ros2/ros2/foxy/ros2.repos src
sudo apt upgrade
sudo rosdep init rosdep update rosdep install –from-paths src –ignore-src -y –skip-keys "fastcdr rti-connext-dds-5.3.1 urdfdom_headers"
cd ~/ros2_foxy/ colcon build –symlink-install –packages-skip ros1_bridge
source /opt/ros/noetic/setup.bash source ~/ros2_foxy/install/setup.bash
cd ~/ros2_foxy/ colcon build –symlink-install –packages-select ros1_bridge –cmake-force-configure
echo "alias ROS2='source ~/ros2_foxy/install/setup.bash'" >> ~/.bashrc ``` By typing ROS2 in terminal, it sources the ROS2 bash file and removes ROS2 alias
This part only needs to be done once.
Build ROS1 messages
Type "ROS1" to launch ros2 build bash. (Alias made earlier in .bashrc)
when the ROS1 build is finished close the wsl windows
Open New Terminal
Type "ROS2" to launch ros2 build bash. (Alias made earlier in .bashrc)
After the bridge has successfully built
~~~ echo "'source ~/AGRARSENSE_ROS_Messages/ros1ws/devel/setup.bash'" >> ~/.bashrc ~~~