This project is a Penn State Behrend Senior Design Project for TechnipFMC. This project employs the use of the BeagleLogic library to capture data at 8Ms/s on the BeagleBone Black. The application in its current state is used to analyze quadrature encoded signals up to 10khz. Every second the application will publish its data to a MQTT Mosquitto broker to be analyzed on separate devices that are subscribed to the broker.
In order to run the Pulse Input Processor and Logger on your BeagleBone Black you will need to first configure the BeagleBone Black. The easiest way is to use the prebuilt image for the BeagleLogic library, details of which can be found here.
- Note that this project does not use the last two pins 20 and 21 on the BeagleBone Black due to bus conflicts with the EEPROM.
To build this app you will need quite a few libraries
Since the application publishes to MQTT your BeagleBone will need to have MQTT Mosquitto installed
apt-get install mosquitto mosquitto-clients
The application also uses libssl-dev for communicating with the broker
apt-get install libssl-dev
To publish to the broker the application is dependent on MQTT Paho libraries which can be found here along with an easy to follow tutorial on how to build it.
Once you have Paho up and running you should be able to build the PIPL application after cloning this repo on to the BeagleBone run the following
cd PIPL/quadCount
make
./PIPL
- BeagleLogic - The kernel driver and PRU assembly code
- Paho - MQTT libraries
- Daphne Cruz - Daphne
- Kevin Brenneman - kalvin66rocks
- Michael Stumpf - pro585code
This project is licensed under the GNU General Public License v3.0 - see the LICENSE.md file for details
- Big thanks to abhishek-kakkar, his BeagleLogic library made this possible
- Also thanks to Fred Weiser and TechnipFMC for sponsoring this project and providing the necessary hardware