Jump to content

Current/voltage measurement and heat dissipation


esaj

Recommended Posts

find something on banggood for voltage and current measurement.

I ordered some (up to) 100V DC self-powering voltage displays (no need for separate power for the display, it draws directly from measured wires), and one current/voltage display (100V/50A) with separate shunt. Already got the current/voltage display today (it wasn't supposed to arrive for a week or two yet), haven't tested it yet though. It's this one: http://www.aliexpress.com/item/DC-Car-LED-Red-Blue-Dual-display-DC-0-100V-50A-Voltmeter-Ammeter-2in1-Voltage-Current/1684125289.html  Gotta try to cook up something to test & calibrate the display, I don't have a configurable power supply, but I do think I have a simple 3-12V DC transformer, with options for voltage every 1.5V between those, then compare it to basic multimeter (which probably isn't very accurate itself either, it's not a Fluke ;)). And then something for checking the current measurements...

I did know it seeing the dimensions in the page, but still that shunt is large (about 17.5 x 25 x 120mm) :wacko: I originally thought I could fit it inside the bike front, but too big... probably need to attach it inside the mainboard compartment and use lots of silicone/large heat shrink tubes/electric insulation tape/something to prevent it from shorting anything...

regarding the heat build up, I do think I have felt some heat build up at some point in time... I have ordered some thermal sensors, intended for my solar heater for my allotment. But I could make some measurement on the heating plate so we can get the real temperature.

My plan is to add thermal paste between the metal plate where the heat sink is connected to and to add small copper heatsink with fins on top of the current aluminum sink... probably not that big difference vs. the aluminum sink by itself, but at least something ;)

 

Link to comment
Share on other sites

...

My plan is to add thermal paste between the metal plate where the heat sink is connected to and to add small copper heatsink with fins on top of the current aluminum sink... probably not that big difference vs. the aluminum sink by itself, but at least something ;)

 

You closed the compartment containing the mainboard tight to prevent water and dirt coming in? Or was this with another wheel?

if you use thermal paste and add more surface to the thermal sink you are just reducing the thermal resistance - but if the hot air cannot leave the compartment, it want help - just the whole sytem will go up in temperature more equally. But if no fresh cool air can come in to dissipate the heat it will not make a real difference. Like with the computers that need fans to blow the hot air out of the chassis and fresh cool air comes in, that can be heated up again.

so you either open up the compartment again to allow airflow or you can think about something like heat-pipes to transfer the heat to the outside.

Link to comment
Share on other sites

You closed the compartment containing the mainboard tight to prevent water and dirt coming in? Or was this with another wheel?

if you use thermal paste and add more surface to the thermal sink you are just reducing the thermal resistance - but if the hot air cannot leave the compartment, it want help - just the whole sytem will go up in temperature more equally. But if no fresh cool air can come in to dissipate the heat it will not make a real difference. Like with the computers that need fans to blow the hot air out of the chassis and fresh cool air comes in, that can be heated up again.

so you either open up the compartment again to allow airflow or you can think about something like heat-pipes to transfer the heat to the outside.

