blimple_as_that
simple coppleiasim blimp, interface with ROS
Science Score: 44.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (12.3%) to scientific vocabulary
Repository
simple coppleiasim blimp, interface with ROS
Basic Info
- Host: GitHub
- Owner: pranavraj575
- Language: Lua
- Default Branch: master
- Size: 4.03 MB
Statistics
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
- Releases: 0
Metadata Files
README.md
Blimp Swarm
Create a base case blimp environment to build upon for other experimetns in CoppeliaSim
Tested on Windows WSL2 running Ubuntu 22.04 with CoppeliaSim v4.6.0-rev18, Python 3.8, and ROS2 Humble
Installation
- ### Install Coppeliasim
* sudo apt-get update && apt-get upgrade
* sudo apt-get install libgl1
* sudo apt-get install python3 pip
* sudo apt-get install '^libxcb.*-dev' libx11-xcb-dev libglu1-mesa-dev libxrender-dev libxi-dev libxkbcommon-dev libxkbcommon-x11-dev
* python3 -m pip install pyzmq cbor2
* wget https://downloads.coppeliarobotics.com/V4_6_0_rev16/CoppeliaSim_Edu_V4_6_0_rev18_Ubuntu22_04.tar.xz
* tar -xvf CoppeliaSim_Edu_V4_6_0_rev16_Ubuntu22_04.tar.xz
* ./copelliaSim.sh
Update your ```.bashrc``` with the following (the alias is not required, it just makes it easier to run Coppeliasim)
Replace ```<path to coppelia folder>``` with the path. In our case, it was ```/home/<username>/Downloads/CoppeliaSim_Edu_V4_6_0_rev18_Ubuntu22_04```. Unfortunately it looks like using ```~``` does not work for later build commands, so you need to put the full directory.
```bash
export COPPELIASIM_ROOT_DIR="<path to coppelia folder>"
alias coppeliaSim="$COPPELIASIM_ROOT_DIR/coppeliaSim.sh"
```
**Update Copellia Sim Configuration settings:**
* Locate the usrset.txt settings file. For me it was in ```<coppelia folder path>/system/usrset.txt```
* Change the following parameters
* doNotShowCrashRecoveryMessage = 'true' (To remove the annoying error messages on setup).
* additionalLuaPath = "~/sim/blimpFlow/lua" (To find model lua files)
Install ROS2
Tested with ROS2 Humble on Ubuntu 22.04
Make sure the following line is in the .bashrc file, or is run every terminal (with
<distro>replaced by ROS distribution, e.g.foxy)bash source /opt/ros/<distro>/setup.bashRemember to source the bashrc file after:bash source ~/.bashrcSet up the ZMQ package into Coppeliasim
bash pip3 install pyzmq cborThen add the following to your.bashrc. Note: since this references COPPELIASIMROOTDIR, it must be on a line after the definition made in step 1bash export PYTHONPATH="$PYTHONPATH:$COPPELIASIM_ROOT_DIR/programming/zmqRemoteApi/clients/python"Again, remember to source the bashrc file after:bash source ~/.bashrcClone this directory
bash git clone https://github.com/pranavraj575/blimple_as_thatInstall the ROS2 Coppelia package "according to the tutorial"
However, the tutorial sucks, so following the directions below will work
* Install dependencies
```bash
sudo apt update
sudo apt-get install xsltproc
pip3 install xmlschema
```
* make a ROS2 workspace (the name can probably be different)
```bash
cd ~
mkdir -p ros2_ws/src
```
* clone the [sim_ros2_interface](https://github.com/CoppeliaRobotics/simExtROS2) directory and install dependencies.
* The best way to do this is with the folder we made
```bash
cp -r /<path to blimple_as_that>/setup_files/sim_ros2_interface ros2_ws/src
```
* However, you can try setting up according to the [tutorial](https://www.coppeliarobotics.com/helpFiles/en/ros2Tutorial.htm) like this
```bash
cd ros2_ws/src
git clone https://github.com/CoppeliaRobotics/simExtROS2
cd sim_ros2_interface
git checkout coppeliasim-<your-version-of-coppeliasim>
```
* Build the ROS2 package (note: should be run from the workspace directory)
* Note: this command is buggy, if it fails try looking at the compile instructions in the [github tutorial](https://github.com/CoppeliaRobotics/simROS2)
```bash
cd ~/ros2_ws
colcon build --symlink-install
```
* The following alternate build command works better in cases where there are a lot of compiled interfaces for some reason
```bash
cd ~/ros2_ws
sudo apt install clang
export CXX=clang++
colcon build --symlink-install
```
* Note: if using a conda environment, you might get an error like [this](https://github.com/colcon/colcon-ros/issues/118)
running the following might help:
```bash
conda install -c conda-forge catkin_pkg empy lark
```
Install Python Packages for this Project
Clone this directory, copy all the
.luafiles into the correct place (replace<path to coppelia>with the path to the Coppeliasim folder). This should be run from wherever you want the repo to be.bash pip3 install -e .
Examples
- ### Coppelia installation test
The obvious test to see if Coppeliasim is actually installed:
bash coppeliaSimThis will open the coppelia simulator. Use the-hargument to test headless mode.
Note: if you did not alias in installation step 1, you need to type in the path to the coppeliaSim.sh file
* ### ZMQ test
Tests if the python coppelia interface works
First open any coppelia scene with the coppelia command. Though not necessary, it might be useful to spawn some objects to see the physics work.
Then run the following file from the blimple_as_that directory
bash
python3 tests/testZeroMQRemoteAPI.py
This will just play the scene, wait a bit, then pause.
- ### ROS blimp control test (Pranav) Tests if coppelia ROS package is set up properly using Pranav's blimp
bash
python3 src/blimp_agent.py
This test will spawn a blimp, then move the blimp up, then after three seconds stop the scene.
ROS Keyboard blimp control test (Tristan)
Runs a wall climbing simulation using Tristan's Blimp Model
bash python3 runExperiment.py -a 10 -st n -mt 20 -et 300ROS blimp control test (Cameron)
Runs a wall climbing simulation using Cameron's Blimp Model
bash python3 runExperiment.py -a 10 -st n -mt 20 -et 300
Owner
- Login: pranavraj575
- Kind: user
- Repositories: 1
- Profile: https://github.com/pranavraj575
Citation (CITATION.cff)
cff-version: 1.2.0 message: "If you use this software, please cite it as below." authors: - family-names: "Rajbhandari" given-names: "Pranav" orcid: "https://orcid.org/0009-0004-4933-5204" title: "Swarm Coppeliasim" version: 4.20.69 date-released: 2023-07-01 url: "https://github.com/pranavraj575/swarm_coppeliasim"
GitHub Events
Total
Last Year
Dependencies
- cbor *
- matplotlib *
- neat-python ==0.92
- numpy *
- psutil *
- zmq *
- cbor *
- numpy *
- psutil *
- zmq *