use arduino to help my daughter

Hello all,

Greetings! My first post here, was hoping to seek some help on this forum. I’m a bit of a techdad, with a daughter who has a minor condition that I wish to try to correct with the help of Arduino.

To explain the situation in the shortest way I can (apologies for the length though) - my 7 year old daughter is an idiopathic toe walker. Without having to google/youtube it, what that simply means is she walks on tip toes, but is able to walk normally on her heels if told/reminded. When at home where we can observe her, we are able to remind her to “walk flat” so she does it. However when in school, we cannot be there to remind her, so she walks on her toes. There are a lot of topics to discuss on idiopathic toe walking, such as casts being worn to prevent the behavior, surgery of the Achilles tendons, etc. but I am fully aware that this is not the proper forum to bore anyone with that. Plus, I’d like to try the unobtrusive method - the way I see it, no parent would like to see their child walking around in casts, much less undergo surgery for a behavorial pattern that can be resolved. True, there are toe walkers who unfortunately need to undergo these treatments, but in my daughter’s case, it is a simple behavioral modification that needs to be enforced for the greater part of everyday – unfortunately that greater part of everyday is spent in school where we cannot be present to encourage her to walk flat.

Now there are some basic vibrating watches out there (http://bedwettingstore.com/medose-vibrating-watch.html) that you can set to vibrate at certain preset intervals or via a countdown timer. The vibration can serve as a reminder for her to walk flat. I’ve thought of using this, however, since the vibrating alarms are dependent on time, I do not want the watch to vibrate when she is sitting down, listening to the teacher in class. Those unwanted frequent vibrations could potentially allow her to “ignore” the alarms, even when she is actually walking. Sort of a “boy who cried wolf” scenario.

Hence the Arduino. I was thinking of using a small Arduino board that configured in such a way with a couple of small accelerometers (MEMS?) for the X/Y axis which will detect a continuous up/down/forward/back motion (the natural motion induced by a stride/walk) then if it detects such motion, it can trigger a little vibrating motor every few seconds, which essentially can remind her to walk flat. And obviously if she is just sitting down listening to the teacher, the accelerometers will not detect any constant movement, so the vibrating alarms can be put on hold – until it detects the movement again.

As experienced developers for Arduino, I would like to ask if this is possible?

If it is, I would like to try get an Arduino board and the necessary hardware. I believe there are several types of Arduino boards, so the smaller it is, the better as this will be a portable device, that can hopefully be carried in a little package which includes the power source (perhaps 1 or 2 AA batteries, like a pager?)

Please be aware that I am no means a developer, but I am very willing to learn and do this for my daughter. The only “coding” that I know (and light at that) are HTML and a bit of SQL experience from previous jobs, but that’s as far I know – hopefully just for now.

I would truly appreciate any information that can be shared to me.

Kind regards, Shaun

If all the other causes have been ruled out (and I assume they have or you would not be here) then why does it matter if she is an idiopathic toe walker?

In principle this should be fairly easy. Having said that I haven't worked with accelerometers myself.

A single one should be able to detect both the motion of walking, and whether or not she is walking flat. This could be put into a shoe, one would think.

To interpret the results, a small processor chip which talked to the accelerometer should do it. A couple of batteries with perhaps a boost converter would give you enough power, I would think. One of the mini/micro boards should be physically small enough. You would need to think about how the "alert" device would work (what would it be exactly?) and where that would be placed. Maybe a simple beep would do, although that might lead her to being teased.

A motor with an off-center weight could provide a vibration. I'm sure there are suitable devices for sale, I haven't personally needed one, so I can't say exactly where to go for one.

The vibration can serve as a reminder for her to walk flat. I’ve thought of using this, however, since the vibrating alarms are dependent on time, I do not want the watch to vibrate when she is sitting down, listening to the teacher in class.

In that case perhaps the accelerometer doesn't need to go into her shoe, which should simplify it all somewhat. However it seems to me that the reminder should probably be tied to when she is not walking flat, rather than just every 5 minutes or whatever.

[quote author=Coding Badly link=topic=194029.msg1433102#msg1433102 date=1382080049]

If all the other causes have been ruled out (and I assume they have or you would not be here) then why does it matter if she is an idiopathic toe walker?

[/quote]

Hi,

It's a condition, that of course being kids, would not undestand. It leads to unwanted teasing and other things that kids will do. I was hoping not to discuss the matter here as it's a tech forum and I wanted to keep on the topic as part of forum etiquette which I will follow.

[quote author=Nick Gammon link=topic=194029.msg1433108#msg1433108 date=1382080222] In principle this should be fairly easy. Having said that I haven't worked with accelerometers myself.

A single one should be able to detect both the motion of walking, and whether or not she is walking flat. This could be put into a shoe, one would think.

To interpret the results, a small processor chip which talked to the accelerometer should do it. A couple of batteries with perhaps a boost converter would give you enough power, I would think. One of the mini/micro boards should be physically small enough. You would need to think about how the "alert" device would work (what would it be exactly?) and where that would be placed. Maybe a simple beep would do, although that might lead her to being teased.

A motor with an off-center weight could provide a vibration. I'm sure there are suitable devices for sale, I haven't personally needed one, so I can't say exactly where to go for one.

The vibration can serve as a reminder for her to walk flat. I’ve thought of using this, however, since the vibrating alarms are dependent on time, I do not want the watch to vibrate when she is sitting down, listening to the teacher in class.

In that case perhaps the accelerometer doesn't need to go into her shoe, which should simplify it all somewhat. However it seems to me that the reminder should probably be tied to when she is not walking flat, rather than just every 5 minutes or whatever. [/quote]

Thanks Nick. Yes, I was thinking a small offset motor would serve as the alarm, no beeps as that would definitely lead to surrounding people (ie teacher/classmates) getting bothered by the noise.

If this was to fit in a shoe, that would be great as that would mean it's really small. I would already be happy with a pager-sized package, perhaps 1-3pcs AAA to provide 5v if needed. The simpler the package, the better although at this point, I'm still seeing if this project is feasible.

Additionally, I came up on this article which gave me the idea for this. It's a bit similar I think, although the goal for the project was to start a timer when running.

https://wiki.engr.illinois.edu/display/ae498mpa/Run-Walk+differentiator+---+2-axis+Accelerometer

What about two force sensor's in the shoe? One in the heal and one in the toe. Then any large discrepancy in reading biased towards the toe could trigger the reminder. Might not even need an arduino for that.

Grumpy_Mike: What about two force sensor's in the shoe? One in the heal and one in the toe.

That's what I'm thinking.

My wife wears a pedometer (they are composed of one or more accelerometers with a microcontroller) during all waking hours. She's tried many. Very few work well. Some don't work at all. Based on her experience, using an accelerometer just to detect a walk is difficult. I suspect trying to differentiate between "walk" and "on toes" using accelerometers will be essentially impossible.

Then any large discrepancy in reading biased towards the toe could trigger the reminder. Might not even need an arduino for that.

The Arduino is probably necessary to differentiate between "walk", "on toes", and everything else (like sitting with feet folded back which would put pressure on the toes).

manoktot:
It’s a condition, that of course being kids, would not undestand. It leads to unwanted teasing and other things that kids will do.

Bummer.

Have her tell the other kids it is absolutely necessary because she is practicing to be a prima ballerina. :wink:

Coding Badly - that's what me and the wife thought when she was little, wow, we're going to have a ballerina :)

Anyhow, I agree that the differntiation between "walking flat" vs "tip toes" might be difficult for the accelerometers.

II was thinking - would it be better for the accelerometer to just detect *continuous forward/backward/up/down movements? * Key word being "continuous" so that it does not detect false walking. If say the pager package would be clipped on to her waistband, any continuous x+y movement for a certain amount of seconds would be detected as a "start of a walk".

If she was sitting in the classroom, the package would detect some movement if she shifts in her seat, but the movement is not continuous so the vibration does not go off. But if she gets up and starts to walk for X amount of seconds, the accelerometers would sense that X+Y moved for >3 seconds so that must be a start of walk, then the accelerometers will trigger the vibration to go off every 7 seconds or so.

I hope I'm not dreaming all of this up :)

Seems to me that toe walkers could be fast-tracked to ballet class. Sorts out the teasing. Good preparation for a life in high heels too. Surgery or splints for a behavioural trait is just perverted.

A bit tricky, but it would seem that the most appropriate place for the accelerometer would be in the shoe. A lithium battery to develop 3.3V, vibrating motor (they run on 3V anyway, as they are used in mobile phones), a chip running at 8 MHz and algorithms to detect repeated movement with a forward tilt (all the accelerometer chips you will readily find are three axis anyway, but you only really need the two to detect the position around the inter-malleolar axis).

Hah! Someone (more than one) over-wrote my idea whilst I was having dinner! I'll just go away now.

Paul - I agree the worthwhile place to put this in would be in the shoe. Although I'm not quite sure yet how this is going to work, so in effect still brainstorming.

I guess what I'm asking is, if this can be done by the arduino and if it can done (which board) should I be looking at?

I'm also researching which accelerometers and vibrating motor to get (probably will get the motor from an old dumb phone I have lying around).

manoktot: I guess what I'm asking is, if this can be done by the Arduino and if it can done (which board) should I be looking at?

Arduino sounds perfect. You clearly want the smallest board, there are a couple of quite tiny ones designed for 3.3V. There is an expert on these in here, I just can't recall his name, but he will no doubt jump in. :D

manoktot: I'm also researching which accelerometers and vibrating motor to get (probably will get the motor from an old dumb phone I have lying around).

That sounds about the size of it. You should be able to get a quite tiny accelerometer (only) module, as I said, a lithium cell sounds right - such as a 2032 (expendable) - and there should be no shortage of vibrating motors from old phones.

Cheers Paul.

I found this - http://web.media.mit.edu/~leah/LilyPad/build/accelero_shirt.html

Looks like a pretty small package, possibly even sewn on the ankle part of a sock which would make it hidden. The vibrating motors are small as well like a coin.

Seems like a difficult project. Unfortunately I have little to contribute on the technical side, but I probably would make a prototype for myself first.

I guess that she may be interested in some... research to get a working result, but enduring the development from start to finish while being confronted with a load of false positives may be hard to understand at that age.

Although you're probably not suffering from the same condition as her, maybe you could fake it to test your project and to eliminate as much false positives as possible in advance.

Having larger feet and more room for electronics, you for example could build a data logger or add "unnecessary" components which you could use to analyse the success of your prototype first.

Unless she has feet like my 7 year old niece, parking her shoes in boatyards, the end result probably needs to be constructed with SMD-components anyway. That also makes it hard/expensive to adjust the circuitry. If people would give you remarks when prototype-board sticks out your shoe, it probably also will bore you for just a few seconds.

Something that you probably also need to think of is how to get you project "kid-proof". As ex-Janitor on a school for kids 4-12years I've seen tons of broken stuff and scratched my head many times thinking how much effort it would require me to get stuff so broken. Even without the intention of breaking something, they're true demolishing artists.

Could you combine the functions of an accelerometer acting as a pedometer with a switch in the heel of a shoe to detect movement where the heel isn't hitting the ground?

A constant reminder to "walk flat" if she already is, will, I suspect rapidly become annoying and ignored. If the switch method were workable, she could turn the reminder off just by taking some strides with heel contact.

Piezos can be used as shock sensors in the heel and toe, and they are very flat.

This force sensor is very flat https://www.sparkfun.com/products/9375

I would consider using a Arduino Micro http://arduino.cc/en/Main/arduinoBoardMicro

Many kids shoes have LED in them that flash when they walk, maybe some of those could be hacked.

There is this Adafruit firewalker project that you might want to look into: http://learn.adafruit.com/firewalker-led-sneakers/.

To connect an ADXL345 you need two or three pins (I2C or SPI), one analog input pin for a force sensor and one digital output pin for the vibrating motor. It should all fit into an ATTiny85.

ADXL345 data sheet & apps note are here

Information on using an AtTiny85 with Arduino Uno is here

I would investigate using force sensing resistors. One in the toe and one under heel. It would seem that you could differentiate sitting, walking on toes or walking flat easier than using accelerometers, The FSR's are made in many shapes.