This will be on my Firewheel, I'm upgrading the batteries to 768Wh (4 separate 192Wh batteries, each with their own BMS), adding a current/voltage display for mainboard power-wires and some other small improvements. The entire mainboard compartment will be sealed with rubber seals and silicone. So far I haven't had any heat problems (at least that I'm aware of), but with the batteries capable of giving much more power (current), I'd like to improve the heat transfer at the same time. I do have a heatpipe-cooler for an old graphics card, but not sure if it would fit or if I could actually attach it to the wheel... also the heat sink to which the pipes move the heat would have to be next to my leg. :P

Already got the display showing the voltage (and didn't even burn anything! :D), but not current. Might be that the fan I'm using as load doesn't draw enough current for the display to show anything (with the shunt, it should be able to measure up to 50A):

measure.thumb.jpg.9e99d99116729b2493c0d8

Link to comment
Share on other sites

This will be on my Firewheel, I'm upgrading the batteries to 768Wh (4 separate 192Wh batteries, each with their own BMS), adding a current/voltage display for mainboard power-wires and some other small improvements. The entire mainboard compartment will be sealed with rubber seals and silicone. So far I haven't had any heat problems (at least that I'm aware of), but with the batteries capable of giving much more power (current), I'd like to improve the heat transfer at the same time.

With improving the heatsink inside the sealed, good insulated compartment one only reduces the time to heat up the compartment. It gives a little safety margin for the motor driver mosfets but will not help for continous thermal overload.

From some pictures of your firewheel i have seen, that the compartments are closed by a black plastic panel? Is this true for the mainboard compartment, too?

If so, you could replace this plastic panel with a metal panel and fix the heatsink to it - so you would have a real improvement. The turning wheel will support fresh air to your metal plate and the heat is led away...

Then of course you have to fix and insulate the mainboard properly inside the compartment. Maybe insulating the panel from the heatsink with ?mica? (Is this the right word? is this still beeing used?) would be a good idea, too.

I do have a heatpipe-cooler for an old graphics card, but not sure if it would fit or if I could actually attach it to the wheel... also the heat sink to which the pipes move the heat would have to be next to my leg. :P

You could use the design from motorbikes, where you have the hot exhaust valve also quite near to the leg with some models... ;)

Link to comment
Share on other sites

From some pictures of your firewheel i have seen, that the compartments are closed by a black plastic panel? Is this true for the mainboard compartment, too?

If so, you could replace this plastic panel with a metal panel and fix the heatsink to it - so you would have a real improvement. The turning wheel will support fresh air to your metal plate and the heat is led away...

Then of course you have to fix and insulate the mainboard properly inside the compartment. Maybe insulating the panel from the heatsink with ?mica? (Is this the right word? is this still beeing used?) would be a good idea, too.

The black plastics are for battery compartments, the mainboard compartment has a metal plate:

build1.thumb.jpg.27569f031d79928b427e784

mainboard2.thumb.jpg.3d4db0a98c3be7fdc56

The aluminum heatsink of the power stage is screwed to that plate, but there's no thermal paste. That metal plate is going to be replaced also (the scratches in the tire direction are probably caused by vee73's studded winter tire), I've got another one that came with the broken mainboard, just have to drill new holes to move the mainboard, as I'm going to attach the secondary PCB to the plate also.

 

I should probably split the messages to their own topic, this starts to go off-topic from the generic unicycle... ;)

 

Link to comment
Share on other sites

The black plastics are for battery compartments, the mainboard compartment has a metal plate:

 

The aluminum heatsink of the power stage is screwed to that plate, but there's no thermal paste. That metal plate is going to be replaced also (the scratches in the tire direction are probably caused by vee73's studded winter tire), I've got another one that came with the broken mainboard, just have to drill new holes to move the mainboard, as I'm going to attach the secondary PCB to the plate also.

The metal plate is great! Is it made from iron or aluminium? There's a big difference in thermal conductivity - copper has 399 , aluminium 235,  Cast Iron 80 and stainless Steel only 14 W/mK.

You also would have place for a real heatsink outside the mainboard compartment - if the internal heatsink could easily be coupled to the external one...

But a proper fixing with heat paste is hopefully more than enough ...

Link to comment
Share on other sites

The metal plate is great! Is it made from iron or aluminium? There's a big difference in thermal conductivity - copper has 399 , aluminium 235,  Cast Iron 80 and stainless Steel only 14 W/mK. 

You also would have place for a real heatsink outside the mainboard compartment - if the internal heatsink could easily be coupled to the external one...

But a proper fixing with heat paste is hopefully more than enough ...

The one in my wheel currently, that's seen in the pictures, could be galvanized steel:

https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcSHiwb_LlkguHE7m1erp32XvUXzJ491HQ98U2rs4hVRIM6qpZmHSw

, but I think the other one I have is aluminium, but not sure, purely judging by the look of the plate:

http://rainbowaluminium.com/wp-content/uploads/2013/06/Aluminium-sheets1.jpg

It hasn't got those "spots" like the galvanized steel-plate, just clean shiny "silvery" color. Still I guess it could be stainless steel also.

