Compare commits
10 Commits
0fbb38baeb
...
atharv-dev
| Author | SHA1 | Date | |
|---|---|---|---|
| b4385dcecd | |||
| e785a8ad05 | |||
| a6bbba9419 | |||
| 8ccf8b9a5a | |||
| bb95852bf1 | |||
| 9ca160a8c7 | |||
| 882ba3e13a | |||
| 33b926cb1f | |||
| 4ff5de480d | |||
| aa062122de |
@@ -1,33 +0,0 @@
|
||||
from pybricks.hubs import PrimeHub
|
||||
from pybricks.pupdevices import Motor, ColorSensor, UltrasonicSensor, ForceSensor
|
||||
from pybricks.parameters import Button, Color, Direction, Port, Side, Stop
|
||||
from pybricks.robotics import DriveBase
|
||||
from pybricks.tools import wait, StopWatch
|
||||
from pybricks.tools import run_task, multitask
|
||||
|
||||
hub = PrimeHub()
|
||||
|
||||
left_motor = Motor(Port.A, Direction.COUNTERCLOCKWISE)
|
||||
right_motor = Motor(Port.B)
|
||||
|
||||
left_arm = Motor(Port.C, Direction.COUNTERCLOCKWISE)
|
||||
right_arm = Motor(Port.D)
|
||||
drive_base = DriveBase(left_motor, right_motor, wheel_diameter=68.8, axle_track=180)
|
||||
drive_base.settings(600,500,300,200)
|
||||
drive_base.use_gyro(True)
|
||||
|
||||
async def main():
|
||||
await drive_base.straight(200)
|
||||
await drive_base.turn(-20)
|
||||
await drive_base.straight(536)
|
||||
await drive_base.turn(60, Stop.HOLD)
|
||||
await drive_base.straight(30)
|
||||
|
||||
await right_arm.run_angle(5000,3000)
|
||||
await drive_base.straight(40)
|
||||
await right_arm.run_angle(5000,-4000)
|
||||
await drive_base.straight(-60)
|
||||
|
||||
await drive_base.turn(-60)
|
||||
await drive_base.straight(-670)
|
||||
run_task(main())
|
||||
73
README.md
73
README.md
@@ -14,7 +14,7 @@
|
||||
|
||||
## Project Overview
|
||||
|
||||
Welcome to the official code repository for **Team 65266 Lego Dynamics**! This repository contains all the Pybricks code powering our robot through the UNEARTHED season missions. Our modular approach allows for flexible mission execution and quick color-sensor-based run selection.
|
||||
Welcome to the official code repository for **Team 65266 - Lego Dynamics**! This repository contains all the Pybricks code powering our robot through the UNEARTHED season missions. Our modular approach allows for flexible mission execution and quick color-sensor-based run selection.
|
||||
|
||||
---
|
||||
|
||||
@@ -26,8 +26,8 @@ Welcome to the official code repository for **Team 65266 Lego Dynamics**! This r
|
||||
|-----------|--------------|
|
||||
| **Robot Name** | Optimus Prime III |
|
||||
| **Firmware** | Pybricks |
|
||||
| **Attachment Motors** | 2× Large Motors (Ports C & D) |
|
||||
| **Drive Motors** | 2× Small Motors (Ports A & B) |
|
||||
| **Attachment Motors** | 2x Large Motors (Ports C & D) |
|
||||
| **Drive Motors** | 2x Small Motors (Ports A & B) |
|
||||
| **Sensors** | Up-facing Color Sensor (Quick Start) |
|
||||
| **Attachments** | Multiple mission-specific tools |
|
||||
|
||||
@@ -46,10 +46,10 @@ Our codebase is organized for maximum efficiency and modularity:
|
||||
```
|
||||
Repository
|
||||
┣ run_1.py # Individual mission runs
|
||||
┣ run_2.py # Each file = 1+ mission completions
|
||||
┣ run_2.py
|
||||
┣ run_3.py
|
||||
┣ ...
|
||||
┗ master.py # 🎯 Combined master file with color-start logic
|
||||
┗ masterFile.py # 🎯 Combined master file with color-start logic - this changes periodically as we release new versions. Check this README if you are unsure what code should be loaded on the robot.
|
||||
```
|
||||
|
||||
### Workflow
|
||||
@@ -61,34 +61,45 @@ Repository
|
||||
|
||||
## How to Use
|
||||
|
||||
### Installation & Deployment
|
||||
### Installation & Deployment - from the server - everyday
|
||||
|
||||
1. **Load the Code**
|
||||
```bash
|
||||
# Open the master.py file in Pybricks IDE
|
||||
```
|
||||
1. Download the file codes_for_scrimmage/hazmat/mainhazmatUPD.py
|
||||
- You can do this through the repo, by using cURL, or by using git.
|
||||
- Repo - Go to [codes_for_scrimmage/hazmat/mainhazmatUPD.py](codes_for_scrimmage/hazmat/mainhazmatUPD.py) and click the "Download" button.
|
||||
- cURL or another HTTP data transferrer -
|
||||
|
||||
2. **Connect to Robot**
|
||||
- Pair your robot via Bluetooth in Pybricks
|
||||
```curl -o mainhazmatUPD.py https://codes.fll-65266.org/FLL_65266_LEGO_DYNAMICS/solutions_season_unearthed/raw/branch/main/codes_for_scrimmage/hazmat/mainhazmatUPD.py```
|
||||
- git CLI -
|
||||
|
||||
```git clone -b dev https://codes.fll-65266.org/FLL_65266_LEGO_DYNAMICS/solutions_season_unearthed.git && cd solutions_season_unearthed/codes_for_scrimmage/hazmat```
|
||||
|
||||
Then use mainhazmatUPD.py.
|
||||
|
||||
2. Open https://code.pybricks.com/ and select the "Import a file" button on the top of the left bar. Import the .py file. Pair your robot via Bluetooth in Pybricks by selecting the Bluetooth button.
|
||||
|
||||
- Import button looks like this:
|
||||

