Unit 07 · lesson

Unit Mission: Modify and Defend Your System

You have a working publisher/subscriber system. Now prove you understand it by changing it intentionally.

Choose two modifications:

  • change the topic name in both nodes;
  • change the publication interval;
  • change the message text to include a timestamp/counter label;
  • rename one node;
  • add a simple parameter that controls a message prefix (stretch goal).

Required loop

For each change:

PREDICT
→ edit source
→ build if needed
→ source clean environment
→ run
→ inspect graph/topic
→ compare expected vs observed

Final artifact

Submit or preserve:

  • package tree;
  • key package.xml dependency lines;
  • setup.py console scripts;
  • talker/listener source;
  • successful build summary;
  • ros2 pkg executables evidence;
  • ros2 node list evidence;
  • ros2 topic info --verbose evidence;
  • observed messages;
  • your two modifications and what each changed.

Defense

Be ready to explain:

  1. What makes this a ROS package rather than two random Python files?
  2. How does ros2 run find talker?
  3. Where is the node name defined?
  4. Where are topic name and message type defined?
  5. Why must the workspace be built and sourced?
  6. What evidence proves the subscriber is actually connected?

You do not need advanced robotics code to answer those well. You need a clear systems model.