There isn't much space to attach anything on the outside of the plate, as you can see what the studs did to the old plate, and they were probably something 5mm or less long, so the tire is pretty close to the plate. The outside heatsink would have to have a really low profile. But I'd expect even the thermal paste alone should make the heat transfer better. 

Link to comment
Share on other sites

 

The one in my wheel currently, that's seen in the pictures, could be galvanized steel:

https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcSHiwb_LlkguHE7m1erp32XvUXzJ491HQ98U2rs4hVRIM6qpZmHSw

, but I think the other one I have is aluminium, but not sure, purely judging by the look of the plate:

http://rainbowaluminium.com/wp-content/uploads/2013/06/Aluminium-sheets1.jpg

It hasn't got those "spots" like the galvanized steel-plate, just clean shiny "silvery" color. Still I guess it could be stainless steel also.

There isn't much space to attach anything on the outside of the plate, as you can see what the studs did to the old plate, and they were probably something 5mm or less long, so the tire is pretty close to the plate. The outside heatsink would have to have a really low profile. But I'd expect even the thermal paste alone should make the heat transfer better. 

If its aluminium you should notice it - it feels too light, to be metal :)

and if thats the plate you need to drill holes and its really aluminium look for some tipps in the inet for drilling in aluminium plates before! Or sou don't care if it looks horrible ;)

Link to comment
Share on other sites

If its aluminium you should notice it - it feels too light, to be metal :)

and if thats the plate you need to drill holes and its really aluminium look for some tipps in the inet for drilling in aluminium plates before! Or sou don't care if it looks horrible ;)

Judging by the weight, it might be too heavy to be aluminum, so I guess it's stainless steel.

This is the heatpipe-cooler I've had in an old Radeon 9600, both sides of the heatsink plates have fins (1 plate is about 10mm thick), so hard to attach by themselves (ie. just taking one of the heatsinks and attaching it to the outside of the plate), would need load of paste so the heat would transfer properly, or use the pipes (and then there'd be the problem of getting the pipes properly on the aluminum heatsink on the mainboard itself):

heatpipe.thumb.jpg.35ea09e923b585bf179ee

So probably just going to go with nothing but thermal paste between the plate and the aluminum heatsink on the mainboard.

Link to comment
Share on other sites

Judging by the weight, it might be too heavy to be aluminum, so I guess it's stainless steel.

This is the heatpipe-cooler I've had in an old Radeon 9600, both sides of the heatsink plates have fins (1 plate is about 10mm thick), so hard to attach by themselves (ie. just taking one of the heatsinks and attaching it to the outside of the plate), would need load of paste so the heat would transfer properly, or use the pipes (and then there'd be the problem of getting the pipes properly on the aluminum heatsink on the mainboard itself):

...

So probably just going to go with nothing but thermal paste between the plate and the aluminum heatsink on the mainboard.

I would have thought to put the heatsink in the empty place beside the compartments - but i assume you will not have a chance to bend the heatpipes straight. If they are not solid copper, you also cannot cut them (there could be/are liquids/gas inside). And you would need to cut the heatsink to fit there... So that's only something if you really like to tinker around :) and should not be worth the effort.

You could just double (triple (inside and outside) the plate with aluminium plates or just replace the iron plate with an aluminium plate to increase the thermal conductivity. Also this could be already too much effort... :)

Regarding the shunt you put in the mainboard compartment aren't the two big holes on the side to mount it on a heatsink? So you could screw him to the plate, too. With normal bike operation he should not really get in thermal problems - but then at least he's nicely fixed inside...

Link to comment
Share on other sites

I would have thought to put the heatsink in the empty place beside the compartments - but i assume you will not have a chance to bend the heatpipes straight. If they are not solid copper, you also cannot cut them (there could be/are liquids/gas inside). And you would need to cut the heatsink to fit there... So that's only something if you really like to tinker around :) and should not be worth the effort.

Yes, there should be some liquid (methanol or something?) inside the gold-plated copper pipes to move the heat (evaporating near the GPU, then condensing back to liquid at the heat sink ends), and some sort of wick to absorb it back via capillary action, so better not cut them.

