/robot_blockly

A simple way to program ROS robots using blockly.

Primary LanguageJavaScriptGNU General Public License v3.0GPL-3.0

robot_blockly

robot_blockly is a ROS package that provides web-based visualization and block programming tools for robots and drones.

Installation:

Requeriments for Erle-Brain3

sudo apt update
sudo apt install -y git cmake python3 python3-pip python3-yaml
sudo pip3 install autobahn rospkg
mkdir -p ~/blockly_ws/src
cd ~/blockly_ws/src
git clone https://github.com/erlerobot/robot_blockly
cd robot_blockly/frontend/
git clone https://github.com/erlerobot/ace-builds.git
git clone https://github.com/erlerobot/blockly.git
cd ~/blockly_ws/
sed -i 's/crab_msgs.msg//g' scripts/robot_blockly_backend.py #Remove spider msgs
catkin_make_isolated -j2 --pkg robot_blockly --install

You can also try

mkdir -p ~/blockly_ws/src
cd ~/blockly_ws/src
git clone --recurse-submodules https://github.com/erlerobot/robot_blockly
cd ..
catkin_make_isolated -j2 --pkg robot_blockly --install

Launch it:

source ~/blockly_ws/install_isolated/setup.bash
roslaunch robot_blockly robot_blockly.launch

Create your own blocks

  • Open frontend/demos/blockfactory/index.html
  • Design you own block and then add the metadata to: frontend/blockly/blocks and frontend/blockly/generator
  • Launch python build.py to regenerate the blocks.

In-depth explanation here

License

blockly has been built based on blockly, ACE and Bootstrap. Refer to their sources for the corresponding licenses.

Unless specified, the rest of the code is freed under a GPLv3 License.

Documentation

Robots where blockly has been implemented: