Freescanning Rig

Which camera works? Where can you buy an adequate laser? And more...

Re: Freescanning Rig

Postby Khalid Khattak » Mon Dec 07, 2009 5:16 am

Here is the description and specification of the above relay..
Attachments
relay information.JPG
PC: Dell Inspiron i3, 2.27GHz,4GB RAM,64 bit windows 7
CAMERA:
David CCD Mono USB
LASER:
David 5mW Green line laser
PROJECTOR:
3D LED Mini Projector 250lumens, Native 1024x600
[b]http://free3dscans.blogspot.com/
Khalid Khattak
 
Posts: 930
Joined: Thu Apr 23, 2009 1:30 pm
Location: Pakistan

Re: Freescanning Rig

Postby Khalid Khattak » Mon Dec 07, 2009 8:17 am

Here is the schematic...
Attachments
hb_relay5.jpg
PC: Dell Inspiron i3, 2.27GHz,4GB RAM,64 bit windows 7
CAMERA:
David CCD Mono USB
LASER:
David 5mW Green line laser
PROJECTOR:
3D LED Mini Projector 250lumens, Native 1024x600
[b]http://free3dscans.blogspot.com/
Khalid Khattak
 
Posts: 930
Joined: Thu Apr 23, 2009 1:30 pm
Location: Pakistan

Re: Freescanning Rig

Postby MagWeb » Mon Dec 07, 2009 8:33 am

Hi,

there is still a free pin of the Arduino passed through the board: Arduino digital Pin 2. There a single soldering hole beside the pin 2

@ GND: the row of holes between the +5 row (where you added the two clamps) and the analog pin row is ground as well as the middle clamps at the motor outs.
MagWeb
Moderator
 
Posts: 2481
Joined: Wed Jul 18, 2007 8:48 pm

Re: Freescanning Rig

Postby Khalid Khattak » Mon Dec 07, 2009 8:36 am

Thank You very much Gunter...:)... Can you kindly tell me should i have install any protection diode..and if yes where? For ground you mean i can either solder the ground wire to the +5V ground (the row gnd where i added +5Volt ) or i can simply plug the Ground wire from Relay to the M1/M2 ground output connector..!!!..Sorry for asking too much questions...

Thanks for helping me...:)
Attachments
relay.jpg
PC: Dell Inspiron i3, 2.27GHz,4GB RAM,64 bit windows 7
CAMERA:
David CCD Mono USB
LASER:
David 5mW Green line laser
PROJECTOR:
3D LED Mini Projector 250lumens, Native 1024x600
[b]http://free3dscans.blogspot.com/
Khalid Khattak
 
Posts: 930
Joined: Thu Apr 23, 2009 1:30 pm
Location: Pakistan

Re: Freescanning Rig

Postby MagWeb » Mon Dec 07, 2009 12:06 pm

Hi,

it doesn´t matter if you use the ground on pos1 or pos2 - it's the same "common ground"

yes you found the free pin2 (BTW my code doesn´t use that pin - You will have to activate it using the Arduino software)

@protection diode - I never used such a relais and I´m no master of electronics - maybe Walter can help?
MagWeb
Moderator
 
Posts: 2481
Joined: Wed Jul 18, 2007 8:48 pm

Re: Freescanning Rig

Postby Khalid Khattak » Mon Dec 07, 2009 12:09 pm

Thanks Gunter.. I think you are running the Cold Cathode Lamp directly from Motor Output..I wonder what is the wattage of your Cold Cathode Lamp.. I scaavanged some cold cathode lamp from Flatbed scanner and installed it at M2 and used your code..But the light was not enough...

So i have to do digitalwrite(2, High) and Low stuff...;)
I am thankful for your helping me patiently..

PS:
I have installed the diode at Relay...I will try it today and will show you my results... I am using 9Watt energy saver with chinese holder that convert 12V DC to 220AC to drive the energy saver,...
PC: Dell Inspiron i3, 2.27GHz,4GB RAM,64 bit windows 7
CAMERA:
David CCD Mono USB
LASER:
David 5mW Green line laser
PROJECTOR:
3D LED Mini Projector 250lumens, Native 1024x600
[b]http://free3dscans.blogspot.com/
Khalid Khattak
 