You could just double (triple (inside and outside) the plate with aluminium plates or just replace the iron plate with an aluminium plate to increase the thermal conductivity. Also this could be already too much effort... :)

Yeah, I don't have the tools to cut a correctly shaped aluminum plate, so probably not going to get them just for this  ;) 

Regarding the shunt you put in the mainboard compartment aren't the two big holes on the side to mount it on a heatsink? So you could screw him to the plate, too. With normal bike operation he should not really get in thermal problems - but then at least he's nicely fixed inside...

I'm going to attach the shunt inside the compartment, just not sure whether it's going to be on the plate (probably, if I can fit it there with the mainboard and the secondary PCB) or on the opposite plastic "wall" of the compartment (which would mean the screws come through outside the shell). The space is tight with all the wires running there, it would be so much easier to work with if the compartment was accessible from outside the wheel  ;)

Last night when I tried the display, I couldn't get it to show any current values (always just 0), but it could be that the around 100mA current with the fan I used as load is too low to get any readings with the shunt. Or then the displays' current calibration is way off, the voltages were pretty much in line with what I got with a multimeter.

 

Link to comment
Share on other sites

The plate might look like there's lots of space when the mainboard is on it alone, but then when you add the secondary pcb and the shunt:

pbcs-shunt-plate.thumb.jpg.c828eb73dc248

Not so much space, actually had to bend one the capacitors a bit upwards, and then MAYBE the shunt will fit. That's the broken mainboard and the chinese-speaking secondary PCB on the picture, but they're similar as the "real ones" inside the wheel currently (I won't dismantle it again until I get the new battery packs).

Link to comment
Share on other sites

Last night when I tried the display, I couldn't get it to show any current values (always just 0), but it could be that the around 100mA current with the fan I used as load is too low to get any readings with the shunt. Or then the displays' current calibration is way off, the voltages were pretty much in line with what I got with a multimeter.

 

In the one picture the two blue digits (current) seem like the are fixed to show 00-50 A without a decimal place? Could that be right? Then it would show the correct number for 100mA.

You noted in the description from your link, that the supply voltage is 4.5~30V - so the voltage from the battery pack is too much!

Secondary PCB: That needs cooling, too? If not, you can maybe fix it somewhere else on the plastic?

Link to comment
Share on other sites

In the one picture the two blue digits (current) seem like the are fixed to show 00-50 A without a decimal place? Could that be right? Then it would show the correct number for 100mA.

Actually, there is a decimal point between the two zeroes, it's just hidden behind the black cable coming from the fan in the picture. I need to add more load to get higher current, then I might get around to actually trying to calibrate it (of course best would be to use much higher current, but I haven't got a configurable power supply and a suitable device to use as load).

You noted in the description from your link, that the supply voltage is 4.5~30V - so the voltage from the battery pack is too much!

Yeah, I either need to pull from the 12V line of the mainboard (which might be risky, even though the display should need less than 20mA, as the stepdown DC/DC-transformer chip on the board is the component that has burned most often from these older Firewheel mainboards), or make a separate outside-accessible battery compartment (using normal rechargeable NiMh batteries) to power it. EDIT: Actually, I think it's better to use a single 9V battery, as I'd need so many 1.2V batteries in series to get the required voltage, size matters...

 

Secondary PCB: That needs cooling, too? If not, you can maybe fix it somewhere else on the plastic?

No cooling needed with the secondary PCB, currently I've plastered it to the bottom of the mainboard compartment with silicone. There are more pictures of the boards & dismantling & putting the wheel back together here:  http://forum.electricunicycle.org/topic/613-firewheel-pcbs-connectors-battery-wiring-older-gen/

Link to comment
Share on other sites

I am just going to add this :)

I have sealed the compartments yesterday, and today I was going offroad (as much as is possible with my generic A2 :) ) piles of mud, I almost wasn't able to walk where I tried to drive... erh where was I... yeah,

no heat felt on the side with the controller compartment.

Link to comment
Share on other sites

