Arduino UNO - Automated windows blinds

I am working with PWM controlled dc motor. i wanted to get creative and see if i can put it to a real life use. components

DC motor (Small duty) Arduino Uno R3 H Bridge Lilypad Light sensor (https://www.sparkfun.com/products/8464)

Question: Can i use lilypad sensor to work with arduino uno and dc motor to control windows blinds? If so, would it be easier with motorized blinds? needed help on this concept.

any suggestions?

an i use lilypad sensor to work with arduino uno and dc motor to control windows blinds?

Think so, but do you have the specifications of the sensor? e.g. link to webpage?

needed help on this concept.

any suggestions?

You must tell more about your goal because it is still too unclear. e.g. how big are the blinds. The more info the better answer :)

Lilypad Sensor info:

this is a simple to use light sensor that outputs an analog value from 0 to 5V. With exposure to daylight, this sensor will output 5V. Covering the sensor with your hand, the sensor will output 0V. In a normal indoor lighting situation, the sensor will output from 1 to 2V.

https://www.sparkfun.com/products/8464

Second sensor option: Digital Light Sensor Module ..(http://www.emartee.com/product/42142/Digital%20Light%20Sensor%20Module)

This is a BH1750FVI light intensity sensor module with built-in a 16 bit AD converter generating digital signal. The data from this module is light intensity in lx (lux meter).

Here are some lx examples :

1? Night: 0.001~0.02; 2? Moonlight night: 0.02~0.3; 3? Cloudy indoor: 5~50; 4? Cloudy outdoor: 50~500; 5? Sunny indoor: 100~1000

I think this would be a better choice than lilypad but not 100% sure. They are both programmable with arduino.

As for the motor something under 500mA, around 2300 rpm or so (Because arduino can only provide up2 50mA current). Windows Blind- Smallest size. Maybe covers one small window. www.homedepot.ca/catalog/blinds-shades/172793 size: 30 Inch x 48 Inch (Plastic, prefer light weight) its on a small scale, idea is to see weather it would work.

thanks for your replies.

The analog sensor will do the job, you need to define the threshold for any sensor you use.
The digital light sensor is a nice one too, and it has the advantage you can use multiple of them on the I2C bus.

Think you should use the sensor that can be mounted the easiest for your application.

Hi, I’m currently working on BH1750 too, http://www.dfrobot.com/wiki/index.php/Light_Sensor_(SKU:SEN0097)
I don’t understand, how to using it in multiple I2C address/sensor.
Please give me some reference to change the address?

Here the current code I used for 1 sensor (from DFrobot):

#include <Wire.h> //BH1750 IIC Mode 
#include <math.h> 
int BH1750address = 0x23; //setting i2c address
 
byte buff[2];
void setup()
{
  Wire.begin();
  Serial.begin(57600);//init Serail band rate
}
 
void loop()
{
  int i;
  uint16_t val=0;
  BH1750_Init(BH1750address);
  delay(200);
 
  if(2==BH1750_Read(BH1750address))
  {
    val=((buff[0]<<8)|buff[1])/1.2;
    Serial.print(val,DEC);     
    Serial.println("[lx]"); 
  }
  delay(150);
}
 
int BH1750_Read(int address) //
{
  int i=0;
  Wire.beginTransmission(address);
  Wire.requestFrom(address, 2);
  while(Wire.available()) //
  {
    buff[i] = Wire.receive();  // receive one byte
    i++;
  }
  Wire.endTransmission();  
  return i;
}
 
void BH1750_Init(int address) 
{
  Wire.beginTransmission(address);
  Wire.send(0x10);//1lx reolution 120ms
  Wire.endTransmission();
}

Thanks before

Have you worked out the mechanical details of operating the blinds? I did some blind timkering a long time ago (below) and the devil is in the details.

http://web.comporium.net/~shb/blindtilt.htm

Hi zoomkat, Thanks for share, that's a nice project, I like the part where you put a little Vaseline for lubricants. Actually I'm currently struggling in writing code used Wire.h, I put that on a new topic in here: http://arduino.cc/forum/index.php/topic,148007.0.html

In line with zoomkat's comments, the main obstacle in this project is the mechanics since controlling the project with an Arduino is very simple. So don't even worry about that part until you've got the blinds working. Otherwise you may waste time, effort and money on electronics to drive a device that doesn't work. Whoa, gonna have to correct myself. It may not be so simple since you're gonna have to find a way to shut down the drive if there's a jam. For simplicity, perhaps a slow-blow fuse of the proper rating would work.

As for the sensor, nothing fancy is needed here since you could easily create your own using a photo cell and resistor (I'm talking 'cheap').

As for the motor something under 500mA, around 2300 rpm or so (Because arduino can only provide up2 50mA current).

This I don't understand at all. First, NEVER try to drive a motor from an Arduino pin. Arduinos are dainty, motors are BIG. You MUST use a driver to power the motor and the Arduino controls the driver. What I don't understand is your reasoning that you would like to use a motor under 500ma and then state that you know an Arduino can only provide up to 50ma current Not that it matters much since you can't do it anyway.

2300 RPM is way too fast. Something in the single digit RPMs would be better. The plus side of that is that are plenty of small, low cost, geared, low voltage dc motors out there with high torque and low output speed(which you will need). Although more costly, a high torque servo could be used; that would sure simplify things, being easier to mount and drive. But wait, I'm not sure if you simply want to open/close the blinds or if you intend to also/or raise and lower the blinds.

I think the best way to approach this project would be to work out the motor mounting and coupling to the blinds, then the motor driver, then the Arduino. - Scotty

user2012: Lilypad Light sensor (https://www.sparkfun.com/products/8464)

I agree with the other suggestions to get the hardware side working before you worry about the controller, but when it comes to light sensing you should be able to buy a light sensitive resistor for a fraction of the cost of that Lilypad sensor.

PeterH:

user2012: Lilypad Light sensor (https://www.sparkfun.com/products/8464)

I agree with the other suggestions to get the hardware side working before you worry about the controller, but when it comes to light sensing you should be able to buy a light sensitive resistor for a fraction of the cost of that Lilypad sensor.

Exactly, Lillypad is just a LDR and a resistor mounted on af pcb. You would also have better luck integrating a standalone LDR in your design.