{"id":21851571,"url":"https://github.com/team751/2011-robot-code","last_synced_at":"2026-04-29T19:31:48.938Z","repository":{"id":3589668,"uuid":"4653198","full_name":"team751/2011-Robot-Code","owner":"team751","description":"The code that runs team 751's 2011 competition robot","archived":false,"fork":false,"pushed_at":"2013-05-20T21:59:08.000Z","size":452,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-06-26T01:40:58.748Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/team751.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2012-06-13T16:19:30.000Z","updated_at":"2013-10-07T12:31:59.000Z","dependencies_parsed_at":"2022-09-10T22:11:37.319Z","dependency_job_id":null,"html_url":"https://github.com/team751/2011-Robot-Code","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/team751/2011-Robot-Code","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/team751%2F2011-Robot-Code","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/team751%2F2011-Robot-Code/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/team751%2F2011-Robot-Code/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/team751%2F2011-Robot-Code/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/team751","download_url":"https://codeload.github.com/team751/2011-Robot-Code/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/team751%2F2011-Robot-Code/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32440871,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-29T18:12:22.909Z","status":"ssl_error","status_checked_at":"2026-04-29T18:11:33.322Z","response_time":110,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-28T01:08:48.202Z","updated_at":"2026-04-29T19:31:48.923Z","avatar_url":"https://github.com/team751.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Team 751 2011 Robot Code #\n\nThis code controls Team 751's 2011 competition robot. It is based on the SimpleRobot template.\n\nThe history of this repository is available at https://code.google.com/p/team751robotcode/\n\nThis code started as one file containing all the robot logic.\n\nOver the season, the code became complicated as autonomous logic, closed-loop forklift control, and other features were added. Some of these features were separated into their own files.\n\nThe SimpleRobot system became cumbersome as the code developed. For future robot code, it is suggested to instead use the Command-Based Robot system. The 2012 and 2013 code are examples that use this system.\n\nEverything is located in the `edu.wpi.first.wpilibj.templates` package.\n\n## Files ##\n\n### RobotTemplate.java ###\n\nThis file is the main robot class.\n\nIts constructor `RobotTemplate()` is where the the robot components are initialized.\n\nThe system calls the `disabled()`, `autonomous()`, and `operatorControl()` methods once each time the robot enters the respective phase of operation.\n\nThe RobotTemplate class contains the three joysticks that are used to operate the robot. The operator console for this robot had three joysticks, so that two of them could be used for driving the robot with one drive joystick for forward/back motion and the other drive joystick for turning.\n\nIt also contains:\n* The `RobotDrive` object that does calculations to determine motor output values from joystick inputs\n* Two `edu.wpi.first.wpilibj.Timer` timers that are used to measure elapsed time during the match\n* The `Forklift`, `Gripper`, `MinibotDeployer`, `CameraPanTilt`, and `EnhancedIOInterface` objects that control different subsystems\n\n#### Autonomous mode ####\n\nThe autonomous code runs once when autonomous mode begins. The `autonomous()` method is called when the autonomous period begins and returns several seconds later, near the end of the autonomous period.\n\nNote that each loop in the autonomous method checks for the `isAutonomous()` condition. This is important. If the autonomous code gets stuck in a loop, it will remain in the loop throughout the end of autonomous mode and the rest of the match until the robot is restarted. If there is ever a loop in the autonomous code, it should check `isAutonomous()` to protect against this situation.\n\nThis autonomous code is somewhat difficult to maintain. A better solution would be to use a set of CommandGroups in the command-based robot system (like in the 2012 code) or a state machine autonomous (like in the most recent revision of the 2013 code).\n\n### Forklift.java ###\n\nThis class holds the `Relay` objects that control the forklift motors and the `Encoder` object that uses the forklift encoder to measure the position of the forklift. It keeps track of the position of the forklift and operates the motors to maintain the target position.\n\nBecause the forklift encoder encountered mechanical issues frequently during competitions, the code transitioned to no longer use the encoder. It used only the top and bottom limit switches.\n\n### Gripper.java ###\n\nThis class holds the `Jaguar` objects and `Encoder` objects that control and monitor the gripper wheels. It keeps track of the gripper wheel positions.\n\n### MinibotDeployer.java ###\n\nThis class holds a `Servo` object that actuates the minibot deployer.\n\n### CameraPanTilt.java ###\n\nThis class holds two `Servo` objects that actuate the pan/tilt bracket that the camera was mounted on. (The camera was removed from the robot to reduce the robot's weight at its first competition that year.)\n\n### EnhancedIOInterface.java ###\n\nThis class provides abstractions for the buttons, switches, and LEDs that were on the operator console. The Cypress IO board was used to interface with the driver station computer for digital inputs and outputs.\n\n### Other files ###\n\nOther files are unfinished and/or unused.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fteam751%2F2011-robot-code","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fteam751%2F2011-robot-code","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fteam751%2F2011-robot-code/lists"}