Well, that was a lot of time wasted for a stupid reason... I've been trying to figure out why the amperage -side of the display keeps showing 0, even though I put 4 fans in parallel to get the current up to around 300mA (on a 9V transformer). I did everything exactly like the image in Aliexpress (and other places selling similar displays) suggests:

http://i00.i.aliimg.com/img/pb/970/177/056/1056177970_809.jpg

Nothing. Always just 0.0A. Re-measured, tried turning the calibrating screw around the back of the display, checked connections, internal resistance between the COM and IN+ (in case I'd have burned it at some point...). Changing voltages. All sorts of stuff.

Then I stumbled upon a similar display being sold in Amazon, and checked the questions, where someone was wondering the same thing with 2 similar displays. The answer:

I don't know your particular setup but you need to separate voltages, one to power your volt/amp meter and the one your wanting to monitor.

So I got a 9 volt battery, and used it to power the display, then turned the circuit back on. The display reads 0.3A. FFS... On the other hand I'm glad it works, on the other hand I'm very pissed at spending hours with this... :angry:

Link to comment
Share on other sites

Hi,

Two weeks ago I got my first EU: it's the cheapest wheel I could find on ebay from an european seller. It looks very similar to the TG T3, but it has no logos or brand names.

I'm still learning how to ride it but I'm already thinking about building a small circuit to collect data from the EU and send them to my smartphone where I can do post-processing, monitoring and logging.

My idea is to use an hall effect current sensor to measure the battery current (an ACS712 rated at 20A seems to be a good option), a simple voltage divider to measure the battery voltage, a bluetooth interface (HC-05 or NRF24L01+) to talk to the smartphone and a microcontroller (PIC, Atmel or similar) to do the actual a/d conversions, talking to the BT interface and all the logic involved.

It would be nice to be able to measure the speed as well: I could use a hall effect switch triggered by a magnet glued on the wheel but I believe there are better options: since the motor is brushless it should already have hall sensors inside: if it's possible to piggyback the existing sensors i could get distance and speed measurements for free.

Does anyone know how the mainboard is interfaced to the motor in terms of speed/position control? How many sensors are usually mounted on an EU motor and how are they positioned? Any idea about the sensor brand/model?

Any idea about other interesting data to be collected?

Link to comment
Share on other sites

Does anyone know how the mainboard is interfaced to the motor in terms of speed/position control? How many sensors are usually mounted on an EU motor and how are they positioned? Any idea about the sensor brand/model?

Any idea about other interesting data to be collected?

The motor uses 3 hall sensors A3141 with open collector output. You can take the signal directly on the Halll sensor connector, feed one digital input of the microcontroller and divide it by 24 to get rpm (on a 24 pole motor).

If you know to program the Smartphone, I can provide you the hardware for free (sensor + uC + BT interface), to set up rapidly a collaborative project.

Other relevant data are board temperature, buzzer state (on or off), and wheel's inclination (using the BMA180)

Link to comment
Share on other sites

The motor uses 3 hall sensors A3141 with open collector output. You can take the signal directly on the Halll sensor connector, feed one digital input of the microcontroller and divide it by 24 to get rpm (on a 24 pole motor).

If you know to program the Smartphone, I can provide you the hardware for free (sensor + uC + BT interface), to set up rapidly a collaborative project.

Other relevant data are board temperature, buzzer state (on or off), and wheel's inclination (using the BMA180)

Wow, thanks for the info hobby16! With open collector output sensors, monitoring the speed will be easier than I tought. Probably using all the three outputs would be better, so I could get the spinning direction as well.

I'm not an expert app developer, but yes, I know how to write android apps and I have some embedded software development skills from my previous job.

Currently the major showstopper from my side is that I recently moved abroad and I don't have all my electronic tools at hand (soldering irons, multimeters etc.), so this is not something I plan to work on at a very fast pace.

Ok, adding a temperature sensor is easy enough and sounds pretty useful to study EU performances related to environment temperature but I'm not sure how accelerometer data would be useful in this kind of application.

Link to comment
Share on other sites

Well, that was a lot of time wasted for a stupid reason... I've been trying to figure out why the amperage -side of the display keeps showing 0, even though I put 4 fans in parallel to get the current up to around 300mA (on a 9V transformer). I did everything exactly like the image in Aliexpress (and other places selling similar displays) suggests:

http://i00.i.aliimg.com/img/pb/970/177/056/1056177970_809.jpg

Nothing. Always just 0.0A. Re-measured, tried turning the calibrating screw around the back of the display, checked connections, internal resistance between the COM and IN+ (in case I'd have burned it at some point...). Changing voltages. All sorts of stuff.

Then I stumbled upon a similar display being sold in Amazon, and checked the questions, where someone was wondering the same thing with 2 similar displays. The answer:

So I got a 9 volt battery, and used it to power the display, then turned the circuit back on. The display reads 0.3A. FFS... On the other hand I'm glad it works, on the other hand I'm very pissed at spending hours with this... :angry:

May be this kind of displays will be better:

http://www.banggood.com/AC-80-300V-100A-Ammeter-Voltmeter-Digital-LED-Panel-Meter-p-910022.html

Since it have a current transformer, probably it would work without external power.

Link to comment
Share on other sites

That's an AC meter: it will not work for dc current (you can't use a transformer with DC).

Sorry, that is true. It is an AC meter.

Anyway, I suppose that DC meters without shunts must exist, since clamp meters can measure DC currents without shunts. It is the same physics theory, AC or DC.

...yes, found it: http://es.aliexpress.com/item/2in1-Dual-display-Voltmeter-Ammeter-DC-0-100V-20A-Digital-Voltage-Current-Meter-Current-Transformer/32368724889.html

 

Link to comment
Share on other sites

Wow, thanks for the info hobby16! With open collector output sensors, monitoring the speed will be easier than I tought. Probably using all the three outputs would be better, so I could get the spinning direction as well.

Well, you don't change the spinning direction often during a ride, do you ? In fact, I think you don't change at all !

 

 

Ok, adding a temperature sensor is easy enough and sounds pretty useful to study EU performances related to environment temperature but I'm not sure how accelerometer data would be useful in this kind of application.

Not accelerometer (since it can be easily calculated, acceleration = derivative of speed), but inclinometer, to test how the wheel deals with slopes and warnings by tilt-up.

Do you think you can develop an app that takes in serial data stream (in Ascii, one line per sampling cycle at frequency 100hz) from BT, then store it into a storage text file and do some calculations and basic number displays (graphical display can be optional and/or processed later with an offline grapher) ?

Link to comment
Share on other sites

Sorry, that is true. It is an AC meter.

Anyway, I suppose that DC meters without shunts must exist, since clamp meters can measure DC currents without shunts. It is the same physics theory, AC or DC.

...yes, found it: http://es.aliexpress.com/item/2in1-Dual-display-Voltmeter-Ammeter-DC-0-100V-20A-Digital-Voltage-Current-Meter-Current-Transformer/32368724889.html

 

Yeah, but that needs separate power also, and I'm not sure if even 20A is enough (the one I have currently could measure up to 10A without shunt):

1350W / 56V = 24,1A

Although I'm not sure if it is indeed 1350W max power motor. Or if the voltage can actually go lower, usually after the wheel gives the low battery warning and stops you from riding, it starts charging from around 56V, but I don't know if the voltage could temporarily go even under that.

Hi,

Two weeks ago I got my first EU: it's the cheapest wheel I could find on ebay from an european seller. It looks very similar to the TG T3, but it has no logos or brand names.

I'm still learning how to ride it but I'm already thinking about building a small circuit to collect data from the EU and send them to my smartphone where I can do post-processing, monitoring and logging.

My idea is to use an hall effect current sensor to measure the battery current (an ACS712 rated at 20A seems to be a good option), a simple voltage divider to measure the battery voltage, a bluetooth interface (HC-05 or NRF24L01+) to talk to the smartphone and a microcontroller (PIC, Atmel or similar) to do the actual a/d conversions, talking to the BT interface and all the logic involved.

It would be nice to be able to measure the speed as well: I could use a hall effect switch triggered by a magnet glued on the wheel but I believe there are better options: since the motor is brushless it should already have hall sensors inside: if it's possible to piggyback the existing sensors i could get distance and speed measurements for free.

Does anyone know how the mainboard is interfaced to the motor in terms of speed/position control? How many sensors are usually mounted on an EU motor and how are they positioned? Any idea about the sensor brand/model?

Any idea about other interesting data to be collected?

Do you think you can develop an app that takes in serial data stream (in Ascii, one line per sampling cycle at frequency 100hz) from BT, then store it into a storage text file and do some calculations and basic number displays (graphical display can be optional and/or processed later with an offline grapher) ?

This sounds interesting, I don't know enough about electronics to be of much help there, but I could help with the phone-software or microcontroller coding (but without hardware, couldn't do much else than maybe simulating the actual chip, if there even are free IDEs for that). Granted that I mostly write large Java EE -systems for living, but I've also done a lot of game-programming both as a hobby and at work (I work for a multiplayer mobile game company, but mostly for the server side), and think some cross-platform (at least iOS/Android) game engine could actually be a good way to go with the app. Those usually have common interfaces for at least graphics drawing, sound, feedback (vibrations), and input (touch & keys), only the BT-side might need either a separate crossplatform-library or platform-dependent implementations. I don't have a Mac, so I don't know if I could build or test any iOS-versions, but probably for Android.

