สอนใช้ Arduino เช็คสถานะปุ่มกด (Push Button) หรือสวิทช์ (Switch)

ปุ่มกด (Push Button) หรือสวิทช์ (Switch) เป็นอุปกรณ์พื้นฐานที่ใช้กันทั่วไปในหลายๆ โปรเจค เพื่อเชื่อมจุด 2 จุดในวงจรให้ถึงกัน มักใช้เพื่อรับข้อมูลจากผู้ใช้ เช่น เมื่อผู้ใช้กดปุ่มให้อุปกรณ์ที่ต่อพ่วงเริ่มทำงาน หรืออาจจะรับสัญญาณจากกลไกต่างๆ เช่น เมื่อวัตถุเคลื่อนที่มาถึงลิมิตสวิทช์ (Limit Switch) ให้เครื่องจักรหยุดทำงาน เป็นต้น นอกจากนี้ยังสามารถใช้ความรู้นี้ไปประยุกต์ต่อกับเซ็นเซอร์ (Sensor) บางประเภทได้อีกด้วย แต่อย่างไรก็ตามในบทความนี้จะเน้นไปที่การใช้สวิทช์กดแบบธรรมดาครับ

อุปกรณ์

  • x1 บอร์ด Arduino (หรือบอร์ดอื่นๆ ที่คล้ายกัน)
  • x1 สวิทช์ (Switch)
  • x1 ตัวต้านทาน (Resistor) 4.7 – 10K kΩ (ค่าใดก็ได้)
  • x1 สายไฟจั๊มเปอร์
  • x1 บอร์ดทดลอง (Breadboard)

วิธีต่อวงจร

เราจะต่อสวิทช์เพื่อใช้งานกับ Arduino โดยใช้การต่อวงจรที่เรียกว่า Pull-Up Resistor หรือ Pull-Down Resistor ส่วนเหตุผลที่ต้องใช้ 2 วงจรนี้ผมจะเขียนแยกไว้ในอีกบทความนะครับ

โดยความแตกต่างในด้านการใช้งานของทั้ง 2 วงจรนี้ คือ

  • Pull-Up Resistor
    • เมื่อไม่ได้กดปุ่ม ขา Input จะอ่านค่าได้เป็น HIGH
    • กดปุ่ม ขา Input จะอ่านค่าได้เป็น LOW
  • Pull-Down Resistor
    • เมื่อไม่ได้กดปุ่ม ขา Input จะอ่านค่าได้เป็น LOW
    • เมื่อกดปุ่ม ขา Input จะอ่านค่าได้เป็น HIGH

ก็เลือกใช้เอาตามความเหมาะสมนะครับ ว่าอยากได้สถานะตอนกดปุ่มเป็น HIGH หรือ LOW ส่วนการต่อวงจรก็ตามภาพด้านล่างเลยครับ

Internal Pull-Up Resistor

นอกเหนือจากการต่อวงจร 2 แบบที่ได้อธิบายไว้ด้านบนแล้ว บอร์ด Arduino หรือบอร์ดอื่นๆ ที่คล้ายกันบางบอร์ด เขาก็ได้ติดตั้งวงจร Pull-Up Resistor มาให้เราในตัวบอร์ดแล้ว (เรียกว่า Internal Pull-Up Resistor) โดยที่เราไม่ต้องหาตัวต้านทานจากภายนอกมาต่อเพิ่ม มีแค่สวิทช์อย่างเดียวเราก็สามารถต่อวงจรใช้งานได้แล้ว วิธีการวงจรทำได้โดยต่อขาด้านหนึ่งของสวิทช์เข้ากับขา Input ส่วนขาอีกด้านหนึ่งต่อเข้ากับ GND ซึ่งคล้ายกับการต่อ Pull-Up Resistor แบบปกติ แต่ต่างกันตรงที่ Resistor ถูกต่อแบบ Pull-Up มาให้ในตัวบอร์ดเรียบร้อยแล้ว

โค้ดตัวอย่าง

ตัวอย่างนี้จะเป็นโค้ดโปรแกรมอย่างง่ายที่สุด สำหรับอ่านค่าจากขา Input (ในที่นี้เป็นขา 2) และเมื่ออ่านค่าจากขา Input ได้เป็น HIGH ไฟที่ LED ติด แต่ถ้าอ่านค่าได้เป็น LOW ไฟที่ LED ดับ (built-in LED ของ Arduino UNO อยู่ที่ขา 13)

ซึ่งโค้ดนี้ใช้ได้กับทั้งวงจร Pull-Up Resistor และ Pull-Down Resistor แต่ก็ยังคงต่างกันที่ค่าที่อ่านได้จากขา Input และสถานะไฟติด/ดับของไฟที่ LED ดังนี้

  • Pull-Up Resistor
    • เมื่อไม่ได้กดปุ่ม ขา Input จะอ่านค่าได้เป็น HIGH (ไฟที่ LED ติด)
    • กดปุ่ม ขา Input จะอ่านค่าได้เป็น LOW (ไฟที่ LED ดับ)
  • Pull-Down Resistor
    • เมื่อไม่ได้กดปุ่ม ขา Input จะอ่านค่าได้เป็น LOW (ไฟที่ LED ดับ)
    • เมื่อกดปุ่ม ขา Input จะอ่านค่าได้เป็น HIGH (ไฟที่ LED ติด)

หมายเหตุ : หากต้องการใช้งาน Internal Pull-Up Resistor ให้ใช้คำสั่ง pinMode(buttonPin, INPUT_PULLUP) แทนคำสั่ง pinMode(buttonPin, INPUT)

สรุป

การต่อสวิทช์เพื่อใช้งานกับ Arduino หรือไมโครคอนโทรลเลอร์ (MCU) จำเป็นต้องต่อวงจรแบบ Pull-Up Resistor หรือ Pull-Down Resistor เพื่อป้องกันไม่ให้ขา Input อยู่ในสถานะ Floating จนอ่านค่ามาใช้งานไม่ได้ (รายละเอียดของสถานะ Floating ผมจะเขียนไว้ในบทความถัดไปในหัวข้อ “อธิบายวงจร Pull-Up Resistor และ Pull-Down Resistor”)

บอร์ดบางตัวจะติดตั้ง Pull-Up Resistor มาให้แล้วในตัวบอร์ดแล้ว (เรียกว่า Internal Pull-Up Resistor) แปลว่าเราสามารถใช้งานวงจรแบบ Pull-Up Resistor ได้ทันทีโดยที่ไม่ต้องต่อ Resistor เพิ่มจากภายนอก และการเรียกใช้งาน Internal Pull-Up Resistor สามารถทำได้ผ่านโค้ดโปรแกรมโดยใช้คำสั่ง pinMode(inputPin, INPUT_PULLUP) แทนคำสั่งแบบปกติ pinMode(inputPin, INPUT)

