Advanced Robotics & Automation interview questions

125 questions with answers (RAA-301 to RAA-425). Try each one aloud before reading the answer.

Robot Fundamentals & Classification

RAA-301 · A palletizing task needs 3 m reach, 150 kg payload and 4 axes. Which robot type would you choose and why?

A 4-axis articulated palletizing robot or a gantry. The 4-axis arm keeps the tool level by parallel linkage, gives high payload at long reach in a small footprint and is cheaper and faster than a 6-axis arm, which is not needed when the tool only rotates about vertical.

RAA-302 · How would you choose between a SCARA and a delta robot for a 120 picks/min packaging line?

A delta robot suits very high-speed, light picks (typically under a few kg) from a conveyor in an overhead dome-shaped workspace. A SCARA offers larger payloads, a larger flat workspace and better precision for insertion, but at lower top speeds.

RAA-303 · How do you improve absolute accuracy of an industrial robot for offline programming?

Calibrate kinematic parameters (link lengths, joint offsets) with a laser tracker, model compliance and thermal growth, calibrate the TCP and work object frames, and use touch-off or vision to locate parts locally.

RAA-304 · A robot has 0.05 mm repeatability but parts are placed 1.5 mm off after offline programming. What is the likely cause and fix?

Absolute accuracy error from uncalibrated kinematics, an incorrect TCP or work object frame, or base misplacement. Recalibrate TCP and user frames, run robot calibration, or touch up key points by teaching.

RAA-305 · What are the trade-offs of a 7-DOF arm versus a 6-DOF arm in a crowded cell?

The 7th DOF allows elbow repositioning to avoid obstacles, joint limits and singularities while keeping the tool pose. The cost is more weight, price, IK complexity (infinite solutions to resolve) and an extra joint to maintain.

RAA-306 · How do you size a gantry versus an articulated arm for a 10 m long machine-tending line?

A gantry covers long linear spans cheaply, keeps floor space free and gives uniform accuracy. An arm would need a 7th-axis track. Choose the gantry if the work is mostly top-down; choose arm-on-track if side access or complex orientation is needed.

RAA-307 · How does thermal growth affect robot accuracy and how is it mitigated?

Heat from motors and gears expands links, shifting the TCP over a shift, often by a fraction of a millimetre. Mitigate with warm-up cycles, thermal compensation models, temperature sensors or periodic reference-touch checks.

RAA-308 · How would you calculate the mobility of a Stewart platform?

Spatial Grübler: N = 14 links (base, platform, 6 × 2 leg links), J = 18 joints (6 universal f = 2, 6 prismatic f = 1, 6 spherical f = 3), Σf = 36. M = 6(14 − 1 − 18) + 36 = −30 + 36 = 6 DOF.

RAA-309 · When would you choose a dual-arm robot?

For tasks needing two coordinated hands, such as holding and fastening, handling flexible parts or replacing a two-handed human workstation, at the cost of more complex coordination and higher price.

RAA-310 · What design considerations apply to robots in washdown food environments?

Hygienic design with smooth stainless or coated surfaces, no crevices, IP67/IP69K sealing, food-grade lubricants and materials compatible with cleaning chemicals.

Forward & Inverse Kinematics

RAA-311 · What is the manipulator Jacobian and what are singularities?

The Jacobian J(q) maps joint velocities to end-effector velocities, ẋ = J(q)q̇. At a singularity J loses rank: the robot loses a direction of motion and the joint velocities needed for certain Cartesian velocities become infinite.

RAA-312 · Derive the Jacobian of a planar 2R arm and find its singularities.

J = [[−L₁s₁ − L₂s₁₂, −L₂s₁₂], [L₁c₁ + L₂c₁₂, L₂c₁₂]], with det J = L₁L₂sinθ₂. Singularities occur at θ₂ = 0 or 180°, when the arm is fully stretched or folded.

RAA-313 · What are the three classic singularities of a 6-axis arm with spherical wrist?

Wrist singularity (axes 4 and 6 aligned, θ₅ = 0), shoulder singularity (wrist centre on axis 1) and elbow singularity (arm fully extended or folded).

RAA-314 · How do you handle singularities during a Cartesian move?