Posts: 930
Joined: Thu Apr 23, 2009 1:30 pm
Location: Pakistan

Re: Freescanning Rig

Postby Khalid Khattak » Mon Dec 07, 2009 4:42 pm

My Arduino and Adafruit still survive my experimentation..But On this survival of my electronics is not due to me but all the credit goes to Mr.Gunter who help me and guided me on the right track.. I am also thankful to all the forum members including Greg, Walter, Ray and all the remaining fellows... Following is two videos of my working setup.. I hope now i will move to the next challenge that is Stepper and viper gears setup... :!:

http://www.youtube.com/watch?v=Nd6dnXZheZA
http://www.youtube.com/watch?v=x5ai12jGbbo

Sorry for my bad English in the videos ...
PC: Dell Inspiron i3, 2.27GHz,4GB RAM,64 bit windows 7
CAMERA:
David CCD Mono USB
LASER:
David 5mW Green line laser
PROJECTOR:
3D LED Mini Projector 250lumens, Native 1024x600
[b]http://free3dscans.blogspot.com/
Khalid Khattak
 
Posts: 930
Joined: Thu Apr 23, 2009 1:30 pm
Location: Pakistan

Re: Freescanning Rig

Postby Khalid Khattak » Fri Dec 11, 2009 1:46 pm

I have connected the Stepper Motor to 1:60 ratio viper gear box..Meanwhile my SN755410 IC's are shipped and within days i will receive them..
currently working on CNCieng the Quilting machine and devising the way to make a cruise controller using Arduino..This cruise controller will control the length of stitch when X/Y carriages are moving with a Gcode..

You can enter in this discussion...
http://www.arduino.cc/cgi-bin/yabb2/YaB ... 1260432183
Attachments
2.jpg
2.jpg (45.21 KiB) Viewed 3400 times
PC: Dell Inspiron i3, 2.27GHz,4GB RAM,64 bit windows 7
CAMERA:
David CCD Mono USB
LASER:
David 5mW Green line laser
PROJECTOR:
3D LED Mini Projector 250lumens, Native 1024x600
[b]http://free3dscans.blogspot.com/
Khalid Khattak
 
Posts: 930
Joined: Thu Apr 23, 2009 1:30 pm
Location: Pakistan

Re: Freescanning Rig

Postby joshuaweiss » Sat Dec 12, 2009 9:56 am

[quote="Khalid Khattak"]I have connected the Stepper Motor to 1:60 ratio viper gear box..Meanwhile my SN755410 IC's are shipped and within days i will receive them..



Hi mr. Khattak! It'snice to see your progress on this project. I'm just wondering where do you need these SN755410 IC's?
I'm not so expirienced on electronics too... but still my arduano is ready and waiting for gears and stuff.

So please enlighten me!

Joonas
joshuaweiss
 
Posts: 14
Joined: Tue Nov 17, 2009 1:07 pm

Re: Freescanning Rig

Postby Khalid Khattak » Sat Dec 12, 2009 8:00 pm

I will replace L293D IC on Adafruit shield with SN75410 because L293D can only handle upto 600mA, whereas SN75410 does upto 1Amp...
PC: Dell Inspiron i3, 2.27GHz,4GB RAM,64 bit windows 7
CAMERA:
David CCD Mono USB
LASER:
David 5mW Green line laser
PROJECTOR:
3D LED Mini Projector 250lumens, Native 1024x600
[b]http://free3dscans.blogspot.com/
Khalid Khattak
 
Posts: 930
Joined: Thu Apr 23, 2009 1:30 pm
Location: Pakistan

Re: Freescanning Rig

Postby joshuaweiss » Mon Dec 14, 2009 11:57 am

It's for your motor, ok.
I'm waiting for steppers and gears for now.

Keep on posting Khalid, thank you for asking so many questions. :D

Joonas
joshuaweiss
 
Posts: 14
Joined: Tue Nov 17, 2009 1:07 pm

Re: Freescanning Rig

Postby Khalid Khattak » Sat Jan 30, 2010 8:39 pm

