Welcome to Laser Pointer Forums - discuss green laser pointers, blue laser pointers, and all types of lasers

LPF Donation via Stripe | LPF Donation - Other Methods

Links below open in new window

ArcticMyst Security by Avery

W200 /RGB200mW Review + Arduino Tuturial.

Joined
Dec 17, 2012
Messages
39
Points
0
Hey guys,

Recently I was advised in perchasing this W200 /RGB200mW by the comunity during a thread i started asking questions about a project i wanted to build.

Since then the Item has arived in super fast shipping, and I thought id make a little review and a tuturial also on how to controll it with a simple Arduino Microcontroller that you can pick up realy cheap.

Here I will be posting 2 controll methods, code and schematics.

________________________________________________


W200 /RGB200mW

SPECS (as reported by Shenzhen Optlaser Technology Co., LTD )
  • Red 650nm/100mW
  • Green 532nm/30mW
  • Blue 470 nm/80mW

IMG_1347_zps38f9ecf3.jpg



This little thing is heavy! It has a fun inside to keep it cool and as of far i havnt notices the unit heat up.
As you see the unit has to adjustment screws on the front the align the two mirrors inside on 1 axis,
the seccond axis is controlled by the screws on the side.

IMG_1354_zpse771a7e1.jpg


When mine arived it was only every sooo slightly out of alighment that with 5 meteres it is not noricable but after that you do see a little bit of colour seporation in the beam, with hint of red to one side and a hint of blue to the eother side with green in the middle.
I think this was due to the shipiing process as the mirrors would have goten nocked around a little whipe in transit.
I still have not gotten around to aligning it properly as im tooo scared i will only make it worse haha.

The PCB on the top, dose not show any signs of short cutts, "bodge wires" or slopy soldering.
It has 3 ports on the side that are for the PWM controll for each laser. The pins are labeld clearly wish silkscreen on the pcb.
There is another plug socket for 12V DC and a mistirois 3rd plug on the right wich i have no idea what it dose.
If some one knows it would be awsome!! I applyed 12v dc to that plugtop and a red laser shun, and i was to scared to burn it out and imediatly disconecetd it.

IMG_1353_zpse0fca405.jpg



mystery plug with no silkscreen labling.
IMG_1352_zps6ed9e349.jpg


Over all great laser for its price, and the beam is as close to white as youll get for this price rang (almost perfectly white, althowe beam always looks blue on my iphone -_- )

Heres the tuurial part.
________________________________________________


For Ideviual colour controll
This uses 1 pot to scroll threw the brightness and a single button to change wich diode you have selected.


How to wire it.
RGBMixer1POT.png


Ofcorse instead of wiring it to the LED, you wire it to you wire each one to the +'s of each colour.
the -'s all conect to gether to nurtual.

Code:
int brightness = 0;
int potPin = A0; 
int switchPin = 2; 
int blue = 11; 
int green = 10; 
int red = 9; 
int val;                        
int val2;                     
int switchValue;               
int mode = 0; 
void setup() {
  
  pinMode(blue, OUTPUT);
  pinMode(green, OUTPUT);
  pinMode(red, OUTPUT);
  pinMode(switchPin, INPUT);
  
  switchValue = digitalRead(switchPin);
    
}
void loop() {
   val = digitalRead(switchPin);      
  delay(10);                         
  val2 = digitalRead(switchPin);     
  if (val == val2) {                 
    if (val != switchValue) {          
      if (val == LOW) {               
        if (mode == 0) {          
          mode = 1;              
        } else {
          if (mode == 1) {       
            mode = 2;                     
            } else {
            if (mode == 2) { 
                mode = 0;          
              }
   }
          }
        }
      }
    }
    switchValue = val;               
  
  brightness = analogRead(potPin);
  if (mode == 0) { 
  analogWrite(red, brightness / 4);   
   }
   
  if (mode == 1) { 
  analogWrite(green, brightness / 4);   
   }
   
  if (mode == 2) { 
  analogWrite(blue, brightness / 4);   
   }
   
}


________________________________________________
The seccond method
This method will have the diode slowly fade between all the colours, and even mixing other colours in to such as purple pink, aqua, ad so on.

