Hello, dear friend, you can consult us at any time if you have any questions, add WeChat: daixieit

Robotics Foundations (H)

COMPSCI4076

2022


Section A                   (30 marks)

1.        If we have segmented the silhouette of a light brick-like object in 2D from a plan (top) view of a dark- coloured table top, how do you determine the orientation of the block? [2 marks]

2.        Why would you choose Rapidly Exploring Dense Trees over Probabilistic Roadmaps? [2 marks]

3.        Explain when ROS topics are used [1 mark] and explain the type of communication of ROS topics within a ROS system context [1 mark]. [2 marks]

4.        You have decided to equip a robot with the ability to measure and characterise the surface texture of different meats. Which sensing modality will you choose to accomplish this? [2 marks]

5.        Which approach would you choose to enable an autonomous mobile robot to localise its pose and position within the environment accurately over long durations? [2 marks]

6.        How do you solve the robot’s joint variables of a 6 degrees of freedom a robotic arm given the position and orientation of its end-effector? [2 marks]

7.        Explain what do you get by running the following command?

rostopic echo /baxter/left_arm/joint_states        [2 marks]

8.        Explain what the following URDF code would allow a robot to do.

<joint name="left_elbow" type="revolute">

<axis xyz="0 1 0"/>

<limit lower="0.0" upper="0.548" />

</joint>             [2 marks]


9.       Given the XACRO snippet below, choose which of the following statements are false and explain your answer.

 

a.    The code defines a revolute joint that connects the braccio_link_1 and braccio_link_2 of a robot.

b.   The braccio_link_1 origin is set to the origin of braccio_link_2.

c.    The code does not limit the effort, rotation and velocity of the motion of the braccio_link_2. [2 marks]

10.     What do you obtain when you compute the Euclidean or vector dot product between two image intensity histograms? [2 marks]

11.     Your line manager is demonstrating a mobile robot you designed but forgot how to invoke a reading       distance ROS node. This ROS node is inside awesome_robot package which contains the                        read_distances.py script and you need to remap the /sensor/input/distance topic to the topic argument distance. [2 marks]

12.     Which technique would you use to obtain the centroid and orientation of a segmented light object from a   dark coloured table? Assume the camera has been positioned perpendicular to the dark coloured table and the image plane points towards the table such that the camera captures the table. [2 marks]

13.     Why do you need package.xml” inside a ROS package? [2 marks]

14.     Explain whether the following homogenous identity is true or false.  C TB B TA  =  ATB B TC [2 marks]

15.     What is the difference between primary and secondary workspace of a robot? [2 marks]

Section B                    (30 marks)


1.        Compare the difference between haptic and tactile sensing (2 marks) and provide one example where each of these sensing modalities are useful in robotic manipulation tasks (2 marks). (max: 160 words) [4 marks]

2.        You are developing software for a window cleaning robot for buildings and you have already implemented 3 ROS packages namely proximity_sensor,  motor_drivers and water_control. You are at the stage   of implementing a Python ROS package, named motor_control, that provides the control for your robot’s motors that allow it to climb windows and uses ROS message definitions from control_msgs,                        proximity_sensor and std_msgs. How do you create this ROS package in the terminal? (max: 80 words[2 marks]

3.        Explain the concept and purpose of local image features and give an example of where local image features can be employed in folding garments. (max: 240 words) [6 marks]

4.        You have been given the task of designing a robot vacuum cleaner, explain how you would provide this         robot with the ability to detect food on the floor and the difference between laminated flooring and carpets by two complementary sensing methods? (max: 160 words[4 marks]

5.        For a dual-arm robot, such as Baxter, it is possible to define a point, P, in the 3D space such that both arms can reach it. Express what is the linear relation for each arm’s kinematic chain. Assume that one arm is at  origin M while the other is at origin N. (max: 80 words) [2 marks]

6.        In Lab 5, you used the Canny edge detector and image moments to detect a block and its orientation for a   pick and place task. How would you go about using SIFT for the same pick and place task? Assume you have a database of SIFT descriptors of the object to pick and place. (max: 320 words) [8 marks]

7.        Write the sequence of rotations for the following: starting from Frame F1, rotate first by θ1  about the fixed y-axis and then by θ2  about the fixed y-axis to orient Frame F2 . (max: 80 words[2 marks]

8.        Your colleague is attempting to run a ROS node written in python, but the rosrun fails at finding the node. A package has been created within a ROS workspace correctly. How would you go about solving this problem? (Assume that the terminal’s current path is the root of the workspace, e.g. ~/rf_ws) (max: 80 words) [2 marks]