———––Devlog 09————
Sentinel’s Software Gets Smarter
Today I focused mainly on improving Sentinel’s software and project documentation.
The rover is not physically ready for full testing yet, so I used the digital work session to organize the code, fix errors, add useful debugging features, and improve how I present the project.
Software Progress
I expanded Sentinel’s Arduino Mega code with several new systems:
- Manual and autonomous driving modes
- Emergency stop command
- Configurable rover settings
- Obstacle detection and stopping
- Reverse-and-turn behavior
- Servo-based left, center, and right scanning
- Mission statistics
- Current rover status reporting
- Structured communication messages
- TB6612 motor-driver control functions
The autonomous system is designed to follow this sequence:
- Drive forward
- Detect an obstacle
- Stop
- Reverse
- Scan left, center, and right
- Compare the available paths
- Choose the clearer direction
- Turn
- Continue driving
Mission Statistics
I added a command that can report information such as:
- Mission runtime
- Number of obstacles detected
- Number of left turns
- Number of right turns
- Number of successful distance readings
I also added a current-status command so I can check Sentinel’s mode, state, movement command, and latest sensor reading while debugging.
📡 Communication Protocol
I standardized the messages Sentinel sends through the Serial Monitor.
Examples include:
MODE:MANUAL
MODE:AUTONOMOUS
STATE:DRIVING
STATE:REVERSING
STATE:SCANNING_LEFT
CMD:FORWARD
CMD:STOP
DIST:32.4
Comments 0
No comments yet. Be the first!
Sign in to join the conversation.