Skip to content

Commit d60ba95

Browse files
committed
Add Robots 101 series
1 parent 3886a26 commit d60ba95

File tree

6 files changed

+236
-0
lines changed

6 files changed

+236
-0
lines changed

_data/sidebar_tree.yaml

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,19 @@
33
tree:
44
- url: /
55
title: Introduction
6+
- url: /robots_101
7+
title: Robots 101
8+
tree:
9+
- url: /robots_101/post_kickstart
10+
title: After Kickstart
11+
- url: /robots_101/design
12+
title: Design
13+
- url: /robots_101/code
14+
title: Code
15+
- url: /robots_101/theming
16+
title: Theming
17+
- url: /robots_101/team_supervisor
18+
title: Running a team
619
- url: /kit/
720
title: Kit
821
tree:

robots_101/code.md

Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
---
2+
layout: page
3+
title: Robots 101 - The Code
4+
---
5+
6+
Welcome to another blog post in our 101 series! Today, we're going to delve into
7+
the brains of your robot - its code.
8+
9+
## Teamwork Makes The Code Work
10+
11+
First and foremost, your robot's code should never be a one-person show. Make
12+
sure more than one person has access to the codebase and understands it. This is
13+
crucial for two reasons: First, if the primary coder is unavailable for any
14+
reason, others can step in and keep things moving. Second, multiple perspectives
15+
can identify potential issues and generate creative solutions that a single mind
16+
might overlook. Think of it as having a built-in code review process!
17+
18+
## The Pulse of Your Robot - The Control Loop
19+
20+
Your robot interacts with the environment in a continuous cycle of sensing and
21+
acting. It's essential to have a solid control loop in your code where your
22+
robot senses its environment and then decides what to do next based on that
23+
information. This loop should be at the core of your robot's operation, allowing
24+
it to adapt and react to its surroundings.
25+
26+
## Backup Your Code: The Magic of Version Control Systems
27+
28+
Mistakes and accidents happen, files get lost, and computers crash. To protect
29+
your work from these unpredictable events, ensure you regularly back up your
30+
code. Better yet, use a Version Control System (VCS) like Git with GitHub. A VCS not only
31+
provides a backup of your code but also tracks changes, making it easy to
32+
identify when and where things might have gone wrong or right!
33+
34+
## The Six T's: Test, Test, Test, Test, Test, Test!
35+
36+
If there's one golden rule in the world of coding, it's this: test your code.
37+
Then, test it again, and keep testing! You can utilise our web interface to help
38+
you quickly iterate on your robot, by live streaming the logs and viewing
39+
the last captured image. You can also use the web interface to stop and
40+
restart the execution of your code. The more robust your testing, the
41+
more reliable your robot will be when it counts!
42+
43+
## The Benefits of Friendly Competition
44+
45+
If you have a large enough team, consider developing competing implementations
46+
of certain features or systems. This can be an effective way to explore
47+
different solutions and spark innovation. You can then choose the best elements
48+
from each, or select the most efficient solution overall.
49+
50+
## Embrace Imperfections: Sensor Noise
51+
52+
It's crucial to remember that real-world data is often noisy and imperfect.
53+
Your sensors may pick up interference, or there could be slight variations in
54+
readings. Your code should be robust enough to handle this noise and still make
55+
effective decisions. Techniques such as sensor fusion or filtering (like
56+
taking an average of multiple readings) can be highly beneficial here.
57+
58+
## The Power of Documentation
59+
60+
Our [Docs](https://studentrobotics.org/docs) are a goldmine of knowledge and
61+
should be your first port of call whenever you're unsure about something. Much
62+
like a good textbook or reference guide, our Docs are designed to support you in
63+
understanding your robot better. From getting started with your robot kit, to
64+
understanding the APIs, to troubleshooting common issues; the Docs cover a broad
65+
spectrum of topics you may encounter.
66+
67+
<br/>
68+
69+
Coding your robot can be a challenging yet rewarding experience. It's where the
70+
magic happens, where the inert pieces of metal, wood, and circuitry come to life
71+
and engage with the world. We hope these tips and strategies will help you avoid
72+
common pitfalls and pave the way for your success in the Student Robotics
73+
competition. Remember, every stumble is an opportunity to learn and improve.
74+
Keep coding, keep testing, and most importantly, have fun!

robots_101/design.md

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
---
2+
layout: page
3+
title: Robots 101 - Robot Design
4+
---
5+
6+
Welcome back to our Robots 101 series! This time we will be looking at what you need to consider when designing a robot that is both practical for the game’s task and one that would fit our safety regulations.
7+
8+
The aim of this post is to give you a jumping off point rather than prescribe the best way to tackle Student Robotics. There will be things we've missed and may even be things that are not relevant to your specific team. Over the years teams have tackled the competition in all sorts of ways we never imagined. Please do experiment and come up with the best way for your team to work.
9+
10+
## Strategy
11+
12+
Before settling on a final design, it’s a good idea to devise several different strategies. Making a scale plan or model of the arena, tokens, and robots is a very good way to start thinking about these and can aid discussion. Be sure to document the pros and cons of each strategy. Include point scoring, ease of implementation, additional items required to implement the strategy, and possible interactions with other robots.
13+
14+
Narrow the list and prototype some hardware (can be simple) to assess feasibility. The most complex, technologically advanced strategy is not necessarily the best. A simple (and elegant) strategy is more straightforward, quicker to implement and less likely to fail. On many occasions, a simple strategy has won the day.
15+
16+
## Movement
17+
18+
How your robot will move is a key decision to make. Many options are available, and all have pros and cons: wheels, tracks, or legs, 2, 3 or 4-wheel drive, omniwheels etc. Types of motor: DC, geared, stepper motors, built-in or add-on encoders. You should research these methods and decide what will be best for your strategy. The ability to move a defined distance and/or rotate a specified number of degrees can be helpful.
19+
20+
## Construction
21+
22+
The construction of your robot will be strongly influenced by the movement system you have decided upon. When planning the construction of your robot, a few things would be good to think about: the strength of your robot, how heavy it will be, the ease of modification or repairs, do you have sufficient ground clearance, is the robot protected from impacts, etc.
23+
24+
Note that the maximum dimensions of the robot are clearly defined in the rules. These are strictly adhered to and robots must comply or will not be allowed to compete.
25+
26+
## Location of components
27+
28+
The power board has an ON/OFF and a START button. Both of these can be wired to remote switches if desired. The ON/OFF switch (remote or on the power board) must be easily accessible, clearly marked and visible. All the boards have LEDs on them that can provide valuable information for debugging.
29+
30+
The battery must be protected from mechanical damage on all sides. Failure to comply will result in disqualification. Having your battery easily accessible will make your life easier.
31+
32+
Two USB ports must be easily accessible to allow insertion of your code USB stick and the competition USB stick that will be provided by us for competition matches. Keep all wiring neat, tidy, well secured and away from all moving parts. Clearly labelling your components and wires is advisable. Ensure that you comply with the rules and safety regulations concerning wire colours.
33+
34+
## Implementation
35+
36+
The process of building a robot is an iterative one. You may need to rethink and refine your strategies and return to earlier points in the process. Prototype and test to assess the feasibility of mechanical and software strategies. Test, test, test, test, test, test, test.
37+
38+
If something occasionally doesn’t perform as expected, be wary of ignoring it on the basis that it was a “glitch”, “one-off”, “it hasn’t happened again”. Often it will happen again and probably during the knockout stages of the competition! Investigate, identify and rectify.

robots_101/post_kickstart.md

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
---
2+
layout: page
3+
title: Robots 101 - Kickstarted, now what?
4+
---
5+
6+
Welcome to the start of Robot 101, our series where we guide you through the competition and give some advice on your next steps.
7+
8+
So, you attended our kickstart event and are now ready to build your robot! But where should you start? We’re here to help!
9+
10+
We’ve found that most teams split up the different parts of the robot between them. It’s a good idea to meet up and discuss which tasks each person wants to accomplish and give each other roles inside the team. Of course, these can change throughout the time between kickstart and competition, but make sure everyone has a job to do. It’s important to make sure there's always at least two or three people that can do each task type. Don’t forget tasks outside the robot itself either, like project management, running the social media, or theming.
11+
12+
Take some time together to plan your strategy for the game: how are you going to tackle the problem? What equipment would you want to experiment with? Remember to consider all areas of the robot - design, code, and mechanics. For some ideas, have a look on our [YouTube channel][youtube] to see some robots from previous competitions.
13+
14+
Each member should also spend some time getting to know the docs on our website. This contains important information about the game’s rules, an introduction to your kit, as well as tips on how to program your robot. Your team supervisor will have been sent your invite link and password for our [Discord Server][discord-docs] - this is the best place to ask questions to the Blueshirts. Don’t be afraid to ask for help! Our volunteers have years of experience and are there to help you. You can also get your team supervisor to contact us through our email if you prefer.
15+
16+
Remember, you’re not just aiming to win First, Second, or Third! There are plenty of other awards in place for you to achieve throughout the year. For example, our “Teams on the Web” runs from now until the end of the competition - make sure you’re posting your progress on social media to be in the running! Check out the Rules for a full list of all the awards on offer.
17+
18+
As part of your team, you’ll have a trusted adult who is acting as supervisor - their job is to guide you through the process of building your robot, not build it for you! We have a separate [blog post on the role of a supervisor][one-oh-one-supervisor].
19+
20+
Hopefully this has given you some jumping off points to begin your journey to the competition. Check back soon for our next entry in this series, all about how to design your robot!
21+
22+
[youtube]: https://youtube.com/user/StudentRobotics
23+
[discord-docs]: https://studentrobotics.org/docs/team_admin/discord
24+
<!-- cspell:disable-next-line -->
25+
[one-oh-one-supervisor]: {{ '/blog/2022-10-07-101-so-youre-a-team-supervisor' | prepend: site.baseurl }}

robots_101/team_supervisor.md

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
---
2+
layout: page
3+
title: Robots 101 - So you're running a team
4+
---
5+
6+
So, you’re running a team. Here’s a little bit of info on what to expect from Student Robotics, and your responsibilities as a team supervisor.
7+
8+
As a team supervisor, your role is to guide the competitors through the journey of building a robot. You’ll be there to point them in the right direction when they get stuck and resolve any issues they run into. We encourage team supervisors to limit their involvement with the robot design/building process so that the finished contraptions are 100% student-built which competitors find very rewarding.
9+
10+
You’ll be our point of contact with the team. If you have any questions during the year, just email [[email protected]](mailto:[email protected]). We’ll also be sending you emails every month or so with important information such as:
11+
- Details of Tech Days where we provide a space for teams to come together and get direct help from our dedicated volunteers
12+
- Software updates for our kit
13+
- Information about the competition in April
14+
15+
We aim to host our Kickstart event and Tech Days in multiple locations to make it more convenient for you to travel. However, you will still need to arrange to travel to these places.
16+
This is especially important to book for the competition, as you will likely need to arrange to stay overnight near the venue.
17+
18+
Our kit includes a battery and a few boards to get your robot started. However, your team will need additional components and materials from which to build their robot. For the chassis, your team has several options. Teams often use cardboard, MDF, Aluminium, and/or Acrylic. In terms of electronic components, teams often make use of:
19+
- At least two 12v motors (our kit supports four)
20+
- A few servo motors
21+
- A few microswitches for detecting if you bump into something
22+
- Ultrasound sensor
23+
- Wheels & bearings
24+
25+
Be sure to plan with your team what your robot will need before you make any purchases as depending on your robot design you may need more or less of these components.
26+
27+
Popular suppliers of these components are:
28+
- [Robot Shop](https://www.robotshop.com/)
29+
- [RS](https://uk.rs-online.com/web/)
30+
- [Farnell](https://uk.farnell.com/)
31+
- [Amazon](https://www.amazon.co.uk/)
32+
- [eBay](https://www.ebay.co.uk/)
33+
34+
To allow you and your team to ask us questions directly, as well as share what they’re working on with other teams, we provide a Discord server. You will receive a unique link to share with your team so that you can all join with your own Discord accounts. Each team gets a private text channel for direct support from us which can be used to discuss your robot without worrying about giving other teams your strategy. We also have a team-supervisor only channel for any questions you may have. There are also some text channels where teams can communicate with each other (and us!) for more general topics. If you’d like a voice channel for your team, just email us! You can find more information in [our docs](https://studentrobotics.org/docs/team_admin/discord).
35+
36+
If you’d like additional support throughout the year, we have dedicated mentors who can regularly join your team meetings either in-person or remotely. Your mentor will help guide your team towards good solutions for their robot, provide assistance where they might need it as well as help them understand the kit, the rules and the competition as a whole. We *strongly* encourage new teams to sign up for mentoring. If this sounds like something you’d like, look out for our email shortly after Kickstart.
37+
38+
Best of luck this year, and don’t forget we’re always happy to help!

robots_101/theming.md

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
---
2+
layout: page
3+
title: Robots 101 - Theming
4+
---
5+
6+
Welcome (back) to the Robots 101 series! This time, we’re addressing theming
7+
your robot.
8+
9+
Theming your robot might not seem important at first, but having consistency
10+
between your robot, your team and social media goes a long way to delivering a
11+
strong message that your team is fully committed to the competition. Plus, those
12+
who may want to get involved in the team, but don’t want to build or code, still
13+
have an opportunity to leave a mark on your robot. Having a solid design for the
14+
outside of your robot before starting the rest of the process may even help your
15+
decision on how to tackle the event!
16+
17+
Step one is the planning phase. Get your team together to discuss general titles
18+
for your theme. Whether it’s cyberpunk or gothic, nothing should be written off
19+
immediately in this process. Give everyone the chance to share their ideas
20+
before deciding on a few “final” ideas. At this point, you could start finding
21+
images that visualise your theme and begin collating them. You may find the most
22+
popular theme may not work at this point - and that’s ok!
23+
24+
Next, you could try and create some concepts of how your robot and team mates
25+
would look at the competition. This is done best when each visualisation is
26+
unique, so that merging parts of each design together to create a final product
27+
is easier down the line. You could try using materials that your team already
28+
has on hand to make a prototype shell of your robot, or using basic wardrobe
29+
items to block out clothing choices.
30+
31+
Remember, your team’s theme will likely develop throughout the building process
32+
as you come up with new ways to tackle the competition. Let this happen! Being
33+
rigid in your design process will almost certainly cause issues later down the
34+
line. By the time your team gets to the final competition you’ll have a unique
35+
style to your robot, your competitors and your socials.
36+
37+
To give you some ideas, we've included some photos of teams we think did
38+
particularly well at previous competitions.
39+
40+
<img src="/images/content/blog/robots-101/sr2022-hrs-team-photo.png" alt="2022 - HRS: Hills Road's “Ducktor Who” As well as theming their robot, small rubber ducks were placed around the event, as well as given to other teams." />
41+
42+
<img src="/images/content/blog/robots-101/sr2019-hab-team-photo.png" alt=" 2019 - HAB: Haberdashers’ Aske’s Boys’ School won the Robot and Team Image award with their Hawaiian theme. This was complimented with inflatable palm trees and a 3D paper pineapple on top of their robot." />
43+
44+
<img src="/images/content/blog/robots-101/sr2016-mai-team-photo.png" alt="2016 - MAI: ‘Measure, Analyze, Improve’ from Gymnasium Markt Indersdorf, who came all the way from Germany looking very Frankenstein-esque, wearing their bio-hazard suits and zombie face paints. Their robot was a rotten-fleshy-green colour with a brain exposed." />
45+
46+
<img src="/images/content/blog/robots-101/sr2015-mai-team-photo.png" alt="2015 - MAI: “42 * 2 - Double Vision” from Gymnasium Markt Indersdorf, came dressed as monks in hooded brown robes, laced with glowing LED strips." />
47+
48+
<img src="/images/content/blog/robots-101/sr2014-hrs-team-photo.png" alt="2014 - HRS: Systemetric (HRS) impressed the judges with their steampunk costumes and brass and mahogany robot (pictured)." />

0 commit comments

Comments
 (0)