camera with arduino for 3d printing

Hi,
I want to buy a camera for my 3d printer. My 3d printer is controlled by Arduino. The camera should take a picture in every layer.
Any one would recommend a camera?

thanks

Do you want the 3D printer to trigger the camera to take a photo at the end of each layer?

What is the purpose of taking the photos?
What resolution do you want for the camera?

...R

Yes, exactly. I want it to check for defects in each layer. Do you recommend specific resolution and a specific camera?

How close is the computer that will be doing the defect detection processing to the 3D printer? The reason I ask is because this might be relevant to whether a USB webcam can be used or whether you will need something that communicates over the network (WiFi or Ethernet IP camera).

Many Thanks for the question. The Camera is less than 1 meter from the Arduino. The pc is about 2-3 meters from the Arduino.

emetss:
Yes, exactly. I want it to check for defects in each layer. Do you recommend specific resolution and a specific camera?

Sorry, I have no idea what would be suitable for that.

My guess is that if you want to use a PC program to analyse the images for defects then you should choose the PC software and get a camera that it can work with.

If my cheap 3D printer is typical I think it would be very difficult to get an image of a complete layer with a single camera.

...R

And how do you plan to detect the finish (or start) of a layer?

groundFungus:
And how do you plan to detect the finish (or start) of a layer?

I use Slic3r to make my GCode files and it has the option to add some user GCode between layers. I have not considered how that might be physically translated into a command for a camera.

...R

Robin2:
I use Slic3r to make my GCode files and it has the option to add some user GCode between layers. I have not considered how that might be physically translated into a command for a camera.

...R

I think the M codes in the Gcode can be used in this case.

Robin2:
Sorry, I have no idea what would be suitable for that.

My guess is that if you want to use a PC program to analyse the images for defects then you should choose the PC software and get a camera that it can work with.

If my cheap 3D printer is typical I think it would be very difficult to get an image of a complete layer with a single camera.

...R

Since I need 2D images, one Camera is needed.
I'm a bit new to Arduino. Are there Cameras that come with Arduino? Which ones would you recommend?

emetss:
Since I need 2D images, one Camera is needed.

How will it be able to see the complete layer? The print-head will obscure most of it.

I'm a bit new to Arduino. Are there Cameras that come with Arduino? Which ones would you recommend?

An Arduino does not have the memory capacity or speed to work with images. It could be used to cause a camera to take a picture but it could not process the picture.

...R

Robin2:
How will it be able to see the complete layer? The print-head will obscure most of it.
An Arduino does not have the memory capacity or speed to work with images. It could be used to cause a camera to take a picture but it could not process the picture.

...R

Thanks for the answer

Yes. That's right. It will be obscured. That's why I'm thinking about mounting the camera near to the head. Or mounting two cameras (as you might suggest), to cover the bed.

Processing the imagaes won't be done in Arduino as you mentioned and will be done after the printing. I want the camera to be triggered by arduino in every new layer to take a reasonably clear picture and save the pictures (maybe on the PC directly).

emetss:
I want the camera to be triggered by arduino in every new layer to take a reasonably clear picture and save the pictures (maybe on the PC directly).

Is there a spare I/O feature on your 3D printer driver board that could be triggered with GCode?

To be honest I don't see any value in having a huge number of images on a PC (one for each layer). If the print has not been done properly there is nothing you can do about it - other than throw the part in the trash. If the images could be analyzed by some PC software immediately after they are taken then it would be possible to abort a faulty print saving both time and plastic.

If the purpose is to validate the quality of a part I suspect some other form of non-destructive testing would make more sense.

...R

I recommend buy an usb camera with enthernet expansion boarx for arduino also may also need to buy laser with laser sensor to detect the layer when it started and to the end point so it will trigger the camera to take a picture, also if you want to be unique you may also consider to buy two stepper motor or any 12v dc motor and buy a rubber track and make it 0-180 degree with a clip to put the camera so it will capture your layers in a 3d printer. Here is the picture looks like for the camera https://bit.ly/2Jhu8q9 and stepper motor https://bit.ly/2kTjs2f and use Arduino Yun instead of arduino and here is the pic https://bit.ly/2Jkorrx

Which program are you going to use on the PC which will detect defects in each layer?
How small a defect will the program be able to detect?
That will determine the type of camera you need.

Pete

Robin2:
Is there a spare I/O feature on your 3D printer driver board that could be triggered with GCode?

To be honest I don't see any value in having a huge number of images on a PC (one for each layer). If the print has not been done properly there is nothing you can do about it - other than throw the part in the trash. If the images could be analyzed by some PC software immediately after they are taken then it would be possible to abort a faulty print saving both time and plastic.

If the purpose is to validate the quality of a part I suspect some other form of non-destructive testing would make more sense.

...R

I have a ramps 1.4 mounted on Mega2560 arduino board. The firmware I have is the repetier. I don't have the schematics. So I have to check it myself. Do you have idea about how to check, and add features?
A camera is a must in my case, not necessarily for the defect detection.

kennethgomad02:
I recommend buy an usb camera with enthernet expansion boarx for arduino also may also need to buy laser with laser sensor to detect the layer when it started and to the end point so it will trigger the camera to take a picture, also if you want to be unique you may also consider to buy two stepper motor or any 12v dc motor and buy a rubber track and make it 0-180 degree with a clip to put the camera so it will capture your layers in a 3d printer. Here is the picture looks like for the camera https://bit.ly/2Jhu8q9 and stepper motor https://bit.ly/2kTjs2f and use Arduino Yun instead of arduino and here is the pic https://bit.ly/2Jkorrx

I find the idea of using a movable camera amazing. I'm still not sure how practical it can be. I mean moving the camera at every new layer and getting picture each time from different position. But it really worths thinking.

I don't think a sensor is needed to trigger the camera. The camera can be triggered for every z increment, or for every new layer. Or what do you think?
However, since you mentioned this, a distance sensor (maybe capacitive sensor or more accurate one if you know a better arduino one?) might be used to measure the distance to every new layer after printing. If the distance is bigger than it should be, then this means that there was no printing and it will give a signal that in this layer and in this position there was a defect.

el_supremo:
Which program are you going to use on the PC which will detect defects in each layer?
How small a defect will the program be able to detect?
That will determine the type of camera you need.

Pete

I still don't have an idea which program to use. Now I want an image with reasonable resolution that can connect to arduino easily.
You're right. There're also another criteria like: MFD or MOD: minimal focus distance or minimal object distance

emetss:
I don't have the schematics.

The schematics for the RAMPS 1.4 board is readily available on the web.

You need to make a list of everything that is connected to the RAMPS board and which connector it is connected to and also a list of the connectors that are not used.

...R

I still don't have an idea which program to use

Is there such a program at all?

Pete