Panasonic Laser PM2.5 (Dust/Smoke) Sensor w/ MCU

Table of contents

RoadTest: Panasonic Laser PM2.5 (Dust/Smoke) Sensor w/ MCU - Industrial Sensing

Author: dwinhold

Creation date:

Evaluation Type: Independent Products

Did you receive all parts the manufacturer stated would be included in the package?: False

What other parts do you consider comparable to this product?: NA

What were the biggest problems encountered?: Connection wired not originally supplied.

Detailed Review:

Happy New Year community,

This is my RoadTest review of the Panasonic Laser PM2.5 (Dust/Smoke) Sensor w/MCU !!!

I usually don't do an unboxing of the product, but this time I will. The only reason I am did it this time was in case the sensor didn't work (Luckily it worked just fine). The photo below says it all..... Thanks customs...

image

This is how I received the sensor when I opened the box.

Test hardware list:

  • Panasonic Laser PM2.5 Sensor
  • Arduino MKR WiFi 1010
  • LCD Screen
  • Resistors

Set-up:

image

Code:

#include <Wire.h>
#include<LiquidCrystal.h>

#include "SparkFun_Particle_Sensor_SN-GCJA5_Arduino_Library.h"
SFE_PARTICLE_SENSOR myAirSensor;

LiquidCrystal lcd(10, 9, 5, 4, 3, 2);

void setup()
{
  pinMode(6, OUTPUT);
  lcd.begin(16, 2); 
  Serial.begin(115200);
  Serial.println(F("Panasonic SN-GCJA5"));

  Wire.begin();

  if (myAirSensor.begin() == false)
  {
    Serial.println("The particle sensor did not respond. Please check wiring. Freezing...");
    while (1)
      ;
  }

  Serial.println("Sensor started");
  Serial.println("PM: 2.5, PC: 2.5");
}

void loop()
{
  lcd.clear();

  float pm2_5 = myAirSensor.getPM2_5(); //Read Particle Mass from sensor
  Serial.print(pm2_5, 2); //Print to Serial Port
  Serial.print(",");

  unsigned int pc2_5 = myAirSensor.getPC2_5(); //Read Particle Count from sensor
  Serial.print(pc2_5);
  Serial.print(",");  //Print to Serial Port

  Serial.println();

//Print to LCD Screen
  lcd.setCursor(0,0);
  lcd.print("PM(2.5): "); 
  lcd.setCursor(8,0);
  lcd.print(pm2_5);
  lcd.setCursor(0,1);           
  lcd.print("PC(2.5): "); 
  lcd.setCursor(8,1);           
  lcd.print(pc2_5);    

  if (pm2_5 > 1600) {
    digitalWrite(6, HIGH); //If sensor reading is above 1600 - Turn on fan
  }
  else {
    digitalWrite(6,LOW); //Else turn fan off
  }
  
  delay(1000); //The sensor has new data every second
}

Wiring:

image

image

LCD Display:

image

Sensor Wiring:

image

The wire marked NA is for UART which I didn't use for my roadtest.

Review:

When I saw this roadtest my idea was to use the sensor to detect the amount of smoke my laser CNC was producing. When the particle mass level hits a predetermined amount, a filter fan would automatically start to make the air quality better. For my demo video, I didn't have the filter system set up since we are in the middle of renovating. I instead set up an LED light to turn on (Simulate the fan On/Off). As you can see in the video, the light turns on and off when the particle mass is greater then 1600. This system works flawless and can be incorporated into many different uses.

Unable to upload video (Any help with that?)

The sensor itself far exceeds my expectations. The accuracy is dead on. Panasonic made a piece of electronics that will change air quality detection. The size and weight is exceptional and withstands even the worst border inspections.

Hope to post more results in the future,

Dale Winhold

Anonymous