Link to comment
Share on other sites

Well, you don't change the spinning direction often during a ride, do you ? In fact, I think you don't change at all !

 

Not accelerometer (since it can be easily calculated, acceleration = derivative of speed), but inclinometer, to test how the wheel deals with slopes and warnings by tilt-up.

Do you think you can develop an app that takes in serial data stream (in Ascii, one line per sampling cycle at frequency 100hz) from BT, then store it into a storage text file and do some calculations and basic number displays (graphical display can be optional and/or processed later with an offline grapher) ?

Lol. you're right about the direction: I didn't think about that.

I've just had a look at the BMA180 datasheet and indeed it can be an interesting addition since it also measures temperature with an accuracy good enough for this application (0.5 celsius resolution). Anyway I am not sure how the BMA could be used to measure slopes and the wheel til-up at the same time.

I think using 100 data frames per seconds would cause a huge battery drain on the smartphone. For this kind of data logging I think using a local sd card connected to the µC would be a better option.

My original idea about the app was more about a low-frequency logging: the µC would gather data and constantly send aggregated data to the smartphone: for example the app could tell the µC to use 5 seconds time windows and the µC would start sending a frame every 5 seconds with minimum/maximum/average values of each parameter accross the given time window. This is why i started looking at the NRF24L01+ since it can do bluetooth LE.

