All Projects → VirtualEnder → TestStandv2

VirtualEnder / TestStandv2

Licence: other
Thrust, voltage, amperage, and RPM sensing designed to replace the internal electronics in the Turnigy Thrust stand or a custom built stand, running on a Tiva C Launchpad with the IO Booster Pack.

Programming Languages

C++
36643 projects - #6 most used programming language
c
50402 projects - #5 most used programming language
perl
6916 projects
Makefile
30231 projects

Projects that are alternatives of or similar to TestStandv2

Sensors
A macOS application displaying the thermal, voltage and current sensor values.
Stars: ✭ 70 (+438.46%)
Mutual labels:  voltage
PySDM
Pythonic particle-based (super-droplet) warm-rain/aqueous-chemistry cloud microphysics package with box, parcel & 1D/2D prescribed-flow examples in Python, Julia and Matlab
Stars: ✭ 26 (+100%)
Mutual labels:  thrust
GooFit
Code repository for the massively-parallel framework for maximum-likelihood fits, implemented in CUDA/OpenMP
Stars: ✭ 112 (+761.54%)
Mutual labels:  thrust
Arduino BrushlessServo
Arduino library to control precisely a Brushless Motors without an ESC, same interface as Servo library.
Stars: ✭ 17 (+30.77%)
Mutual labels:  brushless
ina219
ina219 full function driver
Stars: ✭ 27 (+107.69%)
Mutual labels:  voltage
openap
Open Aircraft Performance Model and Python Toolkit
Stars: ✭ 68 (+423.08%)
Mutual labels:  thrust
zabbix-mini-IPMI
Disk and CPU temperature monitoring for Linux, FreeBSD and Windows. LLD, trapper.
Stars: ✭ 82 (+530.77%)
Mutual labels:  voltage
Thrust
The C++ parallel algorithms library.
Stars: ✭ 3,595 (+27553.85%)
Mutual labels:  thrust
lbvh
an implementation of parallel linear BVH (LBVH) on GPU
Stars: ✭ 67 (+415.38%)
Mutual labels:  thrust
ThrustRTC
CUDA tool set for non-C++ languages that provides similar functionality like Thrust, with NVRTC at its core.
Stars: ✭ 41 (+215.38%)
Mutual labels:  thrust

Smart Turnigy Thrust Stand

Thrust, voltage, amperage, and RPM sensing designed to replace the internal electronics in the Turnigy Thrust stand. Check config.h for configuration options and documentation.

Requirements

This code is designed to work in the Energia IDE for the TI Launchpad series. Code is for the Stellaris Launchpad, but should also work fine on the Tiva C launchpad. It may also work for Arduino with a bit of reworking on the timer code, though I can't guarantee what the cycle time will be. Energia is available here: http://energia.nu/download/

This code is built around the HX711 breakout board from sparkfun: https://www.sparkfun.com/products/13230 The HX711 Library from ogde is also required and can be downloaded here: https://github.com/bogde/HX711 Even though this is an Arduino library, it doesn't use any low level code and is compatible out of the box with Energia and the Stellaris.

In addition the code uses the Average library during the braking test. However, in order for the averaging to be accurate, you must change the _sum variable type definition in the library to uint64_t to avoid overflows. The average library can be found here: http://playground.arduino.cc/Main/Average

Sample Rates

Currently the output update rate depends on your serial output rate. At 115200 baud, output update rate is ~2.5ms, at 230400 ~2ms, and at 460800 and greater ~1us. Default looptimes can be over-ridden via config.h to decrease data density. RPMs are triggered on an interrupt and are updated asynchronously from the loop and output rate. Voltage (analog in), Amperage (analog in) and Thrust (load cell amp) are measured via a timer at a configurable rate. The load cell amp refreshes at 80hz, but reads are done asynchrnously to the loop. Analog reads are done via the Stellaris internal interrupts, are asynchrnous to the loop, and have hardware oversampling configured via a define. The timer only needs to be run slightly faster than the fastest read delay. The internal analog reads update around 250hz with 64x oversampling. For all the data, the output rate stays constant and new information is simply updated as it comes in, allowing for flexible resolution, and no need to wait on the slower reading inputs during the output stage. With a suitibly fast output loop, this should mean that the data in the output is always the freshest available.

Credits

Thanks to zdayton at Davis RotorCross for the initial schematic and code: http://www.davisrotorcross.org/2015/09/09/adding-data-logging-to-the-turnigy-thrust-test-stand/

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].