My Projects

RL Robotic Arm Sim
RL Robotic Arm Sim
Robotic arm simulation because why not ๐Ÿ˜Š
PythonPytorchMujoco
  • In progress
RL Deep Q-learning Pong Agent
RL Deep Q-learning Pong Agent
Pong through reinforcement learning ๐Ÿ“
PythonPytorchGymnasiumReinforcement Learning
  • This project teaches a Deep Q-Network (DQN) agent to play Atari Pong using PyTorch, with tricks like replay memory and stacking frames to help it learn better.
  • It uses Gymnasium and ALE-Py to run classic Atari games, making it easy to experiment with reinforcement learning and see your agent improve over time.
Autonomous drone swarm
Autonomous drone swarm
๐Ÿ›ธ Building and flying Crazyflie drones autonomously
ROS2CrazySwarmViconC++Python
  • Worked in a team of 3 to research UAVs for Dr. Yash Pant in the CL2 group
  • Simulated in Webot, achieved localization through Vicon, and experimented with Crazyswarm for multiple drones
2-axis high precision gantry
2-axis high precision gantry
Designing a gantry system
STM32CI2CUARTSPI
  • Designed a 2-axis gantry system using STM32 microcontroller and servo motors for precise positioning control.
  • Implemented limit switches with hardware interrupts and debouncing to prevent system damage when reaching travel limits.
  • Integrated potentiometer with ADC for real-time speed control and smooth motion adjustment.
NBody CUDA Implementation
NBody CUDA Implementation
Accelerating NBody for NVIDIA's Cuda Certificate
C++CUDA
  • Developed a parallel CUDA simulation for N-body gravitational interactions.
  • Leveraged CUDA unified memory and asynchronous prefetching to optimize data transfer and computation across multiple streaming multiprocessors.
  • Achieved real-time performance, reaching billions of interactions per second.
EV3EAL
EV3EAL
A card dealing robot (harder than you think ๐Ÿ˜Š).
CEV3SolidWorks
  • Led a group of 4 to design a robotic device capable of rapidly and accurately distributing playing cards.
  • Used EV3 Brick with 3D printed parts along with ultrasonic, colour, and gyro sensors to build a dealing system.
  • Developed a C script to allow for robot to process user instructions and to deal with up to 12 players.
Real-Time Operating System
Real-Time Operating System
A custom RTOS on STM32
CSTM32
  • Designed and implemented a preemptive RTOS for STM32 with multi-threading support.
  • Provided kernel APIs for task management, scheduling, and inter-task communication.

Connect

Design Inspired by Achyut Katiyar