Avoid them in planning, use damped least squares (q̇ = Jᵀ(JJᵀ + λ²I)⁻¹ẋ), slow down near them using manipulability, allow small orientation deviation, or switch to joint interpolation through the region.

RAA-315 · What is the manipulability measure?

Yoshikawa's measure w = √det(JJᵀ), proportional to the volume of the velocity ellipsoid. It drops to zero at singularities and is used to optimise posture.

RAA-316 · How does the Jacobian relate joint torques to end-effector forces?

By the principle of virtual work, τ = Jᵀ(q)F. This holds even at singularities, where some forces are resisted structurally with no joint torque.

RAA-317 · A planar 2R arm (L₁ = L₂ = 0.5 m) at θ₁ = 0°, θ₂ = 90° pushes with F = (0, 10) N. What joint torques are needed?

J = [[−0.5, −0.5], [0.5, 0]]. τ = JᵀF = [−0.5·0 + 0.5·10, −0.5·0 + 0·10] = [5, 0] N·m.

RAA-318 · How does Newton–Raphson numerical IK work?

Iterate Δq = J⁻¹(q)·e, where e is the pose error, updating q until error is below tolerance. Use the pseudoinverse or damped least squares for non-square or near-singular Jacobians.

RAA-319 · How is redundancy resolved in a 7-DOF arm?

q̇ = J⁺ẋ + (I − J⁺J)q̇₀. The pseudoinverse term tracks the task; the null-space term moves the arm without disturbing the tool to optimise a secondary goal like joint-limit or obstacle avoidance.

RAA-320 · What is the difference between the geometric and analytical Jacobian?

The geometric Jacobian maps to linear velocity and angular velocity ω. The analytical Jacobian maps to derivatives of a minimal orientation representation like Euler angles, and has extra representation singularities.

RAA-321 · How would you select among the 8 IK solutions of a 6-axis arm during operation?

Pick the solution closest to the current joint configuration to avoid large motions, respect joint limits and cable constraints, stay away from singularities and keep the same configuration flags across a Cartesian path.

Robot Dynamics

RAA-322 · A joint must accelerate a 2 kg·m² load at 10 rad/s² through a 100:1 gearbox with 90 % efficiency. What motor torque is required, ignoring motor inertia and gravity?

Load torque = 2 × 10 = 20 N·m. Motor torque = 20/(100 × 0.9) ≈ 0.22 N·m.

RAA-323 · Size the motor RMS torque for a cycle of 0.5 N·m for 0.2 s, 0.1 N·m for 0.6 s and −0.4 N·m for 0.2 s.

T_rms = √[(0.5² × 0.2 + 0.1² × 0.6 + 0.4² × 0.2)/1.0] = √(0.05 + 0.006 + 0.032) = √0.088 ≈ 0.30 N·m. It must be below the motor's continuous rating, and 0.5 N·m below the peak rating.

RAA-324 · Why is the recursive Newton–Euler algorithm preferred for real-time inverse dynamics?

It is O(n) in the number of joints and needs no symbolic derivation. Lagrangian closed forms grow rapidly in complexity, though they are useful for analysis and controller design.

RAA-325 · How do you experimentally identify robot dynamic parameters?

Write the dynamics linearly in parameters, τ = Y(q, q̇, q̈)·π. Run optimised exciting trajectories, record joint positions and torques (or currents), filter, and solve by least squares for the base parameters.

RAA-326 · What are the main effects of joint flexibility and how are they modelled?

Harmonic drives and belts introduce elasticity between motor and link, causing vibration and tracking errors. The Spong model adds a spring between motor and link inertias, doubling the state dimension.

RAA-327 · How does payload mismatch affect model-based control and how is it handled?

Incorrect payload mass or CoG gives wrong gravity and inertia compensation, causing position errors, overshoot and false collision detection. Set accurate payload data, or identify it automatically with a load identification routine.

RAA-328 · What is a dynamic singularity concern in high-speed delta robots?

Large accelerations produce inertial forces that can exceed actuator limits and excite the light carbon arms. Trajectory planning must respect torque limits and avoid resonances rather than only kinematic limits.

