Hello, Team 4118 is looking for a CRIO and modules to put in demo T-shirt shooting robot they are building off season. We are hoping since FIRST is switching to a new control board that there may be a team with an extra CRIO and modules to let us have so we can get our demo robot up and running.
we are looking for
CRIO,
12-Bit Analog Input Module 9201,
Bidirectional Digital I/O Module 9403,
Sourcing Digital Output Module NI 9472
Thanks for your help
John Youmans
Team 4118 Roaring Riptide
352-317-5646
I would recommend just buying an arduino and shield to replace the cRio. There are plenty of tutorials online for how to get one setup and outputting PWM to a digital sidecar or whatever else you might want. We did this with our 2013 robot as the cost of getting new cRio parts was a bit too steep for us at the time.
A cRio is certianly convenient, but the project can have extra educational value if you learn a new control system.
How did you get this to work? I’d think that an Arduino wouldn’t have enough processing power or memory to run an FRC robot, so I’m curious as to how you did it.
http://www.andymark.com/product-p/am-2957.htm --AKA, I think it does have enough power and memory. (I’m pretty sure there are also other shields that can increase those if need be.)
It really doesn’t need much processing power or memory at all to simply relay joystick commands. It practically works out of the box if you use the correct Shield. The Andy-Mark link gets you all the parts you need to make one work, you’ll just have to go through the setup which can be a little tricky if you aren’t familiar with Arduino.
Here is a very bizarre and silly proof of concept video our head mentor put together after fiddling around with a custom Arduino solution:
After that we got a couple students involved in the project and it really took off.
Later we got a video up of the “hacked-up sad control system” running our 2013 robot shell:
Your options are nearly infinite. In the end, everything boils down heavily to what you want. If you want just basic control of a handful of motors, you’d be well off with an Arduino or a Parallax Propeller. You can implement a bluetooth serial pipe to create some sort of quick and dirty wireless solution.
If you want something much more, like full blown networking, I’d suggest that you’d want to minimally use a Parallax propeller due to the amount of RAM and it’s parallel processing capabilities. If you want to be even more smart, you could have a Raspberry Pi perform all the networking and connections. This can connect to your custom driver station program to be controlled using. The main caveat of using a board such as a Raspberry Pi is the fact that the I/O capabilities are quite limited, in terms of the pin count. You’d probably not be able to run more than a handful of motors from a Pi directly. You could save a pin by remapping the activity light on the Pi to some process or cron in your program.
The magic happens when you link both, the Raspberry Pi and a microcontroller such as the Arduino or Propeller chip together. The Pi has the processing capabilities to do quite a bit of floating point math. It also has the ability to implement sockets with ease!
So basically,
Microcontroller + Dev Board -> success
I am pretty sure that the cRIO does something kind of similar. The FPGA is great for watching data like voltage levels with a high precision and poll rate. However, the PPC core is capable of running your program with ease, as you can run the JVM and more on it!
The biggest problem with using a raspberry pi alone is the lack of hardware PWM output. Some people have succeeded in doing it with software, but only one or two extremely shaky signals.
One of the best combinations I have heard of is to slap one of these beauties on a raspberry pi! What you end up with is nearly as capable as a roborio.
That’s where my last solution in my last post comes in hand. You do processing and comm. on a RasPi, and then send the final output over serial to a microcontroller which is more suited for providing a PWM.
This way, you get the benefits of both these worlds.