บทความนี้สอนการใช้งานสวิทช์อย่างง่ายที่สุด ซึ่งหากคุณนำไปใช้เพื่อการฝึกฝน เรียนรู้ หรือใช้ในโปรเจคเล็กๆ ก็คงไม่มีปัญหาอะไร แต่อย่างไรก็ตามหากต้องการทำไปใช้งานในระดับที่ต้องการความถูกต้องแม่นยำสูงขึ้น คุณอาจจะต้องรู้จักวิธีรับมือกับปัญหาการ bounce (การกระเด้ง) ของสวิทช์ ซึ่งผมจะเขียนอธิบายไว้ในบทความถัดไปในหัวข้อ “รู้จักกับการ Debounce เพื่อลดข้อผิดพลาดขณะอ่านสถานะจากปุ่มกดหรือสวิทช์”

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

แบ่งปันสิ่งนี้บน

สอน Arduino – อธิบายโปรแกรมไฟกระพริบ

บทความนี้ผมจะอธิบายถึงวิธีการเขียนโค้ดโปรแกรม หรือเขียนโปรแกรมเพื่อสั่งงานบอร์ด Arduino สำหรับผู้เริ่มต้น โดยอธิบายผ่านโปรแกรมไฟกระพริบ ซึ่งโค้ดในบทความนี้สามารถเขียนโปรแกรม คอมไพล์ และอัปโหลดโปรแกรมลงบอร์ดด้วย Arduino IDE และหากใครยังไม่เคยใช้โปรแกรม Arduino IDE มาก่อน ให้ตามไปอ่านวิธีใช้งานเบื้องต้นได้ที่บทความ “วิธีใช้งานโปรแกรม Arduino IDE เบื้องต้น” เพื่อความเข้าใจครับ

ฟังก์ชั่นหลักของโค้ดโปรแกรม Arduino

โค้ดโปรแกรมสำหรับ Arduino จะประกอบไปด้วยฟังก์ชั่นหลัก 2 ฟังก์ชั่น คือฟังก์ชั่น setup() และ ฟังก์ชั่น loop()

  • ฟังก์ชั่น setup() จะเริ่มทำงานเป็นอันดับแรกทันทีที่ Arduino เริ่มทำงาน และคำสั่งที่ถูกเขียนลงไปในนี้ จะทำงานเพียงครั้งเดียวเท่านั้น
  • ฟังก์ชั่น loop() จะเริ่มทำงานทันทีเมื่อฟังก์ชั่น setup() ทำงานเสร็จ และคำสั่งที่ถูกเขียนลงไปในนี้ จะทำงานตั้งแต่คำสั่งแรก ไล่ไปจนถึงคำสั่งสุดท้าย แล้วกลับมาทำงานที่คำสั่งแรก ไล่ไปจนถึงคำสั่งสุดท้าย วนซ้ำแบบนี้ไปเรื่อยๆ ตลอดการทำงานของ Arduino

เริ่มเขียนโปรแกรมที่ฟังก์ชั่น setup

ฟังก์ชั่น setup() จะทำงานเพียงแค่ครั้งเดียวทันทีที่ Arduino เริ่มทำงาน ดังนั้นโค้ดที่จะถูกเขียนลงไปในฟังก์ชั่นนี้ มักจะเป็นโค้ดสำหรับกำหนดโหมด Input/Output ให้กับ pin โดยใช้ฟังก์ชั่น pinMode() หรือมักจะเป็นโค้ดที่กำหนดค่าเริ่มต้นเพื่อใช้งานไลบรารี่ต่างๆ เช่น Serial.begin(), WiFi.begin() หรือ Servo.attach() เป็นต้น ซึ่งเป็นโค้ดที่ไม่มีความจำเป็นต้องทำงานซ้ำ

ตัวอย่างเช่น โค้ดด้านล่างนี้จะกำหนด pin หมายเลข 13 ให้อยู่ในโหมด Output ทันทีที่ Arduino เริ่มทำงาน และ pin หมายเลข 13 จะอยู่ในโหมด Output ไปตลอดการทำงานของ Arduino

เขียนโปรแกรมกันต่อที่ฟังก์ชั่น loop

ฟังก์ชั่น loop() จะทำงานทันทีที่ฟังก์ชั่น setup() ทำงานจบ และโค้ดในฟังก์ชั่น loop() ก็จะถูกทำงานซ้ำไปเรื่อยๆ ตลอดการทำงานของ Arduino ซึ่งโค้ดโปรแกรมส่วนใหญ่ ที่มีผลต่อการทำงานของ Arduino จะถูกเขียนลงไปในฟังก์ชั่น loop() นี้ เช่นโค้ดสำหรับรับข้อมูลจากปุ่มกด, สั่งเปิดปิดไฟ, แสดงผลออกจาก LCD หรือแม้กระทั่งการอ่านข้อมูลจากเซ็นเซอร์ต่างๆ ก็ตาม

ตัวอย่างโค้ดไฟกระพริบสำหรับ Arduino UNO

อธิบายการทำงานของโปรแกรม

โปรแกรมจะเริ่มทำงานที่ฟังก์ชั่น setup() ซึ่งมีคำสั่งเดียวคือ pinMode(13, OUTPUT) นั่นคือกำหนด pin หมายเลข 13 ให้อยู่ในโหมด Output

เมื่อทำเสร็จแล้วก็จบการทำงานที่ฟังก์ชั่น setup() และเริ่มทำงานต่อที่ฟังก์ชั่น loop() ทันที และไล่ทำไปทีละคำสั่ง ตั้งแต่คำสั่งแรก ไล่ทำไปจนคำสั่งสุดท้าย และเมื่อทำคำสั่งสุดท้ายจบก็จะกลับไปทำงานคำสั่งแรกใหม่ เช่น

  1. digitalWrite(13, HIGH)       built-in LED ไฟติด
  2. delay(1000)                         หยุดการทำงาน 1000 มิลลิวินาที (1 วินาที)
  3. digitalWrite(13, LOW)        built-in LED ไฟดับ
  4. delay(1000)                         หยุดการทำงาน 1000 มิลลิวินาที (1 วินาที)
  5. digitalWrite(13, HIGH)       built-in LED ไฟติด
  6. delay(1000)                         หยุดการทำงาน 1000 มิลลิวินาที (1 วินาที)
  7. digitalWrite(13, LOW)        built-in LED ไฟดับ
  8. delay(1000)                         หยุดการทำงาน 1000 มิลลิวินาที (1 วินาที)
  9. digitalWrite(13, HIGH)       built-in LED ไฟติด
  10. ….
  11. ….

