Maker Pro
Maker Pro

Help with light-sensing automatic LED bicycle headlight

AdamMortlock

Nov 21, 2013
3
Joined
Nov 21, 2013
Messages
3
Hi guys,

Warning! I am no Electrical wiz!

I am a (BA) Product Design student studying at the University of Derby. I am currently going through my major project research module, I have evaluated the market and found a need for an automatic light switching device between two different LED’s (mimicking a car full beam/ dipped beam light setup) I want this product to automatically do this through the sensing of its surroundings.

I have done research into Photodiodes, Accelerometers and Reverse-Biased LED’s, I want to be able to make this product change through either the monitoring of the light using a reversed biased LED (to know when a car’s lights are coming towards it, or going into street lit areas) or the use of an Accelerometer to monitor movement in the surrounding area for objects moving faster or slower than the cyclist, but not stood still. I will be running this product from a set of rechargeable batteries (early on in the project so not sure specifically on types Li-on most likely, something giving around 2300mAH)

As I say I really have little experience in this (If any), I hope someone could give me help/ advice in what is realistic in a solution for this project, I understand I have not given much to go off. Obviously the smaller and lighter the solution the better.

I will check back on here very regularly (every couple of hours) and look forward to see what you all know! Please if I am going completely up the wrong street with the technology I have already looked into or this is an unrealistic project please tell me!

For a bit of inspiration: http://www.kickstarter.com/projects/1670187625/seesense-the-intelligent-bike-light-with-road-sens this is a light that is a more complex version of what I am trying to do (I think)

Thanks for your time,

Adam.
 
Last edited:

OLIVE2222

Oct 2, 2011
690
Joined
Oct 2, 2011
Messages
690
Hi Adam,

Basically the project is based on a small µC running a decision algorithm with light sensor and accelerometer as input and led as output.

Being battery powered you have to optimize the consumption via various µC sleep/idle modes and by using high efficiency led drivers and leds.

This is a realistic project, you can maybe start to build a mockup based on of the shelf accelerometer board, µC board (arduino,..) and a white led driver (can be a basic FET) and a photodiode, it' s all depend of your electronics and programming skills.

Olivier

Note that the accelerometer can only measure the bike movement not the surrounding area!
 

BobK

Jan 5, 2010
7,682
Joined
Jan 5, 2010
Messages
7,682
monitoring of the light using a reversed biased LED (to know when a car’s lights are coming towards it,
LEDs can be used to detect light, but there are better sensors, i.e. photoresistors, photodiodes and phototransistors.
or the use of an Accelerometer to monitor movement in the surrounding area for objects moving faster or slower than the cyclist, but not stood still.
That is not what an accelerometer does. An accelerometer measures acceleration (not speed) of itself, not of other objects.

Bob
 

AdamMortlock

Nov 21, 2013
3
Joined
Nov 21, 2013
Messages
3
Hi Adam,

Basically the project is based on a small µC running a decision algorithm with light sensor and accelerometer as input and led as output.

Being battery powered you have to optimize the consumption via various µC sleep/idle modes and by using high efficiency led drivers and leds.

This is a realistic project, you can maybe start to build a mockup based on of the shelf accelerometer board, µC board (arduino,..) and a white led driver (can be a basic FET) and a photodiode, it' s all depend of your electronics and programming skills.

Olivier

Note that the accelerometer can only measure the bike movement not the surrounding area!

Hi, Thanks OLIVE222 for that information I will try and understand it :) my electronics and programming skills are non-existant but I don't need to have a fully working one for another 3 months, which is hopefully a workable timescale for me to learn also. I also might have to pay someone to design and make it, if it is too difficult for me to do myself, although I do want to give it a try. For batteries, is 4x 700mAH lithium CR123A batteries compatable as such?

BobK thanks for letting me know about the accelerometer, I realise my mistakes now :)

Thanks,

Adam. :)
 

OLIVE2222

Oct 2, 2011
690
Joined
Oct 2, 2011
Messages
690
Adam,

It's a bit early to already decide the batteries to be used. This will depend on the number of leds the wanted battery life expectation, the implementation of a step-up(booster) or not.
As you don't (yet) have the sklls I suggest you to go for a ready made platform and to go with Arduino (it's both a IDE and hardware platforms) so with a ready hardware you can start with programming aspect, other way around is not possible.
Arduino is supported by a LARGE community, this is a major asset.

keywords are IMU, 3DOF, Arduino...google a bit they are even platforms they include a light sensor.

regards,
Olivier
 

KrisBlueNZ

Sadly passed away in 2015
Nov 28, 2011
8,393
Joined
Nov 28, 2011
Messages
8,393
Hi Adam and welcome to Electronics Point!

I've had a look at the See.Sense. project and I want to raise a few issues to perhaps save you some trouble.

I think the See.Sense light relies on the fact that it flashes in order to sense its environment. If the light is on continuously, it will not be able to distinguish reflections of its own light from other illumination in the environment. But your light could be on nearly all the time, and just flash off very briefly at regular intervals. For example, ON for 99 ms (milliseconds) and OFF for 1 ms. That would allow your light detector to update 10 times per second, and the flicker would probably not be detectable. That would require a light detector with a reasonably quick response, but anything other than an LDR (light-dependent resistor) would be fine.

The next issue I see is the optics - LEDs, lenses and materials mainly, I guess. The See.Sense project describes the use of Fresnel lenses, which is way outside my area of experience, but there are people here with knowledge in surprisingly diverse subjects, so you may yet see advice on these forums.