For this method, You simple conect Red to pin 11, Green to pin 10, Blue to pin 9, Cathodes to GND.

Heres a video of this method. (mind you colours do not come out right due to iphone)


Code:
/*
  Fade RGB LED Smoothly through 4 colours
  Fades an RGB LED using PWM smoothly through 4 different colours pausing for 1.5 seconds on each colour.
  
  Connect an common Cathode RGB LED with appropriate resistors on each anode to your Arduino Uno; 
  Red to pin 11, Green to pin 10, Blue to pin 9, Cathode to GND.
  
  Developed for Arduino Uno by Joshua David - TechHelpBlog.com
   
  Please Feel Free to adapt and use this code in your projects. 
 Contact me at techhelpblog.com and let me know how you've used it!  
 */

// Assign LED Output PWM Pins
int Red = 11;
int Green = 10;
int Blue = 9;

//Set Initial Values
int RedVal = 0;
int GreenVal = 0;
int BlueVal = 0;
int fade = 10;  // Delay Time

// Colour Value 1 as each colour intensity (0-255)
int RedVal1 = 186;
int GreenVal1 = 0;
int BlueVal1 = 255;

// Colour Value 2
int RedVal2 = 9;
int GreenVal2 = 239;
int BlueVal2 = 26;

//Colour Value 3
int RedVal3 = 255;
int GreenVal3 = 120;
int BlueVal3 = 0;

//Colour Value 4
int RedVal4 = 0;
int GreenVal4 = 255;
int BlueVal4 = 78;

//Set initial mode (Colour Value Mode) to Colour Value 1
int mode = 1;

void setup()
{

 //----------------------- Assign outputs
   pinMode(Red, OUTPUT);
   pinMode(Green, OUTPUT);
   pinMode(Blue, OUTPUT);
 //----------------------- Write Initial Values of 0 to outputs
   analogWrite(Red, RedVal);
   analogWrite(Green, GreenVal);
   analogWrite(Blue, BlueVal);

}

void loop()                            // Begin Main Program Loop