RAA-329 · How would you estimate the braking distance of a robot joint after a Category 0 stop?

θ_stop ≈ ω²/(2α_brake) plus reaction time × ω, with α_brake = τ_brake/J_total. Manufacturers publish measured stopping distances and times by load and speed, which should be used for safety distance calculations.

RAA-330 · What determines the regenerative energy during robot deceleration and how is it handled?

Kinetic energy ½Jω² returns to the DC bus during braking. It is dissipated in a brake resistor or returned to the grid with a regenerative drive, and shared across axes on a common DC bus.

RAA-331 · Why do lightweight torque-controlled robots use joint torque sensors?

They measure output torque directly, bypassing gear friction and elasticity, which enables accurate torque control, gravity-compensated hand guiding and sensitive collision detection.

Trajectory Planning

RAA-332 · Design a rest-to-rest quintic trajectory for 0 to 1 rad in T = 1 s.

q(t) = 10t³ − 15t⁴ + 6t⁵ (normalised). Peak velocity is 1.875 rad/s at t = 0.5 s, and peak acceleration is about 5.77 rad/s².

RAA-333 · For a cubic trajectory, a joint must move 120° with peak velocity ≤ 60°/s. What is the minimum time?

Peak velocity = 1.5Δq/T ≤ 60°/s, so T ≥ 1.5 × 120/60 = 3 s.

RAA-334 · A trapezoidal move: D = 0.2 m, v_max = 1 m/s, a = 2 m/s². What is the profile and time?

v²/a = 0.5 m > 0.2 m, so v_max is never reached and the profile is triangular. T = 2√(D/a) = 2√0.1 ≈ 0.63 s, peak velocity √(aD) ≈ 0.63 m/s.

RAA-335 · How would you reduce cycle time of a pick-and-place task without hardware changes?

Use blending zones at intermediate points, PTP instead of LIN where the path does not matter, overlap gripper actuation with motion, raise acceleration within limits, shorten approach heights and optimise the sequence.

RAA-336 · How does input shaping reduce vibration in robot motion?

The command is convolved with impulses timed at half the vibration period so the induced oscillations cancel. It adds a delay of roughly half a period but removes residual vibration of a known mode.

RAA-337 · How would you plan a welding seam trajectory with constant tool speed around corners?

Use Cartesian interpolation with constant path speed, blend corners with small radii, reorient the torch smoothly with slerp, check reachability and singularities along the path, and adjust weaving and stick-out as needed.

RAA-338 · What is conveyor tracking and how is it implemented?

The robot follows a moving part by adding the conveyor's encoder-measured displacement to the target frame in real time, after a vision or sensor trigger registers the part's position.

RAA-339 · Why does a LIN move fail while a PTP move to the same point succeeds?

The straight-line path may pass through a singularity, exceed joint limits or speed limits, or require a configuration change. PTP only needs reachable endpoints.

RAA-340 · How does TOPP (time-optimal path parameterisation) work?

It finds the fastest s(t) along a fixed path by computing, in the (s, ṡ) phase plane, the maximum velocity curve allowed by torque or acceleration limits, then integrating maximum acceleration and deceleration segments.

RAA-341 · How do you handle trajectories through multiple via points while limiting jerk?

Use quintic or B-spline segments with continuous acceleration, or jerk-limited S-curves with blending. Optimise segment times under velocity, acceleration and jerk limits.

Robot Control

RAA-342 · Compare computed torque control with independent joint PID for a direct-drive robot.

Direct-drive joints have no gearing to decouple them, so inertia changes and coupling torques are large. Independent PID performs poorly; computed torque compensates the full model and gives decoupled, consistent tracking if the model is accurate.

RAA-343 · How do you choose PD gains in computed torque control for critically damped joint error?

Error dynamics ë + K_dė + Kₚe = 0. For natural frequency ωₙ and ζ = 1, set Kₚ = ωₙ² and K_d = 2ωₙ. For ωₙ = 20 rad/s, Kₚ = 400 and K_d = 40.

RAA-344 · How would you implement admittance control for robot hand guiding on a position-controlled arm?