ผลการทำงานก็คือ built-in LED จะไฟติด และติดค้างไว้นาน 1 วินาที จากนั้นก็จะไฟดับ และดับค้างไว้นาน 1 วินาที ซ้ำแบบนี้ไปเรื่อยๆ จนเกิดเป็นไฟกระพริบแบบที่เห็นครับ

หมายเหตุ : ในบอร์ด Arduino UNO pin หมายเลข 13 จะถูกพ่วงกับ built-in LED (LED ที่ติดมากับบอร์ด) ดังนั้นหากเรากำหนด pin หมายเลข 13 ให้เป็น HIGH แปลว่าไฟที่ built-in LED ก็จะติด ส่วนในบอร์ดอื่นๆ built-in LED อาจพ่วงอยู่กับ pin หมายเลขอื่นๆ ได้เช่นกันครับ ตรงนี้ก็ต้องอ่านคู่มือบอร์ดนั้นๆ กันเอาเอง

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

แบ่งปันสิ่งนี้บน

วิธีปิดเสียงแอป Facebook สำหรับ Android

วันนี้ผมมีวิธีปิดเสียงแอป Facebook บนมือถือ Android มาฝากกันครับ อาจจะเพื่อเพิ่มความเป็นส่วนตัวขณะใช้งาน หรืออาจจะแค่อยากใช้แอปแบบเงียบๆ อันนี้ก็แล้วแต่เหตุผลของแต่ละคนครับ

ส่วนเสียงในแอปที่สามารถปิดได้ ได้แก่ เสียง Like, เสียง Comment, เสียงแจ้งเตือน และเสียงวิดีโอในฟีดข่าวที่ถูกเล่นโดยอัตโนมัติครับ

วิธีเข้าไปที่หน้าการตั้งค่า

  • แตะที่ (เพิ่มเติม) > การตั้งค่าและความเป็นส่วนตัว > การตั้งค่า

วิธีปิดเสียงแจ้งเตือน Facebook

  • ไปที่หน้า “การตั้งค่า”
  • แตะที่ การตั้งค่าการแจ้งเตือน > พุช > เสียง เพื่อปิดเสียงแจ้งเตือน

วิธีปิดเสียง Like, Comment และเสียงของวิดีโอในฟีดข่าว

  • ไปที่หน้า “การตั้งค่า”
  • แตะที่ “สื่อและผู้ติดต่อ”
  • แตะที่ “เสียงในแอพ” เพื่อปิดเสียง Like, Comment
  • แตะที่ “วิดีโอในฟีดข่าวจะเริ่มเล่นโดยมีเสียง” เพื่อปิดเสียงวีดีโอที่เล่นเองอัตโนมัติ

แบ่งปันสิ่งนี้บน

วิธีใช้งานโปรแกรม Arduino IDE เบื้องต้น

Arduino IDE คือโปรแกรมสำหรับใช้เขียนโปรแกรม, คอมไพล์ และอัปโหลดโปรแกรมลงบอร์ด Arduino หรือบอร์ดตัวอื่นๆ ที่คล้ายกัน เช่น Generic ESP8266 modules, NodeMCU หรือ WeMos D1 เป็นต้น

แนวคิดการใช้งานโปรแกรม Arduino IDE

  1. เขียนโปรแกรมด้วยภาษา C/C++ สำหรับ Arduino
  2. คอมไพล์หรือแปลโปรแกรมภาษา C/C++ ให้เป็นภาษาสำหรับไมโครคอนโทรลเลอร์และบันทึกเป็น Intel Hex File
  3. อัปโหลด Intel Hex File ลงบนไมโครคอนโทรลเลอร์ซึ่งอยู่บนบอร์ด Arduino ผ่านสาย USB หรือผ่าน Programmer

วิธีใช้งานโปรแกรม Arduino IDE อย่างง่าย

1. เปิดโปรแกรม Arduino IDE ขึ้นมา

2. สร้าง Sketch ใหม่ โดยคลิ๊กที่เมนู File > New

** หมายเหตุ : โปรแกรมที่ถูกเขียนด้วย Arduino IDE จะถูกเรียกว่า Sketch ครับ **

3. เขียนโปรแกรมลงไปตรงพื้นที่สีขาวๆ ครับ ซึ่งการเขียนโปรแกรมสำหรับ Arduino จะประกอบไปด้วยฟังก์ชั่น setup และ ฟังก์ชั่น loop ซึ่งมีความหมายดังนี้

  • ฟังก์ชั่น setup จะเริ่มทำงานเป็นอันดับแรกเมื่อ Arduino เริ่มทำงาน และคำสั่งที่ถูกเขียนลงไปในนี้ จะทำงานเพียงครั้งเดียวเท่านั้น
  • ฟังก์ชั่น loop จะเริ่มทำงานทันทีเมื่อฟังก์ชั่น setup ทำงานเสร็จ และคำสั่งที่ถูกเขียนลงไปในนี้ จะทำงานตั้งแต่คำสั่งแรก ไล่ไปจนถึงคำสั่งสุดท้าย แล้วกลับมาที่คำสั่งแรก ไล่ไปจนถึงคำสั่งสุดท้าย วนซ้ำแบบนี้ไปเรื่อยๆ ตลอดการทำงานของ Arduino

4. เมื่อเขียนโปรแกรมเสร็จแล้วให้บันทึกเก็บไว้โดยคลิ๊กที่เมนู File > Save จากนั้นจะมีหน้าต่างขึ้นมาให้เราเลือกว่าจะบันทึกไว้ที่ไหน และจะตั้งชื่อ Sketch ว่ายังไง ตรงนี้ก็แล้วแต่เราจะตั้งชื่อครับ

เมื่อทำถูกต้องที่ Tittle bar จะแสดงชื่อ Sketch ตามที่เราได้ตั้งชื่อไปตอนบันทึกครับ

5. ต่อบอร์ด Arduino เข้ากับคอมพิวเตอร์ผ่านสาย USB (แนะนำให้ต่อครั้งละ 1 บอร์ดป้องกันการสับสน)

6. ตั้งค่าเพื่อบอก Arduino IDE ว่าเราจะอัปโหลดโปรแกรมให้กับบอร์ดรุ่นอะไร และอัปโหลดผ่าน Port ไหน

6.1. คลิ๊กที่เมนู Tools > Board เลือกบอร์ด Arduino ให้ตรงกับรุ่นที่เราต่อใช้งานอยู่

6.2. คลิ๊กที่เมนู Tools > Port ตรงนี้ถ้าเราต่อไว้แค่บอร์ดเดียว, ติดตั้ง Driver ไว้แล้ว และบอร์ดไม่ได้เสีย จะมีรายการขึ้นมาให้เลือกแค่รายการเดียวครับ (Winows จะแสดงเป็น COMx ส่วน Linux จะแสดงเป็น /dev/ttyUSBx หรือ /dev/ttyACMx)

