Georgia Tech has developed a standardized package for integrating sensors with our digital architecture. The base of this kit contains two main components: the BeagleBone Black and the Teensy microcontroller. These components integrate with any standard sensor which uses analog or common digital communications protocols such as I2C and SPI. M8 connectors are used to plug the sensors into the enclosure for easy data transmission.
This sensor pack is pictured above. In this example, an accelerometer is plugged into the Analog-to-Digital (ADC) conversion pins of the Teensy microcontroller. The converted digital signal is transmitted to the Beaglebone Black via the synchronous serial protocol, UART. Because the ADC process requires significant computation which must be done on a precise interval, the Teensy microcontroller is tasked solely with carrying out this computation.
A schematic of the sensor pack is pictured above. The primary computational component in this setup is the Beaglebone Black: a low-cost, embedded Linux computer capable of carrying out near-real-time computations. The specific variant used in this package has WiFi connectivity, which facilitates communication on a site-wide network. This device is running an instance of Node Red, which communicates via the bi-directional serial protocol, UART, with the Teensy. This communication facilitates transmission of sensor data which the Teensy microcontroller device can sample at deterministic time intervals. The sensor data is then processed using Node Red and published to an MQTT messagebroker. This specific data flow allows this sensor pack to integrate seamlessly with the digital architecture. By supplementing controller data with additional sensing, a more complete health analysis can be performed on a desired machine.
Communication with the Teensy
To facilitate acquisition and publishing of sensor data at desired intervals, the Beaglebone has been developed with three main communication tasks in mind:
- Set microcontroller parameters
- Begin a single sample from a desired sensor
- Begin a sampling interval from all sensors
Set Microcontroller Parameters
Perform a Single Sample
Execute a Sampling Interval