สินค้าทั้งหมด (All products)
-
Global Pi Shop Relay Module 5V 1/2/4 Channel for Arduino and Raspberry pi
Relay is Relay is an electrical switch that is controlled by an electrical signal. It is used for: Control high voltage electrical devices (e.g. fans, 220V bulbs) with electrical signals from Arduino (5V). This allows the Arduino to safely control high-current devices (since the Arduino cannot directly supply high current). Relay Module is available in various types such as 1 Channel, 2 Channel, 4 Channel depending on the number of devices to be controlled. Specifications of Relay 5V Module list details Control pressure (Input) 5V DC (from Arduino) Load voltage (Output) Up to ~250V AC or 30V DC Maximum load current 10A Number of channels (Channel) 1, 2, 4 (select according to the number of devices to be controlled) Logic Control Active LOW (some models) There is an optocoupler. Some models have a circuit breaker to isolate the electrical circuit (safer). Output legs (3 legs) NO (Normally Open), NC (Normally Closed), COM (Common) Using Relay with Arduino Wiring (Example 1 Channel): Relay Pin Arduino Pin VCC 5V GND GND IN1 D7 (or as required) The IN1 leg is used to turn the relay on/off. If it is 2/4 Channel, there will be IN2, IN3, IN4 added. Example of connecting electrical equipment to a house: Warning: You should have knowledge of 220V electricity and be very careful. Use an extension cord or an electrician if you are not sure. Connection: COM → Connect to AC power (input line) NO → Connect to the device you want to turn on/off (light, fan). When Arduino sends a signal → Relay closes the circuit → Power goes to the device. Code example: int relayPin = 7; void setup() { pinMode(relayPin, OUTPUT); } void loop() { digitalWrite(relayPin, LOW); // Open relay (some models LOW means open) delay(3000); // leave open for 3 seconds digitalWrite(relayPin, HIGH); // close relay delay(3000); // wait another 3 seconds } If your relay is Active HIGH, switch LOW and HIGH. What can it be used with? Turn on/off 220V light bulbs Water pump control Order to turn on the fan/electrical appliance Make a Smart Home System
15.00 ฿ - 90.00 ฿
-
Global Pi Shop ปั๊มน้ำ DC 3.3V/5V สำหรับ Arduino ESP
DC Water Pump (3V-5V): คู่มือฉบับสมบูรณ์สำหรับชาว Maker DC Water Pump คืออะไร? DC Water Pump คือ ปั๊มน้ำขนาดเล็กที่ทำงานด้วยไฟฟ้ากระแสตรง (DC) ซึ่งเป็นอุปกรณ์ที่นิยมอย่างมากในงาน DIY และโปรเจคด้านอิเล็กทรอนิกส์ เหมาะสำหรับการดูดและส่งน้ำจากภาชนะหนึ่งไปยังอีกที่หนึ่ง เช่น: ระบบรดน้ำต้นไม้อัตโนมัติ ระบบน้ำไหลเวียนสำหรับตู้ปลา หรือถังน้ำ เครื่องให้อาหารสัตว์เลี้ยงอัตโนมัติ โปรเจคที่ต้องการการควบคุมการไหลของของเหลว สามารถควบคุมการทำงานผ่านไมโครคอนโทรลเลอร์อย่าง Arduino, ESP8266, ESP32 ได้ง่ายๆ โดยต่อผ่านโมดูลควบคุม เช่น Relay หรือ Transistor Module เพื่อจัดการกับกระแสไฟฟ้าที่สูงกว่าขา I/O จะจ่ายไหว ⚠️ ข้อควรจำที่สำคัญ ควรใช้งาน DC Pump ร่วมกับ ทรานซิสเตอร์หรือ Relay Module เสมอ เนื่องจากปั๊มน้ำกินกระแสไฟฟ้ามากเกินกว่าที่ขา I/O ของ Arduino จะสามารถจ่ายได้โดยตรง การต่อตรงอาจทำให้บอร์ดของคุณเสียหายได้ ข้อมูลจำเพาะ (Specification) ของ DC Water Pump (3.3V / 5V) รายการ รายละเอียด แรงดันไฟฟ้าใช้งาน 3.3V – 5V (เหมาะกับ Arduino, ESP8266, ESP32) กระแสใช้งาน ~100 – 300 mA (ขึ้นอยู่กับรุ่นและภาระงาน) อัตราการไหล (Flow rate) ประมาณ 80 – 120 ลิตร/ชั่วโมง ระยะส่งน้ำแนวตั้ง (Head height) ประมาณ 0.5 – 1 เมตร วัสดุ พลาสติก ABS กันน้ำ สายไฟ 2 เส้น (แดง = VCC, ดำ = GND) การทำงานต่อเนื่อง สามารถทำงานต่อเนื่องได้ แต่ควรมีการพักเป็นระยะหากทำงานโดยไม่มีน้ำ เพื่อป้องกันความร้อนสะสม การใช้งานกับ Arduino ✅ การต่อวงจรด้วยทรานซิสเตอร์โมดูล (เช่น IRF520, TIP120) การใช้โมดูลทรานซิสเตอร์เป็นวิธีที่นิยมและปลอดภัยในการควบคุมปั๊มน้ำ: อุปกรณ์ ต่อเข้ากับ โมดูลทรานซิสเตอร์: ขา IN ขาดิจิทัลของ Arduino (เช่น D8) โมดูลทรานซิสเตอร์: ขา VCC 5V จากแหล่งจ่ายไฟ (แนะนำให้ใช้แหล่งจ่ายแยกจาก Arduino) โมดูลทรานซิสเตอร์: ขา GND GND ของ Arduino (ต้องเชื่อมต่อ GND ร่วมกัน) สายไฟปั๊ม + (สีแดง) ต่อกับขั้ว V+ ของโมดูล สายไฟปั๊ม - (สีดำ) ต่อกับขั้ว OUT- หรือ GND ของโมดูล ✅ ตัวอย่างโค้ด Arduino เปิด-ปิดปั๊มน้ำ โค้ดนี้จะสั่งให้ปั๊มน้ำทำงานเป็นเวลา 5 วินาที และหยุดพัก 10 วินาที วนไปเรื่อยๆ // กำหนดขาที่ต่อกับโมดูลทรานซิสเตอร์ int pumpPin = 8; void setup() { // ตั้งค่าให้ pumpPin เป็น OUTPUT pinMode(pumpPin, OUTPUT); // เริ่มต้นโดยให้ปั๊มหยุดทำงาน digitalWrite(pumpPin, LOW); } void loop() { // สั่งเปิดปั๊มน้ำ digitalWrite(pumpPin, HIGH); delay(5000); // ทำงานเป็นเวลา 5 วินาที // สั่งปิดปั๊มน้ำ digitalWrite(pumpPin, LOW); delay(10000); // หยุดพักเป็นเวลา 10 วินาที } ไอเดียการประยุกต์ใช้งาน (Application Ideas) โปรเจกต์ รายละเอียดและอุปกรณ์ที่ใช้ร่วม รดน้ำต้นไม้อัตโนมัติ ใช้ร่วมกับเซ็นเซอร์วัดความชื้นในดิน (Soil Moisture Sensor) เพื่อสั่งเปิด-ปิดปั๊มเมื่อดินแห้ง ระบบกรองน้ำตู้ปลาขนาดเล็ก ตั้งเวลาเปิด-ปิดเพื่อสร้างการไหลเวียนของน้ำผ่านระบบกรอง เครื่องให้น้ำสัตว์เลี้ยง ควบคุมผ่าน NodeMCU/ESP32 เพื่อสั่งงานผ่าน Wi-Fi หรือตั้งเวลาให้น้ำ ระบบน้ำหยดอัจฉริยะ เหมาะสำหรับปลูกพืชที่ต้องการการให้น้ำอย่างสม่ำเสมอและแม่นยำ ✅ ข้อดี ราคาถูก น้ำหนักเบา ใช้งานง่ายกับไมโครคอนโทรลเลอร์ เช่น Arduino ขนาดเล็กกะทัดรัด เหมาะสำหรับงาน DIY และพื้นที่จำกัด ใช้แรงดันไฟฟ้าต่ำ (3.3V / 5V) ทำให้หาแหล่งจ่ายไฟง่าย ⚠️ ข้อควรระวัง ห้ามเดินปั๊มแบบไม่มีน้ำเด็ดขาด (Dry Running) เพราะจะทำให้เกิดความร้อนสูงและมอเตอร์อาจเสียหายได้อย่างรวดเร็ว ตรวจสอบให้แน่ใจว่าแหล่งจ่ายไฟ (Power Supply) สามารถจ่ายกระแสได้เพียงพอ โดยเฉพาะเมื่อใช้งานกับแบตเตอรี่
25.00 ฿ 17.00 ฿
-
Global Pi Shop DS3231 RTC โมดูลนาฬิกาสำหรับ Arduino ESP
DS3231 RTC คืออะไร? โมดูลนาฬิกาความแม่นยำสูง DS3231 คือ โมดูลนาฬิกาเรียลไทม์ (RTC - Real Time Clock) ความแม่นยำสูง ใช้สำหรับเก็บข้อมูลวันที่และเวลาอย่างต่อเนื่องและถูกต้อง แม้ว่าแหล่งจ่ายไฟหลักของระบบจะถูกปิดหรือตัดการเชื่อมต่อออกไปก็ตาม เนื่องจากมีแบตเตอรี่สำรอง (CR2032) ในตัวเพื่อรักษาเวลาไว้ โมดูลนี้เหมาะอย่างยิ่งสำหรับโปรเจกต์ที่ต้องการความเที่ยงตรงของเวลา เช่น ระบบบันทึกข้อมูล (Data Logger), นาฬิกาปลุก, ระบบตั้งเวลาเปิด-ปิดอุปกรณ์อัตโนมัติ และอื่นๆ สเปคของ DS3231 RTC แรงดันไฟฟ้าใช้งาน 3.3V – 5.5V (ใช้ได้ทั้ง Arduino และ Raspberry Pi) การสื่อสาร I2C (SCL, SDA) ความแม่นยำ ±2 นาทีต่อปี (แม่นยำกว่า DS1307 มาก) แบตเตอรี่สำรอง CR2032 (รักษาเวลาได้นานหลายปีแม้ไม่มีไฟเลี้ยง) ช่วงปีที่รองรับ ค.ศ. 2000 – 2099 คุณสมบัติพิเศษ มีวงจรชดเชยอุณหภูมิในตัว (Temperature-compensated) ทำให้เวลาไม่เพี้ยนตามอุณหภูมิที่เปลี่ยนไป การใช้งานกับ Arduino ✅ การต่อสายกับ Arduino UNO ขาบน DS3231 ต่อกับขาบน Arduino UNO VCC 5V GND GND SDA A4 SCL A5 หมายเหตุ: Arduino รุ่นอื่นอาจใช้ขา I2C ที่แตกต่างกัน (เช่น Mega 2560 ใช้ขา 20, 21) กรุณาตรวจสอบ Pinout ของบอร์ดที่ใช้ ✅ ตัวอย่างโค้ด Arduino ต้องติดตั้งไลบรารี RTClib by Adafruit ก่อนใช้งานผ่าน Library Manager ของ Arduino IDE #include <Wire.h> #include <RTClib.h> RTC_DS3231 rtc; void setup() { Serial.begin(9600); Wire.begin(); rtc.begin(); // ----- ตั้งเวลาเริ่มต้น (สำคัญมาก!) ----- // หากเป็นครั้งแรก ให้ยกเลิกคอมเมนต์บรรทัดล่างนี้เพื่อตั้งเวลาปัจจุบัน // จากนั้นคอมเมนต์กลับเหมือนเดิม แล้วอัปโหลดโค้ดอีกครั้ง // rtc.adjust(DateTime(F(__DATE__), F(__TIME__))); // ตรวจสอบว่าไฟเคยดับหรือไม่ if (rtc.lostPower()) { Serial.println("RTC lost power, let's set the time!"); // ตั้งเวลาเริ่มต้นหากไม่มีการตั้งค่ามาก่อน // rtc.adjust(DateTime(2025, 8, 7, 10, 0, 0)); } } void loop() { DateTime now = rtc.now(); Serial.print(now.year(), DEC); Serial.print('/'); Serial.print(now.month(), DEC); Serial.print('/'); Serial.print(now.day(), DEC); Serial.print(" "); Serial.print(now.hour(), DEC); Serial.print(':'); Serial.print(now.minute(), DEC); Serial.print(':'); Serial.println(now.second(), DEC); delay(1000); } ข้อควรจำ: บรรทัด rtc.adjust(...) ใช้สำหรับตั้งเวลาเริ่มต้นให้กับโมดูลเพียง "ครั้งเดียว" เท่านั้น หลังจากอัปโหลดโค้ดครั้งแรกเพื่อให้เวลาตรงแล้ว ให้ใส่คอมเมนต์ (//) นำหน้าบรรทัดนั้น แล้วอัปโหลดโค้ดอีกครั้ง เพื่อไม่ให้เวลาถูกรีเซ็ตใหม่ทุกครั้งที่บอร์ดเริ่มทำงาน การใช้งานกับ Raspberry Pi ✅ การติดตั้งและตรวจสอบ เปิด Terminal และรันคำสั่งต่อไปนี้: sudo apt-get update sudo apt-get install i2c-tools python3-smbus จากนั้นตรวจสอบว่า Raspberry Pi มองเห็นโมดูลหรือไม่: sudo i2cdetect -y 1 หากการเชื่อมต่อถูกต้อง คุณจะเห็นเลข 0x68 ปรากฏบนตาราง ซึ่งเป็น I2C Address ของ DS3231 หลังจากนั้นสามารถใช้ไลบรารี Python เช่น adafruit-circuitpython-ds3231 เพื่อเขียนโปรแกรมอ่านและตั้งค่าเวลาได้ ไอเดียการประยุกต์ใช้งาน โปรเจกต์ การใช้งาน RTC Data Logger บันทึกค่าจากเซนเซอร์ต่างๆ พร้อมประทับเวลา (Timestamp) ที่แม่นยำ ระบบเปิด-ปิดไฟอัตโนมัติ ตั้งเวลาเปิดไฟตอน 18:00 น. และปิดตอน 06:00 น. ของทุกวัน นาฬิกา DIY สร้างนาฬิกาดิจิทัลของตัวเองโดยแสดงผลบนจอ LCD หรือ OLED ระบบรดน้ำต้นไม้อัตโนมัติ สั่งให้ปั๊มน้ำทำงานตามเวลาที่กำหนดไว้ เช่น 07:00 น. และ 17:00 น. ระบบเตือนหรือนาฬิกาปลุก ตั้งเวลาเพื่อให้ Buzzer, LED หรืออุปกรณ์อื่นๆ ทำงานเมื่อถึงเวลาที่กำหนด ข้อดีของ DS3231 แม่นยำสูงมาก เมื่อเทียบกับ RTC รุ่นยอดนิยมอย่าง DS1307 มีแบตเตอรี่สำรอง ทำให้เวลาเดินต่อเนื่องแม้ไม่มีไฟเลี้ยง ใช้งานได้หลายแพลตฟอร์ม ทั้ง Arduino, ESP32, Raspberry Pi และอื่นๆ สื่อสารผ่าน I2C ทำให้ประหยัดขาและสามารถต่ออุปกรณ์อื่นบนบัสเดียวกันได้
70.00 ฿ 50.00 ฿
-
Global Pi Shop โมดูล Active Buzzer Sensor สำหรับ Arduino Pi ESP
Active Buzzer คืออะไร? วิธีสร้างเสียงแจ้งเตือนด้วย Arduino Active Buzzer (แอคทีฟบัซเซอร์) คือ อุปกรณ์กำเนิดเสียงประเภทหนึ่งที่ใช้งานง่ายมาก โดยจุดเด่นของมันคือมีวงจรสร้างความถี่เสียง (Oscillator) อยู่ภายในตัว ทำให้เราไม่ต้องเขียนโค้ดที่ซับซ้อนเพื่อสร้างความถี่เสียงเอง เพียงแค่จ่ายไฟเลี้ยง 3.3V-5V หรือส่งสัญญาณลอจิก "HIGH" จากไมโครคอนโทรลเลอร์เข้าไป Buzzer ก็จะส่งเสียง "ปี๊บ" แหลมๆ ออกมาได้ทันที ความแตกต่างระหว่าง Active vs Passive Buzzer Active Buzzer (ตัวนี้): มีวงจรสร้างเสียงในตัว แค่จ่ายไฟก็ดังทันที เหมาะกับเสียงเตือนง่ายๆ ที่มีความถี่เดียว Passive Buzzer: ไม่มีวงจรในตัว เป็นแค่ตัวกำเนิดเสียงเปล่าๆ ผู้ใช้ต้องเขียนโค้ดสร้างสัญญาณความถี่ (PWM) จาก Arduino เพื่อป้อนให้มันถึงจะมีเสียง เหมาะกับการสร้างเสียงที่มีหลายระดับโน้ตดนตรี สเปคของ Active Buzzer Module รายการ รายละเอียด แรงดันใช้งาน 3.3V – 5V (เหมาะกับ Arduino โดยตรง) กระแสใช้งาน ประมาณ 20 mA ประเภท Active Buzzer (มีวงจรสร้างเสียงในตัว) ความถี่เสียง ~2 – 3 kHz (เสียงแหลมมาตรฐาน) ระดับเสียง ประมาณ 85 dB @ 10 ซม. รูปแบบขา แบบโมดูล 3 ขา (VCC, GND, I/O) สถานะเสียง ส่งเสียงเมื่อขาอินพุตเป็น HIGH (หรือ LOW ขึ้นอยู่กับรุ่น) การใช้งานกับ Arduino ✅ การต่อสาย (โมดูล A322) VCC (หรือ +) → ต่อกับขา 5V บนบอร์ด Arduino GND (หรือ -) → ต่อกับขา GND บนบอร์ด Arduino I/O (หรือ S) → ต่อกับขาดิจิทัล (Digital Pin) ขาใดก็ได้ เช่น D8 ✅ ตัวอย่างโค้ดใช้งานง่าย โค้ดนี้จะสั่งให้ Buzzer ส่งเสียงดัง 1 วินาที และเงียบ 1 วินาที สลับกันไป // กำหนดขาที่ต่อกับ I/O ของ Buzzer int buzzerPin = 8; void setup() { // ตั้งค่าให้ buzzerPin เป็น OUTPUT pinMode(buzzerPin, OUTPUT); } void loop() { // สั่งเปิดเสียง Buzzer digitalWrite(buzzerPin, HIGH); delay(1000); // เปิดเสียงค้างไว้ 1 วินาที // สั่งปิดเสียง Buzzer digitalWrite(buzzerPin, LOW); delay(1000); // หยุดพัก 1 วินาที } ไอเดียการประยุกต์ใช้งาน โปรเจกต์ รายละเอียดการใช้งาน ระบบแจ้งเตือนภัย ใช้เป็นเสียง Alarm เมื่อเซนเซอร์ควัน, แก๊ส, หรือความร้อนตรวจพบค่่าผิดปกติ เครื่องจับความเคลื่อนไหว ส่งเสียงเตือนเมื่อเซนเซอร์ PIR (Passive Infrared) ตรวจจับการเคลื่อนไหวได้ ระบบเตือนระดับน้ำ ส่งเสียงดังเมื่อเซนเซอร์วัดระดับน้ำตรวจพบว่าน้ำสูงถึงจุดที่กำหนด นาฬิกาปลุก DIY ใช้เป็นตัวกำเนิดเสียงสำหรับปลุกตามเวลาที่ตั้งไว้ เสียงแจ้งสถานะ ใช้ส่งเสียง "ปี๊บ"สั้นๆ เพื่อยืนยันการทำงาน เช่น กดรหัสผ่านถูก, สแกนบัตรสำเร็จ ข้อดีของ Active Buzzer ใช้งานง่ายที่สุด: แค่จ่ายไฟหรือส่งสัญญาณ HIGH ก็มีเสียงดังทันที โค้ดไม่ซับซ้อน: ไม่จำเป็นต้องใช้คำสั่งสร้างความถี่ (PWM) ที่ยุ่งยาก ราคาถูก: เป็นวิธีเพิ่มเสียงแจ้งเตือนให้โปรเจกต์ที่ประหยัดที่สุด อเนกประสงค์: เหมาะกับงานแจ้งเตือนทุกรูปแบบที่ต้องการเสียงความถี่เดียว
25.00 ฿ 12.00 ฿
-
Global Pi Shop เซ็นเซอร์ IR อินฟราเรด สำหรับ Arduino Pi ESP32
IR Infrared Sensor คืออะไร? วิธีใช้งานตรวจจับวัตถุด้วย Arduino IR Sensor หรือ เซ็นเซอร์อินฟราเรด คือเซ็นเซอร์อิเล็กทรอนิกส์ที่นิยมใช้ในการตรวจจับวัตถุในระยะใกล้ หรือใช้ตรวจจับการสะท้อนของแสงอินฟราเรด เป็นอุปกรณ์พื้นฐานที่สำคัญสำหรับโปรเจกต์หุ่นยนต์และระบบอัตโนมัติต่างๆ หลักการทำงานของ IR Sensor การทำงานของเซนเซอร์นั้นตรงไปตรงมาและเข้าใจง่าย: ภาคส่ง (Transmitter): โมดูลจะปล่อยลำแสงอินฟราเรด (ซึ่งตาคนมองไม่เห็น) ออกไปจากตัวส่ง (IR LED) ภาครับ (Receiver): เมื่อลำแสงนั้นไปกระทบกับวัตถุ มันจะสะท้อนกลับมา และถูกตรวจจับโดยตัวรับแสงอินฟราเรด (Photodiode หรือ Phototransistor) การส่งสัญญาณ: เมื่อภาครับตรวจจับแสงสะท้อนได้ วงจรบนโมดูลจะส่งสัญญาณดิจิทัล (0 หรือ 1) ออกมาที่ขา OUT เพื่อแจ้งให้ไมโครคอนโทรลเลอร์ (เช่น Arduino) ทราบว่า "มีวัตถุอยู่ด้านหน้า" สเปคของ IR Sensor Module (สำหรับ Arduino) รายการ รายละเอียด แรงดันใช้งาน 3.3V – 5V (ใช้ไฟจากบอร์ด Arduino ได้โดยตรง) ระยะตรวจจับ ประมาณ 2 – 30 ซม. (ขึ้นอยู่กับสีและความเรียบของผิววัตถุ) เอาต์พุต ดิจิทัล (Digital) ส่งค่า 0 หรือ 1 การปรับความไว สามารถปรับได้ด้วยตัวต้านทานปรับค่าได้ (VR) บนบอร์ด ไฟแสดงสถานะ มี LED แสดงสถานะการทำงาน (มักจะสว่างเมื่อตรวจพบวัตถุ) อินเตอร์เฟส 3 ขา: VCC, GND, OUT การใช้งานกับ Arduino ✅ การต่อสาย VCC → ต่อกับขา 5V บนบอร์ด Arduino GND → ต่อกับขา GND บนบอร์ด Arduino OUT → ต่อกับขาดิจิทัล (Digital Pin) ขาใดก็ได้ เช่น D2 ✅ ตัวอย่างโค้ดใช้งานง่าย โค้ดนี้จะอ่านค่าจาก IR Sensor และเมื่อตรวจพบวัตถุ จะสั่งให้ LED บนบอร์ด (ขา 13) ติดสว่าง พร้อมทั้งแสดงข้อความใน Serial Monitor int irPin = 2; // ขาที่รับสัญญาณจากเซนเซอร์ int ledPin = 13; // LED Build-in บนบอร์ด Arduino void setup() { pinMode(irPin, INPUT); // กำหนดให้ขา irPin เป็น Input pinMode(ledPin, OUTPUT); // กำหนดให้ขา ledPin เป็น Output Serial.begin(9600); // เริ่มการสื่อสารแบบ Serial } void loop() { int objectState = digitalRead(irPin); // อ่านค่าจากเซนเซอร์ // ตรวจสอบสถานะ: เซนเซอร์บางรุ่นจะให้ค่า LOW เมื่อเจอวัตถุ if (objectState == LOW) { digitalWrite(ledPin, HIGH); // เปิด LED Serial.println("พบวัตถุ!"); } else { digitalWrite(ledPin, LOW); // ปิด LED Serial.println("ไม่พบวัตถุ"); } delay(200); // หน่วงเวลาเพื่อลดการอ่านค่าที่เร็วเกินไป } หมายเหตุ: เอาต์พุตของ IR Sensor แต่ละรุ่นอาจแตกต่างกัน บางรุ่นส่งค่า LOW (0) เมื่อเจอวัตถุ แต่บางรุ่นอาจส่งค่า HIGH (1) แนะนำให้ทดลองเพื่อตรวจสอบการทำงานของเซนเซอร์ที่คุณมี ไอเดียการประยุกต์ใช้งาน (Application Ideas) โปรเจกต์ รายละเอียดการใช้งาน หุ่นยนต์เดินตามเส้น ใช้ IR Sensor หลายตัวติดไว้ใต้หุ่นยนต์เพื่อตรวจจับเส้นสีดำบนพื้นสีขาว หุ่นยนต์หลบสิ่งกีดขวาง ติดตั้งไว้ด้านหน้าหุ่นยนต์เพื่อตรวจจับกำแพงหรือสิ่งของแล้วสั่งให้เลี้ยวหลบ เครื่องนับจำนวนสินค้า ติดตั้งไว้ข้างสายพานลำเลียง เพื่อนับจำนวนสินค้าที่เคลื่อนที่ผ่าน ระบบเปิด-ปิดอัตโนมัติ ใช้ตรวจจับมือหรือวัตถุที่เข้ามาใกล้เพื่อสั่งเปิดก๊อกน้ำ หรือถังขยะ สวิตช์ไร้สัมผัส (Touchless Switch) ใช้แทนปุ่มกด เพื่อลดการสัมผัส เหมาะสำหรับยุคปัจจุบัน ข้อดีของ IR Sensor ราคาถูกมาก หาซื้อง่าย ใช้งานง่าย มีเพียง 3 ขา และโค้ดไม่ซับซ้อน ตอบสนองต่อการเปลี่ยนแปลงได้รวดเร็ว ใช้ได้กับไมโครคอนโทรลเลอร์หลากหลาย เช่น Arduino, ESP8266, ESP32
25.00 ฿ 17.00 ฿
-
Global Pi Shop SG90 Servo Motor สำหรับ Arduino Raspberry Pi
SG90 Servo Motor คืออะไร? วิธีควบคุมการหมุนด้วย Arduino SG90 คือ เซอร์โวมอเตอร์ขนาดเล็ก (Micro Servo Motor) ที่ได้รับความนิยมอย่างสูงในงานอดิเรกและโปรเจกต์อิเล็กทรอนิกส์ เนื่องจากมีขนาดเล็ก น้ำหนักเบา ราคาถูก และใช้งานง่าย ความสามารถหลักของมันคือการหมุนไปยังตำแหน่งที่เป็นองศาที่กำหนดไว้ได้อย่างแม่นยำ (เช่น 0°, 45°, 90°, 180°) เหมาะสำหรับงานที่ต้องการควบคุมการเคลื่อนไหวแบบเชิงมุม เช่น การหันกล้อง, การขยับแขนหุ่นยนต์, หรือการควบคุมพวงมาลัยของรถบังคับ ความแตกต่างระหว่าง Servo Motor และ DC Motor Servo Motor (เซอร์โว): หมุนไปยัง "ตำแหน่ง" ที่สั่ง และหยุดค้างตำแหน่งนั้นไว้ได้ (เช่น หมุนไป 90° แล้วหยุด) โดยมีองศาการหมุนที่จำกัด (ส่วนใหญ่ 0°-180°) DC Motor (มอเตอร์ปกติ): หมุน "ต่อเนื่อง" ไปเรื่อยๆ ตราบใดที่ยังจ่ายไฟให้ และไม่สามารถควบคุมตำแหน่งที่แน่นอนได้ สเปคของ SG90 แรงดันไฟฟ้าใช้งาน 4.8V – 6.0V (ใช้ไฟ 5V จาก Arduino ได้เลย) องศาการหมุน ประมาณ 0° – 180° แรงบิด (Torque) ~1.8 kg/cm (ที่ 4.8V) ความเร็วในการหมุน ~0.1 วินาที ต่อ 60 องศา น้ำหนัก ประมาณ 9 กรัม ขนาด ประมาณ 23 × 12 × 29 มม. สายไฟ (3 เส้น) น้ำตาล (GND), แดง (VCC), ส้ม (สัญญาณ PWM) การใช้งานกับ Arduino ✅ การต่อสาย (3 เส้น) สีสายของ SG90 เชื่อมต่อกับ Arduino น้ำตาล (GND) GND แดง (VCC) 5V ส้ม (Signal) ขา PWM (เช่น ~D9) ✅ ตัวอย่างโค้ด Arduino (หมุน 0°, 90°, 180°) โค้ดนี้ใช้ไลบรารี Servo.h ซึ่งเป็นไลบรารีมาตรฐานที่มาพร้อมกับ Arduino IDE ไม่ต้องติดตั้งเพิ่ม #include <Servo.h> // สร้าง object สำหรับควบคุม Servo Servo myServo; void setup() { // กำหนดขาที่ต่อกับสายสัญญาณของ Servo (ต้องเป็นขา PWM) myServo.attach(9); } void loop() { // สั่งให้ Servo หมุนไปที่ตำแหน่ง 0 องศา myServo.write(0); delay(1000); // รอ 1 วินาที // สั่งให้ Servo หมุนไปที่ตำแหน่ง 90 องศา myServo.write(90); delay(1000); // รอ 1 วินาที // สั่งให้ Servo หมุนไปที่ตำแหน่ง 180 องศา myServo.write(180); delay(1000); // รอ 1 วินาที } 💡 การประยุกต์ใช้งาน โปรเจกต์ รายละเอียดการใช้งาน แขนกลหุ่นยนต์ ใช้เป็นข้อต่อสำหรับหมุนข้อศอก, ข้อมือ, หรือฐานของแขนกล ระบบเปิด-ปิดประตูอัตโนมัติ ใช้ Servo หมุนกลอนเพื่อล็อค/ปลดล็อคประตูขนาดเล็ก หุ่นยนต์/รถบังคับ ใช้ควบคุมทิศทางการเลี้ยวของล้อหน้า ระบบติดตามวัตถุ ใช้สำหรับหันกล้องหรือเซนเซอร์อัลตร้าโซนิคไปในทิศทางต่างๆ เครื่องคัดแยก/หยอดเหรียญ ใช้เปิด-ปิดช่องทางเพื่อปล่อยสิ่งของตามคำสั่ง ✅ ข้อดีของ SG90 ราคาถูกมาก น้ำหนักเบา และกินไฟน้อย ควบคุมง่าย ผ่านไลบรารี Servo.h มาตรฐานของ Arduino ควบคุมตำแหน่งได้แม่นยำ เหมาะกับงานที่ต้องการความละเอียดเชิงมุม เป็นที่นิยมสูง หาซื้อง่ายและมีตัวอย่างโปรเจกต์ให้ศึกษามากมาย
55.00 ฿ 40.00 ฿
-
Global Pi Shop L298N Motor Driver Module for arduino
L298N Motor Driver Module คืออะไร? วิธีควบคุมมอเตอร์ด้วย Arduino L298N Motor Driver คือโมดูลขับมอเตอร์ประสิทธิภาพสูงที่นิยมใช้ในโปรเจกต์หุ่นยนต์และระบบควบคุมต่างๆ สามารถใช้ควบคุมความเร็วและทิศทางการหมุนของมอเตอร์กระแสตรง (DC Motor) ได้พร้อมกัน 2 ตัว หรือควบคุม Stepper Motor ได้ 1 ตัว โดยรับคำสั่งจากบอร์ดไมโครคอนโทรลเลอร์ เช่น Arduino หัวใจหลักของโมดูลนี้คือชิป L298N ซึ่งภายในเป็นวงจรแบบ H-Bridge ทำให้สามารถสลับขั้วไฟฟ้าที่จ่ายให้มอเตอร์ได้ ส่งผลให้เราสั่งให้มอเตอร์หมุนเดินหน้าหรือถอยหลังได้อย่างอิสระ สเปคของ L298N ชิปควบคุมหลัก L298N Dual H-Bridge Driver แรงดันสำหรับมอเตอร์ 5V – 35V DC แรงดันลอจิกควบคุม 5V (เหมาะกับ Arduino โดยตรง) กระแสสูงสุดต่อช่อง 2A (ต่อเนื่องแนะนำไม่เกิน 1.5A) จำนวนมอเตอร์ DC Motor 2 ตัว หรือ Stepper Motor 1 ตัว Regulator 5V ในตัว มี (สามารถจ่ายไฟ 5V ให้ Arduino ได้) ช่องอินพุตควบคุม IN1, IN2, IN3, IN4, ENA, ENB ช่องเอาต์พุตมอเตอร์ OUT1, OUT2, OUT3, OUT4 การใช้งานกับ Arduino ✅ การต่อสายควบคุมมอเตอร์ DC 2 ตัว ขาบน L298N หน้าที่ / ต่อกับอะไร ENA ควบคุมความเร็วมอเตอร์ A (ต่อกับขา PWM ของ Arduino เช่น D5) IN1, IN2 ควบคุมทิศทางมอเตอร์ A (ต่อกับขา Digital เช่น D8, D9) ENB ควบคุมความเร็วมอเตอร์ B (ต่อกับขา PWM ของ Arduino เช่น D6) IN3, IN4 ควบคุมทิศทางมอเตอร์ B (ต่อกับขา Digital เช่น D10, D11) OUT1, OUT2 ต่อกับขั้วของมอเตอร์ A OUT3, OUT4 ต่อกับขั้วของมอเตอร์ B 12V (VCC) ต่อกับแหล่งจ่ายไฟสำหรับมอเตอร์ (เช่น แบตเตอรี่ 7V-12V) GND ต่อกับกราวด์ของแหล่งจ่ายไฟมอเตอร์ และต่อร่วมกับ GND ของ Arduino 5V เป็น Output 5V จาก Regulator (เมื่อใส่ Jumper 5V-EN) การใช้งาน Jumper 5V-EN: ใส่ Jumper ไว้ (ค่าเริ่มต้น): เมื่อใช้แหล่งจ่ายไฟมอเตอร์ มากกว่า 7V วงจร Regulator บนบอร์ดจะทำงานและสร้างไฟ 5V ออกมาที่ขา 5V ซึ่งเราสามารถนำไฟนี้ไปเลี้ยงบอร์ด Arduino ได้เลย ถอด Jumper ออก: เมื่อใช้แหล่งจ่ายไฟมอเตอร์ เท่ากับ 5V หรือเมื่อต้องการจ่ายไฟ 5V ให้บอร์ด L298N และ Arduino แยกกัน ✅ ตัวอย่างโค้ดควบคุมมอเตอร์ A โค้ดนี้จะทำให้มอเตอร์ A หมุนไปข้างหน้า 2 วินาที, ถอยหลัง 2 วินาที, และหยุด 2 วินาที วนไปเรื่อยๆ // กำหนดขาสำหรับควบคุมมอเตอร์ A const int ena = 5; // ขา PWM สำหรับควบคุมความเร็ว const int in1 = 8; // ขาควบคุมทิศทาง 1 const int in2 = 9; // ขาควบคุมทิศทาง 2 void setup() { // ตั้งค่าทุกขาเป็น OUTPUT pinMode(ena, OUTPUT); pinMode(in1, OUTPUT); pinMode(in2, OUTPUT); } void loop() { // --- หมุนเดินหน้า --- digitalWrite(in1, HIGH); digitalWrite(in2, LOW); analogWrite(ena, 200); // กำหนดความเร็ว (ค่าระหว่าง 0-255) delay(2000); // --- หมุนถอยหลัง --- digitalWrite(in1, LOW); digitalWrite(in2, HIGH); analogWrite(ena, 150); // ลดความเร็วลง delay(2000); // --- หยุดหมุน --- digitalWrite(in1, LOW); digitalWrite(in2, LOW); // analogWrite(ena, 0); // หรือจะใช้คำสั่งนี้เพื่อหยุดก็ได้ delay(2000); } 🛠️ การประยุกต์ใช้งาน สร้างหุ่นยนต์อัตโนมัติ เช่น หุ่นยนต์หลบหลีกสิ่งกีดขวาง, หุ่นยนต์เดินตามเส้น สร้างรถบังคับวิทยุที่ควบคุมผ่าน Bluetooth หรือ Wi-Fi ระบบควบคุมความเร็วและทิศทางของพัดลม DC โปรเจกต์แขนกลที่ควบคุมด้วย DC Motor หรือ Stepper Motor ระบบเปิด-ปิดประตูหรือหน้าต่างอัตโนมัติ ⭐ ข้อดีของ L298N รองรับแรงดันและกระแสไฟได้สูง เหมาะกับมอเตอร์หลากหลายขนาด ใช้งานง่าย มีไลบรารีและตัวอย่างโค้ดให้ศึกษามากมาย มีวงจร Regulator 5V ในตัว ช่วยลดความซับซ้อนในการจ่ายไฟให้วงจร ราคาถูกและเป็นที่นิยม หาซื้อง่าย
65.00 ฿ 40.00 ฿
-
Global Pi Shop PIR HC-SR501 motion sensor for arduino
PIR Sensor HC-SR501 คืออะไร? วิธีใช้งานกับ Arduino HC-SR501 คือเซนเซอร์ตรวจจับการเคลื่อนไหว (Motion Sensor) ที่นิยมใช้กันอย่างแพร่หลาย ทำงานโดยใช้หลักการของ PIR (Passive Infrared) ซึ่งหมายถึงเป็นเซนเซอร์ที่คอย "รับ" หรือ "ดักจับ" รังสีอินฟราเรดที่แผ่ออกมาจากวัตถุที่มีความร้อน เช่น ร่างกายของมนุษย์หรือสัตว์ โดยตัวมันเองไม่ได้ปล่อยรังสีใดๆ ออกไป เมื่อมีคนหรือสัตว์เคลื่อนที่ผ่านหน้าเซนเซอร์ จะทำให้ปริมาณรังสีอินฟราเรดที่ตกกระทบมีการเปลี่ยนแปลงอย่างรวดเร็ว วงจรภายในจะตรวจจับการเปลี่ยนแปลงนี้และส่งสัญญาณลอจิก "HIGH" ออกมา เพื่อแจ้งให้ไมโครคอนโทรลเลอร์ทราบว่า "มีการเคลื่อนไหวเกิดขึ้น" สเปคของ HC-SR501 แรงดันใช้งาน 4.5V – 20V DC (ใช้กับ 5V ของ Arduino ได้เลย) แรงดันลอจิกเอาต์พุต 3.3V (แต่เพียงพอสำหรับขา Digital ของ Arduino อ่านค่า HIGH ได้) กระแสที่ใช้ ~50 μA (ประหยัดพลังงานมาก เหมาะกับงานแบตเตอรี่) ระยะตรวจจับ ปรับได้ประมาณ 3 ถึง 7 เมตร (ปรับด้วย Potentiometer สีส้ม) มุมตรวจจับ ประมาณ 120 องศา (รูปกรวย) เวลาหน่วง (Delay Time) ปรับได้ประมาณ 0.3 วินาที ถึง 5 นาที (ปรับด้วย Potentiometer สีส้ม) โหมดการทำงาน ปรับได้ 2 โหมด ด้วย Jumper บนบอร์ด การปรับโหมดการทำงาน (สำคัญมาก) บนบอร์ดจะมี Jumper ให้เลือกโหมดได้ 2 แบบ: Repeatable (H): หาก Jumper อยู่ตำแหน่ง H (ค่าเริ่มต้น) เซนเซอร์จะส่งสัญญาณ HIGH "ตลอดเวลา" ที่ยังคงตรวจจับการเคลื่อนไหวได้ และจะเริ่มนับเวลาหน่วงใหม่ทุกครั้งที่เจอการเคลื่อนไหวซ้ำ (เหมาะกับไฟอัตโนมัติ) Non-Repeatable (L): หาก Jumper อยู่ตำแหน่ง L เซนเซอร์จะส่งสัญญาณ HIGH เพียง "ครั้งเดียว" ตามเวลาหน่วงที่ตั้งไว้ แม้จะยังมีการเคลื่อนไหวอยู่ก็ตาม จากนั้นจะส่ง LOW และรอสักครู่ก่อนจะเริ่มตรวจจับใหม่ (เหมาะกับระบบเตือนภัย) การใช้งานกับ Arduino ✅ การต่อสายกับ Arduino ขาบน HC-SR501 ต่อกับขาบน Arduino VCC 5V GND GND OUT ขา Digital ใดก็ได้ (เช่น D2) ✅ ตัวอย่างโค้ด Arduino (ตรวจจับการเคลื่อนไหว) โค้ดนี้จะอ่านค่าจาก PIR Sensor และเมื่อตรวจพบการเคลื่อนไหว จะสั่งให้ LED บนบอร์ด (ขา 13) ติดสว่าง // กำหนดขาที่เชื่อมต่อ const int pirPin = 2; // ขาที่รับสัญญาณจาก OUT ของ PIR Sensor const int ledPin = 13; // ขา LED Build-in บนบอร์ด Arduino void setup() { pinMode(pirPin, INPUT); // กำหนดให้ขา pirPin เป็น Input pinMode(ledPin, OUTPUT); // กำหนดให้ขา ledPin เป็น Output Serial.begin(9600); // เริ่มการสื่อสารแบบ Serial Serial.println("PIR Motion Sensor Test"); } void loop() { // อ่านค่าสถานะจาก PIR Sensor int motionState = digitalRead(pirPin); // ตรวจสอบสถานะ if (motionState == HIGH) { digitalWrite(ledPin, HIGH); // เปิด LED Serial.println("ตรวจพบการเคลื่อนไหว!"); } else { digitalWrite(ledPin, LOW); // ปิด LED Serial.println("สถานะปกติ..."); } // หน่วงเวลาเพื่อลดการแสดงผลที่เร็วเกินไป delay(500); } 💡 การประยุกต์ใช้งาน โปรเจกต์ รายละเอียดการใช้งาน ระบบเตือนภัยบุกรุก ส่งเสียงเตือนหรือแจ้งเตือนผ่าน Line เมื่อมีคนเดินผ่านในบริเวณที่กำหนด ไฟทางเดิน/ห้องน้ำอัตโนมัติ เปิดไฟเมื่อมีคนเดินเข้ามาในพื้นที่ และปิดไฟเมื่อไม่พบการเคลื่อนไหวแล้ว ระบบบ้านอัจฉริยะ ใช้เป็นตัวกระตุ้น (Trigger) เพื่อสั่งงานอุปกรณ์อื่น เช่น เปิดแอร์, เปิดพัดลม เมื่อมีคนอยู่ในห้อง กล้องวงจรปิดอัจฉริยะ สั่งให้ ESP32-CAM หรือกล้องอื่นเริ่มบันทึกภาพเมื่อตรวจพบการเคลื่อนไหว ระบบประหยัดพลังงาน ใช้ปลุกไมโครคอนโทรลเลอร์ (เช่น ESP32) จากโหมด Deep Sleep เมื่อมีคนเข้ามาใกล้ ⭐ ข้อดีของ HC-SR501 ใช้งานง่าย: มีเพียง 3 ขา และให้สัญญาณเป็น Digital ทำให้เขียนโค้ดไม่ซับซ้อน ประหยัดพลังงานมาก: ใช้กระแสไฟน้อยมากในสถานะสแตนด์บาย เหมาะกับงานที่ใช้แบตเตอรี่ ปรับแต่งได้: สามารถปรับระยะการตรวจจับและเวลาหน่วงได้ตามความต้องการของโปรเจกต์ เข้ากันได้ดี: ทำงานได้กับ Arduino, ESP8266, ESP32, และ Raspberry Pi
65.00 ฿ 40.00 ฿
-
Global Pi Shop Micro SD Card Module for arduino
Micro SD Card Module คืออะไร? วิธีบันทึกข้อมูลด้วย Arduino Micro SD Card Module คือโมดูลอิเล็กทรอนิกส์ที่ทำหน้าที่เป็นตัวกลางให้ไมโครคอนโทรลเลอร์ เช่น บอร์ด Arduino สามารถอ่านและเขียนข้อมูลลงบนการ์ด Micro SD ได้โดยตรง ทำให้โปรเจกต์ของเราสามารถจัดเก็บข้อมูลจำนวนมากได้ เช่น ค่าที่อ่านจากเซนเซอร์ต่างๆ, การบันทึกเหตุการณ์ (Event Log), หรือแม้กระทั่งไฟล์รูปภาพและเสียง โมดูลนี้มักจะมีวงจรแปลงระดับแรงดันไฟฟ้า (Logic Level Shifter) ในตัว ทำให้สามารถทำงานกับบอร์ดที่ใช้ไฟ 5V ได้อย่างปลอดภัย และสื่อสารผ่านโปรโตคอลมาตรฐานที่เรียกว่า SPI (Serial Peripheral Interface) สเปคของ Micro SD Card Module แรงดันไฟเลี้ยง 3.3V – 5V (ใช้กับ Arduino ได้โดยตรง) อินเตอร์เฟส SPI (MISO, MOSI, SCK, CS) ความจุที่รองรับ การ์ด Micro SD สูงสุด 32GB (ฟอร์แมตแบบ FAT16 หรือ FAT32) ระดับแรงดันลอจิก มีวงจรแปลงระดับแรงดัน 5V → 3.3V ในตัว ขาเชื่อมต่อ VCC, GND, MISO, MOSI, SCK, CS ประเภทการ์ด รองรับการ์ด Micro SD และ Micro SDHC ขนาดมาตรฐาน การใช้งานกับ Arduino ✅ 1. การต่อสายกับ Arduino Uno ขาบน SD Module ขาบน Arduino Uno หน้าที่ VCC 5V ไฟเลี้ยงโมดูล GND GND กราวด์ MISO Pin 12 Master In Slave Out MOSI Pin 11 Master Out Slave In SCK Pin 13 Serial Clock CS Pin 10 Chip Select (สามารถเปลี่ยนเป็นขาอื่นได้) **สำหรับบอร์ดอื่น เช่น ESP32 หรือ Mega2560, ขา SPI อาจอยู่ตำแหน่งอื่น กรุณาตรวจสอบ Pinout ของบอร์ดที่ใช้งาน ✅ 2. ตัวอย่างโค้ด Arduino (บันทึกข้อความลงการ์ด) โค้ดนี้ใช้ไลบรารี SD.h ที่มาพร้อมกับ Arduino IDE เพื่อเขียนข้อความลงในไฟล์ชื่อ "data.txt" #include <SPI.h> #include <SD.h> // กำหนดขา Chip Select (CS) // หากต่อขา CS ไว้ที่ขาอื่น ให้เปลี่ยนเลขตรงนี้ const int chipSelect = 10; void setup() { // เริ่มการสื่อสารแบบ Serial เพื่อดูสถานะ Serial.begin(9600); Serial.print("Initializing SD card..."); // เริ่มต้นการทำงานของ SD Card if (!SD.begin(chipSelect)) { Serial.println("initialization failed!"); while (1); // วนลูปไม่รู้จบหากหาการ์ดไม่เจอ } Serial.println("initialization done."); // เปิดไฟล์ชื่อ data.txt เพื่อเขียนข้อมูล // FILE_WRITE คือโหมดการเขียน (จะสร้างไฟล์ใหม่หากยังไม่มี) File dataFile = SD.open("data.txt", FILE_WRITE); // ตรวจสอบว่าเปิดไฟล์ได้หรือไม่ if (dataFile) { // เขียนข้อความลงในไฟล์ dataFile.println("Hello, this is a test from Arduino!"); // ปิดไฟล์หลังเขียนเสร็จ dataFile.close(); Serial.println("Data saved successfully."); } else { // หากเปิดไฟล์ไม่ได้ Serial.println("Error opening data.txt"); } } void loop() { // ส่วนนี้จะทำงานวนไปเรื่อยๆ // สามารถนำไปประยุกต์ใช้เพื่อบันทึกค่าจากเซนเซอร์ทุกๆ 5 วินาที เป็นต้น } 📌 การประยุกต์ใช้งาน Data Logger: โปรเจกต์ที่ได้รับความนิยมสูงสุด คือการเก็บข้อมูลจากเซนเซอร์ต่างๆ (เช่น อุณหภูมิ, ความชื้น, GPS) ลงในการ์ดพร้อมประทับเวลา บันทึกเหตุการณ์ (Event Logging): ใช้บันทึกการทำงานของระบบ เช่น เวลาที่ประตูเปิด-ปิด, เวลาที่มีการเคลื่อนไหว, หรือ Error ที่เกิดขึ้น เก็บไฟล์ขนาดใหญ่: ใช้เก็บไฟล์ภาพจากกล้อง (เช่น ESP32-CAM), ไฟล์เสียง (WAV, MP3) สำหรับโปรเจกต์เครื่องเล่นเพลง, หรือไฟล์ตั้งค่าต่างๆ เก็บข้อมูลในรูปแบบมาตรฐาน: บันทึกข้อมูลเป็นไฟล์ CSV หรือ JSON เพื่อนำไปวิเคราะห์ต่อในคอมพิวเตอร์ได้ง่าย ⭐ ข้อดีของโมดูล ง่ายต่อการใช้งานกับ Arduino: มีไลบรารีมาตรฐาน (SD.h) รองรับ ทำให้เขียนโค้ดได้ไม่ซับซ้อน ใช้พลังงานต่ำ: เหมาะสำหรับโปรเจกต์ที่ใช้พลังงานจากแบตเตอรี่ บันทึกข้อมูลได้มหาศาล: เมื่อเทียบกับหน่วยความจำภายในของ Arduino (EEPROM) ที่มีจำกัด เข้าถึงข้อมูลง่าย: สามารถถอด Micro SD Card ไปเสียบกับคอมพิวเตอร์เพื่ออ่านหรือจัดการไฟล์ได้โดยตรง
25.00 ฿ 15.00 ฿
-
Global Pi Shop OLED i2c for Arduino
OLED I2C คืออะไร? วิธีใช้งานกับ Arduino OLED (Organic Light-Emitting Diode) คือเทคโนโลยีจอแสดงผลที่แต่ละพิกเซลสามารถเปล่งแสงได้ด้วยตัวเอง โดยใช้หลอด LED ขนาดเล็กจำนวนมากในการสร้างภาพ ทำให้ไม่ต้องอาศัยไฟส่องสว่างจากด้านหลัง (Backlight) เหมือนจอ LCD ทั่วไป ผลลัพธ์ที่ได้คือภาพที่คมชัด มี Contrast สูง และประหยัดพลังงานกว่า สำหรับงาน DIY กับ Arduino จอ OLED มักจะมาในรูปแบบโมดูลขนาดเล็ก (เช่น 0.96 นิ้ว หรือ 1.3 นิ้ว) และนิยมใช้การสื่อสารแบบ I2C (Inter-Integrated Circuit) ซึ่งใช้สายสัญญาณเพียง 2 เส้น (SDA และ SCL) ทำให้การต่อวงจรนั้นง่ายและประหยัดขาของไมโครคอนโทรลเลอร์อย่างมาก สเปคของ OLED I2C Module (0.96 นิ้ว) ขนาดจอ 0.96 นิ้ว (หรือ 1.3 นิ้ว) ความละเอียด 128x64 พิกเซล (หรือ 128x32) สีที่แสดง โมโนโครม (ส่วนใหญ่เป็นสีขาว, ฟ้า, หรือเหลือง) แรงดันไฟเลี้ยง 3.3V – 5V (ใช้กับ Arduino ได้โดยตรง) โปรโตคอลสื่อสาร I2C (ขา SDA / SCL) ชิปควบคุมจอ SSD1306 (เป็นรุ่นที่นิยมที่สุด) จำนวนขา 4 ขา: VCC, GND, SDA, SCL กระแสที่ใช้ น้อยมาก (ประมาณ 20mA) การใช้งานกับ Arduino การเริ่มต้นใช้งานจอ OLED กับ Arduino มี 3 ขั้นตอนหลักๆ คือ ติดตั้งไลบรารี, ต่อสาย, และอัปโหลดโค้ด ✅ 1. การติดตั้งไลบรารี (Library Installation) ก่อนจะเขียนโค้ดได้ เราต้องติดตั้งไลบรารีที่จำเป็นก่อนผ่านโปรแกรม Arduino IDE: ไปที่เมนู Tools > Manage Libraries... ในช่องค้นหา พิมพ์ "Adafruit SSD1306" แล้วกด Install โปรแกรมจะถามให้ติดตั้งไลบรารีที่เกี่ยวข้อง (Dependencies) คือ "Adafruit GFX Library" ให้กด Install all ✅ 2. การต่อสาย (กับ Arduino Uno/Nano) ขาบนจอ OLED ต่อกับขาบน Arduino VCC 5V GND GND SDA A4 SCL A5 (หมายเหตุ: หากใช้บอร์ดรุ่นอื่น เช่น ESP8266/ESP32 ตำแหน่งของขา SDA/SCL อาจแตกต่างออกไป กรุณาตรวจสอบ Pinout ของบอร์ดนั้นๆ) ✅ 3. ตัวอย่างโค้ดแสดงข้อความ โค้ดนี้จะแสดงคำว่า "Hello!" บนจอ OLED: #include <Wire.h> #include <Adafruit_GFX.h> #include <Adafruit_SSD1306.h> // กำหนดขนาดจอ #define SCREEN_WIDTH 128 #define SCREEN_HEIGHT 64 // สร้าง object ของจอ โดยระบุขนาดและขา I2C // -1 หมายถึงใช้ขา Reset ของ Hardware Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, -1); void setup() { Serial.begin(9600); // เริ่มต้นการทำงานของจอ ที่ I2C address 0x3C if (!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) { Serial.println(F("SSD1306 allocation failed")); for (;;); // วนลูปไม่รู้จบหากหาจอไม่เจอ } // ล้างค่าในหน้าจอ display.clearDisplay(); // ตั้งค่าการแสดงผล display.setTextSize(2); // ขนาดตัวอักษร display.setTextColor(SSD1306_WHITE); // สีตัวอักษร display.setCursor(0, 10); // ตำแหน่งเริ่มต้น (x, y) // พิมพ์ข้อความลงใน buffer display.println("Hello!"); // แสดงผลจาก buffer ออกมาที่หน้าจอจริง display.display(); } void loop() { // ไม่ต้องทำอะไรใน loop เพราะข้อความจะค้างอยู่บนจอ } หมายเหตุ: I2C Address ของจอ OLED ส่วนใหญ่คือ 0x3C แต่บางรุ่นอาจเป็น 0x3D หากโค้ดไม่ทำงาน ให้ลองเปลี่ยนค่าในบรรทัด display.begin(...) ดู การประยุกต์ใช้งาน แสดงค่าที่อ่านได้จากเซนเซอร์ต่างๆ เช่น อุณหภูมิ, ความชื้น, คุณภาพอากาศ (ค่าฝุ่น PM2.5) ใช้เป็นหน้าจอสำหรับสร้างเมนู เพื่อควบคุมการทำงานของโปรเจกต์ แสดงสถานะการทำงานของระบบ เช่น สถานะการเชื่อมต่อ Wi-Fi, IP Address, หรือข้อความแจ้งเตือน สร้างนาฬิกาดิจิทัล, ตัวนับเวลา, หรือสกอร์บอร์ดขนาดเล็ก ข้อดีของ OLED I2C ภาพคมชัดมาก: เนื่องจากแต่ละพิกเซลเปล่งแสงเอง ทำให้มี Contrast สูง ตัวหนังสือคมชัดแม้มองในที่มืด ประหยัดพลังงาน: เพราะไม่ต้องใช้ไฟ Backlight เหมือนจอ LCD พิกเซลสีดำคือการ "ไม่เปล่งแสง" จึงกินไฟน้อยมาก ใช้สายน้อย: การสื่อสารแบบ I2C ใช้เพียง 2 เส้น (SDA, SCL) ทำให้เหลือขา GPIO ของ Arduino ไปใช้งานกับอุปกรณ์อื่นได้อีกเยอะ
80.00 ฿ 60.00 ฿
-
Global Pi Shop ESP32 WI-fI USB Type C board
ESP32 Wi-Fi USB Type-C is The ESP32 is a microcontroller board developed by Espressif Systems, which is an enhanced version of the ESP8266, with more capabilities such as: Built-in Wi-Fi and Bluetooth (BLE) More speed and RAM Better support for multi-threading and complex tasks. You can use it to program through Arduino IDE, MicroPython, or ESP-IDF. Nowadays, newer ESP32 boards come with USB Type-C ports for easy plugging in, easier to use than Micro USB and more durable. ESP32 Specifications (General) list details Main chip ESP32 (various models such as ESP32-WROOM-32, S2, C3, S3) CPU Dual-core Xtensa LX6 @ 240MHz Wi-Fi 802.11 b/g/n 2.4GHz Bluetooth Bluetooth 4.2 + BLE (some models support BT 5.0) Flash memory 4MB or more SRAM ~520KB Working pressure 3.3V (but can receive power via USB 5V, has a built-in regulator) GPIO (digital pin) Up to ~30 legs (depending on model) Analog Input (ADC) Up to 18 channels (12-bit) Analog Output (DAC) 2 channels (8-bit) Communication UART, I2C, SPI, PWM, CAN, IR, etc. USB Type-C Used for uploading programs and supplying power. Support Li-ion battery Some models have built-in charging circuitry (e.g. ESP32-C3 DevKit). Using ESP32 ✅ Suitable for work: IoT (Internet of Things) such as controlling devices via Wi-Fi Smart Home (turn on/off lights, measure temperature, control via mobile phone) Bluetooth communication, such as sending and receiving data with mobile phones ESP-NOW / MQTT / HTTP / WebSocket all work. Connect to Cloud such as Firebase, LINE Notify, Blynk, Telegram, etc. ✅ Popular usage examples: Measure temperature and humidity with DHT11/DHT22 and send it to the web. Control lights/relays via mobile app or web server Connect OLED/LED display wirelessly Use as a Wi-Fi Hotspot or Web Server Make an AI training system (some models have Camera + TensorFlow Lite) Example code to open Wi-Fi Web Server on ESP32: #include <WiFi.h> const char* ssid = "WiFi name"; const char* password = "password"; WiFiServer server(80); void setup() { Serial.begin(115200); WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); } Serial.println("\nConnected successfully: "); Serial.println(WiFi.localIP()); server.begin(); } void loop() { WiFiClient client = server.available(); if (client) { client.println("HTTP/1.1 200 OK"); client.println("Content-Type: text/html"); client.println(); client.println("<h2>Hello from ESP32!</h2>"); delay(1000); } } 📌 Advantages of the USB Type-C model: Easy to insert, no need to worry about turning it inside out. Good current support The cable can be used with new mobile phones.
200.00 ฿ 155.00 ฿
-
Global Pi Shop Magnetic Door Switch MC-38 Magnetic door switch
MC-38 Normally Closed <Normally Closed principle is together, the signal is on, with the wired host use can not be used alone> MC-38 is normally closed: the magnet is close to the conduction, the magnet is away from the circuit breaker. MC-38A is normally open: the magnet is close to the closed (disconnected), the magnet is away from the open circuit Action distance: 18mm ± 6mm Lifetime: 1,000,000 times Switching output: often closed (together with the conductive) Open type, suitable for non-ferrous doors or windows Surface mountin
30.00 ฿ 22.00 ฿
-
Global Pi Shop PS2 XY Joystick Module สำหรับ Arduino Pi ESP32
It is used for directional control, similar to that used in video games, by providing an analog output using two potentiometers to read the position of the joystick.
25.00 ฿ 12.00 ฿
-
Global Pi Shop HC-SR04 Ultrasonic Sensor
Working voltage : DC 5 V Static current : 3 mA Working temperature : 0 ~ + 70 Output way : GPIO Induction Angle : Less than 15 Detection range : 2 cm to 4 m Detecting precision : 0.3 cm + 1% Sensor size : Approx. 45.1 x 20 x 14.5mm
40.00 ฿ 25.00 ฿
-
Global Pi Shop Soil Moisture Sensor Module Soil Moisture Sensor For Arduino
Soil Moisture Sensor is a popular device in Smart Farm projects or automatic watering systems. It works with Arduino easily, is cheap, and is suitable for learning and experimenting. Soil Moisture Sensor Soil moisture sensor is a sensor that detects the moisture level in the soil by measuring the conductivity between the probe legs (similar to measuring the resistance of soil). Dry soil → low conductivity → low value obtained Moist soil → High conductivity → High obtained value Sensors often come with a conversion module that provides both analog and digital pins. Soil Moisture Sensor Specifications list details Supply voltage 3.3V – 5V Current used About 10mA Output signal Analog (A0) and Digital (D0) Detection range General soil moisture levels structure 2 probe legs (ground plug), signal converter board has a threshold adjustment potentiometer The Digital Output will give a HIGH or LOW value according to the threshold we set. Using with Arduino Wiring: Soil Sensor Pin Arduino Pin VCC 5V GND GND A0 (Analog) A0 D0 (Digital) D2 (if used) Analog code example: ------------------------------------------------------------------------------ int sensorPin = A0; void setup() { Serial.begin(9600); } void loop() { int value = analogRead(sensorPin); Serial.print("Soil moisture : "); Serial.println(value); delay(1000); } ---------------------------------------------------------------------------------------------- The value returned by analogRead() will be between 0–1023. High value = dry soil Low value = moist soil Digital code example: ---------------------------------------------------------------------- int sensorDigital = 2; void setup() { pinMode(sensorDigital, INPUT); Serial.begin(9600); } void loop() { int value = digitalRead(sensorDigital); if (value == LOW) { Serial.println("Moist soil"); } else { Serial.println("Dry soil"); } delay(1000); } Additional tips: Do not leave the sensor plugged into the ground for a long time (rust may occur). Use the relay together with a water pump or electric valve to automatically water plants. If you want more accuracy, try using a capacitive soil moisture sensor instead of the regular one (it is more durable and does not rust).
35.00 ฿ 15.00 ฿
-
Global Pi Shop MQ-2 Smoke Gas Sensor For Arduino
The MQ-2 sensor is a very popular gas sensor for use with Arduino and other microcontroller boards, and is ideal for home gas or smoke detection projects, such as gas leak alarms. MQ-2 is The MQ-2 is a gas sensor that can detect many types of gases such as: LPG (cooking gas) Butane gas Propane gas Methane gas (CH₄) Hydrogen gas (H₂) Smoke alcohol Inside the sensor is a heating coil and a SnO₂ (tin dioxide) gas detector, whose resistance changes in the presence of gas in the air, allowing it to be converted to an electrical signal. MQ-2 specifications list details Supply voltage 5V DC Electrical power About 800mW Signal type Analog and digital (depending on module) Warm-up time About 20 seconds to 2 minutes Detectable gases LPG, Methane, Alcohol, Propane, Hydrogen, Smoke Detection range Approximately 300 - 10,000 ppm Number of legs 4 legs (VCC, GND, AOUT, DOUT) AOUT (Analog Out) – Analog signal indicating gas level. DOUT (Digital Out) – Digital signal (1 or 0) when gas level exceeds set point. Using MQ-2 with Arduino Wiring: MQ-2 Pin Arduino Pin VCC 5V GND GND AOUT A0 (Analog) DOUT D2 (Digital) (if used) Some MQ-2 modules have a potentiometer (adjuster) to set the threshold level on DOUT. Example code for use in Analog: int mq2Pin = A0; void setup() { Serial.begin(9600); } void loop() { int gasLevel = analogRead(mq2Pin); Serial.print("gasLevel: "); Serial.println(gasLevel); delay(1000); } Example of code for Digital usage: int mq2Digital = 2; void setup() { pinMode(mq2Digital, INPUT); Serial.begin(9600); } void loop() { int gasDetected = digitalRead(mq2Digital); if (gasDetected == LOW) { Serial.println("gas detect!"); } else { Serial.println("Safe"); } delay(1000); }
100.00 ฿ 25.00 ฿
-
Global Pi Shop DHT11 Humidity and Temperature sensor For Arduino Nodemcu ESP32
The DHT11 sensor is one of the most popular sensors for measuring temperature and humidity, especially in Arduino projects because it is easy to use, cheap, and readily available. What is DHT11? DHT11 is a sensor that measures temperature and relative humidity in the air. This sensor has a capacitive humidity sensor and a thermistor temperature sensor inside, which outputs digital data, making it very easy to connect to Arduino. DHT11 specifications list details Humidity measurement range 20–90% RH (±5% RH) Temperature measurement range 0–50°C (±2°C) Supply voltage 3.3V – 5.5V Output signal Single-wire digital Read Rate 1 time/second (1Hz) Number of legs 3 legs (VCC, GND, Data) or 4 legs (if it is a module but actually uses 3 legs) Using DHT11 with Arduino Wiring: DHT11 Arduino VCC 5V GND GND DATA Digital Pin (eg. D2) Some models have a pull-up resistor (about 10KΩ) already attached to the module. If it is a bare sensor, you may need to connect your own resistance. Arduino code example: Requires DHT library, which can be installed via Library Manager. define DHTPIN 2 // The pin connected to the DHT11's Data #define DHTTYPE DHT11 // The type of sensor DHT dht(DHTPIN, DHTTYPE); void setup() { Serial.begin(9600); dht.begin(); } void loop() { float h = dht.readHumidity(); float t = dht.readTemperature(); if (isnan(h) || isnan(t)) { Serial.println("Read failed!"); return; } Serial.print("Humidity: "); Serial.print(h); Serial.print(" %\t"); Serial.print("Temperature: "); Serial.print(t); Serial.println(" *C"); delay(2000); // wait 2 seconds }
40.00 ฿ 25.00 ฿
-
Global Pi Shop 3-Axis Digital Compass Breakout Board
Specification Simple I2C interface 3.3V - 5.0VDC supply 3.3VDC logic level Low current draw 5 milli-gauss resolution Dimension: 15mm x 13mm
100.00 ฿