Lab 2 will ask you to program your robot to perform a few maneuvers using open loop control. The instructions at the end of this assignment are one way to do this but not the only way. You will be graded on whether your code, video, and other submissions meet the specifications below, not on following the instructions exactly.
This lab requires that you create:
Submit a PDF to Blackboard with the following information.
Answers to the questions:
Post in #demonstrations on slack and also turn in:
5 points: Package creation
20 points: Line node/launch file
5 points: Line precision (may not be completely straight)
20 points: Circle node/launch file
5 points: Circle precision (mostly graded on uniformity of shape, not scale)
20 points: Square node/launch file
5 points: Square precision (mostly graded on uniformity of shape, not scale)
20 points: Answers to questions
$ chmod +x <node_name>
<launch> <group ns="$(env VEHICLE_NAME)"> START YOUR NODE HERE </group> <include file="$(find fsm)/launch/fsm_node.launch"> <arg name="veh" value="$(env VEHICLE_NAME)"/> <arg name="param_file_name" value="lane_following"/> </include> </launch>
This will start your node inside the namespace for your robot.
$ dts devel build -H <duckiebot_name>.local --pull
The first time this command runs it may take a while. To get some additional feedback, you may want to run this first to download the core docker containers:
$ docker -H <duckiebot_name>.local pull duckietown/dt-core:daffy-arm32v7
$ dts devel run -H <duckiebot_name>.local -s -M --cmd bash
The -s flag copies your repo to the /code folder on the robot so that it can be mounted by the -M flag and you do not need to rebuild for every small change.
$ dts start_gui_tools <duckiebot_name>
to figure out what is going on using standard ROS tools.