Read the wrist F/T sensor, remove the gravity of the tool, and apply a virtual mass-damper M ẍ + D ẋ = F to compute a velocity command, then send it to the position controller at a high, consistent rate.

RAA-345 · What causes instability when an impedance-controlled robot contacts a stiff surface?

High environment stiffness combined with sampling delay, limited sensor bandwidth and low virtual damping. Increase damping, lower commanded stiffness, reduce loop latency or add passivity-based control.

RAA-346 · What is robust or sliding mode control and when is it useful in robotics?

It forces the state onto a sliding surface with switching control that tolerates bounded model uncertainty. It is useful with uncertain payloads, but chattering must be reduced with boundary layers.

RAA-347 · What is adaptive control in manipulators?

Updating model parameters such as payload mass online from tracking errors, while the controller uses the estimates. Slotine–Li is a classic adaptive controller with guaranteed stability.

RAA-348 · How does sampling rate affect robot control loop stability?

Sampling and computation delay add phase lag of about ωT_d. Rates must be well above the loop bandwidth, typically 10–20× or more, to maintain phase margin.

RAA-349 · A position loop has bandwidth 50 Hz. What minimum sampling rate would you choose?

At least 10–20× bandwidth, so 500 Hz to 1 kHz. Industrial servo position loops often run at 1–4 kHz with current loops faster still.

RAA-350 · How would you diagnose oscillation at the end of a fast robot move?

Check whether frequency matches a structural mode (vibration) or a controller limit cycle. Use trace logging of command, position and current; then tune gains, add notch filters or input shaping, check payload data and inspect gearbox backlash.

RAA-351 · What is model predictive control (MPC) and why is it used for legged and mobile robots?

MPC optimises a sequence of future control inputs over a horizon subject to constraints, applies the first input and repeats. It handles constraints like friction cones, torque limits and obstacles explicitly.

RAA-352 · How do you implement force-controlled insertion of a peg in a hole?

Approach in position control, switch to force control along insertion axis with low lateral stiffness (compliance), use spiral or tilt search to find the hole, and monitor force and depth to detect success or jamming.

Sensors & Perception

RAA-353 · Design a localization sensor suite for an indoor AMR in a dynamic warehouse.

2D safety LiDARs for mapping, localisation and safety zones; wheel encoders and an IMU for odometry; a 3D or depth camera for overhanging obstacles; and optional fiducials in feature-poor aisles, fused with an EKF.

RAA-354 · Why fuse IMU with wheel odometry in an EKF?

The gyro gives accurate short-term heading rate that is unaffected by wheel slip, while wheel odometry gives reliable linear velocity. Fusion reduces heading drift, which dominates position error.

RAA-355 · What is the difference between EKF and UKF?

The EKF linearises the models with Jacobians at the current estimate. The UKF propagates deterministically chosen sigma points through the nonlinear models, often more accurate for strong nonlinearities and needing no Jacobians.

RAA-356 · A 2D LiDAR has 0.25° angular resolution. What is the spacing between beams at 20 m?

s ≈ r·Δθ = 20 × 0.25 × π/180 ≈ 0.087 m. Objects narrower than about 9 cm may be missed at that range.

RAA-357 · How would you time-synchronise a camera, LiDAR and IMU?

Use hardware triggering or PTP/GPS-disciplined clocks, timestamp at acquisition rather than arrival, estimate fixed latencies, and compensate motion between sample times.

RAA-358 · How do you handle LiDAR failures on glass, mirrors and black surfaces?

Glass passes the beam, mirrors reflect it away and black surfaces absorb it. Add ultrasonic or radar sensors, mark such regions on the map, filter outliers and use multi-echo returns.

RAA-359 · What is extrinsic calibration between a LiDAR and a camera?

Estimating the rigid transform between them, using targets visible to both, such as checkerboards with known geometry, or targetless edge alignment, so points can be projected onto images.

RAA-360 · How would you detect slip in a robotic gripper?

Monitor tactile array shear patterns or vibrations, F/T sensor tangential-to-normal force ratio approaching the friction coefficient, or micro-motion in vision. Increase grip force when slip begins.

RAA-361 · What is the Mahalanobis distance used for in sensor fusion?