7. คลิ๊กปุ่มอัปโหลด หรือจะคลิ๊กที่เมนู Sketch > Upload ก็ได้ (ปุ่มนี้จะคอมไพล์ + อัปโหลดในขั้นตอนเดียว)

หากเขียนโปรแกรมถูกต้อง และไม่ได้มีปัญหาระหว่างการอัปโหลด จะมีข้อความขึ้นว่า Done uploading และจะมีข้อความรายงานเป็นข้อความสีขาวๆ

หรือหากเขียนโปรแกรมผิดจะแสดงเป็นข้อความสีส้มๆ ที่เมื่อแปลข้อความแล้วก็พอจะสามารถเดาได้ว่าเราเขียนโปรแกรมผิดตรงจุดไหน เช่น เคสนี้ “expected ‘;’ before ‘}’ token” แปลว่า ลืมพิมพ์ ; ก่อนเครื่องหมายปีกกา } เป็นต้นครับ

หรือหากมีปัญหาระหว่างการอัปโหลด ก็จะมีข้อความขึ้นว่า Problem uploading to board.  ซึ่งปัญหาอาจเกิดขึ้นได้จากหลายปัจจัย แนะนำให้เข้าไปศึกษาวิธีแก้ปัญหาได้ที่ https://www.arduino.cc/en/Guide/Troubleshooting#upload

นี่ก็เป็นวิธีการใช้งาน Arduino IDE แบบคร่าวๆ ครับ หวังว่าจะเป็นประโยชน์กับผู้อ่านทุกท่านนะครับ

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

 

แบ่งปันสิ่งนี้บน

วิธีทำให้ AliExpress.com แสดงราคาสินค้าเป็นเงินบาทบน Chrome และ Firefox

ใครที่ชอบสั่งซื้อสินค้าผ่านเว็บไซต์ AliExpress.com และกำลังมีปัญหาว่าไม่สามารถตั้งค่าให้แสดงราคาสินค้าเป็นเงินบาทได้ ซึ่งผมเองก็มีปัญหาตรงนี้เหมือนกันครับ (เวลาช้อปปิ้งลำบากที่ต้องมาคำนวณเองมากๆ) และผมก็ได้ติดต่อกับเจ้าหน้าที่ของ AliExpress.com ผ่านทาง Contact Customer Service และได้รับการยืนยันแล้วว่าเว็บไซต์ AliExpress.com ไม่สามารถตั้งให้แสดงราคาสินค้าเงินบาทได้ พร้อมทั้งจะเก็บประวัติไว้ว่ามีผู้ใช้ร้องขอให้มีความสามารถแสดงราคาสินค้าเป็นเงินบาท และอาจจะเพิ่มความสามารถนี้ให้ในอนาคต (ส่วน app บน Android สามารถแสดงเงินบาทได้อยู่แล้ว) ซึ่งนับตั้งแต่ผมติดต่อไปก็น่าจะเกิน 1 เดือนแล้ว แต่ก็ยังไม่มีความสามารถนี้เพิ่มเข้ามาในเว็บไซต์เลย

ผมจึงได้ตัดสินใจพัฒนาส่วนขยาย Chrome และ Firefox สำหรับแสดงราคาสินค้าบนเว็บไซต์ AliExpress.com ให้เป็นเงินบาท ขึ้นมาใช้แก้ขัดไปก่อน ย้ำนะครับว่าแก้ขัด จนว่าเว็บไซต์ AliExpress.com จะมีความสามารถในการแสดงราคาสินค้าเป็นเงินบาทอย่างเป็นทางการ

คุณสมบัติทั่วไปของส่วนขยาย

  • แก้ไขการแสดงผลราคาสินค้าบนเว็บไซต์ AliExpress.com จาก US $xx.xx เป็น xx.xx บาท โดยคำนวณจากอัตราแลกเปลี่ยน
  • รองรับการแสดงผลเงินบาทแบบค่อนข้างสมบูรณ์ที่ URL ต่อไปนี้เท่านั้น
    • aliexpress.com (หน้าหลัก)
    • aliexpress.com/category (หน้าสินค้าตามหมวดหมู่)
    • aliexpress.com/wholesale (หน้าแสดงผลจากการค้นหา)
    • aliexpress.com/item (หน้าแสดงสินค้าแบบเดี่ยวๆ)
    • shoppingcart.aliexpress.com/shopcart/ (หน้าตะกร้าสินค้า)
    • my.aliexpress.com/wishlist (หน้าสินค้าที่ถูกเพิ่มลงใน Wish List)
    • flashdeals.aliexpress.com (หน้า Flash Deals)
    • aliexpress.com/store (หน้าร้านค้า โดยหน้าหลักจะแปลงเฉพาะหน้าที่เป็นรูปแบบมาตรฐาน)
    • sale.aliexpress.com (หน้าสินค้าลดราคา)
  • ที่หน้าชำระเงิน shoppingcart.aliexpress.com/order แสดงผลเป็น US $ ตามปกติ เพื่อป้องกันการคำนวณผิด และให้โอกาศผู้ใช้งานได้ตรวจสอบราคาด้วยตัวเองอีกครั้ง
  • สามารถอัปเดตอัตราแลกเปลี่ยนให้เป็นปัจจุบันได้

ปัญหาและแนวทางแก้ไข

  • หากพบปัญหาสามารถแจ้งเข้ามาได้ทาง Facebook Messenger

วิธีติดตั้ง

สำหรับ Chrome

  1. เปิดเว็บไซต์นี้ด้วย Chrome https://chrome.google.com/webstore/detail/replace-usd-with-thb-for/pckknoefffkhpihknpaabgpcdjbjlcep?hl=en
  2. คลิกปุ่ม Add to Chrome

สำหรับ Firefox

  1. เปิดเว็บไซต์นี้ด้วย Firefox https://addons.mozilla.org/en-US/firefox/addon/usd-to-thb-for-aliexpress/
  2. คลิกปุ่ม Add to Firefox

วิธีถอนการติดตั้ง

สำหรับ Chrome

  1. พิมพ์เข้าเว็บไซต์นี้ด้วย Chrome chrome://extensions/
  2. คลิกปุ่ม Remove ที่ Replace USD with THB for AliExpress.com

สำหรับ Firefox

  1. พิมพ์เข้าเว็บไซต์นี้ด้วย Firefox about:addons
  2. คลิกปุ่ม Remove ที่ Replace USD with THB for AliExpress.com

วิธีปิดการใช้งานชั่วคราว

