On a robot, if you use a separate SoC for processing, like the Raspberry Pi, could you have a small UPS and watchdog, to allow the RPi to automatically SAFELY Shut down? In a typical robot, yo would just press the off button and then, KaBoom! However, manually shutting down is nearly impossible because of the great risk of human error. I am thinking of some high-capacity supercapacitors that hold just enough energy to power the Pi for a minute without the main robot battery active.
I would guess that such a UPS is probably not “integral to and part of a COTS device”, but that is just me
By what I mean UPS is not really a battery. It is just a small power holder that allows a safe shutdown of the robot. This will not be a battery, so I do not think it is against a rule.
The only legal way to power the Rasberry Pi is through the Power Distribution Board. The only device that may send signals to the motor controllers is the cRIO.
The Field Management System commands the cRIO to shut down/disable communication to all systems at the end of the match. The robot is disabled, but still powered. When retrieving the robot, teams should turn the robot off at the main breaker.
You could look for a signal (or lack thereof) from the cRIO to stop all processes on the RPi, but I don’t see this being necessary.
I thought having any capacitors or batteries or any other power source besides the battery was illegal…
But then again, with the popularity of the offboard vision tracking becoming more popular, they might change the rules to allow for a safe shut down.
The problem is, its safer to have to robot off when doing things like transporting and fixing things. Waiting a minute or two for the Raspberry pi, Arduino (Yun, The new intel one, the new TI one), pandaboard, or whatever to shut down is not quickest thing, especially when you are loading/off loading the robot onto the field.
What I suggest (and I have no idea if you can do this) is that you connect the cRio and ODROID or whatever via I2C and whenever the match is done, send a signal from the cRio to the board and tell it to shut down. I’m guessing it wouldnt be too hard to do, but then again, I havent been able to experiment with it at all.
Batteries to do it are certainly not legal, per R34, unless they are integral to and part of the device (like a laptop battery).
As for “high-capacity supercapacitors”… As an inspector I would be very concerned with safety surrounding these. In college I had a roommate (bit of an idiot, failed out after freshman year, but that’s another story) who had trouble with his sub woofer. Thinking he was a genius, he decided to open it up to try and fix it himself. He unplugged it, spent a few minutes getting the back off, and proceeded to get a sizable zap when the capacitors discharged into the screwdriver he stuck in there. So, I would be concerned with any sizable capacitor used for these types of purposes! If you’re really concerned with shutting things down in a proper manor, have it respond to a signal from the cRio (or maybe the lack of a signal?).
Well, most commercial UPS devices use a battery. Also, the rule doesn’t say battery, but instead says “electrical energy”. Even if you’re using capacitors, it’s not legal.
If you want to use a battery, just process images on the driver station laptop.
Could someone elaborate on the concern about safely shutting down? With the exception of in-flight writes to a hard drive or SSD (which would presumably not apply here), is there any actual problem with just yanking power at any time to any of these systems? Has anyone experienced this or come across any sort of warning to avoid doing this?
The source of electrical energy in the super-capacitor would be the legal robot battery, so I don’t see why that rule would make it illegal. The source of electrical energy in a traditional UPS would be a chemical reaction inside the UPS’s battery, and would not be legal.
I’m with you on this one… If the coprocessor is being used for vision processing, simply turning it off really shouldn’t have a negative effect on the system.
If you are datalogging, you would want to have that data stored before removing power. A simple watchdog could be initiated from the start of autonomous and end after the teleop period after a set time period of no signal from the cRIO.
There is a whole thread on powering a raspberry Pi. The answer is perhaps. See the last post or read the whole thing
There are some possibilities. especially if you could get a company to build a pi with an enclosed battery which then would be a COTS computer.
So from the other thread the issue doesn’t seem to be safely powering things down, it is instead avoiding a power glitch that will cause a reset – a different problem, even if the solution spaces overlap. If this is the issue here, the other thread has more clarity and probably has more helpful information, so it might make sense to take things up there…
That Sounds like Me ::ouch:: ::safety::