d² = (z − ẑ)ᵀS⁻¹(z − ẑ), with S the innovation covariance. It gates measurements and rejects outliers or wrong data associations beyond a chi-square threshold.

RAA-362 · How would you choose between a resolver and an absolute optical encoder for a robot joint?

Resolvers withstand heat, vibration and contamination but offer lower accuracy and need demodulation electronics. Optical absolute encoders give higher resolution and digital interfaces but are more sensitive to shock and dirt.

Computer Vision for Robotics

RAA-363 · Design a vision system for random bin picking of metal parts.

Use a 3D structured-light or stereo sensor above the bin, match CAD models to the point cloud for 6D pose, rank grasps by reachability and collision with bin walls, plan collision-free approaches and re-image after each pick. Handle reflections with suitable lighting or multi-exposure.

RAA-364 · A camera must resolve 0.1 mm defects over a 200 mm field of view. What sensor resolution is needed?

Using at least 3 pixels per smallest defect, pixel size ≤ 0.033 mm, so 200/0.033 ≈ 6,000 pixels across the field of view. A 2-pixel rule gives 4,000 pixels.

RAA-365 · How do you estimate the 6D pose of an object from 2D–3D correspondences?

Solve the Perspective-n-Point (PnP) problem with known intrinsics, using RANSAC to reject outliers and refining by minimising reprojection error.

RAA-366 · How does RANSAC work?

Repeatedly fit a model to a random minimal subset, count inliers within a threshold and keep the model with most inliers. Iterations N = log(1 − p)/log(1 − wˢ) for success probability p, inlier ratio w and sample size s.

RAA-367 · How many RANSAC iterations are needed to fit a plane (s = 3) with 50 % inliers and 99 % confidence?

N = log(0.01)/log(1 − 0.5³) = −4.605/−0.1335 ≈ 35 iterations.

RAA-368 · How would you make an inspection system robust to ambient light changes?

Use strong, strobed controlled lighting, an enclosure or shroud, band-pass filters matched to the light wavelength, short exposure and normalised or adaptive algorithms.

RAA-369 · What are the trade-offs between structured light, stereo and time-of-flight depth sensors?

Structured light is accurate at short range but suffers in sunlight. Passive stereo works outdoors but fails on textureless surfaces. ToF is compact and fast with moderate accuracy, but suffers multipath and errors on dark or shiny surfaces.

RAA-370 · How would you train a deep learning model for defect detection when defects are rare?

Use anomaly detection trained on good parts, data augmentation, synthetic defects, transfer learning from pretrained networks, class weighting and careful validation of escape rate versus false rejects.

RAA-371 · How does depth error scale for a stereo camera, and what does that imply for design?

ΔZ ≈ Z²·Δd/(f·B). Error grows with distance squared, so longer baselines or focal lengths improve far-range accuracy at the cost of a larger minimum range and more occlusion.

RAA-372 · How is grasp detection done for unknown objects?

Networks predict grasp poses and quality scores directly from depth or RGB-D images, or analytic methods find antipodal points on segmented point clouds, then filter by reachability and collision.

RAA-373 · Why do eye-in-hand camera calibrations drift, and how do you verify them?

Mount knocks, cable strain, thermal effects and TCP changes alter the transform. Verify by imaging a fixed target from several poses and checking consistency, or by touching a vision-located point with the tool.

Path Planning & Navigation

RAA-374 · Compare the main families of path planning algorithms.

Graph search (Dijkstra, A*) is complete and optimal on discretised spaces. Sampling-based (RRT, PRM) scales to high dimensions and is probabilistically complete. Potential fields are fast and reactive but get stuck in local minima. Optimisation-based planners (CHOMP, TrajOpt) refine smooth trajectories.

RAA-375 · Why is weighted A* (f = g + εh, ε > 1) used, and what does it cost?

It expands fewer nodes and finds paths faster, but the path cost can be up to ε times optimal.

RAA-376 · How does grid resolution affect planning?

Finer grids give accurate paths through narrow gaps but increase memory and search time with the number of cells. Coarse grids can block narrow passages or produce jagged paths.

RAA-377 · How would you plan for a car-like robot that cannot turn in place?