สำหรับ Chrome

  1. พิมพ์เข้าเว็บไซต์นี้ด้วย Chrome chrome://extensions/
  2. คลิกปุ่มสีฟ้าให้กลายเป็นสีเทาที่ Replace USD with THB for AliExpress.com

สำหรับ Firefox

  1. พิมพ์เข้าเว็บไซต์นี้ด้วย Firefox about:addons
  2. คลิกปุ่ม Disable ที่ Replace USD with THB for AliExpress.com

วิธีเปิดใช้งาน หลังจากปิดใช้งานชั่วคราว

สำหรับ Chrome

  1. พิมพ์เข้าเว็บไซต์นี้ด้วย Chrome chrome://extensions/
  2. คลิกปุ่มสีเทาให้กลายเป็นสีฟ้าที่ Replace USD with THB for AliExpress.com

สำหรับ Firefox

  1. พิมพ์เข้าเว็บไซต์นี้ด้วย Firefox about:addons
  2. คลิกปุ่ม Enable ที่ Replace USD with THB for AliExpress.com

วิธีอัปเดตอัตราแลกเปลี่ยน

สำหรับ Chrome

  1. คลิกขวาตรงไอคอน Replace USD with THB for AliExpress.com ที่ toolbar ขวามือบน
  2. คลิกเมนู Options
  3. คลิกปุ่ม Update

สำหรับ Firefox

  1. พิมพ์เข้าเว็บไซต์นี้ด้วย Firefox about:addons
  2. Preferences ที่ Replace USD with THB for AliExpress.com
  3. คลิกปุ่ม Update

แบ่งปันสิ่งนี้บน

อธิบายคำสั่ง chmod บน Linux

chmod เป็นคำสั่งบน Linux ที่ใช้สำหรับกำหนดสิทธิ์ read, write หรือ execute ให้กับ file หรือ directory ว่าจะให้มีสิทธิ์ใช้งานแบบไหน และใช้งานโดยใครได้บ้าง

หลายๆ ท่านอาจจะเคยเจอคำสั่ง chmod 644, chmod 755 หรือ chmod 777 อะไรทำนองนี้ วันนี้เรามาดูกันครับ ว่ามันมีความหมายอย่างไร

เริ่มกันที่คำสั่ง ls -l

ก่อนจะพูดถึงคำสั่งที่ใช้สำหรับกำหนดสิทธิ์ เรามาดูกันที่คำสั่งสำหรับแสดงสิทธิ์กันก่อนครับ โดยคำสั่งที่เราจะใช้คือ คำสั่ง ls -l ที่จะช่วยให้คุณทราบว่า file หรือ directory นั้นใครเป็นเจ้าของ และ file หรือ directory นั้นถูกกำหนดสิทธิ์ไว้อย่างไร โดยผลลัพธ์ของคำสั่ง ls -l จะหน้าตาเป็นแบบนี้ครับ

-rwxrwx— 1 user group 1293 Jun 3 20:34 file_name

drw-rw-rw- 1 user group 4096 Jun 3 20:34 dir_name

ซึ่งผลลัพธ์ที่ว่านี้จะบอกเราว่ารายการไหนเป็น file หรือ directory, มีสิทธิ์ read, write หรือ execute โดย user และ group ไหนบ้าง, file มีขนาดเท่าไหร่, ถูกแก้ไขล่าสุดตอนไหน, file หรือ directory นั้นมีชื่อว่าอะไร ซึ่งผลลัพธ์แต่ละ column มีความหมายดังนี้

column1 บอกว่าเป็น file (-) หรือ directory (d) พร้อมทั้งบอกสิทธิ์การ read, write และ execute

column2 แสดงจำนวน hard link ของไฟล์ หรือ แสดงจำนวน subdirectory

column3 แสดงชื่อ user ที่เป็นเจ้าของ file หรือ directory

column4 แสดงชื่อ group ที่เป็นเจ้าของ file หรือ directory

column5 แสดงขนาดของ file มีหน่วยเป็น byte หรือหากเป็น directory จะแสดงเป็น 4096

column6 แสดงวันที่ และเวลาที่แก้ไขล่าสุด

column7 แสดงชื่อของ file หรือ directory

ซึ่งในบทความนี้เราจะให้ความสนใจไปที่ column 1, 3 และ 4 ครับ

อธิบาย Column1 -rwxrwxrwx

-rwxrwxrwx จะแบ่งออกได้เป็น 4 ส่วนดังนี้

– | rwx | rwx | rwx

ส่วนที่1 บอกกว่าเป็น file หรือ directory โดยจะแสดง เมื่อเป็น file และจะแสดง d เมื่อเป็น directory

ส่วนที่2 บอกสิทธิ์การ read, write และ execute ของ user ที่เป็นเจ้าของ file/directory

ส่วนที่3 บอกสิทธิ์การ read, write และ execute ของ group ที่เป็นเจ้าของ file/directory

ส่วนที่3 บอกสิทธิ์การ read, write และ execute ของ other หรือ user อื่นๆ ที่ไม่ใช่เจ้าของ file/directory และไม่ได้อยู่ใน group

ตัวอย่าง และความหมาย

-rwx—— แบ่งเป็น -|rwx|—|—

  • – = เป็น file
  • rwx = user สามารถ read write execute ได้
  • — = group ไม่สามารถ read write execute ได้
  • — = other ไม่สามารถ read write execute ได้

-rw-rw—- แบ่งเป็น -|rw-|rw-|—

  • – = เป็น file
  • rw- = user สามารถ read write ได้, แต่ไม่สามารถ execute
  • rw- = group สามารถ read write ได้, แต่ไม่สามารถ execute
  • — = other ไม่สามารถ read write execute ได้

-rwxrwxr-x แบ่งเป็น -|rwx|rwx|r-x

  • – = เป็น file
  • rwx = user สามารถ read write execute ได้
  • rwx = group สามารถ read write execute ได้
  • r-x = other สามารถ read execute ได้, แต่ไม่สามารถ write

drw-rw-r– แบ่งเป็น d|rw-|rw-|r–

  • d = เป็น directory
  • rw- = user สามารถ read write ได้, แต่ไม่สามารถ execute
  • rw- = group สามารถ read write ได้, แต่ไม่สามารถ execute
  • r– = other สามารถ read ได้, แต่ไม่สามารถ write และ execute

drwxrwxr-x แบ่งเป็น d|rwx|rwx|r-x

  • d = เป็น directory
  • rwx = user สามารถ read write execute ได้
  • rwx = group สามารถ read write execute ได้
  • r-x = other สามารถ read execute ได้, แต่ไม่สามารถ write

ความเกี่ยวข้องของ rwxrwxrwx และ ตัวเลข 644 755 777 ฯลฯ

