$29
Homework 4 will test your ability to create ROS packages, create ROS nodes, and integrate your code into existing infrastructure.
In Homework 3, you sent and received messages to a ROS node manually, using rostopic. In this homework, you will create a new node to send messages to the homework 1 node and a node to receive messages from it.
1. Create a new ROS package in your repo. Reference slides and http://wiki.ros.org/ROS/Tutorials/CreatingPackage for help
NOTE: you may need to change the permissions of this folder so that it is accessible outside the docker container:
$ chmod -R a+rw <package_folder>
2. Create a new node inside this package that publishes to the input message you discovered in homework 1. You can send whatever numbers you like to the node as long as it is a value message. Test this node using rostopic echo.
NOTE: If you do this with python, you will need to make your file executable using the command $ chmod +x <file_name>
This will need to be done for each node you create.
3. Create a second node that subscribes to the output of homework 1. Have it log each message it receives using the “INFO” warning level. Test this node using rostopic pub. Refer to class slides to display the output.
4. Now create a launch file that:
a. Includes the launch file from homework 1
b. Starts your two nodes
5. Test your package, code, and launch file thoroughly.
6. Commit and push your code to your repo along with a tag (“hw4” or similar)
a. Verify that you actually pushed your code AND TAG by checking github
7. Submit a PDF to dropbox with:
a. Your name, repo URL, and the tag for this assignment
b. The name of:
i. The package you created for this assignment
ii. The nodes you created
Rubric:
5 points - Publisher created and works properly
5 points - Listener created and works properly
3 points - Package created successfully
3 points - Launch file created
2 points - Tag applied in git
2 points - Answers given in PDF
your
publisher
Input topic
homework1
Output topic
your
subscriber