Use Hybrid A* or lattice planners with motion primitives respecting minimum turning radius, and Reeds–Shepp or Dubins curves as heuristics and analytic expansions.

RAA-378 · How does the narrow passage problem affect sampling-based planners, and how is it addressed?

Random samples rarely fall into thin free regions, so connectivity is missed. Use bridge-test or Gaussian sampling, obstacle-biased sampling, or bidirectional RRT-Connect.

RAA-379 · How would you design navigation for a fleet of 50 AMRs in a warehouse?

A fleet manager assigns tasks and plans routes on a shared graph with traffic rules, reservations at intersections and deadlock detection. Each robot plans locally for obstacles and charging is scheduled centrally.

RAA-380 · What is a behaviour tree and why use it for navigation?

A hierarchical control structure of sequence, fallback and action nodes that ticks each cycle. It is modular, reactive and readable, making recovery behaviours easy to compose, as in Nav2.

RAA-381 · How do you plan a collision-free arm trajectory in a cluttered cell?

Build a collision model of the robot, tool and environment (meshes, octomap), plan with RRT-Connect or similar in joint space, shortcut and smooth, then time-parameterise under velocity and acceleration limits.

RAA-382 · What is the difference between complete, resolution-complete and probabilistically complete planners?

Complete planners always find a path if one exists. Resolution-complete planners do so at the chosen discretisation. Probabilistically complete planners find it with probability approaching 1 as samples grow.

RAA-383 · How would you handle dynamic obstacles like walking people in navigation?

Track them and predict motion, add time-dependent costs or velocity obstacles, use social navigation rules, reduce speed nearby and replan frequently with a local planner such as MPC or DWA.

Mobile Robots & SLAM

RAA-384 · Explain how a SLAM system is structured into a front end and back end.

The front end extracts features or scans, matches them for odometry and detects loop closures. The back end optimises the pose graph or factor graph, often with nonlinear least squares, to obtain a globally consistent map and trajectory.

RAA-385 · How does pose graph optimisation work?

Nodes are robot poses and edges are relative-pose constraints with information matrices. The solver minimises ΣeᵢⱼᵀΩᵢⱼeᵢⱼ with Gauss-Newton or Levenberg–Marquardt, using sparsity for efficiency.

RAA-386 · What happens if a false loop closure is accepted?

The optimiser distorts the map to satisfy the wrong constraint, often catastrophically. Use geometric verification, robust kernels and switchable constraints to reject outliers.

RAA-387 · Compare LiDAR SLAM and visual SLAM.

LiDAR SLAM gives accurate geometry and works in darkness but is costlier and struggles in long featureless corridors. Visual SLAM is cheap and rich in features but sensitive to lighting, motion blur and textureless scenes.

RAA-388 · Why is visual-inertial odometry popular on drones?

Cameras provide drift-correcting features and the IMU provides high-rate motion, scale (via gravity and acceleration) and robustness to fast motion, all with low weight and power.

RAA-389 · How would you localise an AMR in a long featureless corridor?

LiDAR scan matching degenerates along the corridor axis. Add wheel-IMU odometry, reflectors or fiducials, ceiling cameras, UWB beacons or Wi-Fi references, and detect degeneracy to weight sensors appropriately.

RAA-390 · A differential-drive robot has 2 % wheel radius error on one wheel. What happens to its heading over a 10 m straight run with L = 0.5 m?

The wheels travel 10 m and 10.2 m (approximately), so Δθ ≈ 0.2/0.5 = 0.4 rad ≈ 23°. Small calibration errors produce large heading drift.

RAA-391 · How do you calibrate differential-drive odometry?

Run a UMBmark-style test: drive square paths clockwise and counter-clockwise, measure end-position errors and solve for effective wheel diameter ratio and track width corrections.

RAA-392 · How would you map a multi-floor building for an AMR that uses elevators?

Build a separate 2D map per floor linked in a topological graph via elevator nodes. Integrate elevator control through an API and relocalise on each floor at a known pose after exiting.

RAA-393 · What is the role of the motion model and measurement model in a particle filter?

The motion model p(xₜ | xₜ₋₁, uₜ) spreads particles with odometry noise. The measurement model p(zₜ | xₜ, m) weights each particle by how well the observed scan fits the map at that pose.

