Update README.md
This commit is contained in:
1 parent
1227019eb6
commit
6d29d79cdd
1 file changed
+9
-18
@@ -1,6 +1,6 @@
|
|||||||
# 11254Y Robot Code
|
# 11254Y Robot Code
|
||||||
|
|
||||||
This repository contains the software for my VEX V5 competition robot. The project is written in C++ using **PROS** and is built on the **uncompiled/source version of EZ-Template**.
|
This repository contains the software for team 11254Y's competition robot. The project is written in C++ using **PROS** and is built on the **uncompiled/source version of EZ-Template**.
|
||||||
|
|
||||||
The goal of this project is to provide a modular structure for controlling the robot's drivetrain and mechanisms while keeping individual mechanisms easy to reuse and modify.
|
The goal of this project is to provide a modular structure for controlling the robot's drivetrain and mechanisms while keeping individual mechanisms easy to reuse and modify.
|
||||||
|
|
||||||
@@ -26,16 +26,21 @@ EZ-Template provides the foundation for the robot code, including systems such a
|
|||||||
* General robot utilities
|
* General robot utilities
|
||||||
|
|
||||||
The source version of EZ-Template is included directly in the project rather than using it only as a precompiled library. This allows the template's code to be modified and extended as needed.
|
The source version of EZ-Template is included directly in the project rather than using it only as a precompiled library. This allows the template's code to be modified and extended as needed.
|
||||||
|
Using the uncompiled version of EZ-Template also allows us the learn how the template was made and that lets us use the template more effectivly.
|
||||||
|
|
||||||
## Custom Systems
|
## Custom Systems
|
||||||
|
|
||||||
I have added several custom mechanism-control systems following the same general structure and organization used by EZ-Template.
|
I have added several custom mechanism-control systems following the same general structure and organization used by EZ-Template.
|
||||||
|
The costum control systems I've added are:
|
||||||
|
*Adjustable Color sensor class
|
||||||
|
*Adaptive Pneumatics controller
|
||||||
|
*Rotation sensor classes
|
||||||
|
|
||||||
### Color Sorter
|
### Color Sorter
|
||||||
|
|
||||||
The color sorter controls the robot's ring-sorting mechanism.
|
As of now the color sorter dosen't do anything on the robot but is in place if we ever need it.
|
||||||
|
|
||||||
It is designed to handle the logic required to detect and sort rings based on their color while integrating with the rest of the robot's control system.
|
It is designed to handle the logic required to detect and sort objects based on their color while integrating with the rest of the robot's control system.
|
||||||
|
|
||||||
### Pneumatic Control
|
### Pneumatic Control
|
||||||
|
|
||||||
@@ -65,24 +70,10 @@ One of the main goals of this project is **modularity**.
|
|||||||
|
|
||||||
Rather than putting all robot functionality into `main.cpp`, individual systems are implemented as classes with their own `.hpp` and `.cpp` files.
|
Rather than putting all robot functionality into `main.cpp`, individual systems are implemented as classes with their own `.hpp` and `.cpp` files.
|
||||||
|
|
||||||
A typical mechanism is structured like this:
|
|
||||||
|
|
||||||
```text
|
|
||||||
include/
|
|
||||||
└── EZ-Template/
|
|
||||||
└── ...
|
|
||||||
|
|
||||||
src/
|
|
||||||
└── EZ-Template/
|
|
||||||
├── ...
|
|
||||||
└── rotation_mechanisms/
|
|
||||||
├── arm_mech.cpp
|
|
||||||
└── ...
|
|
||||||
```
|
|
||||||
|
|
||||||
The header files contain the class declarations, while the `.cpp` files contain the implementation.
|
The header files contain the class declarations, while the `.cpp` files contain the implementation.
|
||||||
|
|
||||||
This allows mechanisms to be instantiated and controlled from the main robot program without putting their implementation directly into `main.cpp`.
|
This allows mechanisms to be instantiated and controlled from the main robot program without putting their implementation directly into `main.cpp`.
|
||||||
|
This method is much cleaner and easier to understand.
|
||||||
|
|
||||||
## Using a Mechanism
|
## Using a Mechanism
|
||||||
|
|
||||||
|
|||||||
Reference in new issue
Block a user