AT302A ชุดเรียนรู้+ชุดทดลอง ตรวจจับของเหลว Automation Capacitive Proximity Sensor+Counter

฿12,900.00

สั่งจองสินค้าได้

คำอธิบาย

ชุดทดลองตรวจจับของเหลวบนสายพานลำเลียง Automation Conveyor + Proximity Sensor + Counter

มีอะไรเตรียมไว้ให้ในชุด (อุปกรณ์ในชุดติดตั้งบนแผ่นพลาสวูด)

  1. สายพานลำเลียง Mini Conveyor
  2. ชุดผลักชิ้นงาน Rejector แบบใช้ Step motor 1 ชุด
  3. บอร์ด L298P Motor Shield 1 บอร์ด
  4. บอร์ด Arduino Uno 1 บอร์ด
  5. เซนเซอร์แบบ Capacitance Proximity ติดตั้งบนแผ่นเพลท 1 ตัว
  6. อะแดปเตอร์จ่ายไฟ 12V 1 เซต
  7. Counter แสดงผลนับ 7-Segment
  8. Relay Module

เอาท์พุทเพื่อการนับและการคัดแยก

  • อุปกรณ์ผลักชิ้นงาน Rejector
  • ชุด Counter แสดงผลนับ 7-Segment

การใช้ Capacitive Proximity sensors เพื่อการคัดแยกชิ้นงานที่เป็นของเหลว

  1. สายสีน้ำตาล : 6-24VDC
  2. สายสีน้ำเงิน : GND
  3. สายสีดำ : DIGITAL OUTPUT / NPN normally open (Active Low) ต่อ DIGITAL OUTPUT เข้ากับขา Analog ของ Arduino Uno

Capacitive Proximity sensors พร็อกซิมิตี้เซนเซอร์ชนิดเก็บประจุ ใช้หลักการเปลี่ยนแปลงของค่าความจุไฟฟ้า (คาปาซิแตนซ์) โดยการสร้างสนามไฟฟ้าสถิตย์ เพื่อตรวจจับ ค่าความจุไฟฟ้าระหว่างวัตถุกับเซนเซอร์ จะเปลี่ยนแปลงตาม ขนาด รูปร่าง และชนิดของวัตถุสามารถตรรวจจับระดับของของเหลวเกือบทุกชนิด  นิยมใช้ตรวจจับระดับของเหลวในภาชนะทึบแสง เช่นปริมาณของเครื่องดื่มที่บรรจุในขวด ในเรื่องของระยะทางใช้งานตรวจจับวัตถุได้ในระยะใกล้

 

Wiring Diagram

https://oshwlab.com/s2insupply/302a-automation-metal-detect-l298-inductive-proximity-sensor

 

Arduino Code

ตัวอย่างโปรแกรมด้านล่างแสดงการตรวจจับชิ้นงานที่เป็นของเหลว (ขวดน้ำ)ระหว่างขวดน้ำ กับ ขวดเปล่า เมื่อ Capacitive Proximity Sensor เจอขวดน้ำ ระบบจะปล่อยผ่าน แต่เมื่อ Capacitive Proximity Sensor เจอขวดเปล่า ระบบจะรอเวลาให้ชิ้นงานวิ่งไปใกล้ Rejector และผลักขวดเปล่าออก

int E1 = 10; // Speed control Motor A
int E2 = 11; // Speed control Motor B
int M1 = 12; // direction control Motor A 
int M2 = 13; // direction control Motor B 

int sensor_A = A0; // Uno Analog Pin A0  คาปาซิตีฟเซนเซอร์
int sensor_B = A1; // Uno Analog Pin A1  โฟโต้เซนเซอร์
int Buzzer = 4;    // Uno Digital Pin 4 for alarm
int Rejector = 9;  // Uno Digital Pin 9 for Rejector

int SensorValue_A = 0; 
int SensorValue_B = 0;
int outputValue = 0;
int Count_Value = 0;
int flag_count = 0;
int Speed = 255; // กำหนด Speed 0-255 ความเร็วสายพาน
int delay_injector= 2500; //หน่วงเวลาหลังจากเจอชิ้นงาน ค่อยผลัก

void setup()
{
pinMode(M1, OUTPUT);
pinMode(M2, OUTPUT);

pinMode(Buzzer, OUTPUT);

pinMode(Rejector, OUTPUT);//Rejector
digitalWrite(Rejector, HIGH);

pinMode(A5, OUTPUT);
digitalWrite(A5, HIGH);


Serial.begin(9600);
}

void loop()
{
        SensorValue_B = analogRead(sensor_B);// โฟโต้เซนเซอร์
        // map it to the range of the analog out:
        SensorValue_B = map(SensorValue_B, 0, 1023, 0, 255);
        //Serial.println(SensorValue_B);
        
        if(SensorValue_B < 128) //โฟโต้เซนเซอร์ เจอขวด
        {
            SensorValue_A = map(SensorValue_A, 0, 1023, 0, 255);
           //Serial.println(SensorValue_A);
              delay(100);  //หน่วงเวลา
              SensorValue_A = analogRead(sensor_A);// คาปาซิตีฟเซนเซอร์

              
              if(SensorValue_A > 128) //คาปาซิตีฟเช็คเจอว่า ขวดไม่มีน้ำ
                {
                  
                    delay(delay_injector);  // รอเวลาให้ชิ้นงานวิ่งไปใกล้ Rejector สามารถเปลี่ยนแปลงค่าให้เหมาะสมกับความเร็วสายพาน
                    
                    digitalWrite(Rejector, LOW);// ส่ง Logic 0 เพื่อให้ Rejector ทำงาน เปรียบเสมือน การ กดสวิตช์
                    digitalWrite(A5, LOW);// ส่งสัญญาณไปยังวงจรเคาท์เตอร์
                    delay(100);  //หน่วงเวลาขาลง นาน 100 มิลลิเซค
                    digitalWrite(Rejector, HIGH);
                    digitalWrite(A5, HIGH);
                }
                
              else  // ขวดมีน้ำ ไม่ต้องทำอะไร ปล่อยผ่าน
              {
 
              }
        }
        else // โฟโต้เซนเซอร์ ไม่เจอขวด สั่งให้สายพานหมุน
        {
                  flag_count=0;
                  digitalWrite(M1, HIGH); //  direction Motor A
                  digitalWrite(M2, LOW);  //  direction Motor B  
                  analogWrite(E1, Speed); //  อ่านค่า Speed ที่กำหนดไว้ เพื่อควบควม Motor A
                  analogWrite(E2, Speed); //  อ่านค่า Speed ที่กำหนดไว้ เพื่อควบควม Motor B
        
        }
}

ข้อมูลเพิ่มเติม

น้ำหนัก 3000 กรัม
ขนาด 40 × 120 × 30 เซนติเมตร
ความยาว (Length)

60cm, 100cm

รีวิว

ยังไม่มีบทวิจารณ์

เฉพาะลูกค้าที่เข้าสู่ระบบ และเคยซื้อสินค้าชิ้นนี้แล้วเท่านั้น ที่เขียนบทวิจารณ์ได้