EE Student building a foundation in Robotics & Control Systems. Learning C++, Python, MATLAB, and ROS 2. Documenting my journey from theory to a working machine
Day 20 - ROS2
Today I customized the turtlesim physics and environment variables using the command line via parameters.
The toolkit is growing.
#ROS2#Robotics#DailyProgress#CPlusPlus
Day 18 ROS2 (Services)
Mastered ROS 2 Services today.
Moved beyond just moving the robot and started controlling the simulation environment itself.
Resetting the world
Spawning new agents
Deleting agents
All from the terminal. On to Parameters next!
#ROS2#Robotics
Day 17 ROS2 (Topics)
Figured out how to bypass the nodes and publish raw data directly to the robot using the command line.
ros2 topic pub /turtle1/cmd_vel ........................
Day 16 PCB design
Designed and routed a CH340C USB–UART board from scratch.
• Clean USB D+/D− routing
• Proper decoupling & power loops
• Solid GND plane
• TX/RX broken out for debugging
Now, I do not know how clean and great this is, Anybody?
Day 2 ROS2 - Nodes & Introspection (1/2)
Completed the ROS2 node tutorial today.
What I learned:
A node is an independent process with a clear responsibility.
Nodes don’t talk to each other directly, communication happens via topics, services, parameters
Design Debugging (2/2)
While refining the part from the technical drawing, I noticed a geometry mismatch at the base junction (highlighted).
The drawing and the resulting solid don’t fully align.
I didn't seem to find the exact problem in the sketch.
Day 15 - CAD Progress(1/2)
Redesigned the same part with cleaner design intent.
Reduced feature clutter in the model tree by integrating operations instead of stacking unnecessary fillets and features.
• More stable parametric edits
• Easier debugging
• Better maintainability
Day 14 PCB design
Started a USB-to-UART (CH340C) board.
Today was all about getting the schematic right:
• USB power (VBUS, GND)
• Proper wiring
• USB D+ / D− routing
• TX/RX out cleanly
2. teleop is just another node publishing velocity commands. Keyboard input is irrelevant long-term.
3. Multiple turtles = namespaces, not multiple terminals.
4. rqt is a productivity layer (services), the same ROS interfaces run underneath.
Day 14 ROS2 - turtlesim + rqt
Started my ROS2 journey today with turtlesim as a way to understand how ROS actually thinks.
Learnings:
1. turtlesim_node publishes state and subscribes to commands it doesn’t “control” anything, it only reacts to messages.
Day 13 — Reality Check FreeCAD crashed unexpectedly and I lost ~2 hours of unsaved work. Investigating whether it was a system issue or a mis-click on my end.
Lesson Learned:
Save early. Save often.
Back to rebuilding ASAP because I am back to this.
Day 11 Work Log
I work on my c++ , python and Freecad technical drawings of my previous Freecad design but is yet to be completed as i am trying to figure it out. Well I also tried to install ROS2 on a VM today for learning basics but Ubuntu download site is down.😞
Day 11 Control system
Today I studied about State Space Analysis. State Space eq. and output eq. How to get TF from state space equations and vice versa. It was very important study as it play a important role in modelling of a control system.
Components:(2/2)
1. Input connector & output connector(J1/J2).
2. PTC fuse(F1) : Its resettable.
3. Diode(D1) : Its current blocking property when Reverse biased.
4. Electrolytic Capacitor(C1) : For current drop and spikes.
5. Ceramic Capacitor (C2) : For unwanted noise.
Day 10 - PCB design log(1/2)
Designed a Reverse Polarity + Overcurrent Protected Power Entry Board.
🔹 PTC resettable fuse for short/overcurrent protection
🔹 Series diode for reverse polarity protection
🔹 Bulk + ceramic capacitors for supply stability.