FRC 0 to Autonomous
FRC 0 to Autonomous
  • Видео 6
  • Просмотров 164 799
FRC 0 to Autonomous: #6 Swerve Drive Auto
We'll program an autonomous trajectory following swerve drive robot!
The code for this video:
github.com/SeanSun6814/FRC0ToAutonomous
More on command-based programming:
ruclips.net/video/VoxeXqy1bdQ/видео.html
RobotSim Documentation:
docs.google.com/document/d/1-lhibd_s4R-1h1oOnv25ZsZFZvEkICQwKLWSJlyjoRk/edit?usp=sharing
RobotSim, RobotLib download:
github.com/SeanSun6814/FRC0ToAutonomous/tree/master/%235%20Command-Based%20Robot/RobotSim%20Simulator
Questions, feedback: SeanSun6814@gmail.com
Просмотров: 47 897

Видео

FRC 0 to Autonomous: #5 Command-Based RobotFRC 0 to Autonomous: #5 Command-Based Robot
FRC 0 to Autonomous: #5 Command-Based Robot
Просмотров 25 тыс.3 года назад
Let’s program a command-based elevator robot in a simulator! The code for this video: github.com/SeanSun6814/FRC0ToAutonomous RobotSim Documentation: docs.google.com/document/d/1-lhibd_s4R-1h1oOnv25ZsZFZvEkICQwKLWSJlyjoRk/edit?usp=sharing RobotSim, RobotLib download: github.com/SeanSun6814/FRC0ToAutonomous/tree/master/#5 Command-Based Robot/RobotSim Simulator Command groups: docs.wpilib.org/en/...
FRC 0 to Autonomous: #4 PID Auto-line (Part 2)FRC 0 to Autonomous: #4 PID Auto-line (Part 2)
FRC 0 to Autonomous: #4 PID Auto-line (Part 2)
Просмотров 13 тыс.5 лет назад
Fourth episode in the FRC 0 to Autonomous tutorials series. Part 2 of using PID to drive a robot past the auto-line. In this video: 3. Integral term 4. Derivative term In the previous video: (ruclips.net/video/jIKBWO7ps0w/видео.html) 1. Why we need PID 2. Proportional term Questions, feedback: SeanSun6814@gmail.com The code for this video: github.com/SeanSun6814/FRC0ToAutonomous Additional reso...
FRC 0 to Autonomous: #3 PID Auto-line (Part 1)FRC 0 to Autonomous: #3 PID Auto-line (Part 1)
FRC 0 to Autonomous: #3 PID Auto-line (Part 1)
Просмотров 25 тыс.5 лет назад
Third episode in the FRC 0 to Autonomous tutorials series. Part 1 of using PID to drive a robot past the auto-line. In this video: 1. Why PID 2. Proportional term In the next video: (ruclips.net/video/Z24fSBVJeGs/видео.html) 3. Integral term 4. Derivative term Questions, feedback: SeanSun6814@gmail.com The code for this video: github.com/SeanSun6814/FRC0ToAutonomous Additional resources: frc-do...
FRC 0 to Autonomous: #2 Chassis + mechanismsFRC 0 to Autonomous: #2 Chassis + mechanisms
FRC 0 to Autonomous: #2 Chassis + mechanisms
Просмотров 19 тыс.5 лет назад
Second episode in the FRC 0 to Autonomous tutorials series. We'll be making a fully functional robot code that operates the chassis and other mechanisms! Questions, feedback: SeanSun6814@gmail.com The code for this video: github.com/SeanSun6814/FRC0ToAutonomous Additional resources: TalonSRX documentation on upgrading firmware & setting Device ID: phoenix-documentation.readthedocs.io/en/latest/...
FRC 0 to Autonomous: #1 Arcade drive + auto-lineFRC 0 to Autonomous: #1 Arcade drive + auto-line
FRC 0 to Autonomous: #1 Arcade drive + auto-line
Просмотров 35 тыс.5 лет назад
This is the first episode in the FRC 0 to Autonomous tutorials series. We will walk through how to program in Java a simple chassis to drive and to pass the auto-line in 8 minutes! Questions, feedback: SeanSun6814@gmail.com The code for this video: github.com/SeanSun6814/FRC0ToAutonomous Additional resources: frc-docs.readthedocs.io/en/latest/index.html firstinspires-shanghai.org/guide/technica...