หลังจากที่เราเข้าใจกันไปแล้วว่า rwxrwxrwx เราสามารถแบ่งได้เป็นสิทธ์ของ user, group และ other ซึ่งนับได้ 3 กลุ่ม ซึ่งเท่ากับจำนวนตัวเลขของเราที่มี 3 ตัวพอดีครับ นั่นคือตัวเลขแต่ละตัว บ่งบอกสิทธิ์ของแต่ละกลุ่มนั่นเอง

วิธีการแปลง rwxrwxrwx เป็นตัวเลข

เราจะแทนค่า rwx ด้วยตัวเลขดังนี้ r=4, w=2, x=1, -=0 เช่น

rwx——

=[rwx][—][—]

=[4+2+1][0+0+0][0+0+0]

=700

-rw-rw—-

=[rw-][rw-][—]

=[4+2+0][4+2+0][0+0+0]

=660

rwxrwxr-x

=[rwx][rwx][r-x]

=[4+2+1][4+2+1][4+0+1]

=775

rw-rw-r–

=[rw-][rw-][r–]

=[4+2+0][4+2+0][4+0+0]

=664

การใช้คำสั่ง chmod

หนึ่งในรูปแบบการใช้คำสั่ง chmod ที่เราคุ้นเคยกัน ได้แก่ การใช้คำสั่ง chmod ที่ตามด้วยตัวเลข 3 ตัว เช่น

หรือใช้สัญลักษณ์ user, group, other, read, write, execute ดังนี้ก็สะดวกดีครับ

ตัวอย่าง

ตัวอย่างที่ 1. กำหนดให้ทุก user สามารถ read, write, execute ได้

หรือ

ตัวอย่างที่ 2. กำหนดให้ user ที่เป็นเจ้าของ และ user ที่อยู่ใน group สามารถ read, write, execute ได้ ส่วน user อื่นๆ กำหนดให้ไม่มีสิทธิ์ใดๆ

หรือ

ตัวอย่างที่ 3. กำหนดให้ user ที่เป็นเจ้าของสามารถ read, write, execute ได้ ส่วน user ใน group สามารถ read, execute ได้ ส่วน user อื่นๆ กำหนดให้ไม่มีสิทธิ์ใดๆ

หรือ

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

แบ่งปันสิ่งนี้บน

วิธีตั้งค่า Arduino IDE ให้รองรับ ESP8266 และ NodeMCU

เมื่อเราติดตั้ง Arduino IDE เสร็จใหม่ๆ ตัวโปรแกรมจะยังไม่รองรับ ESP8266 และ NodeMCU

เราจำเป็นต้องติดตั้งแพคเกจ esp8266 ผ่าน Boards Manager เสียก่อน โดยมีขั้นตอนการติดตั้งง่ายๆ เพียงไม่กี่ขั้นตอนเท่านั้นครับ

หมายเหตุ: การติดตั้งแพคเกจ esp8266 จะทำให้ Arduino IDE รู้จักกับ Generic ESP8266 และบอร์ดอื่นๆ ที่พัฒนามาจาก ESP8266 ด้วย เช่น NodeMCU, ESPresso Lite, SparkFun ESP8266 Thing, WeMos D1, ESPino และอื่นๆ

ขั้นตอนการติดตั้งแพคเกจ esp8266 ให้ Arduino IDE

1. ที่โปรแกรม Arduino IDE ไปที่เมนู File > Preferences

2. ที่หน้าต่าง Preferences คลิ๊กที่ไอคอนด้านขวามือของ Additional Boards Manager URLs:

3. ที่หน้าต่าง Additional Boards Manager URLs เพิ่ม URL ด้านล่างนี้ลงไป (ถ้ามี URL อื่นอยู่แล้ว ให้เพิ่ม URL ไปที่บรรทัดใหม่ครับ) จากนั้นกดปุ่ม OK

4. ที่หน้าต่าง Preferences กดปุ่ม OK อีกครั้งเพื่อบันทึกการตั้งค่า

5. ที่โปรแกรม Arduino IDE ไปที่เมนู Tools > Board > Boards Manager…

6. ที่หน้าต่าง Boards Manager ตรงช่องค้นหาให้พิมพ์คำค้นหาว่า esp8266 และเมื่อเจอผลลัพธ์ให้คลิ๊กเลือกที่ esp8266 by ESP8266 Community จากนั้นคลิ๊กปุ่ม Install และรอจนมีข้อความขึ้นว่า INSTALLED จากให้กดปุ่ม Close เป็นอันเสร็จสิ้นขั้นตอนการติดตั้งครับ

เมื่อคุณติดตั้งเสร็จแล้ว คุณสามารถตรวจเช็คดูว่า Arduino IDE ของคุณรองรับ ESP8266 แล้วหรือยัง โดยคลิ๊กที่เมนู Tools > Board และลองเลื่อนดูว่ามี Generic ESP8266 และบอร์ดอื่นๆ ที่พัฒนามาจาก ESP8266 ปรากฏขึ้นมาแล้วหรือยังครับ

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

แบ่งปันสิ่งนี้บน

วิธีดาวน์โหลดและติดตั้ง Arduino IDE บน Ubuntu

ขั้นตอนการดาวน์โหลด

1. เข้าไปยังเว็บไซต์หลักของ Arduino เพื่อดาวน์โหลด Arduino IDE โดยคลิกที่นี่ https://www.arduino.cc/en/main/software

2. เมื่อเข้าเว็บไซต์มาแล้ว ให้คลิกดาวน์โหลดที่ Linux 32 bits หรือ Linux 64 bits อย่างใดอย่างหนึ่ง (ขึ้นอยู่กับเวอร์ชั่น Ubuntu ของคุณเป็นแบบ 32 bits หรือ 64 bits)

3.หลังจากที่คุณคลิกดาวน์โหลดแล้ว หน้าเว็บไซต์จะเปลี่ยนไปเป็นหน้า Donate (บริจาค) และจะมี 2 ปุ่มให้คุณเลือกคลิกครับ

  1. ปุ่ม JUST DOWNLOAD คือ ดาวน์โหลดอย่างเดียว
  2. ปุ่ม CONTRIBUTE & DOWNLOAD คือ บริจาคเงินจากนั้นค่อยดาวน์โหลด

ซึ่งตรงนี้คุณจะเลือกคลิกที่ JUST DOWNLOAD หรือ CONTRIBUTE & DOWNLOAD ก็แล้วแต่คุณครับ คลิกปุ่มใดปุ่มหนึ่งได้เลย

จากนั้นก็เบราเซอร์ของคุณก็จะเริ่มดาวน์โหลด และหากเบราเซอร์ของคุณไม่ถามว่าจะให้บันทึกไฟล์ไว้ที่ไหน ไฟล์ก็มักจะถูกบันทึกไว้ที่ไดเรคทอรี่ชื่อว่า Downloads ครับ