Yesterday I was disappointed with the above gearbox of viper motor.. My motor is 100 steps/revolution and the output from the gearbox is very coarse...I am running the motor with INTERLEAVE mode in Arduino adafruit shield and i am disappointed...:(
I will look further to geardown..need more help and suggestions..
regards
PC: Dell Inspiron i3, 2.27GHz,4GB RAM,64 bit windows 7
CAMERA:
David CCD Mono USB
LASER:
David 5mW Green line laser
PROJECTOR:
3D LED Mini Projector 250lumens, Native 1024x600
[b]http://free3dscans.blogspot.com/
Khalid Khattak
 
Posts: 930
Joined: Thu Apr 23, 2009 1:30 pm
Location: Pakistan

Re: Freescanning Rig

Postby velvetpig » Sat Aug 20, 2011 11:53 pm

Hi,
I have made a rig similar to magweb and using his sketch StepDAV_06 http://www.david-laserscanner.com/forum/viewtopic.php?f=6&t=1216&start=15all works fine apart from learning to calibrate the camera.
I am slowly getting on top of getting consistent Reference scans.
I decided to try the sketch by jantje davidTrialV06 http://www.david-laserscanner.com/forum/viewtopic.php?f=6&t=1216&start=30but it wont work for me. I have made the following changes

const int StepperPort =1; //The port your stepper is connected to
const int LaserMotor =4; //The port your laser is connected to
const int LightMotor =3; //The port the light is connected to

The Laser and stepper do the up/down thing in the Arduino Serial Monitor when i send a 'U'.
The Laser will light up when i send a 'S'.
Light not connected.

When i start David and start a scan i get the following message in the Debug window

COM: Received message recieved M
COM: Message recieved M not understood.
COM: Sending Message M
COM: Received message recieved M
COM: Message recieved M not understood.
COM: Sending Message M
COM: Received message recieved M
COM: Message recieved M not understood.
COM: Sending Message M
COM: Received message recieved M
COM: Message recieved M not understood.
COM: Sending Message M
COM: Received message recieved M
COM: Message recieved M not understood.
COM: Sending Message M
COM: Received message recieved M
COM: Message recieved MCOM: Sending Message not understood.
T
COM: Received message recieved T
COM: Message recieved T not understood.

Any idea of what i am doing wrong?
Thanks
velvetpig
 
Posts: 15
Joined: Mon Apr 25, 2011 10:39 pm
Location: Australia

Re: Freescanning Rig

Postby jantje » Mon Aug 22, 2011 9:42 am

Hi velvetpig
Can you copy the code for the arduino you are using (or provide a direct link). Because when I look at the code I have just downloaded from the forum I do not understand how the program can generate the output you are giving.
Best regards.
Jantje
User avatar
jantje
 
Posts: 107
Joined: Tue Mar 03, 2009 12:08 am
Location: Belgium

Re: Freescanning Rig

Postby velvetpig » Wed Aug 24, 2011 12:59 pm

jantje wrote:Hi velvetpig
Can you copy the code for the arduino you are using (or provide a direct link). Because when I look at the code I have just downloaded from the forum I do not understand how the program can generate the output you are giving.
Best regards.
Jantje


Thanks for your time jantje,
See the code below...
Code: Select all
[quote]

#include <AFMotor.h>
[color=#7E7E7E]//program to control rig by david laserscanner[/color]
[color=#7E7E7E]//likely to change[/color]
const [color=#CC6600]int[/color] CamScanningSteps = 900;  [color=#7E7E7E]//The number of steps to do while adjusting scanning camera settings[/color]
const [color=#CC6600]int[/color] CamScanningMotorSpeed = 20; [color=#7E7E7E]// Speed used while adjusting scanning camera settings[/color]
const [color=#CC6600]int[/color] CamPositioningSpeed = 200; [color=#7E7E7E]// Speed used when positioning the cam[/color]
const [color=#CC6600]int[/color] StepperSteps = 200; [color=#7E7E7E]// the steps on your stepper[/color]
const [color=#CC6600]int[/color] StepperPort =1;  [color=#7E7E7E]//The port your stepper is connected to[/color]
const [color=#CC6600]int[/color] LaserMotor =4;  [color=#7E7E7E]//The port your laser is connected to[/color]
const [color=#CC6600]int[/color] LightMotor =3;  [color=#7E7E7E]//The port the light is connected to[/color]
#define LASER_ON   Laser.[color=#CC6600]run[/color]([color=#006699]FORWARD[/color]);  [color=#7E7E7E]//instead of activating the line below consider switching the cables[/color]
[color=#7E7E7E]//#define LASER_ON   Laser.run(BACKWARD);[/color]
#define LIGHT_ON  Light.[color=#CC6600]run[/color]([color=#006699]FORWARD[/color]);  [color=#7E7E7E]//instead of activating the line below consider switching the cables[/color]
[color=#7E7E7E]//#define LIGHT_ON  Light.run(BACKWARD);[/color]



[color=#7E7E7E]//You should not change the code below when you use the code as a user.[/color]
[color=#CC6600]AF_Stepper[/color] motor(StepperSteps, StepperPort);
[color=#CC6600]AF_DCMotor[/color] Laser(LaserMotor);
[color=#CC6600]AF_DCMotor[/color] Light(LightMotor,MOTOR12_1KHZ);
[color=#CC6600]char[/color] DavidMessage = [color=#006699]' '[/color];
uint16_t ScanStepsDone=0;
#define LASER_OFF Laser.[color=#CC6600]run[/color]([color=#006699]RELEASE[/color])
#define LIGHT_OFF  Light.[color=#CC6600]run[/color]([color=#006699]RELEASE[/color])
#define DO_NOT_REPEAT [color=#CC6600]false[/color]
#define DO_REPEAT [color=#CC6600]true[/color]
#define _MICROSTEPS 16  [color=#7E7E7E]//If the AF Motor library is compiled with 16 microsteps[/color]


[color=#CC6600]void[/color] [color=#CC6600][b]setup[/b][/color]() {
  [color=#CC6600][b]Serial[/b][/color].[color=#CC6600]begin[/color](9600);           [color=#7E7E7E]// set up Serial library at 9600 bps[/color]
  [color=#CC6600][b]Serial[/b][/color].[color=#CC6600]println[/color]([color=#006699]"David controlled Rig"[/color]);
  Laser.[color=#CC6600]setSpeed[/color](255); [color=#7E7E7E]//no pwm for laser[/color]
  Light.[color=#CC6600]setSpeed[/color](255);  [color=#7E7E7E]//no pwm for laser[/color]
  motor.[color=#CC6600]setSpeed[/color](CamScanningMotorSpeed);
  
}

[color=#CC6600]void[/color] [color=#CC6600][b]loop[/b][/color]()
  {
    [color=#CC6600]boolean[/color] remember=[color=#CC6600]false[/color];

    [color=#CC6600]if[/color] ([color=#CC6600][b]Serial[/b][/color].[color=#CC6600]available[/color]() > 0)
      {
        [color=#7E7E7E]// read the incoming byte[/color]
        DavidMessage = [color=#CC6600][b]Serial[/b][/color].[color=#CC6600]read[/color]();
      [color=#CC6600][b]Serial[/b][/color].[color=#CC6600]print[/color]([color=#006699]"recieved "[/color]);
      [color=#CC6600][b]Serial[/b][/color].[color=#CC6600]println[/color]( DavidMessage);
      }
              
    [color=#CC6600]switch[/color] (DavidMessage)
    {
      [color=#CC6600]case[/color] [color=#006699]'1'[/color]: remember=ModeCalib(); [color=#CC6600]break[/color];
      [color=#CC6600]case[/color] [color=#006699]'2'[/color]: remember=ModeScan();[color=#CC6600]break[/color];
      [color=#CC6600]case[/color] [color=#006699]'3'[/color]: remember=ModeTexture();  [color=#CC6600]break[/color];
      [color=#CC6600]case[/color] [color=#006699]'U'[/color]: remember=SetupCamScanning();[color=#CC6600]break[/color];
      
      [color=#CC6600]case[/color] [color=#006699]'S'[/color]: remember=StartScanning(); [color=#CC6600]break[/color];
      [color=#CC6600]case[/color] [color=#006699]'T'[/color]: remember=StopScanning(); [color=#CC6600]break[/color];
      [color=#CC6600]case[/color] [color=#006699]'M'[/color]: remember=DoAScanStep();   [color=#CC6600]break[/color];
      

    };
    [color=#CC6600]if[/color] (remember==DO_NOT_REPEAT) [color=#7E7E7E]//When you are in scan camera setting you want the laser to keep going up and down[/color]
    {
      DavidMessage=[color=#006699]' '[/color];
       }
}



[color=#CC6600]boolean[/color] StartScanning()
      {
        LASER_ON;
        LIGHT_OFF;
        ScanStepsDone=0;
        [color=#CC6600]return[/color] DO_NOT_REPEAT;
      }
      
[color=#CC6600]boolean[/color] SetupCamScanning()
    {
      LASER_ON;              
      LIGHT_OFF;

      motor.[color=#CC6600]setSpeed[/color](CamScanningMotorSpeed);
      motor.[color=#CC6600]step[/color](CamScanningSteps, [color=#006699]BACKWARD[/color], [color=#006699]SINGLE[/color]);
      motor.[color=#CC6600]step[/color](CamScanningSteps, [color=#006699]FORWARD[/color], [color=#006699]SINGLE[/color]); 
      [color=#CC6600]return[/color] DO_REPEAT;
    }      
    
[color=#CC6600]boolean[/color] DoAScanStep()
      {
       motor.[color=#CC6600]onestep[/color]([color=#006699]BACKWARD[/color], [color=#006699]MICROSTEP[/color]);
       [color=#CC6600]delay[/color](10);  [color=#7E7E7E]//is not absolutely needed but if omitted the step may not have been done physically[/color]
       ScanStepsDone+=1;
       [color=#CC6600]return[/color] DO_NOT_REPEAT;
      }     
      
[color=#CC6600]boolean[/color] StopScanning()
      {
        LASER_OFF;
[color=#7E7E7E]//        Serial.print("Need to go back ");[/color]
[color=#7E7E7E]//        Serial.print(ScanStepsDone);[/color]
[color=#7E7E7E]//        Serial.println(" steps");[/color]
        [color=#CC6600]while[/color] ( (ScanStepsDone % _MICROSTEPS ) > 0)
          {
            motor.[color=#CC6600]onestep[/color]( [color=#006699]FORWARD[/color], [color=#006699]MICROSTEP[/color]);
            [color=#CC6600]delay[/color](10);
            ScanStepsDone-=1;
          }

        motor.[color=#CC6600]setSpeed[/color](CamPositioningSpeed);
        motor.[color=#CC6600]step[/color](ScanStepsDone / _MICROSTEPS , [color=#006699]FORWARD[/color], [color=#006699]SINGLE[/color]);
        ScanStepsDone=0;  
        motor.[color=#CC6600]release[/color](); [color=#7E7E7E]//So you can position it by hand[/color]
        [color=#CC6600]return[/color] DO_NOT_REPEAT;
      }
      
[color=#CC6600]boolean[/color] ModeTexture()
      {
        LASER_OFF;
        LIGHT_ON;
        [color=#CC6600]return[/color] DO_NOT_REPEAT;
      }      
[color=#CC6600]boolean[/color] ModeCalib()
      {
        [color=#CC6600]return[/color] ModeTexture(); [color=#7E7E7E]//calibration uses the same settings as texture grabbing[/color]
      }            
[color=#CC6600]boolean[/color] ModeScan()
      {
        motor.[color=#CC6600]release[/color]();                       
        LASER_OFF;
        LIGHT_OFF;
        [color=#CC6600]return[/color] DO_NOT_REPEAT;
      }
        
  
        
        
        

[/quote]

A couple of screen shots
I have probably done something stupid and cant see it :?
Hope you can help.
Cheers
Attachments
1.jpg
2.jpg
velvetpig
 
Posts: 15
Joined: Mon Apr 25, 2011 10:39 pm
Location: Australia

PreviousNext

Return to Laser and Camera Hardware

Who is online

Users browsing this forum: No registered users and 0 guests