Homemade Cycling Powermeter
![Leistungsmesser_Kurbel_Arduino_82.jpg](/proxy/?url=https://content.instructables.com/FQE/SUIV/IN3EANDP/FQESUIVIN3EANDP.jpg&filename=Leistungsmesser_Kurbel_Arduino_82.jpg)
Hello!
In my latest project I tried to realise a simple and cheap cycling powermeter based on Arduino. After a month I can say "Yes I can".
There are many commercial products (SRM, SRAM ...), but I'm always looking for a homemade solution. On the following pages I'll show you my successful construction.
The Principle
![Leistungsmesser_Kurbel_Arduino_05.jpg](/proxy/?url=https://content.instructables.com/FC0/7A8O/IN3EALE0/FC07A8OIN3EALE0.jpg&filename=Leistungsmesser_Kurbel_Arduino_05.jpg)
![Leistungsmesser_Kurbel_Arduino_02.jpg](/proxy/?url=https://content.instructables.com/FWH/U9Y6/IN3EALDR/FWHU9Y6IN3EALDR.jpg&filename=Leistungsmesser_Kurbel_Arduino_02.jpg)
![Leistungsmesser_Kurbel_Arduino_13.jpg](/proxy/?url=https://content.instructables.com/FQY/GTZB/IN3EALE6/FQYGTZBIN3EALE6.jpg&filename=Leistungsmesser_Kurbel_Arduino_13.jpg)
![Leistungsmesser_Kurbel_Arduino_33.jpg](/proxy/?url=https://content.instructables.com/FGZ/4CFH/IN3EALGF/FGZ4CFHIN3EALGF.jpg&filename=Leistungsmesser_Kurbel_Arduino_33.jpg)
![Leistungsmesser_Kurbel_Arduino_31.jpg](/proxy/?url=https://content.instructables.com/FXZ/2NMI/IN3EALFX/FXZ2NMIIN3EALFX.jpg&filename=Leistungsmesser_Kurbel_Arduino_31.jpg)
![Leistungsmesser_Kurbel_Arduino_35.jpg](/proxy/?url=https://content.instructables.com/FKM/LL34/IN3EALG8/FKMLL34IN3EALG8.jpg&filename=Leistungsmesser_Kurbel_Arduino_35.jpg)
![Leistungsmesser_Kurbel_Arduino_01.jpg](/proxy/?url=https://content.instructables.com/FWT/9VXX/KIAA4DJM/FWT9VXXKIAA4DJM.jpg&filename=Leistungsmesser_Kurbel_Arduino_01.jpg)
![Leistungsmesser_Kurbel_Arduino_77.jpg](/proxy/?url=https://content.instructables.com/FF3/V6DJ/IN3EALXS/FF3V6DJIN3EALXS.jpg&filename=Leistungsmesser_Kurbel_Arduino_77.jpg)
To calculate the power, we have to determine the current force, which is spent by the foot on the pedal. For this purpose I clued four strain gauges (http://www.ebay.com/itm/5Pcs-Pressure-Sensor-Precision-BF350-3AA-BF350-350-Strain-Gauge-Resistance-/361278029289?hash=item541dd93de9:g:oOYAAOSwstxVOFv2) on the sides of my old crank. To get a Signal depending on the load I arranged them in a so called Wheatstone-Bridge.
During one full rotation I sum as many forces as possible and calculate the average. Combined with the average velocity (2 * Pi * crank-radius / rotation-time) I get the power P.
To know the proportionality between the force F and the output-voltage U I strained the crank with different masses and myself (a lot of mass ;-)). The rise of the line is in my case 292 Newton/Volt.
For the amplifier I took a LF353 with a gain of 330. With this Setup I get Output-voltages between 1 and 4 V. I decided to start at 1V to avoid a negative drift and late response. Therefore I have to determine the offset at the beginning of the measurement and subtract this offset from the following voltages.
The Setup
![Leistungsmesser_Kurbel_Arduino_03.jpg](/proxy/?url=https://content.instructables.com/FLU/61V2/IN3EALDU/FLU61V2IN3EALDU.jpg&filename=Leistungsmesser_Kurbel_Arduino_03.jpg)
![Leistungsmesser_Kurbel_Arduino_04.jpg](/proxy/?url=https://content.instructables.com/FBF/AFN7/IN3EALDV/FBFAFN7IN3EALDV.jpg&filename=Leistungsmesser_Kurbel_Arduino_04.jpg)
![Leistungsmesser_Kurbel_Arduino_78.jpg](/proxy/?url=https://content.instructables.com/FUD/TT2D/IN3EALYT/FUDTT2DIN3EALYT.jpg&filename=Leistungsmesser_Kurbel_Arduino_78.jpg)
![Leistungsmesser_Kurbel_Arduino_79.jpg](/proxy/?url=https://content.instructables.com/FMR/DEAR/IN3EAM0U/FMRDEARIN3EAM0U.jpg&filename=Leistungsmesser_Kurbel_Arduino_79.jpg)
![Leistungsmesser_Kurbel_Arduino_26.jpg](/proxy/?url=https://content.instructables.com/FNX/9XZX/IN3EALF1/FNX9XZXIN3EALF1.jpg&filename=Leistungsmesser_Kurbel_Arduino_26.jpg)
![Leistungsmesser_Kurbel_Arduino_29.jpg](/proxy/?url=https://content.instructables.com/FGY/YSWG/IN3EBG7G/FGYYSWGIN3EBG7G.jpg&filename=Leistungsmesser_Kurbel_Arduino_29.jpg)
![Leistungsmesser_Kurbel_Arduino_41.jpg](/proxy/?url=https://content.instructables.com/FVT/O6A0/IN3EBG7N/FVTO6A0IN3EBG7N.jpg&filename=Leistungsmesser_Kurbel_Arduino_41.jpg)
![Leistungsmesser_Kurbel_Arduino_55.jpg](/proxy/?url=https://content.instructables.com/FJ2/ILNY/IN3EBHGM/FJ2ILNYIN3EBHGM.jpg&filename=Leistungsmesser_Kurbel_Arduino_55.jpg)
For the power-supply I use two lipo-battery packs (7.4V, 1200 mAh for the receiver and a smaller 600 mAh one for the transmitter).
To save space I use an arduino nano and the NRF24L01 are responsible for the communication. They work great and you can send as many values as you want. In my case I send the power (P) and the rounds per minute (rpm).
I also had to check, when a full rotation has accured. To avoid a sensor, which has to be mounted on the bike-frame, I decided to use the gyroscope MPU-6050. The accuracy is about +-3 degree per full rotation, which is satisfying.
The Completed Crank and Receiver
![Leistungsmesser_Kurbel_Arduino_59.jpg](/proxy/?url=https://content.instructables.com/FYU/K51A/IN3EALMN/FYUK51AIN3EALMN.jpg&filename=Leistungsmesser_Kurbel_Arduino_59.jpg)
![Leistungsmesser_Kurbel_Arduino_61.jpg](/proxy/?url=https://content.instructables.com/FOP/VRP2/IN3EALMO/FOPVRP2IN3EALMO.jpg&filename=Leistungsmesser_Kurbel_Arduino_61.jpg)
![Leistungsmesser_Kurbel_Arduino_57.jpg](/proxy/?url=https://content.instructables.com/FBJ/9XWJ/IN3EALML/FBJ9XWJIN3EALML.jpg&filename=Leistungsmesser_Kurbel_Arduino_57.jpg)
![Leistungsmesser_Kurbel_Arduino_47.jpg](/proxy/?url=https://content.instructables.com/FSX/2REZ/IN3EBH4F/FSX2REZIN3EBH4F.jpg&filename=Leistungsmesser_Kurbel_Arduino_47.jpg)
![Leistungsmesser_Kurbel_Arduino_49.jpg](/proxy/?url=https://content.instructables.com/F0M/VLBM/IN3EBH7B/F0MVLBMIN3EBH7B.jpg&filename=Leistungsmesser_Kurbel_Arduino_49.jpg)
![Leistungsmesser_Kurbel_Arduino_51.jpg](/proxy/?url=https://content.instructables.com/FZ9/CR5J/IN3EBHDS/FZ9CR5JIN3EBHDS.jpg&filename=Leistungsmesser_Kurbel_Arduino_51.jpg)
![Leistungsmesser_Kurbel_Arduino_53.jpg](/proxy/?url=https://content.instructables.com/FS4/GD4U/IN3EBHDV/FS4GD4UIN3EBHDV.jpg&filename=Leistungsmesser_Kurbel_Arduino_53.jpg)
![Leistungsmesser_Kurbel_Arduino_68.jpg](/proxy/?url=https://content.instructables.com/FPL/XUWS/IN3EC5J0/FPLXUWSIN3EC5J0.jpg&filename=Leistungsmesser_Kurbel_Arduino_68.jpg)
![Leistungsmesser_Kurbel_Arduino_65.jpg](/proxy/?url=https://content.instructables.com/FUH/PLEX/IN3EALMX/FUHPLEXIN3EALMX.jpg&filename=Leistungsmesser_Kurbel_Arduino_65.jpg)
The challenge was to fix up all the components (power-supply, gyroscope, NRF24L01, amplifier, arduino) on one crankarm but I succeded. I fixed them with double-sided tape and cable ties.
To mount the receiver on the bar I use the clamp from a bicycle-lamb.
The Results
![Leistungsmesser_Kurbel_Arduino_81.jpg](/proxy/?url=https://content.instructables.com/FSW/8LN7/IN3EAM2E/FSW8LN7IN3EAM2E.jpg&filename=Leistungsmesser_Kurbel_Arduino_81.jpg)
![Leistungsmesser_Kurbel_Arduino_70.jpg](/proxy/?url=https://content.instructables.com/FZQ/FZQ3/IN3EALNY/FZQFZQ3IN3EALNY.jpg&filename=Leistungsmesser_Kurbel_Arduino_70.jpg)
![Leistungsmesser_Kurbel_Arduino_76.jpg](/proxy/?url=https://content.instructables.com/FTR/OFTI/IN3EALWP/FTROFTIIN3EALWP.jpg&filename=Leistungsmesser_Kurbel_Arduino_76.jpg)
![Leistungsmesser_Kurbel_Arduino_72.jpg](/proxy/?url=https://content.instructables.com/FSG/RG6W/IN3EALQS/FSGRG6WIN3EALQS.jpg&filename=Leistungsmesser_Kurbel_Arduino_72.jpg)
![Leistungsmesser_Kurbel_Arduino_74.jpg](/proxy/?url=https://content.instructables.com/FV9/K5M0/IN3EALSM/FV9K5M0IN3EALSM.jpg&filename=Leistungsmesser_Kurbel_Arduino_74.jpg)
![Selbstbau Leistungsmesser Kurbel mit Arduino - homemade cycling powermeter with Arduino](/proxy/?url=https://content.instructables.com/FS9/EUWT/IN3EC59Q/FS9EUWTIN3EC59Q.jpg&filename=Selbstbau Leistungsmesser Kurbel mit Arduino - homemade cycling powermeter with Arduino)
After calibration and programming I first tried my powermeter indoor on my training roller. I got reasonable values and therefore I went outside. Heureka, it works :-)
Finally I can say, that it's possible to build a simple and working powermeter for
* 2 x arduino nano ..... 10 USD
* 2 x NRF24L01 ......... 5 USD
* 16x2 LCD ................ 5 USD
* 4 x strain gauges ..... 10 USD
* 2 x Lipo battery pack ..... 15 USD
* MPU-6050 ..................... 3 USD
* electronic parts .............. 7 USD
less than 55 USD.
Thank's for visiting my thread. Maybe you're interested in some of my other projects too:
https://www.youtube.com/user/stopperl16/videos
more physics projects: https://stoppi-homemade-physics.de/