ขั้นตอนการติดตั้ง

เมื่อคุณดาวน์โหลดไฟล์เสร็จแล้ว คุณจะได้ไฟล์ชื่อว่า arduino-version-linux32.tar.xz หรือ arduino-version-linux64.tar.xz ซึ่งเป็นไฟล์ที่ถูกบีบอัดไว้ คุณต้องแยกไฟล์ออกมา โดยกดปุ่มลัดบนคีบอร์ด Alt + Ctrl + T เพื่อเรียกโปรแกรม Terminal ขึ้นมา และพิมพ์คำสั่งดังต่อไปนี้ลงไปครับ

1. สร้างไดเรคทอรี่ชื่อ bin ไว้ในไดเรคทอรี่ home สำหรับเก็บไฟล์โปรแกรม Arduino IDE

2. แยกไฟล์ arduino-version-linux.tar.xz ไปไว้ที่ไดเรคทอรี่ bin

แก้ your-download-path เป็นชื่อไดเรคทอรี่ที่คุณดาวน์โหลดไฟล์เก็บเอาไว้ เช่น Downloads

แก้ arduino-version-linux.tar.xz เป็นชื่อไฟล์ที่คุณดาวน์โหลดมา เช่น arduino-1.8.5-linux64.tar.xz

3. เพิ่มไอคอน Arduino IDE ไปยังเมนูของระบบ

แก้ arduino-version ให้ตรงกับเวอร์ชั่นของ Arduino IDE ที่คุณดาวน์โหลดมา เช่น arduino-1.8.5

การเรียกโปรแกรม Arduino IDE ขึ้นมาใช้งาน

คุณสามารถเรียกโปรแกรม Arduino IDE ขึ้นมาด้วย 2 วิธีครับ

วิธีที่1 คลิกไอคอนโปรแกรม Arduino IDE จากเมนูของระบบครับ

วิธีที่2 เรียกผ่าน command-line บนโปรแกรม Terminal ด้วยคำสั่งนี้ครับ

วิธีแก้ไขเมื่อเจอ error: cannot access /dev/ttyUSB0

เมื่อคุณพยายามอัปโหลดโปรแกรมลงบอร์ด คุณบางคนอาจจะเจอปัญหาเกี่ยวกับ USB permission (การอนุญาตให้อ่านเขียน USB) แบบรูปด้านล่าง

ถ้าหากคุณลองพิมพ์คำสั่ง ls -l /dev/ttyUSB* คุณก็จะเห็นว่าสิทธิ์การใช้งาน USB คืออนุญาตให้ผู้ใช้ root และผู้ใช้ที่อยู่ในกลุ่ม dialout เท่านั้นที่สามารถอ่านเขียน USB ได้

crwrw—- 1 root dialout 188, 0 พ.ค. 8 14:33 /dev/ttyUSB0

วิธีแก้ไขก็แค่เพิ่มผู้ใช้ของลงไปในกลุ่ม dialout เท่านั้นเองครับ โดยใช้คำสั่งต่อไปนี้

หลังจากพิมพ์คำสั่งข้างบนแล้วให้ logout และ login ใหม่อีกครั้งครับ

หมายเหตุ: บางบอร์ด path จะไม่ใช่ /dev/ttyUSBx แต่จะเป็น /dev/ttyACMx แทนครับ (x คือตัวเลข)

หมายเหตุ2: บางบอร์ดจำเป็นต้องติดตั้ง Driverก่อน เช่น บอร์ดที่ใช้ชิพ USB to Serial CH340/CH340G

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

แบ่งปันสิ่งนี้บน

วิธีติดตั้ง Driver CH340 CH340G บน Windows

สำหรับใครที่ต้องการจะอัปโหลดโปรแกรมลงบอร์ด Arduino, NodeMCU, หรือบอร์ดอื่นๆ ที่ใช้ชิป USB to Serial CH340 หรือ CH340G (มักจะเจอในบอร์ดจากประเทศจีน) บนระบบปฏิบัติการ Windows คุณจำเป็นต้องติดตั้ง Driver สำหรับชิปตัวนี้ก่อนนะครับ ไม่อย่างนั้น Windows จะไม่สามารถติดต่อกับบอร์ดตัวนั้นๆ ได้ครับ (สำหรับ Linux จะมี Driver มาให้ในตัวแล้วครับ)

ซึ่งหากใครจะใช้โปรแกรม Arduino IDE เพื่ออัปโหลดโปรแกรม โดยที่ยังไม่ได้ติดตั้ง Driver ตัวโปรแกรมก็จะมองไม่เห็นบอร์ดที่ใช้ชิป CH340 หรือ CH340G ครับ

ส่วนขั้นตอนการติดตั้งก็ง่ายมากๆ ครับ เพียงทำตามขั้นตอนด้านล่างนี้เพียงไม่กี่คลิกเท่านั้น Windows ของคุณก็จะสามารถใช้งานกับบอร์ดทุกตัวที่ใช้ชิป CH340 หรือ CH340G ได้ทันทีครับ

ขั้นตอนการติดตั้ง Driver สำหรับ CH340/CH340G

1. ดาวน์โหลดไฟล์ติดตั้ง Driver ชื่อว่า CH341SER.EXE จาก www.wch.cn (ต้นฉบับ) หรือ poundxi.com (สำรอง) ก็ได้

2. ดับเบิ้ลคลิกที่ไฟล์ชื่อ CH341SER.EXE ที่เราเพิ่งดาวน์โหลดมาครับ แล้วจะมีหน้าต่างขึ้นมาวิ่งๆ อยู่ครู่หนึ่งแบบในรูป

3. เมื่อปรากฏหน้าต่างแบบในรูป ให้คลิกปุ่ม INSTALL

4. เมื่อติดตั้งเสร็จแล้วจะมีหน้าต่างขึ้นมาแบบในรูปครับ ทีนี้ก็ทดลองใช้งานบอร์ดของคุณได้เลยครับ

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

แบ่งปันสิ่งนี้บน

Ubuntu flavours 18.04 LTS ตัวไหนใช้ CPU และ RAM เท่าไหร่กันบ้างนะ