Are you going to design a rear light as well? I expect it wouldn't be hard to detect the headlights of an approaching car and increase the brightness (or modify the flashing) of a rear-facing light. That would be a lot simpler than detecting a vehicle approaching from the front.

You will almost certainly need "intelligence", i.e. a microcontroller of some kind. The See.Sense design uses an Atmel AVR; these are suitable, as would be the Microchip PIC, which also has broad support in the hobbyist/maker community, as well as on these forums.

The Arduino suggested by Olivier is based on the Atmel AVR and would be a good introduction to embedded systems, as well as a good hardware platform to start prototyping with.

Microcontrollers in general accept inputs in digital form (ON/OFF, true/false), and analogue form (range of values), make decisions, and generate outputs in digital form. This fits naturally with this application.

As for sensing movement of other vehicles, as you know, an accelerometer won't help. Other options are ultrasonic (which can't distinguish between "moving" surroundings and an oncoming car) and radar, as used to detect speeding vehicles. I think radar might be usable, although it would add a lot of cost and complexity, and I have no experience with it.

I agree that it's too early to worry about batteries. The best choice for batteries depends very much on the LEDs you use, how much power you need from them, and how long the battery needs to last between recharges. The rest of the design has little impact on battery choice.

I think you need to start learning about embedded systems programming and the capabilities and usage of microcontrollers, and do a lot of experimentation with different methods of sensing.

Also you need to look into methods of driving high-power LEDs, as well as experimenting with some high-power LEDs and lenses to see how much power you actually need.

This sounds like an interesting project and I'm sure a lot of people here would be keen to follow your progress.

Please feel free to post links to components you are considering using, and application notes that describe how they can be used. Application notes are an excellent source of guidance when you are starting with an unfamiliar technology.

I've taken the liberty of changing the thread title, to hopefully attract more interest from people with the relevant experience. (Yay! My first moderation action! (I was just made a moderator a few days ago.))
 

AdamMortlock

Nov 21, 2013
3
Joined
Nov 21, 2013
Messages
3
Hi Adam and welcome to Electronics Point!

I've had a look at the See.Sense. project and I want to raise a few issues to perhaps save you some trouble.

I think the See.Sense light relies on the fact that it flashes in order to sense its environment. If the light is on continuously, it will not be able to distinguish reflections of its own light from other illumination in the environment. But your light could be on nearly all the time, and just flash off very briefly at regular intervals. For example, ON for 99 ms (milliseconds) and OFF for 1 ms. That would allow your light detector to update 10 times per second, and the flicker would probably not be detectable. That would require a light detector with a reasonably quick response, but anything other than an LDR (light-dependent resistor) would be fine.

The next issue I see is the optics - LEDs, lenses and materials mainly, I guess. The See.Sense project describes the use of Fresnel lenses, which is way outside my area of experience, but there are people here with knowledge in surprisingly diverse subjects, so you may yet see advice on these forums.

Are you going to design a rear light as well? I expect it wouldn't be hard to detect the headlights of an approaching car and increase the brightness (or modify the flashing) of a rear-facing light. That would be a lot simpler than detecting a vehicle approaching from the front.

You will almost certainly need "intelligence", i.e. a microcontroller of some kind. The See.Sense design uses an Atmel AVR; these are suitable, as would be the Microchip PIC, which also has broad support in the hobbyist/maker community, as well as on these forums.

The Arduino suggested by Olivier is based on the Atmel AVR and would be a good introduction to embedded systems, as well as a good hardware platform to start prototyping with.

Microcontrollers in general accept inputs in digital form (ON/OFF, true/false), and analogue form (range of values), make decisions, and generate outputs in digital form. This fits naturally with this application.

As for sensing movement of other vehicles, as you know, an accelerometer won't help. Other options are ultrasonic (which can't distinguish between "moving" surroundings and an oncoming car) and radar, as used to detect speeding vehicles. I think radar might be usable, although it would add a lot of cost and complexity, and I have no experience with it.

I agree that it's too early to worry about batteries. The best choice for batteries depends very much on the LEDs you use, how much power you need from them, and how long the battery needs to last between recharges. The rest of the design has little impact on battery choice.

I think you need to start learning about embedded systems programming and the capabilities and usage of microcontrollers, and do a lot of experimentation with different methods of sensing.

Also you need to look into methods of driving high-power LEDs, as well as experimenting with some high-power LEDs and lenses to see how much power you actually need.

This sounds like an interesting project and I'm sure a lot of people here would be keen to follow your progress.

Please feel free to post links to components you are considering using, and application notes that describe how they can be used. Application notes are an excellent source of guidance when you are starting with an unfamiliar technology.

I've taken the liberty of changing the thread title, to hopefully attract more interest from people with the relevant experience. (Yay! My first moderation action! (I was just made a moderator a few days ago.))


Sorry for the late reply! (have a few projects to work on) Thanks for this post it is really helpful! And congratulations on becoming a moderator!
Very shortly I will be starting to do experiments with all of the above things you mentioned over the next few months to determine what is best for what I need and inevitably I will need help. Thanks for taking the time to give such a good response and thanks to everyone who responded. I am looking forward to making a start (16th December) when all my deadlines for this semester are complete and I can start working for the May deadlines. (and thanks for sorting name out of the thread, I tried before but could not work it out)

Adam.:):)
 
Last edited:
Top