Shashank Rover: a Chandrayaan-inspired Moon Rover (Space Contest Instructable)
by aphla in Circuits > Arduino
52 Views, 1 Favorites, 0 Comments
Shashank Rover: a Chandrayaan-inspired Moon Rover (Space Contest Instructable)
Welcome to the Shashank Rover project! Homage to ISRO’s Chandrayaan mission, channeling the spirit of Pragyan while staying builder-friendly. Shashank Rover features tank-like wheels with protective overcovers, an expressive OLED screen "eye," Bluetooth control, and a servo-operated robotic arm. This project celebrates space exploration and robotics, perfect for makers who want to bring a bit of the cosmos to their desktop.
Why Chandrayaan inspiration? Pragyan’s compact 0.9 × 0.75 × 0.85 m form factor, slow and deliberate mobility (~1 cm/s), stereo navcams, and south-pole mission goals embody efficient design and purposeful exploration—values echoed in Shashank’s simplicity and clarity of function.
Supplies
Electronics
- 2 × Arduino Nano (or Nano Every)
- 1 × 0.96" I2C OLED (SSD1306) for “eyes”
- 2 × DRV8833 motor drivers (each handles 2 motors; total 4 motors)
- 1 × Micro servo (SG90 or metal gear micro servo for “hand”)
- 1 × HC-05 Bluetooth module (or HM-10 BLE alternative)
- 4 × N20 metal gear motors (e.g., 6V 200–300 RPM for desktop use)
- 4 × N20-compatible wheels (rubber tires)
- 1 × 2S 7.4V LiPo (with switch) + 5V buck converter (3A recommended) OR 2×18650 with BMS and 5V buck
- Perforated protoboard, breadboard/jumpers, headers, wiring
- On/off switch, LEDs for status (optional)
- Piezo buzzer (optional)
Hardware and Fabrication
- 5 mm sunboard/foamboard or 3 mm acrylic for chassis
- Top canopy and tank-like wheel overcovers (foamboard or 3D printed if preferred)
- M2.5/M3 screws and stand-offs, tiny screws for motor clamps
- Hot glue, super glue, double-sided tape
- Small hinges for servo hand linkage (or 3D printed bracket)
- Cutting tools, soldering iron, wire stripper
Software
- Arduino IDE with libraries: Servo.h, Adafruit GFX + Adafruit SSD1306 (or U8g2), SoftwareSerial (if needed)
- Android Bluetooth RC Car app by ANDI.co (or any serial BT joystick app)
- Optional: Autodesk Fusion 360 for chassis CAD to qualify for Autodesk Design & Make Award
Design Highlights (Pragyan-inspired)
- Low-profile body with forward “sensor bar” look. OLED replaces navcams for animated eye expressions, nodding to Pragyan’s stereo cameras and situational awareness.
- Tank-like wheel overcovers tribute to dust mitigation covers and iconic rover silhouettes.
- Front micro-servo “hand” for simple “scoop/gesture” demos, aligning with rover manipulation metaphors (not a true regolith sampler).
- Split-brain architecture: One Nano for motion + servo timing; second Nano dedicated to OLED animations and UI—mirroring the reliability-first separation of concerns seen in real missions.
Chassis and Layout
- Base plate
- Cut a 100 × 70 mm base from 5 mm sunboard. Mark mounting for four N20 motors at corners (inboard by ~8–10 mm).
- Add side rails (100 × 20 mm) to stiffen the base.
- Upper deck and canopy
- Mid-deck (90 × 60 mm) for electronics.
- Canopy (90 × 60 mm) with a front aperture for the OLED “eye.” Leave ventilation slots.
- Add standoffs between base and mid-deck for wire clearance.
- Wheel overcovers
- Cut two long side overcovers (100 × 35 mm). Arch cutouts over wheels; leave 5–7 mm clearance above tire.
- Glue to side rails. Ensure wheel removal is still possible.
- Servo hand mount
- Front-center bracket for micro servo horn to extend a simple arm or scoop.
- Reinforce with small L-brackets or layered foamboard.
Tip: Keep CG low by placing battery on the bottom deck; drivers and Nanos on mid-deck; OLED and servo forward.
Drive and Motors
- Mount 4×N20 motors so left pair share a common axis and right pair share the opposite axis to enable skid steering.
- Use wheel hubs designed for N20 shafts; add a dab of threadlocker on set screws.
- Check freewheel clearance against overcovers; adjust overcover cutouts as needed.
- Route motor wires inward to DRV8833 boards on mid-deck.
Why 4-wheel skid-steer? Simple, robust, and evokes tracked rover dynamics at desktop scale while remaining builder-friendly.
Electronics Architecture
Power
- Battery → main switch → 5V buck converter → logic rail (Nanos, OLED, servo).
- DRV8833 VMOT can take 5–10.8 V; for uniformity, feed ~7.4 V from 2S LiPo to VMOT and 5V to logic (check your driver revision).
- Common ground across everything.
Microcontrollers
- Nano A: Motion + Servo
- Controls both DRV8833 drivers (4 motors) and the servo hand.
- Receives Bluetooth serial commands from HC-05.
- Nano B: Display
- Drives OLED animations (eyes, status icons).
- Optional serial input from Nano A for status cues.
Modules and Buses
- HC-05 to Nano A via Serial (hardware or SoftwareSerial on pins 10/11).
- OLED to Nano B via I2C (A4 SDA, A5 SCL on classic Nano).
- Optionally link Nano A TX to Nano B RX for sending simple status chars.
Wiring Guide
DRV8833 (x2)
- Driver 1 controls Left Front (M1) and Left Rear (M2).
- Driver 2 controls Right Front (M3) and Right Rear (M4).
- For each channel: AIN1/AIN2 (or BIN1/BIN2) to Nano A PWM-capable pins; AO1/AO2 to motor leads.
- EN pins may be tied high or controlled for braking; consult board pinout.
Bluetooth HC-05
- VCC 5V, GND common.
- TXD → Nano A RX, RXD ← Nano A TX (use voltage divider on HC-05 RX if required).
- Pairing default PIN 1234/0000.
Servo
- 5V and GND to logic rail, signal to a PWM pin (e.g., D9 or D10) on Nano A.
OLED
- VCC 5V (or 3.3V per module), GND, SDA → A4, SCL → A5 on Nano B.
Power discipline
- Use a 3A buck for servo current spikes.
- Add 100 µF–470 µF electrolytic near drivers and 10 µF near each Nano.
- Verify common ground across battery negative, buck negative, drivers, and both Nanos.
Why Two Arduino Nanos?
Separating motion control from display ensures jitter-free PWM for motors/servo while maintaining smooth 30–60 fps OLED eye animations. This improves responsiveness and resembles the subsystem segregation in real exploration systems.
Firmware (Motion + Servo, Nano A)
Bluetooth command map (example):
- ‘F’ forward, ‘B’ back, ‘L’ left, ‘R’ right, ‘S’ stop
- ‘1’..‘9’ speed levels, ‘q’ max
- ‘W’/‘w’ servo sweep up/down
- ‘G’/‘I’ gentle arc turns
Sketch outline:
- Define motor pins for AIN1/AIN2/BIN1/BIN2 across two DRV8833 boards.
- Implement setMotor(channel, speed, dir).
- Parse Serial.read() for commands and set speeds accordingly.
- Servo write for hand gestures; include timed sweeps.
A reference motor/servo control structure similar to the attached robot’s sample is appropriate for fast iteration, with fixes to duplicate-case issues and consistent mapping.
Firmware (OLED Eyes, Nano B)
- Use Adafruit SSD1306 + GFX or U8g2 to render:
- Idle blinking eyes
- “Scan” animation bars
- Arrow/chevron when moving forward/back
- Status icons (BT connected, battery, stop)
- Optionally read a status byte from Nano A (via serial) to switch expressions dynamically.
Pseudoflow:
- Setup I2C display; draw eyes as two rounded rectangles or circles.
- Timer-based blink every 3–6 seconds.
- If move command active, animate pupils or add motion lines.
- Minimal frame buffers to keep FPS stable.
Assembly and Cable Management
- Fix drivers to mid-deck using stand-offs; route motor leads neatly.
- Mount OLED behind canopy aperture; add light baffle to improve contrast.
- Secure HC-05 where antenna is unobstructed.
- Place battery low and central; ensure easy access to charging lead.
- Verify wheel free-rotation; check overcover clearances while turning.
Testing and Control
- Pair HC-05 (PIN 1234/0000) via phone.
- Use “Bluetooth RC Car” by ANDI.co to send basic F/B/L/R/S and speed keys, or a joystick layout if supported.
- Test:
- Low-speed crawl forward/back.
- Left/right skid turns.
- Servo hand actuation.
- OLED animations responding to states.
If drift occurs, calibrate motor polarity and PWM curves; consider deadband and ramping. For smoother starts, implement acceleration ramps in code.
Finishing Touches (Space Theme)
Shashank Rover is a creative tribute to space exploration and ISRO’s Pragyan rover. It combines simple robotics techniques with space mission inspiration for a classroom or desktop project that’s both educational and fun.