# How We Prototype

## Prototype Bot

This bare-bones robot features a full control board. We can connect prototypes, test new programs, and practice driving.

![Front of Practice Bot](https://3143031572-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MSTlPxAkbXFCKT1jTKl%2F-MScWsIWNTkSE9eiGfJp%2F-MScfMML2FMiI5fpuIwZ%2FPracticeBot%20-%209.jpeg?alt=media\&token=c365ed6b-f6cd-4ab9-8104-aaa8bde04bea)

![Back of Practice Bot](https://3143031572-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MSTlPxAkbXFCKT1jTKl%2F-MScWsIWNTkSE9eiGfJp%2F-MScfMMNk1e2H9RGM8Tc%2FPracticeBot%20-%2011.jpeg?alt=media\&token=c5b11e06-160e-4f54-a024-b1dc0032176b)

![Front of Control Board](https://3143031572-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MSTlPxAkbXFCKT1jTKl%2F-MScWsIWNTkSE9eiGfJp%2F-MScfMMJQ-ydh49m4f31%2FPracticeBot%20-%207.jpeg?alt=media\&token=f4addbab-c025-41cc-ae9d-d4be74b783b8)

![Back of Control Board (with battery)](https://3143031572-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MSTlPxAkbXFCKT1jTKl%2F-MScWsIWNTkSE9eiGfJp%2F-MScfMMHpEbxXoX4cqj5%2FPracticeBot%20-%205.jpeg?alt=media\&token=02ea4e70-c650-41ff-b0a1-106e0b52ef1e)

![Back of Control Board (without battery)](https://3143031572-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MSTlPxAkbXFCKT1jTKl%2F-MScWsIWNTkSE9eiGfJp%2F-MScfMMK-tdcIsaQYD0k%2FPracticeBot%20-%208.jpeg?alt=media\&token=9a46492c-5abd-456c-be1e-b322344b0f93)

## FRC Motor Testing&#x20;

***...with a PWM Generator***

This setup allows us to run motors by manually creating a PWM signal and sending it to the motor controllers, effectively bypassing the RoboRio.  This way, we don't need to write any code (we don't even need access to a computer) to use motors in our prototypes.

We use Servo Motor testers to create a PWM signal.  (Servo Motors, just like our motor controllers, accept a PWM signal).  You can find them on [Amazon](https://www.amazon.com/HiLetgo-Consistency-Controller-Adjustment-Helicopter/dp/B07TQSKLBK/ref=sr_1_5?dchild=1\&keywords=servo+tester\&qid=1612369180\&sr=8-5).

![](https://3143031572-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MSTlPxAkbXFCKT1jTKl%2F-MScWsIWNTkSE9eiGfJp%2F-MScgheONUIsDvXrtuDa%2FScreen%20Shot%202021-02-03%20at%2011.21.16%20AM.png?alt=media\&token=949e563c-1d6b-4a14-98e7-3f33884ec817)

Use the 5V 500mA output from the VRM to power the servo controller.  The output of the servo controller connects to the motor controller's PWM input. &#x20;

We've gotten this to work well with with Victor SP and Victor SPX (the CAN wire on the Victor SPX works as a PWM input - green is ground, yellow is your signal).  This will probably also work with SparkMAX controllers, but you have to connect the SparkMAX to a computer and use the SparkMAX software to set it to PWM mode.

![PWM Generator Hooked Up To Motor Controller](https://3143031572-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MSTlPxAkbXFCKT1jTKl%2F-MScWsIWNTkSE9eiGfJp%2F-MScfMMD1O27NwHF3z7n%2FPracticeBot%20-%201.jpeg?alt=media\&token=a29aee3e-fe16-4061-b231-80b7cce3976d)

![Demo of Manual Speed Controller - Vary Speed and Direction](https://3143031572-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MSTlPxAkbXFCKT1jTKl%2F-MScWsIWNTkSE9eiGfJp%2F-MScw8SkHJRyYgQZp4Ex%2FMotorTest%20-%201.gif?alt=media\&token=3ceceec1-a36c-4d6d-b6af-89ec04694a22)

As an alternative, the [AndyMark ThriftyThrottle](https://www.andymark.com/products/thrifty-throttle-3) does the same thing.  It is powered by a 9V battery instead of a VRM or another power supply.

## Pneumatics

We use this pneumatics module to test ideas and learn about how an FRC pneumatics system works.

![](https://3143031572-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MSTlPxAkbXFCKT1jTKl%2F-MYAliwrn0UuemL8dliV%2F-MYAmpfXRMub5XO9sKOR%2FPneumatics-Module%20-%202.jpeg?alt=media\&token=1c6e4ee3-8a15-405f-a45a-42f76f0ee00b)

![](https://3143031572-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MSTlPxAkbXFCKT1jTKl%2F-MYAliwrn0UuemL8dliV%2F-MYAmx28GAJcbiSgrtNx%2FPneumatics-Module%20-%201.jpeg?alt=media\&token=c87f926d-c0f4-483d-b7fd-56b769f5da7b)

## Spectrum Protopipe

We enjoy using Spectrum Protopipe to quickly build and test ideas.  Huge thanks to Team 3847 for creating a prototyping system that's inexpensive and easy to use, and for sharing it with the FRC community. &#x20;

{% embed url="<http://blog.spectrum3847.org/2018/12/protopipe-rapid-prototyping-system.html>" %}

Check out our [Frisbee launching prototypes](https://docs.wcrobotics.org/engineering/2021/frisbee-shooters).

## HYPEBlocks

Created by Team 5254, these 3D printed blocks clamp on 1x1 or 1x2 tube (or 80/20 extrusions).  Great for prototyping.  For example, easily adjust the position of a shaft or motor by sliding it along the tube.  Check out their [examples in Onshape.](https://cad.onshape.com/documents/2557e44d96f97cb04d7652fb/w/458621eecc0d2f02d44ddf2b/e/35819b427f10964104020a32)

{% embed url="<https://www.chiefdelphi.com/t/team-5254-3d-printed-prototyping-resources/335599>" %}

#### HYPEBlocks, Pirate Style

We use modified HYPEBlocks to mount motors or bearings.  Attach one to an 80/20 extrusion or clamp a pair together over any 1"x1" square tube (using #10-32 SHCS & nuts). Mounting holes work for VersaPlanetary Gearboxes, CIM, NEO, and Falcon 500 motors. &#x20;

Examples: [2021 Ball Shooter prototypes](https://docs.wcrobotics.org/engineering/2021/ball-shooter#cad-double-flywheel)

Access the [Onshape document](https://cad.onshape.com/documents/4b503f2cf556e7f17eb1ee28/w/a6c84618902832c52ce384c6/e/32007fce97f9a11c04cd1112).  Dimensions are optimized for printing on a Makerbot Replicator Mini+.

![HYPEBlocks - Pirate Style](https://3143031572-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MSTlPxAkbXFCKT1jTKl%2F-MUhnlrf0ULIdt6BsBk7%2F-MUiXHkqFZix4OsI5udD%2FHypePirateStyle%20-%202.jpeg?alt=media\&token=b257e281-2c89-4ab4-9300-bc2089df85ec)

## MakeDo

[MakeDo](https://www.make.do/collections/new) is a convenient system of tools & screws to easily work with cardboard.  A nice way to build fast and communicate ideas.

Plus, you can 3D print parts that are compatible with MakeDo:

* [Angle Bracket](https://www.thingiverse.com/thing:955809)
* [Hinge](https://www.thingiverse.com/thing:1034229)
* [Fastners](https://www.thingiverse.com/thing:4701777)
* [Screwdriver](https://www.thingiverse.com/thing:3163706)
* [Mini Tool](https://www.thingiverse.com/thing:974158) for Scru
* [Drill Bit ](https://www.thingiverse.com/thing:2922340)for Scru

## 3D Printed Parts

Helpful to have on hand:

* Hex Shaft Collars (one-piece, clamping, no hardware required): <https://www.chiefdelphi.com/t/print-in-place-hex-shaft-collar/387582>
* Hex Shaft Collars (two-piece, balanced, tighten with 1/4-20 SHCS): <https://www.thingiverse.com/thing:4212663>
* Snap-on spacers for 1/2" hex shaft:  <https://www.thingiverse.com/thing:3334138>
* Printable GT2 Pulleys: <https://www.thingiverse.com/thing:3333938>
* Microsoft LifeCam HD-3000 Webcam Mount: <https://www.thingiverse.com/thing:1494829>
* RoboRio Pin Protectors: <https://www.thingiverse.com/thing:2023873>

## Inspiration

Check out these great prototypes that we can learn from.

***"You don't have to prototype everything...just whatever you want to work."***

{% embed url="<https://youtu.be/RpSgUrsghv4>" %}

{% embed url="<https://youtu.be/mdX2RtrT2x0>" %}

{% embed url="<https://youtu.be/f358bhIBhfI>" %}

{% embed url="<https://youtu.be/z8VLMvZMZcU>" %}

{% embed url="<https://youtu.be/8FhW5FBPjJ4>" %}

{% embed url="<https://youtu.be/AQPrpktG6SQ>" %}

{% embed url="<https://youtu.be/yz6BrCiXr4k>" %}

{% embed url="<https://youtu.be/g_rOayRohvw>" %}

Check out the prototypes in the first 30 seconds of this Team 254 recap video:

{% embed url="<https://youtu.be/bHiwHnxH7F4>" %}
