Cyber Security
NetLens: A Passive Network Traffic Analyser and Visibility Dashboard for a College Computer Lab
Flows, top talkers and scan indicators for the lab's own network — headers only, no blocking, full history
- Python
- Scapy
- MySQL
- +2
A buildable ROS 2 Humble robot that maps a modelled warehouse aisle, and a study of how odometry drift grows and SLAM corrects it
Mapped to your syllabusVTU 2022 Scheme (OBE/CBCS) · BXX685 Major Project Phase-I · Semester 6ROS 2 Differential-Drive Robot with SLAM Mapping Study for a Warehouse Aisle builds a working differential-drive robot on ROS 2 Humble and then uses it to answer a measurement question, not just to demo: how fast does wheel-odometry drift grow on a repeatable route, and how much of that drift does a 2D SLAM system actually remove?
Warehouse robotics is today's biggest industrial deployment of mobile robots in India — fulfilment centres around Bengaluru, Hyderabad and Bhiwandi run hundreds of aisle AMRs — and nearly all are differential-drive platforms with a 2D lidar, exactly what a student team can reproduce. Our robot pairs a Raspberry Pi 4 on Ubuntu 22.04 with an Arduino Nano motor controller: the Nano receives velocity commands and reports encoder ticks, the Pi integrates them into odometry, an MPU6050 IMU supplements the heading estimate, and an LD19-class 2D lidar feeds slam_toolbox, the pose-graph SLAM package behind ROS 2's Nav2 stack.
The study surface is a modelled warehouse aisle — cardboard shelving, pallets and a marked 10-metre closed loop on the lab floor. The team drives a fixed route, records the odometry trail against a taped floor plan, repeats the route with SLAM mapping active, and compares the two: drift in metres per loop, map quality against the floor plan at two grid resolutions, and the effect of loop closure. The complete ROS 2 workspace, firmware, launch files and evaluation scripts form the source bundle, so the next batch can rebuild the robot or the Gazebo-only simulation.
Syllabus alignment
Warehouse AMRs are differential-drive robots that localise with 2D lidar SLAM, and they are now a major employment sector for robotics graduates in India's e-commerce supply chain. Yet students meet this technology either as black-box commercial platforms they cannot inspect, or as kit tutorials they cannot extend into a defensible study. Without building the stack themselves, graduates cannot explain where odometry comes from, why it drifts, what a pose graph does, or how map resolution trades detail against memory.
There is a need for a buildable, budget-scale differential-drive robot on ROS 2 Humble — with team-written firmware bridge, odometry, transforms and SLAM integration — together with a repeatable mapping study protocol on a modelled warehouse aisle that quantifies odometry drift, measures SLAM-corrected map quality against a floor plan, and makes the numbers reproducible by others, all within a two-semester major-project structure.
This project constructs a differential-drive mobile robot on ROS 2 Humble with encoder odometry, an IMU, a 2D lidar and slam_toolbox, and conducts a quantitative mapping study on a modelled warehouse aisle. The study measures wheel-odometry drift over repeated closed loops, evaluates SLAM-corrected maps against a taped floor plan at two resolutions, and shows where the correction comes from.
Every mobile robot answers two questions — where are my wheels, and where am I really? Wheel odometry answers the first cheaply but integrates error: wheel slip, unequal radii and encoder quantisation accumulate until the estimate is useless. SLAM answers the second by matching lidar scans into a consistent map, correcting drift when the robot recognises places it has seen. Industrial AMRs run this loop thousands of times a day in controlled, structured aisles — which makes the warehouse aisle the right first problem for a student-built platform.
In scope
Out of scope
The project follows a build → integrate → study sequence over 16 weeks, aligned to the two VTU project phases.
| Phase | Weeks | Work | Deliverable |
|---|---|---|---|
| Literature & definition (Phase-I) | 1–2 | Study ROS 2 concepts (nodes, topics, TF, QoS), differential-drive kinematics and pose-graph SLAM; finalise specifications | Phase-I report (BXX685) |
| Simulation twin | 3–4 | Gazebo model with matching kinematics; teleop, odom and slam_toolbox running in simulation; TF tree verified | Working sim stack |
| Hardware build | 5–8 | Chassis, motors, driver, Nano firmware (C), power system; lidar and IMU interfaced to the Pi | Rolling robot |
| ROS 2 integration | 9–11 | Firmware bridge, kinematics/odom node, IMU fusion, lidar bring-up, slam_toolbox launch; calibration of wheel radius and track width | Integrated robot |
| Mapping study | 12–13 | Drift laps, SLAM laps, map capture at two resolutions; evaluation scripts and metric tables | Results dataset |
| Documentation & viva | 14–16 | Phase-II report (BXX786), PPT, live demonstration with the modelled aisle | Final submission |
Testing approach: unit level (firmware command/tick loopback tests, kinematics node verified against hand-computed poses), integration level (TF tree audit with tf2 tools, odom-vs-ground-truth straight-line and rotation tests), and system level (the study protocol itself: five laps per condition, logged rosbags, scripted metrics). The Gazebo twin doubles as a regression harness — every node is verified in simulation before it touches hardware.
The robot follows the standard ROS 2 layered architecture: real-time firmware, driver nodes, state estimation, SLAM and operator tools, connected by a documented TF tree and topic graph.
flowchart LR
TEL["Keyboard teleop"] -->|"/cmd_vel"| BR["Firmware bridge node"]
BR -->|"velocity frame over USB"| NANO["Arduino Nano motor firmware (C)"]
NANO -->|"PWM + direction"| DRV["BTS7960 driver"]
DRV --> MTR["Encoder gear motors"]
MTR -->|"ticks at 20 Hz"| BR
BR -->|"/ticks"| KIN["Kinematics node: v = (vL+vR)/2, omega = (vR-vL)/b"]
IMU["MPU6050"] -->|"/imu"| KIN
KIN -->|"/odom + odom->base_link TF"| SLAM["slam_toolbox pose-graph SLAM"]
LID["2D lidar"] -->|"/scan"| SLAM
SLAM -->|"/map + map->odom TF"| RV["RViz2 + rosbag + evaluation scripts"]
KIN --> RV
AISLE["Modelled warehouse aisle + taped floor plan"] -->|"scans and laps"| LIDThe TF tree is the architecture's contract: map→odom published only by SLAM, odom→base_link only by odometry. Keeping that ownership strict is what makes the drift study meaningful — the gap between map→odom and identity is the drift that slam_toolbox removes.
Module 01
Owns the physical robot: chassis layout with correct track width and centre of mass, motor mounting, caster selection, BTS7960 wiring, buck-converter power tree separating 12 V drive from 5 V Pi supply, and the wiring harness documentation that the rest of the team plugs into.
Module 02
Writes and tests the Arduino Nano firmware in C: 50 Hz loop reading encoder interrupts, parsing velocity frames from USB serial, closed-loop PWM via a simple P controller per wheel, and tick reporting at 20 Hz with overflow-safe counters. Delivers loopback tests proving command/tick fidelity before ROS integration.
Module 03
Implements the firmware-bridge node, the differential-drive kinematics node publishing /odom and odom→base_link, the MPU6050 complementary filter, and the wheel-radius/track-width calibration procedure. Owns the TF tree audit and the straight-line and rotation ground-truth tests that validate odometry before any SLAM claims.
Module 04
Brings up the lidar driver and slam_toolbox with tuned parameters, owns the study: the modelled aisle construction, route scripts, rosbag capture plan, and the Python evaluation scripts that compute drift and map-alignment metrics from the bags, producing the results tables and plots for the report.
Slide 1
ROS 2 Differential-Drive Robot with SLAM Mapping Study
Slide 2
Warehouse AMRs and the Skills Gap
Slide 3
Problem Statement
Slide 4
System Design — Hardware
Slide 5
System Design — Software and TF
Slide 6
Kinematics & Odometry
Slide 7
SLAM with slam_toolbox
Slide 8
The Modelled Warehouse Aisle
Slide 9
Study Results — Drift and Map Quality
Slide 10
Individual Contribution
Slide 11
Limitations
Slide 12
Conclusion & Future Scope
Bullets, speaker notes and the .pptx · ₹2,000
Read each answer, close it, and say it in your own words. Your viva will ask. Now you'll know.
SLAM — simultaneous localisation and mapping — builds a map from sensor observations while estimating the robot's pose within it, so both map and pose improve together. Wheel odometry integrates encoder motion and therefore integrates every error source too: wheel slip, unequal wheel diameters and surface irregularities accumulate without bound, so odometry is reliable over seconds and metres but drifts hopelessly over loops, which our study measured directly.
There are two transforms: map→odom, published exclusively by slam_toolbox, representing the accumulated correction between the map frame and odometry; and odom→base_link, published exclusively by our kinematics node from encoder and IMU data. This strict ownership matters because the map→odom gap is exactly the drift SLAM corrects — if a second node published either transform, the tree would fight itself and the study's numbers would be meaningless.
ROS 2 Humble is the current LTS with industry adoption in exactly the warehouse-AMR sector we study, it removes the ROS 1 master through DDS discovery, gives us per-message QoS control that matters for lidar streams, and slam_toolbox and Nav2 are now maintained on ROS 2 first. Starting a new build on ROS 1 would mean inheriting a deprecated ecosystem and no migration path.
+11 more questions, with answers
Unlocks with the project · ₹2,000
Unlock for ₹2,000What to change before it goes anywhere near a submission. Skipping it is how the demo fails live.
Unlocks with the project · ₹2,000
Unlock for ₹2,000How to study it, adapt it and walk your examiner through it, step by step.
Unlocks with the project · ₹2,000
Unlock for ₹2,000OnlyProjects. (2026). ROS 2 Differential-Drive Robot with SLAM Mapping Study for a Warehouse Aisle: B.Tech / B.E. Robotics & Automation project bundle [Educational resource]. https://onlyprojects.online/projects/btech-robotics-ros2-differential-drive-slam-mapping-study
Keep browsing
Same degree, same syllabus slot, different idea. Pick the one your guide will actually approve.
Cyber Security
Flows, top talkers and scan indicators for the lab's own network — headers only, no blocking, full history
Mechanical Engineering
A human-powered spiked-roller dehusker for small coconut growers around Pollachi — designed, fabricated and tested for ₹ under 20,000
Aerospace / Aeronautical
Build a subsonic test tunnel on a student budget, then trace lift and drag on a 3D-printed NACA 0012 against theory
Agricultural Engineering
Irrigates vegetable beds by soil-moisture thresholds instead of habit, and proves every litre with a flow meter
Artificial Intelligence & Machine Learning
Forecasts kharif yield for Karnataka districts from six decades of ICRISAT district data and tells extension officers which crops look safe this season
Artificial Intelligence & Machine Learning
Screens CPCB river-water samples into quality bands, flags stations that fail bathing criteria and predicts likely BOD exceedance when lab results are missing