Комментарии

  • @amitkaria2k
    @amitkaria2k 12 часов назад

    This is very helpful tutorial. I liked the overall simplicity and animations used. Can you kindly share which tool was used to create this video? I would like to explore this tool too.

  • @yellowmelon7443
    @yellowmelon7443 Месяц назад

    Dude godamn i dont know how many times i fell asleep dude. Just add music or something on the backgroundd

  • @frommarkham424
    @frommarkham424 2 месяца назад

    Awesome video i'm in frc 7902

  • @muhammadredwanuzzaman2933
    @muhammadredwanuzzaman2933 3 месяца назад

    How do I tune it to make it faster?

  • @phantomk2509
    @phantomk2509 8 месяцев назад

    4 years later yet am going to ask anyways. Can you make a video showcasing the RoboSim. I’d like to implement it, if anyone could help or knows how that would help a lot. Thanks.

  • @popsicle6545
    @popsicle6545 8 месяцев назад

    thanks a ton!!!!!

  • @shoezx
    @shoezx 8 месяцев назад

    tgis is sups cool

  • @jamesracadio1828
    @jamesracadio1828 10 месяцев назад

    Beginner question: If we plan on using CAN/Bus to connect our motor controllers, would we still use "DriveConstants.kBackRightDriveMotor" or would we have to change "port" to "Id". My assumption is that "port" means they are connected to a PWM port. Am I wrong?

  • @ruzgar5930
    @ruzgar5930 10 месяцев назад

    cok tassaklı adamlarsınız <3

  • @tamibrandl9022
    @tamibrandl9022 11 месяцев назад

    Thank you! Nice Video!

  • @lawisch
    @lawisch 11 месяцев назад

    Great video! At 12:35, shouldn't kI be 0.5? Greetings from #1156 UnderControl

  • @arivancruyningen4038
    @arivancruyningen4038 Год назад

    conputer

  • @SomeGuyOfYT
    @SomeGuyOfYT Год назад

    YIPPEE

  • @ASaltyAcc
    @ASaltyAcc Год назад

    the video is nice.

  • @giancarlosnazario265
    @giancarlosnazario265 Год назад

    When are you planning to post the next 0 to autonomous video?

  • @matthewepshtein9026
    @matthewepshtein9026 Год назад

    Thank you sir!

  • @Elif0691
    @Elif0691 Год назад

    Thank you for your video. I have a questions. I guess the Swerve Module you are using is MK3. Which Gear Ratio did you choose in your Swerve Module? Fast 6.86:1 or Standart 8.16:1. I have one more question. Can I use the MK4 swerve module with these codes instead of the MK3 Swerve Module? Thank you from now.

    • @ellendicarlo1037
      @ellendicarlo1037 Год назад

      I have the same question about using this code with MK4 swerve modules. Did you try it and did it work? Thanks!

  • @jaydenkearns3264
    @jaydenkearns3264 Год назад

    What absitleEmcoder are you using

  • @陳維瑜
    @陳維瑜 Год назад

    I'm impressed by the code you made!!!

  • @benrecker1899
    @benrecker1899 Год назад

    Hey, I keep any error with the normalizeWheelSpeeds, why would that be?

    • @scca229
      @scca229 Год назад

      Found that this needs to be replaced with "desaturateWheelSpeeds" and it removes the error. Now if I could get the Odometry part changed.

  • @rachelfernandez4893
    @rachelfernandez4893 Год назад

    i love sweve!!!!!!!!!!!!

  • @AileenLi-cy5yc
    @AileenLi-cy5yc Год назад

    Wonderful demonstration! Thanks for sharing!

  • @cuteredpandas5164
    @cuteredpandas5164 Год назад

    i’d love to see if you could make a video explaining how to make some basic simulation stuff

  • @cuteredpandas5164
    @cuteredpandas5164 Год назад

    i love how if you go here 9:25 where he says and now for the intake subsystem, if you skip forward ten seconds it just goes to him saying “that’s it” which is so funny to me

  • @cuteredpandas5164
    @cuteredpandas5164 Год назад

    So our team is using a CTRE CANcoder, and the code for the rev can encoder is not the same, what code should i use instead for our encoder?

  • @xmgamer5672
    @xmgamer5672 Год назад

    Does this still work in WPILib 2023? I get an undefined error when I use setDesiredState.

    • @hyphen8d725
      @hyphen8d725 Год назад

      It might be a deprecated thing, check the documentation.

  • @riskybidnes
    @riskybidnes Год назад

    Will this work with the changes to java in 2023 in frc? My team has lost its head programmer and we are truly lost. Thanks Team1262

    • @0ToAuto
      @0ToAuto Год назад

      Unfortunately, the code for this video was implemented using an older version of WPILib. While the concepts and the majority of the code should stay the same, it no longer compiles with this year's library. Notably, this year's WPILib changed SwerveDriveOdometry to use wheel distances instead of wheel speeds, and this likely needs changing. docs.wpilib.org/en/stable/docs/yearly-overview/yearly-changelog.html#breaking-changes Good luck on this season!

    • @riskybidnes
      @riskybidnes Год назад

      Thanks for the info, don't know if we have time to even try to fix the old code at this point, no one in group is a programmer, and we have no mentor for it. This isn't going to end well... but thanks

  • @neesh774
    @neesh774 Год назад

    beautiful video, amazing diagrams and explanations of everything, tysm 🙏

  • @mattellis7730
    @mattellis7730 Год назад

    LOVE This video! Very well done!!

  • @psltmtir
    @psltmtir Год назад

    Hi Sean! In ArcadeDriveCmd, would it also be valid to pass in an instance of XboxController and just use XboxController::getRightY(), etc? This is what I do and I'm curious if using the suppliers has any inherent upside or downside.

  • @Z0G0N
    @Z0G0N Год назад

    How do I find the swerve simulation instead of the tank drive?

  • @GEARSinc
    @GEARSinc Год назад

    Dang. Very great stuff.

  • @GEARSinc
    @GEARSinc Год назад

    This is an EXCELLENT description and code walk-through. I'm sure it tool a lot of time to create, so thank you very much. As the team's Software Coach, I'm going to put it to great use. I'm going to make this a "must view" for my software team.

  • @jefffreeman9799
    @jefffreeman9799 2 года назад

    Will this simulator work for 2023 code?

  • @ballsackninjathief
    @ballsackninjathief 2 года назад

    literally the best tutorial ever uploaded to youtube.

  • @halftonhero
    @halftonhero 2 года назад

    Great video series. Looking at the code, it appears that you don't invert the NavX2.0 heading (NavX 2.0 has CCW being negative)? We always want CCW to be positive correct? (with regards to encoders and gyros, right?) Is this accounted for somewhere else or am I mistaken on the positive CCW notation?

  • @papyr4451
    @papyr4451 2 года назад

    This is incredibly helpful for since my team is just now swapping to java and i didn’t know what i was doing. Thank you

  • @Amit_6738
    @Amit_6738 2 года назад

    It is our first year using a swerve module, so I am really hyped but at the same time confused on how to code it. this video helped a ton! Thanks from team 6738 Excalibur :D

    • @keeganmcroberts485
      @keeganmcroberts485 2 года назад

      Did you have an issue with the toSwerveModuleStates()? I am new to coding and having been working on this problem for a couple of weeks now and need any help I can get. It would be great if you could assist.

    • @riskybidnes
      @riskybidnes Год назад

      Were you able to get your code working off this? We are really struggling with answers and finding even where to look for. Code fixes

  • @EstacaoProfOusado
    @EstacaoProfOusado 2 года назад

    how could i connect a logitec camera on robo rio? could you help me with this.

  • @bananacrapping6240
    @bananacrapping6240 2 года назад

    You have helped our team so much thank you!

  • @plantscool1969
    @plantscool1969 2 года назад

    Huh?

  • @MrHotcocopuffs
    @MrHotcocopuffs 2 года назад

    It would have been nice to see some more theory about the base kinematics instead of just the practical implementation with the SwerveDriveKinematics class abstracting away the fun.

    • @mihirghawghawe6580
      @mihirghawghawe6580 2 года назад

      Could you help me with my swerve Code please. I have the MK4 Modules. I would greatly apreciate it. I have all the code written out, its just that some things are outdated.

  • @randallyoung9411
    @randallyoung9411 2 года назад

    Excellent!!!

  • @nanli7711
    @nanli7711 2 года назад

    thx so much and it really helped a lot!!!!

  • @EstacaoProfOusado
    @EstacaoProfOusado 2 года назад

    your stuff is really good!!! if you have more you can share and I'll see them all! What my opinion would you be more to implement your best implementation model, not your opinion what my opinion would be more to implement your model? as I'm new I can get more information in the initial videos. Congratulations on the stuff!

  • @jammoon7085
    @jammoon7085 2 года назад

    why the lastError = 0 not error in 11:39?

  • @robertwilliams5224
    @robertwilliams5224 2 года назад

    Excellent Tutorial! I found it very informative and gives me much to think about when making the jump to trajectory based autonomous over the drive, stop, turn , drive sequence method. Some constructive feedback and chance for discussion since it seems like many examples are done in the same way. I would have preferred that the trajectory building and autonomous command be done in a subsystem class and/or unique command instead of being done in RobotContainer for clean-code (seems like most frc programmers like to stuff gobs of things in RobotContainer instead of writing clean-code) and more importantly autonomous programs tend to be much more complicated. Generally an autonomous schedule will be comprised of several unique trajectories with other actions like a robot arm or intake system taking control of an object or a shooter projecting an object between those moving the robot along those trajectories. So doing the follow trajectory commands will need to be built up in Individual Commads and called from a Command Group along with other commands, having them defined in or at least called from individual Commands is necessary. It would not a bad idea to get used to doing/teaching code partitioning since that is the norm in the software industry.

  • @ahmetselim1166
    @ahmetselim1166 2 года назад

    is navx mxp needed for autonomus period

  • @pratyushprakash6613
    @pratyushprakash6613 2 года назад

    How do we find constant values for our specific modules?

  • @MagnusGaunt
    @MagnusGaunt 2 года назад

    Thanks for this great tutorial! I still have one question though. how do you set the wheels to face forward at the start of autonomous? I'm planning to use color and or distance sensors to get it to read the position at the start of autonomous. but surely there has to be a better way than by hand, right?

    • @isopod00
      @isopod00 2 года назад

      I believe this is what the absolute encoder is for, it remembers its position even after the robot powers down