Note: This tutorial assumes that you have completed the previous tutorials: Creating nodes with BRIDE, Creating ROS coordinators with BRIDE. |
Please ask about problems and questions regarding this tutorial on answers.ros.org. Don't forget to include in your question the link to this page, the versions of your OS & ROS, and also add appropriate tags. |
Creating ROS systems with bride
Description: This tutorial teaches you how to create a complete ROS system and generate the launch files with BRIDETutorial Level: BEGINNER
In this small tutorial you will learn how to create ROS system deployment with BRIDE. It assumes you have already done the tutorial on capability creation and coordinator creation.
Create new project and model for deployment
Create a new ROS-Project named deployment the same way as in the two previous tutorials. Add a new deployment model to the project by right clicking on the model folder and selecting New -> Other and then ROS System Diagram (note the difference to ROS Package Diagram). Name the new model diagramm deployment.ros_system_diagram and deployment.ros_system respectively. You should now see an empty ros_diagram editor.
Adding packages to your system model
To add capability models to your system select the Package tool on the right and click on your white canvas. A popup opens and you can now select the Capability and Coordinator models from the dialog (only one at a time). Repeat the step until you have added the talker, listener and the behaviour model. Note that the behaviour model now appears as normal ros node. The screenshot below shows BRIDE while adding the behaviour model.
Note that you have zoom tools on the top of the palette.
Adding topics, actions and services
In the system diagram you can now use the topic tool in the pallet to connect the Publishers with the corresponding Subscribers and name the topic. Similar you can connect the services and actions in the system. In this example we connect the "pub" Publisher port of the talker with the "listenPort" subscriber port of the listener node. We name the topic "/communication". Afterwards we connect the actions to each other and name the action TriggerAction.
The system should now look as in the screenshot:
Generating system package
After finishing the system configuration you can generate the manifest and launch file for the system package. You can do that in the BRIDE menu in ROS->Generate Launch file for ros system. After refreshing your project explorer by right clicking the deployment package and pressing Refresh you should now see a package.xml that includes all dependencies and an "system.launch" file that configures and connects all nodes in the system.
Testing the system
When you open a new terminal you should be able to run
roslaunch deployment system.launch
With the standard ros tools (e.g. rostopic, rxgraph, etc.) you should now be able to investigate your system.