{
  while(mode == 1){
    if(RedVal < RedVal1){              // If RedVal is less than desired RedVal1
      RedVal ++;                       // increment RedVal
    } else if(RedVal > RedVal1){       // If RedVal is more than desired RedVal1
      RedVal --;                       // decrement RedVal
    } else if(RedVal == RedVal1){      // If RedVal is equal to desired RedVal1
      //Do Nothing 
    }
                                       // Repeated as above for BlueVal
    if(BlueVal < BlueVal1){
      BlueVal ++;
    } else if(BlueVal > BlueVal1){
      BlueVal --;
    } else if(BlueVal == BlueVal1){
      //Do Nothing
    }
                                       // Repeated as above for GreenVal
    if(GreenVal < GreenVal1){
      GreenVal ++;
    } else if (GreenVal > GreenVal1){
      GreenVal --;
    } else if (GreenVal == GreenVal1){
      // Do Nothing
    }
                                       // Now we have a new set of values, we write them to the PWM Pins.
    analogWrite(Red, RedVal);
    analogWrite(Green, GreenVal);
    analogWrite(Blue, BlueVal);
    delay(fade);                       // Implement a bit of delay to slow the change of colour down a bit

    if(RedVal == RedVal1 && GreenVal == GreenVal1 && BlueVal == BlueVal1){ // If RedVal & GreenVal & BlueVal are all at the desired values
      delay(1500);                     // Delay to hold this colour for a little while
      mode = 2;                        // Change the mode to the next colour. Exiting this while loop and into the next one
    }
  }

  while(mode == 2){
    if(RedVal < RedVal2){
      RedVal ++;                     
    } else if(RedVal > RedVal2){
      RedVal --;                     
    } else if(RedVal == RedVal2){
      //Do Nothing 
    }

    if(BlueVal < BlueVal2){
      BlueVal ++;
    } else if(BlueVal > BlueVal2){
      BlueVal --;
    } else if(BlueVal == BlueVal2){
      //Do Nothing
    }

    if(GreenVal < GreenVal2){
      GreenVal ++;
    } else if (GreenVal > GreenVal2){
      GreenVal --;
    } else if (GreenVal == GreenVal2){
      // Do Nothing
    }

    analogWrite(Red, RedVal);
    analogWrite(Green, GreenVal);
    analogWrite(Blue, BlueVal);
    delay(fade);

    if(RedVal == RedVal2 && GreenVal == GreenVal2 && BlueVal == BlueVal2){
      delay(1500);
      mode = 3;
     //break;
    }
  }

  while(mode == 3){
    if(RedVal < RedVal3){
      RedVal ++;
    } else if(RedVal > RedVal3){
      RedVal --;
    } else if(RedVal == RedVal3){
      //Do Nothing 
    }

    if(BlueVal < BlueVal3){
      BlueVal ++;
    } else if(BlueVal > BlueVal3){
      BlueVal --;
    } else if(BlueVal == BlueVal3){
      //Do Nothing
    }

    if(GreenVal < GreenVal3){
      GreenVal ++;
    } else if (GreenVal > GreenVal3){
      GreenVal --;
    } else if (GreenVal == GreenVal3){
      // Do Nothing
    }

    analogWrite(Red, RedVal);
    analogWrite(Green, GreenVal);
    analogWrite(Blue, BlueVal);
    delay(fade);

    if(RedVal == RedVal3 && GreenVal == GreenVal3 && BlueVal == BlueVal3){
      delay(1500);
      mode = 4;
      //break;
    }
  }

  while(mode == 4){
    if(RedVal < RedVal4){
      RedVal ++;
    } else if(RedVal > RedVal4){
      RedVal --;
    } else if(RedVal == RedVal4){
      //Do Nothing 
    }

    if(BlueVal < BlueVal4){
      BlueVal ++;
    } else if(BlueVal > BlueVal4){
      BlueVal --;
    } else if(BlueVal == BlueVal4){
      //Do Nothing
    }

    if(GreenVal < GreenVal4){
      GreenVal ++;
    } else if (GreenVal > GreenVal4){
      GreenVal --;
    } else if (GreenVal == GreenVal4){
      // Do Nothing
    }

    analogWrite(Red, RedVal);
    analogWrite(Green, GreenVal);
    analogWrite(Blue, BlueVal);
    delay(fade);

    if(RedVal == RedVal4 && GreenVal == GreenVal4 && BlueVal == BlueVal4){
      delay(1500);
      mode = 1;                                 // Set mode back to 1 to return to the original colour.
      //break;
    }
  }

}


________________________________________________

I hope you guys have found this helpful/imformative and educational.

If you would like to recognise the time and effort put into this posting please feel free to give me a little rep ;)






________________________________________________
________________________________________________
________________________________________________
________________________________________________
 





Joined
Dec 17, 2012
Messages
39
Points
0
Heres some extra video of the laser


and

my ghetto attempt at making a "liquid sky" effect. (arduino was disconected in this video)
 

2tall

0
Joined
Feb 13, 2013
Messages
2
Points
0
Hi to everyone one the forum. Baddspella I am somewhat new to lasers also. I purchased a scanner set from Ebay to use with a green laser pointer. I also purchased the same W200 RGB laser module. The scanner set came with a showcard(PT-ITRUST)that would control the laser module. Both said they are TTL modulated but when I connected them together I burned the driver circuit board out on top of the laser module. Any idea what I may have done wrong. No instructions came with the Laser module. Thanks.
 
Joined
Dec 17, 2012
Messages
39
Points
0
Hey 2tall realy sorry to hear about that man!!!!

How do you know you fried the driver bored?
Have you tryed puting 12v into the w200 with nothing els conected to it?

Are you sure your puting power to the right pins with enough amps?

It souds like you conected it to the scanner wrong (i dont own a scaner so i wouldnt know how to diagnose one)

If you can post a high rez photo of everything comected i can have a look or seme one with more knowlage on the subject may be able
To help
 
Joined
Sep 20, 2008
Messages
17,622
Points
113
Hey guys,

Recently I was advised in perchasing this W200 /RGB200mW by the comunity during a thread i started asking questions about a project i wanted to build.

