ROS Topic

../../_images/ros_topic.png

Within a Component or Component Assembly, a ROS Topic is represented by a GenericDomainModelPort with the following Attributes.

Attributes Value Description
Type topic  
Attribute 0 force_name Use the GenericDomainModelPort’s name as the ROS Topic name
Attribute 2 [msg type] ROS Topic Msg Type - e.g. WrenchStamped
Attribute 7 ros  

A ROS Topic is used to connect ROS Topic Publishers and ROS Topic Subscribers.

For each netlist of connected ports, the Interpreter will check that the the port types all match (e.g. a ROS Topic Publisher cannot broadcast to a ROS Service Server) and that the Topic Msg types (if specified) all match.

If a port’s Attribute 0 Value is force_name, then all ports on that netlist will be assigned the forcing GenericDomainModelPort’s name. If two or more ports have their Attribute 0 Value set to force_name, then one of their names will be picked at random and assigned to all ports on that netlist. Be careful using force_name.

Otherwise, a unique ROS Topic name will be generated and assigned to ports in that netlist.

ROS Service

../../_images/ros_service.png

Within a Component or Component Assembly, a ROS Service is represented by a GenericDomainModelPort with the following Attributes.

Attributes Value Description
Type service  
Attribute 0 force_name Use the GenericDomainModelPort’s name as the ROS Service name
Attribute 2 [msg type] ROS Service Msg Type - e.g. Trigger
Attribute 7 ros  

A ROS Service is used to connect ROS Service Servers and ROS Service Clients.

For each netlist of connected ports, the Interpreter will check that the the port types all match (e.g. a ROS Topic Publisher cannot broadcast to a ROS Service Server) and that the Service Msg types (if specified) all match.

If a port’s Attribute 0 Value is force_name, then all ports on that netlist will be assigned the forcing GenericDomainModelPort’s name. If two or more ports have their Attribute 0 Value set to force_name, then one of their names will be picked at random and assigned to all ports on that netlist. Be careful using force_name.

Otherwise, a unique ROS Service name will be generated and assigned to ports in that netlist.

ROS Action

../../_images/ros_action.png

Within a Component or Component Assembly, a ROS Action is represented by a GenericDomainModelPort with the following Attributes.

Attributes Value Description
Type action  
Attribute 0 force_name Use the GenericDomainModelPort’s name as the ROS Action name
Attribute 2 [msg type] ROS Action Type - e.g. Trajectory
Attribute 7 ros  

A ROS Action is used to connect ROS Action Servers and ROS Action Clients.

For each netlist of connected ports, the Interpreter will check that the the port types all match (e.g. a ROS Topic Publisher cannot broadcast to a ROS Service Server) and that the Action types (if specified) all match.

If a port’s Attribute 0 Value is force_name, then all ports on that netlist will be assigned the forcing GenericDomainModelPort’s name. If two or more ports have their Attribute 0 Value set to force_name, then one of their names will be picked at random and assigned to all ports on that netlist. Be careful using force_name.

Otherwise, a unique ROS Action name will be generated and assigned to ports in that netlist.