RAA-394 · How do you choose AMR battery capacity for a 16-hour shift?

Estimate average power from drive, payload and electronics, for example 150 W × 16 h = 2.4 kWh, add margin for ageing and depth-of-discharge limits, or use opportunity charging during idle time to reduce battery size.

ROS & ROS 2

RAA-395 · Describe the ROS architecture and how ROS 2 improves it for real-time and multi-robot use.

ROS provides nodes communicating via topics, services and actions, plus tools for TF, visualisation and simulation. ROS 2 replaces the ROS 1 master with DDS discovery, adds QoS, lifecycle nodes, security (SROS2) and better real-time support, and works across multiple robots without a single point of failure.

RAA-396 · How would you structure the ROS 2 software stack for a mobile manipulator?

Separate packages for drivers, robot description (URDF/xacro), ros2_control hardware interfaces, Nav2 for the base, MoveIt for the arm and a task layer using behaviour trees or state machines, with launch files and parameters per deployment.

RAA-397 · How do you achieve real-time control loops with ROS 2?

Use a PREEMPT_RT kernel, a real-time-safe executor thread with high priority, avoid dynamic memory allocation and blocking calls in the loop, lock memory, and keep hard real-time control in ros2_control or on a microcontroller.

RAA-398 · Why might a ROS 2 subscriber receive no messages from a publisher on the same topic?

Mismatched QoS (e.g. reliable subscriber with best-effort publisher), different ROS_DOMAIN_ID, message type mismatch, network or multicast blocked, or different DDS implementations with discovery issues.

RAA-399 · How would you reduce latency for large image transfers between ROS 2 nodes?

Compose nodes in one process with intra-process communication (zero-copy), use loaned messages or shared-memory transport, compress images when crossing networks and use best-effort QoS with small history depth.

RAA-400 · What is micro-ROS?

A ROS 2 implementation for microcontrollers running an RTOS, using XRCE-DDS through an agent on the host, so embedded devices can be first-class ROS 2 nodes.

RAA-401 · How do you secure a ROS 2 system?

Enable SROS2 (DDS Security) with authentication, encryption and access control per node, isolate networks, use per-robot domains and keep host OS and dependencies patched.

RAA-402 · How would you test ROS 2 software before deploying on hardware?

Unit tests (gtest, pytest), launch_testing for integration, simulation in Gazebo with the same launch files, rosbag replay of real data, and CI running tests in containers.

RAA-403 · How do you handle time in ROS when replaying rosbags?

Set use_sim_time to true so nodes use the /clock topic published by the bag player, keeping TF and timestamp-based logic consistent with recorded data.

RAA-404 · A TF lookup fails with "extrapolation into the future". What is the cause and fix?

The requested time is newer than the latest available transform, often due to clock offsets or slow publishers. Synchronise clocks, wait for the transform with a timeout, use the latest available time or fix the publisher rate.

Industrial Automation (PLC, SCADA, Cells)

RAA-405 · Design the control architecture for a robotic welding cell with two robots and a turntable.

A cell PLC sequences turntable indexing, part clamps and robot program selection over PROFINET or EtherNet/IP. A safety PLC handles light curtains, door interlocks and E-stops. An HMI shows status and an MES link records part data and weld parameters.

RAA-406 · How do you structure PLC code for a complex machine?

Use modular function blocks per device and station, a state machine (e.g. PackML states) for modes, clear alarm handling, separated safety logic, consistent naming and version control.

RAA-407 · What is PackML?

A standard state model for packaging and other machines (from ISA-TR88.00.02) with defined states such as Idle, Starting, Execute, Held, Suspended, Stopped and Aborted, and standard tags for line integration.

RAA-408 · How would you calculate cell throughput with a robot bottleneck?

Throughput = 3600/cycle time of the slowest station. If the robot cycle is 45 s and the machine is 40 s, output is 3600/45 = 80 parts/h, so reducing robot cycle time yields gains up to the 40 s limit.

RAA-409 · How would you justify a robotic cell financially?

