นำเสนออุปกรณ์ วิธีการต่อวงจร และวิธีการใช้งาน
STARTใช้ LDR เช็คสถานะไฟของเครื่องซักผ้า เมื่อสัญญาณไฟเครื่องซักผ้าดับลง LDR ก็จะรับสัญญาณแสดงว่าซักผ้าเสร็จแล้วก็จะแจ้งเตือนผ่านไลน์ทันทีเพื่อให้เราทำผ้าที่ซักเสร็จแล้วไปตาก
| Esp8266 V.2 | 1 ตัว |
| LDR Sensor | 1 ตัว |
| OLED Display | 1 ตัว |
| Buzzer | 1 ตัว |
| Switch 4 Pin | 1 ตัว |
#define BLYNK_PRINT Serial
#include <ESP8266WiFi.h>
#include < BlynkSimpleEsp8266.h>
#include<DNSServer.h>
#include<WiFiManager.h>
#include <TridentTD_LineNotify.h>
#include<SPI.h>
#include<Wire.h>
#include < Adafruit_GFX.h>
#include < Adafruit_SSD1306.h>
#define SCREEN_WIDTH 128
#define SCREEN_HEIGHT 64
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire,-1);
const unsigned char MarilynMonroe [] PROGMEM = {
0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x1f, 0x1f, 0x9f, 0xf8, 0x8c, 0xcc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xc6, 0x0e, 0x0f, 0x07, 0xf8, 0x8c, 0xcc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xc6, 0x46, 0x06, 0x07, 0xff, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xc4, 0x46, 0x66, 0x67, 0xff, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xc6, 0x0e, 0x06, 0x07, 0xf8, 0x8c, 0xcc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xc6, 0x0f, 0x0f, 0x0f, 0xf8, 0x8c, 0xcc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0xff, 0xf1, 0xff, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0xfe, 0x00, 0x0f, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0xf0, 0x00, 0x03, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0xe0, 0xff, 0xc0, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0x83, 0xff, 0xf8, 0x7f, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0x0f, 0x00, 0x1c, 0x3f, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xfe, 0x3c, 0x00, 0x07, 0x1f, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xfc, 0x70, 0x7f, 0x83, 0x8f, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xf8, 0xe1, 0xff, 0xe1, 0xc7, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xf9, 0xc7, 0xff, 0xf8, 0x63, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xf1, 0x8f, 0xff, 0xfc, 0x73, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xe3, 0x1f, 0xff, 0xfe, 0x31, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xe3, 0x3f, 0xff, 0xff, 0x19, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xe6, 0x3f, 0xff, 0xff, 0x98, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xc6, 0x7f, 0xff, 0xff, 0x8c, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xcc, 0x7f, 0xff, 0xff, 0xcc, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xcc, 0xff, 0xff, 0xff, 0xcc, 0x7c, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xcc, 0xff, 0xff, 0xff, 0xc4, 0x7c, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xcc, 0xff, 0xff, 0xff, 0xc4, 0x7c, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x8c, 0xe1, 0xe1, 0xf1, 0xc4, 0x7c, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x8c, 0xc0, 0xc0, 0xc0, 0x46, 0x7c, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xcc, 0x00, 0x00, 0x04, 0x04, 0x7c, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xcc, 0x1e, 0x1e, 0x0e, 0x04, 0x7c, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xfe, 0x07, 0xcc, 0x7f, 0xff, 0xff, 0xcc, 0x7c, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xfc, 0x04, 0x4c, 0x7f, 0xff, 0xff, 0xcc, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xf8, 0x00, 0x06, 0x7f, 0xff, 0xff, 0x8c, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xf1, 0xe0, 0x06, 0x3f, 0xff, 0xff, 0x98, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0xc2, 0x1f, 0xff, 0xff, 0x19, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xf3, 0xff, 0xe0, 0x07, 0xff, 0xfe, 0x31, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xe3, 0xff, 0xf8, 0x03, 0xff, 0xfc, 0x33, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0xfc, 0xf1, 0xff, 0xf8, 0x63, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0xff, 0xf0, 0xc7, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x7f, 0xc1, 0x8f, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x0f, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0x3f, 0xff, 0xff, 0xfe, 0x00, 0x1e, 0x1f, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x60, 0xf8, 0x7f, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x7f, 0xe0, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xcf, 0xff, 0xff, 0xf8, 0x00, 0x0f, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xcf, 0xff, 0xff, 0xf9, 0x80, 0x7f, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xcf, 0xff, 0xff, 0xf9, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xcf, 0xff, 0xff, 0xf9, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xe3, 0xff, 0xff, 0xe3, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0x87, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff
};
const unsigned char MarilynMonroe2 [] PROGMEM = {
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc6, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8f, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x9f, 0x9f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x9f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x9f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xf9, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x03, 0x80, 0x1c, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0xf0, 0x3f, 0xc0, 0xf8, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xff, 0xfe, 0x3f, 0xf1, 0xff, 0xf8, 0xff, 0xc7, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xff, 0xfc, 0x7f, 0xf9, 0xff, 0xf9, 0xff, 0xe3, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xfc, 0xff, 0xf3, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0xfe, 0x3f, 0xc7, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xff, 0xe3, 0xff, 0xff, 0x00, 0x0f, 0xff, 0xfc, 0x7f, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0xff, 0xc0, 0x3f, 0xff, 0xfe, 0x3f, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xfe, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xfc, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xfc, 0x7f, 0xfb, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xe3, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xfe, 0x3f, 0xf1, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xc7, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xff, 0x1f, 0xe3, 0xff, 0xff, 0xff, 0xfc, 0x7f, 0x8f, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xff, 0x8f, 0xc7, 0xff, 0xff, 0xff, 0xfe, 0x3f, 0x1f, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xff, 0xc7, 0x8f, 0xff, 0xff, 0xff, 0xff, 0x1e, 0x3f, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xff, 0xe3, 0x0f, 0xff, 0xff, 0xff, 0xff, 0x0c, 0x7f, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xff, 0xf0, 0x0f, 0xff, 0xff, 0xff, 0xff, 0x00, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xff, 0xf8, 0x4f, 0xff, 0xff, 0xff, 0xff, 0x21, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xff, 0xfc, 0xcf, 0xff, 0xff, 0xff, 0xff, 0x33, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xff, 0xff, 0xcf, 0xff, 0xff, 0xff, 0xff, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xff, 0xff, 0xcf, 0xff, 0xff, 0xff, 0xff, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xff, 0xff, 0xcf, 0xff, 0xff, 0xff, 0xff, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xff, 0xff, 0xcf, 0xff, 0xff, 0xff, 0xff, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x1f, 0xff, 0xff, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xfe, 0x3f, 0xff, 0xff, 0xe3, 0xff, 0xff, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xfc, 0x7f, 0xff, 0xff, 0xf1, 0xff, 0xff, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xfc, 0xc0, 0x00, 0x00, 0x19, 0xff, 0xff, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xfc, 0xc0, 0x00, 0x00, 0x19, 0xff, 0xff, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xfc, 0x7f, 0xff, 0xff, 0xf1, 0xff, 0xff, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xfe, 0x7f, 0xff, 0xff, 0xf3, 0xff, 0xff, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xc3, 0xff, 0xff, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xfe, 0x7f, 0xff, 0xff, 0xf3, 0xff, 0xff, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xfc, 0x7f, 0xff, 0xff, 0xf9, 0xff, 0xff, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xfc, 0xc0, 0x00, 0x00, 0x39, 0xff, 0xff, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xfc, 0xc0, 0x00, 0x00, 0x39, 0xff, 0xff, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xfc, 0x7f, 0xff, 0xff, 0xf1, 0xff, 0xff, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xc3, 0xff, 0xfe, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x07, 0xfe, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x03, 0xfe, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xfe, 0x7f, 0xff, 0xff, 0xf3, 0xfe, 0x78, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xfc, 0x7f, 0xff, 0xff, 0xf1, 0xfe, 0x71, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xfc, 0xc0, 0x00, 0x00, 0x39, 0xfe, 0x63, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xfc, 0xc0, 0x00, 0x00, 0x39, 0xfe, 0x47, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xfc, 0x7f, 0xff, 0xff, 0xf1, 0xfe, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xfe, 0x3f, 0xff, 0xff, 0xe3, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0,
0xff, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0
};
#define LINE_TOKEN "ใส่ Line Token ของคุณ"
char auth[] = "ใส่ Token Blynk";
int Button = LED_BUILTIN;
int led = D3;
int i = 0;
int buttonState = 1;
int analogPin = 0;
int val = 0;
int buzzer = 16;
WidgetLED led_status(V1);
BlynkTimer timer;
int washingMonitor;
BLYNK_WRITE (V1){
if(param.asInt()){
if(!timer.isEnabled(washingMonitor)){
timer.enable(washingMonitor);
}
}else{
timer.disable(washingMonitor);
led_status.off();
digitalWrite (D0,HIGH);
}
}
voidsetup(){
digitalWrite (buzzer,LOW);
display.begin(SSD1306_SWITCHCAPVCC, 0x3C);
pinMode(D0,OUTPUT);
digitalWrite(D0,HIGH);
LINE.setToken(LINE_TOKEN);
washingMonitor = timer.setInterval(1000L,check_washingStatus);
timer.disable(washingMonitor);
pinMode(Button,INPUT_PULLUP);
pinMode(led, OUTPUT);
pinMode(led, HIGH);
pinMode(buzzer,OUTPUT);
Serial.begin(9600);
Blynk.config(auth, "elec.cmtc.ac.th", 8080);
WiFiManager wifiManager;;
buttonState =digitalRead(Button);
if ( buttonState == 0) {
wifiManager.resetSettings();
wifiManager.setTimeout(60);
if (!wifiManager.autoConnect("TDS reset"))
{
Serial.println("Failed to connect and hit timeout");
delay(3000);
ESP.reset();
delay(5000);
}
}
WiFi.printDiag(Serial);
Serial.println();
Serial.println("connected...OK");
}
void check_washingStatus(){
digitalWrite(buzzer , LOW);
int sensorValue = analogRead(A0);
val = analogRead(analogPin);
Serial.print("val = ");
Serial.println(val);
if(analogRead(A0) < 900){
led_status.on();
digitalWrite(D0,LOW);
digitalWrite(buzzer , LOW);
display.clearDisplay();
display.setTextSize(2);
display.setTextColor(WHITE);
display.setCursor(35,20);
display.println("SYSTEM");
display.setCursor(40,40);
display.println("START");
display.display();
delay(2000);
display.clearDisplay();
display.setCursor(35,10);
display.println("Please");
display.setCursor(40,30);
display.println("Wait");
display.setCursor(25,50);
display.println("^_^ ^_^");
display.display();
delay(2000);
display.clearDisplay();
display.drawBitmap(0, 0, MarilynMonroe, 128, 64, WHITE);
display.display();
delay(5000);
display.clearDisplay();
}else{
led_status.off();
digitalWrite(D0,HIGH);
Blynk.virtualWrite(V0,0);
LINE.notifySticker("ซักผ้าเสร็จแล้วจร้าาา ไปตากด้วยนะ ^^ ", 1, 2);
timer.disable(washingMonitor);
delay(1000);
digitalWrite(buzzer , HIGH);
delay(1000);
digitalWrite(buzzer , LOW);
display.clearDisplay();
display.setTextSize(2);
display.setTextColor(WHITE);
display.setCursor(25,20);
display.println("WASHING");
display.setCursor(25,40);
display.println("SUCCESS");
display.display();
display(2000);
display.clearDisplay();
display.drawBitmap(0, 0, MarilynMonroe2, 128, 64, WHITE);
display.display();
delay(2000);
display.clearDisplay();
}
}
void loop(){
digitalWrite(buzzer , LOW);
WiFiManager wifiManager;
buttonState = digitalRead(Button);
if ( buttonState == 0) {
wifiManager.resetSettings();
wifiManager.setTimeout(60);
if (!wifiManager.autoConnect("TSWD")){
Serial.println("Failed to connect and hit timeout");
delay(3000);
ESP.reset();
delay(5000);
}
}
Serial.print("button wifi reset : ");
Serial.println(buttonState);
Serial.print("i = ");
Serial.println(i);
Serial.println(" ");
Blynk.run();
timer.run();
}
เป็นตัวต้านทานที่ค่าความต้านทาน จะเปลี่ยนไปตามความเข้มของแสงที่ตกกระทบ ลงบนตัวต้านทาน บางครั้งเรียกว่า โฟโตรีซีสเตอร์ (Photo Resistor) หรือโฟโตคอนดัคเตอร์ (Photo Conductor) เป็นตัวต้านทานที่ทำมาจากสารกึ่งตัวนำ (Semiconductor) ประเภทแคดเมี่ยมซัลไฟด์ (Cds : Cadmium Sulfide) หรือแคดเมี่ยมซิลินายส์ (CdSe : Cadmium Selenide) ซึ่งทั้งสองตัวนี้ก็เป็นสารประเภทกึ่งตัวนำ เอามาฉาบลงบนแผ่นเซรามิกที่ใช้เป็นฐานรองแล้วต่อขาจากสารที่ฉาบไว้ออกมาใช้งานลักษณะโครงสร้างของลักษณะของตัวต้านทานไวแสง
สั่งซื้อ กลับ
โมดูล OLED ที่ได้เลือกมาทดลองใช้งาน สามารถแสดงผลได้แบบสีเดียว (Monochrome) มีขนาดจอภาพ 0.96" ความละเอียด 128x64 พิกเซล ซึ่งถือว่ามีขนาดเล็ก และใช้แรงดันไฟเลี้ยง +3.3V แม้ว่าจะมีขนาดเล็กแต่ก็เหมาะสำหรับนำไปใช้กับระบบ embedded systems ที่ต้องการส่วนแสดงผลกราฟิกขนาดเล็ก มีพื้นที่จำกัด เป็นต้น ภายในโมดูลมีชิป SSD1306 เป็นตัวควบคุมการทำงาน สามารถเชื่อมต่อกับโมดูลโดยใช้บัส SPI หรือ I2C ถ้าต้องการแสดงข้อความ จะต้องมีข้อมูลสำหรับสร้างตัวอักษร (FONT) แต่ละตัวซึ่งมีลักษณะเป็นแบบ Bitmap เก็บไว้ในหน่วยความจำของไมโครคอนโทรลเลอร์ เช่น เก็บไว้ในหน่วยความจำสำหรับโปรแกรมที่เรียกว่า Program Memory (เป็นแบบ Flash Memory) เพื่อประหยัดการใช้พื้นที่ใน SRAM ของไมโครคอนโทรลเลอร์
สั่งซื้อ กลับ
NodeMCU ก็คือบอร์ดคล้ายๆกับเบอร์ Arduino แต่ตัว NodeMCU จะมีความสามารถเชื่อมต่อ WiFi ได้เพราะภายในบอร์ดของ NodeMCU จะมี ESP8266 ซึ่งมีความสามารถเชื่อต่อ WiFi อยู่ในตัวและเป็นแพลตฟอร์ม IoT สามารถใช้เขียนโปรแกรมลงยังบอร์ดเหมือนกับบอร์ด Arduino ESP8266 คือ ไมโครชิปที่เป็นรูปแบบ TCP/IP มีหน้าที่สำหรับเชื่อต่อ WI-FI
สั่งซื้อ กลับ
Push button คือ สวิชท์วงจรอิเล็กทรอนิกส์ชนิดหนึ่ง มีหน้าที่ควบคุมการเปิด และ ปิด ของวงจรส่วนนั้นๆ โดยทั่วไปอาจมี 2 ขา หรือ 4 ขา โดยปุ่มกดติดปล่อยดับนั้น เมื่อทำการกดจะเป็นการปิดวงจร ทำให้กระแสไฟฟ้าสามารถไหลผ่านวงจรได้ เมื่อไม่ได้กด จะทำให้วงจรเปิด กระแสไฟฟ้าจะไม่สามารถไหลผ่านวงจรได้
สั่งซื้อ กลับ
ตัวกำเนิดเสียงซึ่งมี3ขาเชื่อมกับวงจรคือ ขาที่1 GNDไปเชื่อมกับGNDที่board arduino ขาที่2 I/O ไปเชื่อมกับ pinที่board arduino เพื่อรับกระแสไฟฟ้ามาและขอสุดท้ายคือVCC ไปเชื่อมกับ 5V ที่ board arduino
เราอาจจะเคยได้ยินเสียงบลัซเซอร์อยู่บ่อยๆ เช่น เสียง ปี๊บที่อยู่ในคอมพิวเตอร์ก็ใช้บลัซเซอร์ในการส่งสัญญาณให้ทราบสถานะของคอมพิวเตอร์ให้ทราบว่ามีปัญหาอะไร
สั่งซื้อ กลับ
สาย jumper เข้าหัวสาย ตัวผู้ และ ตัวเมีย ใช้สำหรับต่อวงจร เพื่อให้ง่ายต่อการใช้งาน เชื่อมต่ออปุกรณ์อิเล็กทรอนิดส์ ต่างๆไม่ว่าจะเป็น Sensor Arduino Module ง่ายต่อการใช้งาน
สายต่อวงจร Jumper มีทั้งแบบ male to female(ตัวผู้-ตัวเมีย) male to male(ตัวผู้-ตัวผู้) female to female(ตัวเมีย - ตัวเมีย)
สั่งซื้อ กลับ
ขนาด 5 x 7 เซนติเมตร ทำมาจากแผ่นปริ้น epoxy เครื่องด้วยสีเขียว และคลือบด้วยตะกั่วป้องกันการเกิดคราบ ลอยมือ ทําปฏิกิริยากับอากาศ เป็นคราบ เป็นต้น สินค้าสามารถนำไปประยุกต์ใช้ ในการทำวงจรโดยไม่ต้อง กัดแผ่นปริ้น หรือเอาไว้ทดลองวงจร
สั่งซื้อ กลับ
เป็นอุปกรณ์อิเล็กทรอนิกส์ที่ใช้สำหรับเชื่อมต่อสายไฟ เพื่อให้การจัดเก็บสายไฟเป็นระเบียบเรียบร้อยและมีความปลอดภัยในการใช้งาน โดยทั่วไปเทอร์มินอลบล็อคที่นิยมใช้งานกันจะแบ่งออกเป็น 2 ประเภทหลักๆ คือแบบสกรู (Screw Type) และแบบเสียบสายล็อค (Rod Type) ซึ่งแต่ละแบบก็จะมีรูปแบบการติดตั้งใช้งานที่แตกต่างกันออกไป ตัวบล็อกผลิตจากวัสดุพลาสติกหรือเซรามิกที่มีคุณสมบัติโดดเด่น คือ แข็งแรงทนทาน สามารถใช้งานกับอุณหภูมิสูงได้ดี ทนต่อความร้อน กรดและด่าง ไม่ติดไฟ และรองรับการต่อเข้ากับสายไฟได้หลายขนาด ดังนั้นเทอร์มินิลบล็อกจึงเหมาะนำมาติดตั้งใช้งานภายในอาคารและงานอุตสาหกรรมที่ต้องการความปลอดภัยสูงในการทำงาน
สำหรับกรณีใช้เพื่อลงแผ่นวงจรพิมพ์ และเลือกใช้แบบแบบสกรู (Screw Type)
สั่งซื้อ กลับ
แบบกดติดกดดับ หรือ แบบ push on / push off เป็นประเภทที่นิยมใช้ในฟังก์ชันการทำงานแบบไม่ซับซ้อน เช่น Start/stop สายพานลำเลียง เป็นต้น
เมื่อมีการกด Push button Switch หน้าสัมผัสดังกล่าวจะเปลี่ยนสถานะ จาก NO เป็น NC หรือจาก NC จะเป็น NO แต่เมื่อปล่อยมือออกจาก Push button Switch หน้าสัมผัสจะถูกล็อกไว้โดยกลไกลของสวิตซ์ ซึ่งสามารถกลับสู้สภาวะปกติในแหน่งเดิมได้โดยโดยกด Push button Switchอีกครั้งทำให้คลายล็อก จะมีแรงผลักดันจากสปริงให้Push button Switchเข้าสู้สภาวะปกติ
สั่งซื้อ กลับโปรเจคในครั้งนี้ได้มีการแบ่งออกเป็น 2 ส่วน คือ Software และ Hardware
Mr. Anupong Janswang
Software Developer
Mr. Asadayut Amatayakul
Hardware Developer
Copyright © 2021 Development by Anupong Janswang