This document publishes the concepts, PCB boards and starting code for the “BearSCADA” Sensor Pre-Processing Architecture. We will publish updates as we refine and improve the components, most likely the code/software.
We call BearSCADA an “architecture” because it’s a general alternative approach to attaching sensors to the RoboRio control hub. It offers useful improvements and advantages, while avoiding or resolving issues teams have had with sensor integration in the past. Version 1 can handle multiple sensors at the same time, but each sensor outputs only one variable to the RoboRio. (And yes, we know “BearSCADA” is not a full SCADA solution or system; but we like the name so we’ll continue to use it.)
Advantages of BearSCADA include:
- All the components are already developed and can be used by all teams
- It uses analog (true analog or PWM) or one-bit digital signals to send a signal representing a single variable over long wiring distances to the RoboRio
- It avoids the sometimes-problematic RoboRio I2C interface
- It’s Arduino based, so it can use the latest Arduino-oriented sensors and code libraries to bring sensor functionality into the FRC environment quickly. And many teams can add their own software extensions and enhancements to what we’re providing.
- It supports a local (optional) data display, which is very useful for testing, development, debugging, calibration and operational monitoring
- We’ve “battle tested” the concept and a subset of parts, by actual use in our highly-reliable 2023 competition robot
- It can reduce CPU loading in the RoboRio, even if just a little
The full documentation is here, including source files for the PCB boards and programs that processes multiple useful sensors. We recognize and appreciate that others have previously proposed and documented good sensor pre- and co-processing solutions for FRC robots. But we believe BearSCADA is a useful general and extensible solution in this area, with a unique set of advantages. We’ve used it and know it works. We hope this helps teams solve a few problems in the 2024 and future seasons!