Of course there would also be "absolute" values (I mean not subject to the time window) like total traveled distance, life time (total number of seconds/minutes the wheel has been powered on), total number of charge/discharge cycles. This kind of parameters would be stored in the µC eeprom/flash to be retained accross power on/off cycles.
Storing to files from the app after doing some work on the data is not a problem at all and creating charts should not be hard.

 

This sounds interesting, I don't know enough about electronics to be of much help there, but I could help with the phone-software or microcontroller coding (but without hardware, couldn't do much else than maybe simulating the actual chip, if there even are free IDEs for that). Granted that I mostly write large Java EE -systems for living, but I've also done a lot of game-programming both as a hobby and at work (I work for a multiplayer mobile game company, but mostly for the server side), and think some cross-platform (at least iOS/Android) game engine could actually be a good way to go with the app. Those usually have common interfaces for at least graphics drawing, sound, feedback (vibrations), and input (touch & keys), only the BT-side might need either a separate crossplatform-library or platform-dependent implementations. I don't have a Mac, so I don't know if I could build or test any iOS-versions, but probably for Android.

I'm not familiar at all with iOS devices. I think Android would be the best platfrom for a first prototype: it's easy to get started and you have a huge choice about the device in terms of both price and power. Since you know Java, starting to play with Android development would be trivial. I'm not sure using an abstraction layer is a good idea at this time.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...