Compute payback = investment/annual savings. For a $200k cell saving two operators at $50k/year each, payback is 2 years, before maintenance, energy, quality and throughput effects.

RAA-410 · How do you secure industrial control networks?

Segment networks into zones and conduits (IEC 62443), use firewalls and DMZs between IT and OT, disable unused services, apply role-based access, patch carefully and monitor traffic.

RAA-411 · Why is EtherCAT suited to high-speed motion control?

Frames are processed on the fly as they pass through each slave, giving cycle times well below 1 ms, low jitter and distributed clocks for precise multi-axis synchronisation.

RAA-412 · How would you implement PID control in a PLC correctly?

Run the PID in a fixed-interval cyclic task, scale inputs to engineering units, include anti-windup, bumpless manual/auto transfer, output limits and filtering on the derivative.

RAA-413 · What is a digital twin and how is it used in automation?

A virtual model of a cell or line linked to real data, used for virtual commissioning of PLC and robot programs, cycle-time analysis, layout validation and operator training.

RAA-414 · How does virtual commissioning reduce project risk?

The real PLC and robot code runs against a simulated plant, revealing logic errors, interlock bugs and collisions before hardware arrives, shortening on-site commissioning.

RAA-415 · How would you design alarm handling in a SCADA system to avoid alarm floods?

Rationalise alarms with defined priorities and responses, use deadbands and delays, suppress consequential alarms by state, and track alarm rates as a KPI.

Collaborative Robots & Safety

RAA-416 · What standards govern industrial and collaborative robot safety?

ISO 10218-1 (robot) and ISO 10218-2 (integration), with ISO/TS 15066 giving guidance for collaborative operation including body-region force and pressure limits. They cover safety-rated monitored stop, hand guiding, speed and separation monitoring and power and force limiting.

RAA-417 · How is the minimum safety distance for a light curtain calculated?

ISO 13855: S = K × T + C, where K is approach speed (2000 mm/s, or 1600 mm/s if S exceeds 500 mm), T is total stopping time and C is an intrusion allowance based on detection capability.

RAA-418 · A light curtain with C = 0 is used where the total stopping time is 0.2 s. Compute the minimum safety distance.

S = 2000 × 0.2 + 0 = 400 mm. Since 400 ≤ 500 mm, K = 2000 mm/s applies, so S = 400 mm, with any applicable intrusion allowance added for the actual sensor resolution.

RAA-419 · How is speed and separation monitoring protective distance determined conceptually?

The separation must cover the human's movement during robot reaction and stopping time, the robot's travel during reaction and stopping, intrusion distance and position uncertainties of sensors and robot.

RAA-420 · How would you validate a power and force limiting application?

Perform a risk assessment of all contact situations, identify affected body regions, measure transient and quasi-static forces and pressures with a calibrated measurement device and compare with ISO/TS 15066 limits, then adjust speed, payload, tool shape or padding.

RAA-421 · How would you design a cobot palletizer without fencing?

Use PFL plus area scanners that slow the robot when an operator enters the pallet zone and stop it at the pallet being exchanged, so the robot continues on the other side. Validate stopping performance and contact forces in a risk assessment.

RAA-422 · What is the risk assessment process under ISO 12100?

Determine machine limits, identify hazards, estimate risk (severity and probability), evaluate it and reduce it using the three-step method: inherently safe design, safeguarding, then information for use.

RAA-423 · How do you determine the required Performance Level for a safety function?

Use the ISO 13849-1 risk graph with severity of injury (S), frequency or exposure (F) and possibility of avoidance (P) to obtain PLr, then design the architecture (category, MTTFd, DC, CCF) to meet it.

RAA-424 · What safety standard applies to AMRs and driverless industrial trucks?

ISO 3691-4, which covers safety requirements for driverless industrial trucks and their systems, including personnel detection, speed limits and operating zones.

RAA-425 · What are the safety risks of a cobot holding a sharp or hot tool and how are they mitigated?

Even low-force contact can cut or burn, so PFL limits don't protect. Mitigate with tool guarding, reducing speed near people, keep-out zones, SSM with scanners or redesigning the task so the hazard faces away from operators.

Other levels: Basic · Intermediate · Tricky · All Robotics & Automation questions