Since then the Item has arived in super fast shipping, and I thought id make a little review and a tuturial also on how to controll it with a simple Arduino Microcontroller that you can pick up realy cheap.

Here I will be posting 2 controll methods, code and schematics.

________________________________________________


W200 /RGB200mW

SPECS (as reported by Shenzhen Optlaser Technology Co., LTD )
  • Red 650nm/100mW
  • Green 532nm/30mW
  • Blue 470 nm/80mW



This little thing is heavy! It has a fun inside to keep it cool and as of far i havnt notices the unit heat up.
As you see the unit has to adjustment screws on the front the align the two mirrors inside on 1 axis,
the seccond axis is controlled by the screws on the side.


When mine arived it was only every sooo slightly out of alighment that with 5 meteres it is not noricable but after that you do see a little bit of colour seporation in the beam, with hint of red to one side and a hint of blue to the eother side with green in the middle.
I think this was due to the shipiing process as the mirrors would have goten nocked around a little whipe in transit.
I still have not gotten around to aligning it properly as im tooo scared i will only make it worse haha.

The PCB on the top, dose not show any signs of short cutts, "bodge wires" or slopy soldering.
It has 3 ports on the side that are for the PWM controll for each laser. The pins are labeld clearly wish silkscreen on the pcb.
There is another plug socket for 12V DC and a mistirois 3rd plug on the right wich i have no idea what it dose.
If some one knows it would be awsome!! I applyed 12v dc to that plugtop and a red laser shun, and i was to scared to burn it out and imediatly disconecetd it.



mystery plug with no silkscreen labling.

Over all great laser for its price, and the beam is as close to white as youll get for this price rang (almost perfectly white, althowe beam always looks blue on my iphone -_- )

Heres the tuurial part.
________________________________________________


For Ideviual colour controll
This uses 1 pot to scroll threw the brightness and a single button to change wich diode you have selected.


How to wire it.

Ofcorse instead of wiring it to the LED, you wire it to you wire each one to the +'s of each colour.
the -'s all conect to gether to nurtual.


Fade RGB LED Smoothly through 4 colours
Fades an RGB LED using PWM smoothly through 4 different colours pausing for 1.5 seconds on each colour.

Connect an common Cathode RGB LED with appropriate resistors on each anode to your Arduino Uno;
Red to pin 11, Green to pin 10, Blue to pin 9, Cathode to GND.

Developed for Arduino Uno by Joshua David - TechHelpBlog.com

Please Feel Free to adapt and use this code in your projects.
Contact me at techhelpblog.com and let me know how you've used it!

________________________________________________

I hope you guys have found this helpful/imformative and educational.

If you would like to recognise the time and effort put into this posting please feel free to give me a little rep ;)

Such a nice tutorial.... too bad it is written in such bad English
spelling.
Just because your UserName suggest that you are a bad speller
is no excuse.

There is a spell checker that underlines misspelled words as
you compose your Post. It is easy to paste that word into
Google to find the correct spelling if you have no other means...

It would really be advantageous to you to try and correct
the spelling especially in a tutorial that you want lot of people
to read.


BTW... begging for Reps usually gets you some of these [
reputation_neg.gif
]..:whistle:


Jerry

You can contact us at any time on our Website: J.BAUER Electronics
 
Last edited:

2tall

0
Joined
Feb 13, 2013
Messages
2
Points
0
Thanks for the reply. The laser worked fine with a 12 volt DC supply connected to the connector that says 12V. I used it like that for awhile. When I connected it to the PT-ITRUST showcard to modulate the colors and blanking that's when I heard a pop and saw smoke. I quickly shut it off. I disconnected it from the showcard and turned it back on but the laser no longer worked. I took the driver board off the unit to check it out and I could see two IC chips on the bottom were burned. The lasers inside still worked when I connected them to another driver I had. I will try and post photos of the setup when it was connected. Thanks for your help.
 
Joined
Apr 7, 2011
Messages
22
Points
0
seems like the RGB I bought is about the same than yours, but mine seems like the TTL doesn't work for red and green... :( your soft gave me some good ideas, lets see how can I make mine work..
 




Top