หลังจากที่ Ubuntu 18.04 LTS (รวมทั้ง Ubuntu flavours ได้แก่ Lubuntu, Ubuntu Budgie, Ubuntu MATE และ Xubuntu) ปล่อยตัว Final Release ออกมาให้ดาวน์โหลดกันเมื่อประมาณ วันที่ 27 เมษายน 2018 หลายๆ ท่านก็คงวางแผนที่จะอัปเกรด Ubuntu ของตัวเองกันพร้อมหน้าแล้วครับ ใครที่สเปคคอมฯ สูงหน่อยอาจจะไม่ต้องคิดอะไรมาก อยากจะลงเวอร์ชั่นไหนก็น่าจะลงได้ แต่หากใครใช้คอมฯ เก่าๆ หรือคอมฯ สเปคต่ำๆ แบบผม อาจจะต้องมาพิจารณาสเปคของเครื่องตัวเองกันสักเล็กน้อย ว่าลง Ubuntu แท้ๆ ไหวมั้ย ถ้าไม่ไหวจะพิจารณาเป็น Ubuntu flavours ไหนดี

ทำไมต้องสนใจว่า Ubuntu flavours ไหนใช้ CPU และ RAM เท่าไหร่ ?

เหมือนกับที่เกริ่นไว้ตอนต้นครับ หากใครใช้คอมฯ สเปคสูงๆ ก็ลืมเรื่องทรัพยากรที่ต้องใช้ไปได้เลย แต่หากใครใช้คอมฯ สเปคต่ำๆ แบบผม เช่น ของผมเป็น Notebook สเปคอยู่ที่ [email protected] + RAM=DDR3L [email protected] ถ้าจะให้ไปลง Ubuntu แท้ๆ เลย คอมฯ ของผมก็คงจะทำงานช้าเอาเรื่องครับ

สำหรับคอมฯ สเปคต่ำการประหยัดทรัพยากรของเครื่องให้สามารถใช้ประโยชน์ได้สูงสุดสำหรับผมถือว่าเป็นสิ่งที่สมควรทำ เช่น

  • ถ้าเราเลือก flavour ที่ใช้ CPU น้อยๆ แปลว่า คอมฯ เราจะสามารถใช้โปรแกรมที่ต้องประมวลผลเยอะๆ ได้พร้อมกันหลายโปรแกรมมากขึ้น โดยที่โปรแกรมนั้นไม่ได้ทำงานช้าลง หรือโอกาศที่จะทำงานช้าลงมีน้อยขึ้น
  • ถ้าเราเลือก flavour ที่ใช้ RAM น้อยๆ แปลว่า คอมฯ เราจะสามารถเปิดโปรแกรมหลายๆ โปรแกรมพร้อมกันได้มากขึ้น และลดไปปัญหาคอมฯ ช้าจาก RAM ไม่พอใช้ ทำให้ระบบ Swap Partition แทน ซึ่งจะทำให้คอมฯ ทำงานช้าลงมากๆ หรือบางทีอาจจะทำให้คอมฯ ค้างไปเลยก็มี

เลือก Ubuntu flavours จากแค่ CPU และ RAM เพียงพอจริงหรือ ?

จริงๆ แล้วการเลือก Ubuntu flavours จากการใช้ทรัพยากร CPU และ RAM ที่มากหรือน้อยนั้น ยังไม่เพียงพอต่อการใช้ตัดสินใจหรอกครับ บางคนสเปคเครื่องเหลือๆ อาจจะเลือกจากรูปแบบการใช้งานที่น่าใช้, ความสวยงาม หรือ คุณสมบัติเฉพาะที่ตอบโจทย์ของคนๆ นั้นครับ

การพิจารณาการใช้ทรัพยากร CPU และ RAM เป็นเพียงข้อมูลส่วนหนึ่งที่ช่วยในการสนับสนุนการตัดสินใจเท่านั้นครับ

ข้อมูล CPU และ RAM ที่ถูกใช้ไปโดยระบบในแต่ละ Ubuntu flavours

ผลลัพธ์ต่อไปนี้ผมทดสอบบน VirtualBox ที่ผมจัดสเปคให้กับ Virtual Machine ดังนี้ครับ

CPU=1 Processor ([email protected])

RAM=2GB

Type=Linux

Version=Ubuntu (64-bit)

ผลการใช้ทรัพยากร CPU และ RAM ด้านล่างนี้ เปิดดูจาก System Monitor หรือ Task Manager ในขณะที่ไม่ได้เปิดโปรแกรมอื่นๆ ขึ้นมาใช้งานเลยครับ (ทดลองใช้งานในโหมด Live DVD บน VirtualBox)

Name (CPU% / RAM)

Ubuntu (19% / 1.2 GB)

Ubuntu Budgie (17% / 888MB)

Ubuntu Mate ( 3% / 848MB)

Kubuntu ( 4% / 374MB)

Xubuntu (3% / 365MB)

Lubuntu (1% / 216MB)

สรุป

  • หากเรียงข้อมูลการใช้ทรัพยากรที่สิ้นเปลืองจากมากไปหาน้อยจะได้ข้อมูลตามนี้ครับ Ubuntu > Ubuntu Budgie > Ubuntu Mate > Kubuntu > Xubuntu > Lubuntu
    • คอมฯ สเปคสูง จะใช้ตัวไหนก็แล้วแต่ชอบเลยครับ
    • คอมฯ สเปคกลาง ควรจะพิจารณาตั้งแต่ Kubuntu, Xubuntu หรือ Lubuntu ครับ
    • คอมฯ สเปคต่ำ เหลือตัวเลือกเดียว คือ Lubuntu ครับ
  • หาก CPU ถูกใช้โดยระบบไปเยอะ โปรแกรมที่ต้องใช้ CPU ในการประมวลผลเยอะๆ ความเร็วของโปรแกรมนั้นก็จะลดลงไป ซึ่งโดยปกติผมว่าข้อนี้ไม่ค่อยเป็นปัญหาสำหรับการใช้งานทั่วไปครับ
  • หาก RAM ถูกใช้โดยระบบไปเยอะ เราก็จะเหลือ RAM ให้โปรแกรมอื่นๆ ใช้งานน้อยลง ระบบก็จะไปหยิบ Swap Partition มาใช้งานแทน (จับ Hard Disk มาทำ RAM ทดแทน ซึ่งทำให้คอมฯ ทำงานช้าลงมาก) ซึ่งจากประสบการณ์ผมว่า Web Browser เนี่ยแหละ ที่ใช้ RAM สิ้นเปลืองที่สุดครับ หากเป็นไปได้ใครที่ RAM ไม่ถึง 8GB ให้อัปเกรดเถอะครับ
  • หากเครื่องคุณมีการ์ดจอแยก การ์ดจอแยกอาจช่วยลดภาระที่ CPU ต้องประมวลผลในส่วนของกราฟิกลงไปได้ครับ
  • สุดท้าย การที่จะเลือกใช้ Ubuntu flavours ไหน วิธีการที่ดีที่สุด คือ ทดลองใช้งานด้วยตัวคุณเองครับ ว่ามันตอบโจทย์คุณหรือไม่ครับ

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

แบ่งปันสิ่งนี้บน