IRoC-U 2024 Proposal Report
IRoC-U 2024 Proposal Report
by
Pragyan NITK
10326
December 2023
NATIONAL INSTITUTE OF
TECHNOLOGY KARNATAKA
Table of Contents
1. Obstacle Navigation:
a. Use Case: The rover encounters obstacles and successfully navigates through them.
b. System Requirements:The rover must utilize sensors to identify obstacles (150 mm X 150
mm X 150 mm and 300 mm X 300 mm X 300 mm).
c. The mobility system must allow the rover to traverse over 150 mm X 150 mm X 150 mm
obstacles, avoiding the larger ones.
2. Crater Navigation:
a. Use Case: The rover approaches craters and navigates through them without getting stuck.
b. System Requirements: Sensors must identify craters with diameters of 200 mm.
c. The rover must be capable of traversing through craters of diameter 200 mm while avoiding
the larger ones (400 mm diameter).
3. Autonomous Navigation
a. Use Case: The rover demonstrates autonomous navigation capabilities.
b. System Requirements: The rover must perform waypoint navigation in both commanded
and autonomous modes.
2. Sample Picking Use Cases:
2.1 Target Identification:
a. Use Case: The rover identifies the sample target for picking.
b. System Requirements:Visual sensors must successfully identify sample targets (hollow cylinders
with closed ends).
c. Sample tubes should have specific characteristics (mass, shape, size, material, color).
2.2 Picking and Loading:
a. Use Case: The manipulator arm picks up the sample and loads it securely onto the rover.
b. System Requirements:A manipulator arm must be mounted on the chassis.
c. The manipulator should use a gripper to pick up the sample tube.
2.3 Target Location Identification:
a. Use Case: The rover identifies the location to unload the sample into a cylindrical container.
b. System Requirements:The rover must identify a cylindrical container of specific dimensions at
the target location.
2.4 Unloading and Placement:
a. Use Case: The rover approaches the target, and unloads the sample into the cylindrical container.
b. System Requirements:The rover must approach the target, and unload the sample inside the
specified cylindrical container.
2.5 Final Parking:
a. Use Case: After dropping the sample, the rover positions itself within a specified circle.
1 | Page
b. System Requirements:After dropping the sample, the rover must be positioned within a circle of
diameter 1500 mm from the final point.
2 | Page
3.9 Prohibition of Robotics Kits:
a. Use Case: Teams build their rovers without using readymade robotics kits.
b. System Requirements:Use of readymade robotics kits is strictly prohibited.
These use cases and system requirements collectively define the functionalities and performance
expectations for the lunar rover in the competition.
System Architecture
The figures illustrate the system architecture, categorizing subsystems for clear visibility and easy
recognition. These categories are based on the specific tasks each subsystem performs to make the Pragyan
Rover work.
The key subsystems are
1. Autonomous Navigation System:
This system helps the rover move independently by analyzing its surroundings and making decisions
without human control.
2. Picking Mechanism System:
This system focuses on a mechanism that allows the rover to grab or pick up objects, crucial for tasks like
collecting samples.
3. Emergency Response System:
This system is designed to handle unexpected situations during the rover's mission, triggering appropriate
3 | Page
responses to address potential issues.
The organization of interfaces among these subsystems is well-planned, considering the connections and
interdependencies between them.
4 | Page
Roving Mechanism
5 | Page
a. issues.
6 | Page
Mechanism for Sample Pick-and-Place Activity:
Schematic representation of the chosen Mechanism:
Working Conditions:
The arm activates in two different scenarios to perform two different tasks.
1) When the rover stops, the arm starts and searches for the sample and target with the help
of the stereo cameras, and it proceeds to pick up the sample and place it in the target
cylinder.
2) When the rover topples, we command the arm to help get the rover upright by applying
force on the ground. We use high-torque servo motors for the same.
Considering the above requirements for a Manipulator Arm specific to space operations, we
have developed the following to implement on our Rover.
Autonomic Functioning:
1) The Teensy 4.1 development board is used to command the arm.
2) The Inverse Kinematics algorithms shall be hard-coded into the controller of the
rover.
3) Concerning the Position and Orientation data of the sample provided by the
onboard stereo camera, the controller then calculates the position and mobility of
each of the components of the arm autonomously.
4) Transformation matrices of the joints will be developed for the specs of the
manipulator's arm.
Justification:
Microcontroller:
8 | Page
Arduino Atmega328P Teensy 4.1
The Teensy 4.1 is not only more precise than the competitor, but it also makes it easy to hardcode
algorithms with help of an SD card. It has more potential to be accurate, which is very important while
dealing with tiny objects such as our sample.
9 | Page
Issues with the power source, such as reduced efficiency, leading to a decrease in the rover’s
operational capabilities.
a. Dynamic Voltage and Frequency Scaling(DVFS) is a technique that aims to reduce
dynamic power consumption by dynamically adjusting the voltage and frequency of the
ROS system.
b. The power consumption of the peripheral components is minimized when the instrument
malfunctions and is not actively used.
4. HEALTH MONITORING SYSTEM:
Uncontrolled fires due to equipment malfunctions and failures, overloading, and short-circuiting of
the electrical components.
a. The temperature sensor is used to detect the overall temperature of the rover components;
this temperature sensor will pass on the information to the Raspberry Pi, which will decide
on whether to turn off the component depending on the algorithms assigned to it and avoid
uncontrolled fires due to overheating etcetera.
b. Voltage and current sensors detect irregularities or fluctuations in the power supplied to
the rover. Ensure proper working of the instruments; in case the power supply becomes
overloaded or a Short circuiting, emergency shutdown is enabled and the rover is turned
off temporarily. If the problem persists then the kill switch button will be enabled and the
rover will be turned off completely.
5. INSTRUMENT MALFUNCTIONS:
Problems with scientific instruments, cameras, or sensors hinder the rover’s ability to collect
accurate data. Malfunctions in critical components such as wheels, joints, or the robotic arm affect
the rover’s ability to move or conduct experiments.
a. The Malfunctioning instrument will be turned off if it does not perform the desired work
so that the power is conserved.
b. When the rover’s function is out of control, we will enable the Kill Switch button to turn
off the rover system. The condition to enable the Kill Switch button is coded as a set of
algorithms in the Raspberry Pi, which gives instructions to the Robotic arm that turns off
the rover system. These actions may include stopping movement and activating protective
measures.
Hardware Identification
Through thorough research on rover hardware, we've identified essential components and their
justification, along with the estimated bill of materials. These carefully selected parts ensure optimal rover
performance. Our commitment to precision and efficiency is reflected in the well-justified choices,
promising a robust and capable rover.
10 | Page
Simple, cost-effective,
Roving Brushed DC Motor
1 Motors 6 controllable for
Mechanism with encoders
mobility
Roving
3 Wheels Traction wheels 6 Better shock absorption
Mechanism
Raspberry Pi 4
Navigation 1
(8GB RAM)
4 Controllers Optimal Rover Control
Picking
Teensy 4.1 1
Mechnism
Carbon Fibre Composite
5 Structural 12pcs
Sheets Materials Good balance of weight
and strength
6 Aluminium Sheets
Structural
Metal 8pcs
Picking Precision in rover arm
7 Motors
Mechanism
Servo motors 15
control
Enhances 3D
Navigation Stereo camera 1 perception, navigation
precision
Voltage-current
Health monitor 1 Battery management
sensor
Communication Roving Radio Frequency Enhances rover control
9 1
system Mechanism Module and communication
Best insulation and
Emergency Thermosetting
11 Switch
Response System Plastics
1 poor conductivity of
current
11 | Page
2. WHEELS:
a. Traction wheels provide a better grip because of friction, helping for better movement on
the arena(M-sand).
b. It helps distribute the rover's weight evenly, reducing ground pressure and thus preventing
sinking.
c. They provide better stability.
3. CHASSIS:
a. Aluminium is lightweight and durable, offering good strength, while carbon fibre provides
outstanding strength with minimal weight and machinability.
b. The carbon fibre helps reduce vibrations, which is helpful as we are not using any
suspensions in the rover.
c. Because of its conductive properties, Aluminium helps in heat transmission to the
environment, which can improve the rover's performance.
4. MOTORS:
a. We use brushed DC motors with encoders for roving mechanisms because they are
advantageous in rovers due to their simplicity and ease of control. These motors allow the
speed and direction of the rover to be regulated with minimal complexity using navigation
algorithms.
b. We use a servo motor for the robotic arm in the picking mechanism for the following
reason: they are ideal for robotic arms in rovers because of their precise and accurate
control. It also enables smooth and delicate movements.
c. The servo motor allows the robotic arm to hold a fixed position, improving the rovers’s
dexterity and accuracy in manipulating objects and making them vital for tasks that need
precision and reliability in different areas.
5. SENSORS:
a. Opting for a stereo camera over a depth camera in a rover proves advantageous, leveraging
its capacity to discern depth by comparing offset views from two lenses. This results in
highly accurate 3D environmental perception, effective in various lighting conditions.
b. The IMU captures acceleration, gyroscope, and magnetometer data, facilitating precise
orientation and motion tracking.
c. Temperature sensors monitor environmental conditions, ensuring optimal functionality.
This comprehensive dataset enhances navigation, obstacle avoidance, and system health
monitoring, fortifying the rover's reliability and performance across diverse terrains and
contributing to extended mission success.
d. Voltage and current sensors are crucial in battery management and Power Distribution.
6. CONTROLLERS:
a. Employing Raspberry Pi and Teensy as controllers for our rover bestows unique
advantages.
b. Raspberry Pi can work on ROS2 packages without hassle compared to other
microcontrollers like Arduino.
c. The Teensy board synergizes with this setup, contributing real-time control capabilities
that ensure precision in managing motors and sensors. This harmonious blend achieves an
optimal equilibrium between computational prowess and real-time responsiveness, making
it an exemplary choice for rover applications.
12 | Page
d. Teensy board has a 64-bit floating point number, which helps manage data points, and has
Cortex M7 running at 600MHz, which helps control, which is the main reason for choosing
this controller.
e. Its distinguishing features include flexibility, reliability, and a community-driven
development ethos, setting it apart from alternative controllers.
BUDGET ESTIMATION:
Total 98,500
Software Identification
Software systems of an autonomous robot follow a specific Architecture.
13 | Page
a. Physical World
b. Sensor (collect data from the sensor for spatial awareness and localization)
c. Perceive (Interpreting sensor data)
d. Plan (Includes motion planning)
e. Execute (Actuator inputs are calculated)
A robot communicates with the real world through sensors. It is the major interaction between the
autonomous body and the real world.
2. ODOMETRY SYSTEM:
a. This data is then interpreted and broken down into valuable coordinates, which the
controllers can process to provide actuation and movement, and the perceived data is
processed for obstacle detection. We will use Visual odometry by integrating IMU and
14 | Page
encoders in our rover, which uses the visual information from the stereo camera and
gives an updated pose and trajectory of poses, hence providing a reliable and accurate
estimation of motion for autonomous navigation.
b. For the localization of rovers, Monte Carlo localization algorithms allow flexible sensor
fusion, considering uncertainties in motion and sensor measurements, thus being
adaptable to navigating in dynamic environments. We get the pose estimate and
associated uncertainty measure by giving sensor measurements and odometry inputs.
3. NAVIGATION STACK:
Once the filtered odometry data is obtained, the ROS2 nav2 package facilitates navigation and
path planning, which includes high-level path planning along with local planning to avoid
obstacles and adjust trajectory to traverse through free spaces.nav2 includes tools for
incorporating SLAM and sensor data, into our rover navigation system. This also computes the
actuation and motion required for the robot to traverse that point.
To perceive the world through sensors a stereo camera and an IMU will be used. The stereo
camera captures pairs of images and provides visual information about the environment;
with depth information being obtained from disparity in pixels. The RGB image provides
visual context to a depth image by capturing color information. The x y z coordinate of the
robot and its yaw, pitch, and roll for the world's reference frame is found. The data and
information obtained by the sensors will be analyzed to give odometry for the robot. The
odometry system fuses information from the stereo camera (position and orientation) and
the IMU (rover’s orientation and acceleration in 3D) to estimate the rover's motion.
16 | Page
This information is fed into the Robot localization node to filter noise and sensor fusion. It
implements an Extended Kalman Filter (EKF) by taking inputs from odometry, and IMU
and refining the estimate of the rover’s state to provide an accurate and stable position and
orientation of the rover as output, to be used in navigation and mapping.
b. NAVIGATION
The filtered-out odometry values are provided to the RTABMAP function in the ROS2
Nav2 package along with the coordinates of obstacles that need to be traversed and
avoided. RTABMAP generates a 3D point cloud representing the surroundings and a 2D
cost map with obstacles marked. The Nav2 package uses a 3D map generated by
RTABMAP for path planning. Information from a 2D cost map enables navigation around
obstacles. Based on the path planned, it computes control signals for the rover’s actuators
to follow the trajectory while avoiding the stated obstacles. These computed control signals
are fed to motor wheels to control the speed and direction of our rover.
c. FEEDBACK SYSTEM
The rover continuously receives feedback from its sensors, depth information, including
odometry updates, and information from the 2D cost map. Path planning and control
signals are adjusted based on the feedback received; so that the rover corrects errors and
follows a path adapting to changing conditions.
We will be using commanded mode to move till the waypoint traversing across the
obstacles 2,12,4 . Once the rover reaches the designated waypoint, the autonomous mode
is switched on.
The stereo camera provides information about the position and orientation of the sample
object to be picked and placed. This is fed into an inverse kinematics algorithm to compute
the joint angles to perform the task autonomously. Once the sample is on board, the rover
switches back to autonomous navigation mode. The nav2 plans a path considering the
17 | Page
current state of the rover and executes while avoiding obstacles. After reaching the target
destination, the manipulator places the object in the desired position.
Fig9: 2D Laser scan and is provided manually, whereas the 3D automap and point cloud are computed by
RTABMAP.
a. Temperature detection:
There are two temperature sensors, one for internal temperature which is to monitor the working
temperature of elements of the rover, and the other is to monitor the surrounding
temperature.Once the sensor determines the temperature, then if it’s in the range of working
18 | Page
temperature, it’ll proceed. But if the temperature is abnormal that is not in the range the whole
system will go into sleep mode.
In sleep mode, the motor driver, the stereo cam, and all the sensors except the temperature
sensors will go into sleep/ standby mode. And since the extreme difference in temperature may
cause damage to certain parts of the rover hence, they are saved by using materials like gold foil,
etc.
b. Voltage inspection:
This part focuses on monitoring that an adequate amount of voltage is provided to each part of the
rover so that it functions properly. The data is collected by a voltage sensor which is used to
monitor the voltage supply to all parts of the rover, especially all the 6 motors.
If the voltage supply is as per the req. the rover will go on as per the plan. But if the voltage is
less than required, then the devices that aren’t in use currently will be withdrawn power from and
be provided to the motors. But if the voltage supplied is more than required then there will be an
immediate stop of the working of the rover.
Test Plan
1. COMPONENT TESTING:
a. Manipulator Arm Testing:
1. Full range testing: Verifying that the arm can move through its full range of motion.
2. Joint testing: Testing the movement of joints in all 5 degrees of freedom.
3. Gripper testing: Testing the gripper movements and ability to hold the sample tube
without damaging the tube.
4. Confirmation of Power on Built-in Test
b. Sensor Testing:
Validating sensor accuracy, range, resolution, and responsiveness of the following sensors
1. Stereo camera: Fixed distances and patterns on the wall
2. IR Sensors: Creating hotspots Using water with different temperatures.
3. Inertial Measurement Unit (IMU): Testing in different terrains where accelerations and
orientations are measured.
4. Wheel encoders: Moving the wheels at different speeds and measuring
The power supply to the arm and sensors is confirmed with the help of a green LED light placed
near the manipulator arm.
2. INTEGRATION TESTING:
a. Manipulator Arm system integration test:
Ensure seamless integration of the following while conducting a picking activity of a sample
cylindrical tube.
19 | Page
1. The stereo camera, IMU position, and orientation data are fed to the onboard Raspberry
Pi microcomputer.
2. Perform inverse kinematics calculations and calculate the angles of each joint.
3. Ensuring the manipulator arm executes the movements to pick/drop the sample.
b. Autonomy Testing:
Validating our rover's ability to autonomously navigate and identify obstacles using navigation
algorithms based on sensor inputs.
1. Sensor inputs from IMU and stereo camera are used to make path planning and obstacle
avoidance in ROS.
2. Output motion is achieved through 6 motors in each wheel from the microcontroller
(Arduino).
c. Odometry testing:
1. Ensuring capture of synchronised stereo camera image pairs in different scenarios,
including light conditions, textures, and depth
2. Recording IMU data synchronised with the stereo camera.
3. Ensuring the timestamps of stereo camera images and IMU data are accurately
synchronised. Timestamp alignment is crucial for associating visual and inertial
measurements correctly.
3. ENVIRONMENTAL TESTING:
Dust and Particle Testing:
Assess the rover's performance in M-sand. Ensuring the rover can recover when it gets stuck in
the sand.
4. FUNCTIONAL TESTING:
a. Sample Collection Tests:
Executing a scenario where the rover autonomously identifies, approaches, and collects samples
using the manipulator arm and drops off at a designated drop point.
b. Mobility Tests:
Validating the rover's ability to navigate various terrains (rocker -bogie) and obstacles while
carrying out sample collection tasks.
1. Testing the ability of the rover to climb a sloped terrain of minimum 15⁰.
2. Climbing a cube of side 150mm
3. Traverse through a crater with a diameter of 200mm
c. Communication Tests:
Ensuring continuous and reliable Radio communication between the rover and the base station
with incremental distances of 5m from 0 to 25m since the maximum distance between the rover
and the antenna is less than 25m.
5. ENDURANCE AND RELIABILITY TESTING:
a. Long-Term Testing:
Assessing the rover's performance over extended periods to ensure sustained functionality.
20 | Page
b. Failure Mode Testing:
Simulating potential failure scenarios and ensuring that the “kill switch” is executed on
command would cease all rover movements and withdraw all the power from the battery.
6. SIMULATION AND VALIDATION:
a. Software Simulation:
Running simulated missions to validate the rover's sample and obstacle detection algorithms,
navigation algorithms, and response to various scenarios.
1. Autonomous navigation algorithms are tested using Gazebo and Rviz.
2. Ensuring implementation of Extended Kalman Filter (EKF) to filter noise and produce
accurate and reliable position and orientation of the rover.
3. Validating through conducting scenarios in various terrains for path planning and
obstacle avoidance.
b. Field Testing:
Conducting real-world tests in environments similar to the intended operational arena.
7. SAFETY TESTING:
a. Safety Checks: Ensuring safety protocols are in place to prevent hazards during operation.
b. Emergency response system:
Ensuring the effective activation and functioning of the emergency response system of the rover.
A red LED light is turned on whenever emergencies arise and the rover switches to the
emergency response mode, which would allow the base station to make informed decisions.
1. Communication loss: Simulating a scenario where the main communication link
fails, then testing our rover’s ability to switch to alternative radio frequencies of
communication.
2. Power depletion: Executing a situation where there is a reduction in power supply
efficiency of the battery, and ensuring the working of dynamic voltage frequency
scaling(DVFS) technique which dynamically adjusts the voltage and frequency of
ROS.
3. Health Monitoring system (HMS):
a. Exposing the temperature sensor in a hot water whose temperature is
higher than operating temperature of the components and validating HMS’
ability to turn off the component using HMS algorithm.
b. Conducting an overloading and short circuit scenarios and testing the
emergency shutdown of the rover.
System Specifications
21 | Page
1 Motor DC Geared Motor with encoder,75rpm
Rated Voltage: 12V
No-load Current:70mA
Rated current:410mA
Rated Torque: 3kg-cm
Shaft Diameter: 6mm
Gear Ratio:60:1
22 | Page
Magnetic Field Strength Vector (20Hz)
Linear Acceleration Vector (100Hz)
Gravity Vector (100Hz)
Temperature (1Hz) Ambient temperature in
degrees Celsius
12 VoltageCurrent Voltage:100V
EnergySensor Amperes:100A
Module Ampere hour Serial UART Communication Over Current Detection
MODBUS Compatible
No Shunt Required
13 Transmitter and TS835 Fpv 5.8G 600Mw 48Ch (2-6S) Wireless Av Transmitter
Receiver
No. of Channels: 48CH
Antenna Gain: 2db
Frequency: 5.8G
Video Format: NTSC / PAL Auto
48 CH compatible with all FPV 5.8g receivers.
5.8G 600mW 40 Channels AV wireless FPV transmitter
Super small 200mA current for 600mW wireless transmitter power.
600mW transmitter power assures 5 KM distance in the open area,
Project management
Responsibility Identification
No. Task Main Responsibility Secondary Responsibility
23 | Page
Hardware Team Member 2
1 Team Member 6
Procurement Team member 5
Team Member 7
2 Chassis Structuring Team Member 8
Team Member 6
Team Member 3
3 Design Team member 1
Team Member 6
Algorithm Team Member 1
4 Team Member 3
Management Team Member 10
Team Member 4
5 Circuit Ideation Team Member 9
Team member 5
Team Member 8
6 Test Planning Team member 2
Team Member 9
Team Member 1
7 Inspection Team Member 4
Team Member 2
8 Logistics Team Member 6 Team Member 5
Fundraising and Team Member 2 Team Member 3
9
sponsorship Team Member 4 Team Member 5
Schedule Management
24 | Page
12 Circuit building 05-03-2024 25-03-2024 20
3 3D Printing 10,000
26 | Page