Team 4536 - The Minutebots [NEW]
  • Home
  • Newsletter
  • Summer Project Showcase
  • About
    • Team History
    • Previous Robots
    • What Is FIRST?
  • FTC
  • Support
    • Become A Sponsor/Donor
    • Sponsors
    • Get Involved
  • Calendar
  • Media
    • 2021 - 2022
    • 2019 - 2020
    • 2018 - 2019
    • 2017 - 2018
    • 2016 - 2017
    • 2015 - 2016
    • 2014 - 2015
    • 2013 - 2014

Introduction to Programming

Here is a video by Khan Academy introducing programming. Khan Academy is an excellent website dedicated to free education content online. They provide educational content on a myriad of subjects including programming and I encourage you to check their site out because you can learn anything - at your own pace  - on your own time. I learned how to program websites, make games and animations, and handle user interaction online from them. They have lessons on JavaScript, HTML (Hyper Text Markup Language), and CSS (Cascading Style Sheets) which program webpages. Although we'll be using Java (which is different from JavaScript) this year to program our robot the same basic programming principles apply in many programming languages so you can learn a lot from their lessons and content. They introduce content through short simple video and then they have you do an activity afterwards. They take things slowly and build upon knowledge until before you know it, you're a pretty slick programmer!

After the Video: There is a link to the first robot programming activity our team will do.


The most basic Idea of programming a robot is that you boss around a computer or robot. That is fundamentally what we are doing by programming. To provide a nice introduction to this idea I suggest playing Lightbot, a fun app game which practices the basic ideas of programming in a fun easy way.
​


Practice Bossing Around a Robot with a Fun Free Game!
​

Play lightbot to practice programming concepts in a fun and easy way
Here is a link to play a fun game that teaches you programming concepts called Lightbot on kongregate.com if you want to play online. You can also download it from the app store (apple or android) from the links on their website and watch a video about the game.

​


Bossing around an FRC Robot in Java

An extent of bossing around a computer or robot is collecting some sort of information from a device and ... you do something with it! That's what you do every time you program an FRC robot. You handle data and do something useful with it. In addition, Instead of using a drag and drop command interface, in Java you write commands. For this first lesson I'm going to direct you to our team's github page for our public project Learning-Java-For-FRC. In this project you will get to program some of our previous year's robots - Zenith (2015) and Onyx (2014) - but first you need to know about their competitions!

2014 Aerial Assist (Onyx's Game)


Onyx Robot Highlights

​2015 Recycle Rush (Zenith's Game)


​Zenith Robot Reveal Video


Choose a robot

Now you can choose to work on Zenith or Onyx. The Initial activities for both robots can be found on their respective links. All you have to do is import the github project and switch to the branch you want to program.
​

Onyx

Zenith


​​In FRC, a lot of the basic sensor programming has been taken care of so we can easily collect information from sensors. In this activity you will instantiate (make) a joystick and access (get) its axis values (x-axis and y-axis) and input that information into a driveTrain I've made to drive the robot as your very first accomplishment! Follow the bordered comment directions which guide you through the activity and explicitly state what to do to get the robot driving. Remember: We get information (the joystick axis values) and we do something with it (drive the robot)!

If you have time you can get other things going on the robot so that you can perform the basic tasks of their respective competitions.
  • Home
  • Newsletter
  • Summer Project Showcase
  • About
    • Team History
    • Previous Robots
    • What Is FIRST?
  • FTC
  • Support
    • Become A Sponsor/Donor
    • Sponsors
    • Get Involved
  • Calendar
  • Media
    • 2021 - 2022
    • 2019 - 2020
    • 2018 - 2019
    • 2017 - 2018
    • 2016 - 2017
    • 2015 - 2016
    • 2014 - 2015
    • 2013 - 2014