|
||||
- Bluetooth button looks like this:
|
||||

|
||||
|
||||
3. **Upload to Robot** - Click "Download and Run" or send the program to the robot
|
||||
- Run button looks like this: 
|
||||
|
||||
3. **Upload to Robot**
|
||||
- Click "Download and Run" or send the program to the robot
|
||||
|
||||
4. **Start Your Run**
|
||||
- Hold a colored LEGO brick up to the color sensor
|
||||
- Different colors trigger different mission runs!
|
||||
- If starting without Pybricks, press the center circular button on the SPIKE Prime Hub to start the program.
|
||||
- Hold a colored LEGO brick up to the color sensor.
|
||||
- Different colors trigger different mission runs - color mapping is below.
|
||||
|
||||
### Color Start System
|
||||
| Color | Mission | Celebration Sound |
|
||||
|-------|-----------|------------------|
|
||||
| Green 🟩 | Run 1 | Victory Fanfare |
|
||||
| White ⚪ | Run 2 | Rickroll Inspired |
|
||||
| Yellow 🟨 | Run 3 | Success Chime |
|
||||
| Orange 🟧 | Run 4 | Power Up |
|
||||
| Blue 🟦 | Run 5 | Power Up |
|
||||
| Red 🟥 | Run 6 | Ta-Da! |
|
||||
|
||||
> **Tip** Organize your colored bricks before the match for quick run selection!
|
||||
| Color | Mission |
|
||||
|-------|-----------|
|
||||
| Green 🟩 | Run 1 |
|
||||
| Purple 🟪 | Run 2 |
|
||||
| Red 🟥| Run 3 |
|
||||
| Yellow 🟨| Run 4 |
|
||||
| Blue 🟦| Run 5 |
|
||||
| Orange 🟧| Run 6 |
|
||||
|
||||
---
|
||||
|
||||
@@ -114,9 +125,7 @@ Team members can contribute by:
|
||||
|
||||
**GNU General Public License v3.0**
|
||||
|
||||
```
|
||||
You can take inspiration from our code, but you can't take our exact code.
|
||||
```
|
||||
|
||||
This project is licensed under GPL-3.0 - see the [LICENSE](LICENSE) file for complete details.
|
||||
|
||||
@@ -130,14 +139,8 @@ This project is licensed under GPL-3.0 - see the [LICENSE](LICENSE) file for com
|
||||
|
||||
## Contact & Support
|
||||
|
||||
**Team 65266 Lego Dynamics**
|
||||
**Team 65266 - Lego Dynamics**
|
||||
|
||||
Questions about our approach? Interested in collaboration? Reach out!
|
||||
|
||||
---
|
||||
|
||||
<div align="center">
|
||||
|
||||
Star this repo if you found it helpful!
|
||||
|
||||
</div>
|
||||
Reference in New Issue
Block a user