Project tutorial
Automatic Solder Fume Extractor

Automatic Solder Fume Extractor © GPL3+

A solder fume extractor that turns on in the presence of smoke from the soldering iron.

  • 758 views
  • 0 comments
  • 2 respects

Components and supplies

Ard nano
Arduino Nano R3
×1
90mm*90mm*25mm PC fan
×1
SHARP GP2Y1014AU0F Dust Sensor
×1
Relay Module (Generic)
×1

Necessary tools and machines

09507 01
Soldering iron (generic)

Apps and online services

About this project

Fume from soldering iron can be very harmful to our health. Most of the cheap solder contains lead. Lead is a dangerous metal, and it can cause severe damage to our health even cause cancer. Usually, solder has 60% lead and 40% tin. So it is very toxic to our bodies. Even lead-free soldiers are harmful to our bodies! Because they contain resin in their core. And resin is also toxic. Every type of solder is less or more harmful.

So people using soldering iron for a long time, are in big danger. I'm one of them. So, I search for the solution on the internet and find many kinds of solder Fume Extractor, but they all are boring. So I decided to make my own, Fume Extractor which is a little smart. It can detect the smoke coming from the soldering iron and then turn on the Fan to extract the fume.

It uses an Air Particle sensor to detect the smoke and then turn on the 90mm pc fan to absorb the smoke from the air.

Hardware

The brain of the system is an Arduino NANO. It senses the smoke using the sensor and turns on the fan to extract the dangerous fume from the air.

For this project, I use a Sharp gp2y1014au0f Air particle sensor to detect the smoke from the soldering iron. It is a particulate sensor that uses an IR LED, and when the particle in the air enters into the sensor, the light bounces off towards a photodetector. This technique is called laser scattering. The intensity of the scattered(Bounced) light depends on the dust particles. The more the dust particle, the greater the bouncing or scattering happens. This intensity change of light on the photodetector changes the output voltage of the sensor.

I also use a 90mm*90mm*25mm fan to use as a fume extractor. It is turn on and off via a 5V relay, which is controlled by the Arduino.

Coding

According to the sensor datasheet at first, the IR LED has to be turned on and wait for 280µs before taking a reading. Then read the voltage values from the analog pin. This operation takes about 50µs, So give a 50µs delay and then turn off the IR led. The IR led should be pulse on and off once every 10ms so, it has to wait for the remaining (10000-280-50)µs = 9670µs.

 digitalWrite(led,LOW);       
 delayMicroseconds(280);      
 SensorOut = analogRead(SensorPin);  
 delayMicroseconds(50);           
 digitalWrite(led,HIGH);              
 delayMicroseconds(9670);   

After that using some simple calculations we can measure the dust density

 SensorVo = SensorOut*(5.0/1024);
 Dust = (SensorVo-Voltage_noDust)*100/K;

Then I set a threshold value for the dust, when the value is more than the threshold value, the relay turns on for 5s.

if (Dust > 100){
digitalWrite (relay, HIGH);
delay(5000);
}
else {
digitalWrite (relay, LOW);
}

Video

Code

Arduino_smoke_absorber.inoArduino
/*Automatic Solder fume Extractor
 * BY 
 * ABID HOSSAIN
 * The Fume Extracture turns on when it detects any somoke....
 * 
*/

int SensorPin = A5;
int led = 7;  
float SensorOut = 0;
float SensorVo = 0;
float Dust = 0;
float Voltage_noDust = 0.12; //calibrate by changing this
float K = 0.5;               //Sensitivity from the datasheet 0.5V/ugm/m^3
int relay= 2;

void setup()
{
 pinMode(led,OUTPUT);
 pinMode(relay,OUTPUT);
 Serial.begin(115200);
 delay(10);
 digitalWrite (relay, HIGH);
 delay(5000);
 digitalWrite (relay, LOW);

}

void loop()
{
  digitalWrite(led,LOW);          //turning on the led
  delayMicroseconds(280);         //wait for 0.28ms
  SensorOut = analogRead(SensorPin);    //read the sensor output voltage
  delayMicroseconds(50);                //wait for 50us
  digitalWrite(led,HIGH);               //turning off the led
  delayMicroseconds(9670);              //wait for (10000-280-50)=9670us
  SensorVo = SensorOut*(5.0/1024);      //calculating sensor output voltage
  Dust = (SensorVo-Voltage_noDust)*100/K;     //calculating Dust density(ugm)/m^3
 
  if ( Dust < 0)
  {
    Dust = 0.00;
  }
//Serial.println(Dust); 
//delay(100);

if (Dust > 100){
 digitalWrite (relay, HIGH);
 delay(5000);
}
else {
 digitalWrite (relay, LOW);
}
}

Schematics

solder_fume_exrt_bb_0uHLbo9Mmy.png
Solder fume exrt bb 0uhlbo9mmy

Comments

Similar projects you might like

Arduino Based Automatic Solder Fan

Project tutorial by kzim94

  • 1,897 views
  • 3 comments
  • 11 respects

Automatic Hand Sanitizer

Project tutorial by Nikolaos Babetas

  • 31,658 views
  • 14 comments
  • 35 respects

Automatic Solar Powered Chicken Door

Project tutorial by yoann-_-

  • 2,705 views
  • 3 comments
  • 3 respects

Automatic Servo Tester with Arduino Nano

Project tutorial by Bekir Bilge

  • 11,320 views
  • 0 comments
  • 13 respects

Automatic Sliding Door for the Garage

Project tutorial by DVDMDN

  • 46,093 views
  • 60 comments
  • 134 respects

Automatic Watering System

Project tutorial by Manson Hau

  • 21,496 views
  • 11 comments
  • 65 respects
Add projectSign up / Login