Publish : 6 November 2020
หัวข้อในบทความนี้
- ทำความรู้จักกับ PCA9685 - Pinouts - I2C Address - Library - ทดลอง PCA9685 ขับ LED
- ทดลอง PCA9685 ขับเซอร์โว
- การใช้ PCA9685 หลายโมดูล เดินทางมาถึงตอนสุดท้าย(รึเปล่า??) กันแล้วนะครับสำหรับซีรีส์มอเตอร์ สเต็ปมอเตอร์ เซอร์โว 10 สัปดาห์ +1 ที่เว้นว่างไป ไวเหมือนโกหกจริง ๆ สำหรับตอนสุดท้ายนี้เราจะมาลองใช้งาน PCA9685 ซึ่งมันจะเป็นโมดูลที่จะช่วยอำนวยความสะดวกเราในการทำงานตัวหนึ่งเลยล่ะครับ จะยังไงนั้นไปกันเลยทำความรู้จักกับ PCA9685 ไอซี PCA9685 จริง ๆ แล้วมันเป็นไอซี PWM LED controller จาก NXP Semiconductors แล้วเกี่ยวอะไรกับบทความนี้? จำได้มั๊ยครับว่าเซอร์โวเราจะใช้สัญญาณ PWM ขับ เมื่อไอซีตัวนี้มันสร้างสัญญาณ PWM ได้ มันก็ขับเซอร์โวได้ ใช่แล้วครับ ซึ่งสเปคลึก ๆ จะไม่พูดถึงนะครับเนื่องจากไม่ได้ใช้งานกระแสสูง เพียงแค่มีสัญญาณเข้ามาแล้วสร้างสัญญาณออกไปเท่านั้นเอง
Pinouts ในโมดูล PCA9685 หลัก ๆ เราคงรู้กันแล้วครับว่า I2C มันไม่มีขาให้เสียบมากนัก แต่ด้วยโมดูลนี้มันมีถึง 16 Outputs ก็จึงมีขาเยอะพอสมควร ดังนี้ GND คงไม่ต้องบอกแล้วมั๊งครับ กราวด์ของโมดูลนั่นเอง VCC ไฟเลี้ยงโมดูล ตรงนี้มีข้อระวังนิดนึงตรงที่ต้องตรงกับ Logic Level ที่เราใช้นะครับ ถ้า Arduino ก็ใส่ 5V ใครใช้ NodeMCU ก็ 3.3V และไฟที่ขานี้ห้ามเกิน 5V นะครับ V+ ตรงนี้เป็นไฟเสริม คือหากเราใช้ตัวนี้ขับเซอร์โว แน่นอนว่า 16 ตัว ไฟ VCC ไม่พอแน่นอน จ่ายไฟภายนอกเข้าไปตรงนี้ได้เลย ตัวโมดูลทำ Screw Terminal มาให้ใช้งานแล้ว เราก็ใส่ 5V จากแหล่งกระแสสูง ๆ หน่อยที่จะพอขับเซอร์โวทั้ง 16 ตัว แต่ถ้าเราใช้ขับ LED กินไฟน้อย ๆ ก็ไม่จำเป็นต้องใช้ V+ และ V+ นี้ต้องมีแรงดันไม่เกิน 6V SDA สายสัญญาณ SDA ของการสื่อสารแบบ I2C SCL สายสัญญาณ SCL ของการสื่อสารแบบ I2C OE คือ Output Enable เป็นการกำหนดว่าจะใช้งาน Output ทั้ง 16 ช่องหรือไม่ โดยทำงานแบบ Active LOW หากเราใส่สัญญาณ LOW เข้าไป Output ก็จะทำงาน แต่หากใส่ HIGH เข้าไปต่อให้เราจะ Input อะไรลงไปก็จะไม่มี Output ใด ๆ ทั้งสิ้น ทั้งนี้ ขานี้เป็นแค่ Optional นะครับ เวลาใช้งานปล่อยลอยไว้ได้เลย Output ขา Output ทั้งหมดตัวโมดูลจะถูกออกแบบมาให้วางเป็นชุด ๆ คือมี PWM ตรงกลางเป็น V+ และ GND ตามลำดับ ซึ่งก็จะตรงตามขาของเซอร์โว นำมาเสียบได้ทันที และก็มีทั้งหมด 16 ชุด 16 Output ตั้งแต่ 0 ถึง 15 แต่ในกรณีที่ใช้ขับ LED ก็สามารถต่อ PWM กับ GND ได้เลย โดยขา PWM แต่ละขาจะสามารถขับกระแสได้ 25mA เพียงพอที่จะขับหลอน LED ทั่ว ๆ ไปได้I2C Address แน่นอนว่าโมดูล I2C นั้นสามารถพ่วงกันหลาย ๆ ตัวได้ โดยที่แต่ละตัวนั้นต้องมี Address ไม่ซ้ำกัน เจ้า PCA9685 นั้นก็ทำได้เหมือนกัน แต่การตั้งค่า Address นั้นต้องใช้การ Hardware Setting คือหากมองไปที่มุมขวาบนจะมีช่อง Jumper ว่าง ๆ มา A0 ถึง A5 ตรงนี้เป็นตัวตั้ง I2C Address ครับ ซึ่งมีให้ตั้งได้กว้างมาก ๆ ตามตาราง แต่!!!! มันจะสามารถ Multiple Driver ได้แค่ 62 Outputs เท่านั้น คือแค่ 4 โมดูลเหลือ ๆ (ไม่แน่ใจว่าเป็นข้อจำกัดของไอซีหรือ Library ที่นำมาใช้อ้างอิงนะครับ) ซึ่งค่าเดิม ๆ จากโรงงานปล่อยว่างไว้หมดจะมี Address = 0x40
A5 |
A4 |
A3 |
A2 |
A1 |
A0 |
ADDR. |
|
A5 |
A4 |
A3 |
A2 |
A1 |
A0 |
ADDR. |
|
A5 |
A4 |
A3 |
A2 |
A1 |
A0 |
ADDR. |
|
A5 |
A4 |
A3 |
A2 |
A1 |
A0 |
ADDR. |
0 |
0 |
0 |
0 |
0 |
0 |
0x40 |
|
0 |
1 |
0 |
0 |
0 |
0 |
0x50 |
|
1 |
0 |
0 |
0 |
0 |
0 |
0x60 |
|
1 |
1 |
0 |
0 |
0 |
0 |
0x70 |
0 |
0 |
0 |
0 |
0 |
1 |
0x41 |
|
0 |
1 |
0 |
0 |
0 |
1 |
0x51 |
|
1 |
0 |
0 |
0 |
0 |
1 |
0x61 |
|
1 |
1 |
0 |
0 |
0 |
1 |
0x71 |
0 |
0 |
0 |
0 |
1 |
0 |
0x42 |
|
0 |
1 |
0 |
0 |
1 |
0 |
0x52 |
|
1 |
0 |
0 |
0 |
1 |
0 |
0x62 |
|
1 |
1 |
0 |
0 |
1 |
0 |
0x72 |
0 |
0 |
0 |
0 |
1 |
1 |
0x43 |
|
0 |
1 |
0 |
0 |
1 |
1 |
0x53 |
|
1 |
0 |
0 |
0 |
1 |
1 |
0x63 |
|
1 |
1 |
0 |
0 |
1 |
1 |
0x73 |
0 |
0 |
0 |
1 |
0 |
0 |
0x44 |
|
0 |
1 |
0 |
1 |
0 |
0 |
0x54 |
|
1 |
0 |
0 |
1 |
0 |
0 |
0x64 |
|
1 |
1 |
0 |
1 |
0 |
0 |
0x74 |
0 |
0 |
0 |
1 |
0 |
1 |
0x45 |
|
0 |
1 |
0 |
1 |
0 |
1 |
0x55 |
|
1 |
0 |
0 |
1 |
0 |
1 |
0x65 |
|
1 |
1 |
0 |
1 |
0 |
1 |
0x75 |
0 |
0 |
0 |
1 |
1 |
0 |
0x46 |
|
0 |
1 |
0 |
1 |
1 |
0 |
0x56 |
|
1 |
0 |
0 |
1 |
1 |
0 |
0x66 |
|
1 |
1 |
0 |
1 |
1 |
0 |
0x76 |
0 |
0 |
0 |
1 |
1 |
1 |
0x47 |
|
0 |
1 |
0 |
1 |
1 |
1 |
0x57 |
|
1 |
0 |
0 |
1 |
1 |
1 |
0x67 |
|
1 |
1 |
0 |
1 |
1 |
1 |
0x77 |
0 |
0 |
1 |
0 |
0 |
0 |
0x48 |
|
0 |
1 |
1 |
0 |
0 |
0 |
0x58 |
|
1 |
0 |
1 |
0 |
0 |
0 |
0x68 |
|
1 |
1 |
1 |
0 |
0 |
0 |
0x78 |
0 |
0 |
1 |
0 |
0 |
1 |
0x49 |
|
0 |
1 |
1 |
0 |
0 |
1 |
0x59 |
|
1 |
0 |
1 |
0 |
0 |
1 |
0x69 |
|
1 |
1 |
1 |
0 |
0 |
1 |
0x79 |
0 |
0 |
1 |
0 |
1 |
0 |
0x4A |
|
0 |
1 |
1 |
0 |
1 |
0 |
0x5A |
|
1 |
0 |
1 |
0 |
1 |
0 |
0x6A |
|
1 |
1 |
1 |
0 |
1 |
0 |
0x7A |
0 |
0 |
1 |
0 |
1 |
1 |
0x4B |
|
0 |
1 |
1 |
0 |
1 |
1 |
0x5B |
|
1 |
0 |
1 |
0 |
1 |
1 |
0x6B |
|
1 |
1 |
1 |
0 |
1 |
1 |
0x7B |
0 |
0 |
1 |
1 |
0 |
0 |
0x4C |
|
0 |
1 |
1 |
1 |
0 |
0 |
0x5C |
|
1 |
0 |
1 |
1 |
0 |
0 |
0x6C |
|
1 |
1 |
1 |
1 |
0 |
0 |
0x7C |
0 |
0 |
1 |
1 |
0 |
1 |
0x4D |
|
0 |
1 |
1 |
1 |
0 |
1 |
0x5D |
|
1 |
0 |
1 |
1 |
0 |
1 |
0x6D |
|
1 |
1 |
1 |
1 |
0 |
1 |
0x7D |
0 |
0 |
1 |
1 |
1 |
0 |
0x4E |
|
0 |
1 |
1 |
1 |
1 |
0 |
0x5E |
|
1 |
0 |
1 |
1 |
1 |
0 |
0x6E |
|
1 |
1 |
1 |
1 |
1 |
0 |
0x7E |
0 |
0 |
1 |
1 |
1 |
1 |
0x4F |
|
0 |
1 |
1 |
1 |
1 |
1 |
0x5F |
|
1 |
0 |
1 |
1 |
1 |
1 |
0x6F |
|
1 |
1 |
1 |
1 |
1 |
1 |
0x7F |
0=ปล่อยว่าง 1=บัดกรีเชื่อมกันLibrary สำหรับในบทความนี้จะใช้ Library ของ Adafruit ชื่อ Adafruit_PWMServo มาใช้เป็นตัวอย่าง ตัว Library สามารถค้นหาได้จาก Library Manager ใน ArduinoIDE ได้เลย ส่วนใครอยากติดตั้งเองก็ไปดาวน์โหลดและติดตั้งกันเลยครับ Adafruit_PWMServo (Adafruit Github) หรือ Adafruit_PWMServo (Mirror Fitrox GDrive) บทความที่เกี่ยวข้อง : การเพิ่ม Library ใน Arduino IDE ต่อไปก็มาดูว่าคำสั่งใน Library แต่ละคำสั่งนั้นมีอะไรกันบ้าง setPWMFreq(freq) เป็นคำสั่งตั้งค่าความถี่ของ PWM ที่ส่งออกไป freq คือ ความถี่ที่ต้องการ สามารถกำหนดได้ตั้งแต่ 40 - 1600 Hz ตัวอย่าง ตั้งความถี่ที่ 150Hz เขียนได้ว่า setPWMFreq(150); setPWM(ch, on, off) ใช้ตั้งค่าช่วง PWM ที่ต้องการเปิดใน Channel ต่าง ๆ หากย้อนไปพื้นฐานตอนเราใช้ Arduino UNO ตอนนั้นจะมี PWM 0 - 255 ใช่มั๊ยครับ หากเราจะใช้ 50% เราก็จะเปิดช่วง 0 - 128 จากนั้นจึงปิดช่วง 129 - 255 คำสั่งนี้ก็เป็นการสั่งให้เปิดช่วงนั้นแหละครับ ส่วนที่เหลือมันปิดให้เอง ch คือ ช่องที่ต้องการตั้งค่า (0 - 15) on คือ ค่าเริ่มต้นที่จะใช้งาน off คือ ค่าสิ้นสุดที่จะใช้งาน ตัวอย่าง ต้องการตั้งค่าช่องที่ 0 ให้เปิดช่วง 200 ถึง 1200 จะได้ setPWM(0, 200, 1200); ซึ่งที่จริงแล้วก็ยังมีคำสั่งอีกเยอะมากเลยครับ แต่ผู้เขียนเห็นว่าเราจะใช้กันจริง ๆ ก็แค่สองคำสั่งนี้เอง คำสั่งอื่นไม่ค่อยจะจำเป็นเท่าไร ขออธิบายไว้แค่นี้ละกัน(เริ่มขี้เกียจ) ซึ่งหากใครอยากรู้คำสั่งอื่น ๆ เพิ่มเติมก็สามารถไปอ่านได้ที่ Library Document ครับทดลอง PCA9685 ขับ LED เอาหล่ะ เอาหล่ะ ก่อนที่จะไปควบคุม LED จะขอแวะเรื่องการคำนวณกันก่อนครับ โดยจะต่อเนื่องจากคำสั่ง setPWM เลย เนื่องจากเราจะนำเอาค่านี้ไปใส่ไว้ในคำสั่งนั้น การคำนวณนี้จะไม่ลงลึกไปขนาดใน Datasheet เนื่องจากมันจะพูดถึง 10110001 ในระดับการส่งสัญญาณ I2C แต่เนื่องจากเราใช้ Library ซึ่งเขาจัดการทั้งหมดนี้มาให้เราแล้ว เราจะมาคำนวณแค่จะใช้ PWM xx% ต้องเปิดปิดตอนไหน จำนวนเท่าไรแค่นั้นเอง ซึ่งสมการคำนวณจะมีดังนี้
%PWM = [(off - on)/4096]*100% |
สมมตินะครับ จะขอยกกราฟมาจาก Datasheet เราจะเปิด PWM ตั้งแต่ช่วง 409 และไปปิดเอาที่ 1228 เราจะได้ PWM กี่ % ???
ลองมาคำนวณกันครับ
%PWM = [(1228-409)/4096]*100% = [819/4096]*100% = 19.99% = ~ 20% |
ฉะนั้นถ้าเราใช้คำสั่งนี้ คือ setPWM(ch, 409, 1228) นี้ LED ก็จะสว่าง 20% ตามค่า PWM ที่เราให้นี่เอง ถ้ามี % ในใจ แล้วอยากรู้ว่าต้องเปิดเป็นช่วงเท่าไร ก็เปลี่ยน 100% ให้เป็น 1 แล้วเปลี่ยน % ของเราเป็น 0.xx ตามหลักคณิตศาสตร์พื้นฐานถูกต้องมั๊ยครับ? สมมติ เราอยากเปิด 75% ก็จะมีการคำนวณดังนี้
0.75 = x/4096*1 x = 0.75*4096 x = 3072 |
เราได้ช่วงที่จะเปิดคือ 3072 หากเราเปิดที่ช่วง 409 ก็ต้องไปปิดที่ 409+3072 = 3481 ก็จะได้คำสั่ง setPWM(ch, 409, 3481) นั่นเอง พอจะเข้าใจกันมั๊ยครับ
ต่อไปเรามาเขียนโปรแกรมกันเลยครับ ตามที่ผู้เขียนได้ค้น ๆ ดู ตัวอย่างค่อนข้างเข้าใจยากหน่อย เลยขอเอาแบบง่าย ๆ ปิดเปิดหลอดไฟอะไรแบบนั้นก่อนครับ โดยเราจะทำให้ LED สว่างเป็น 4 ระดับกันก่อน 25% 50% 75% และ 100% วนไปเรื่อย ๆ
ต่ออุปกรณ์ตามรูปแล้วทดลองกันได้เลย

อีกโปรแกรมที่จะขอยกตัวอย่าง เราก็จะนำโปรแกรม Fade ใน Exmaples มาดัดแปลงใช้กันครับ
ต่อไปแน่นอนครับ มันมีตั้ง 16 ช่อง จะใช้แค่ช่องเดียว? เปล่าครับ การใช้ช่องอื่น ๆ ก็ง่าย ๆ เพียงเพิ่มคำสั่ง setPWM เข้าไป จบครับ ยกตัวอย่างโปรแกรม Fade เหมือนเดิม ให้ CH15 มีความส่วางตรงข้ามกับ CH0 มักง่ายเลยคือโค้ดเดิมมา ส่วน CH15 ก็เอา 4095 มาลบด้วย pwmLevel กันดื้อ ๆ หาก pwmLevel = 0, CH0 = 0, CH15 = 4095 หาก pwmLevel = 1024, CH0 = 1024, CH15 = 3071 แบบนี้เลยละกันครับ
ทดลอง PCA9685 ขับเซอร์โว
หลังจากเราทดลองควบคุม LED ตามสเปคของไอซีไปแล้ว ทีนี้คุณสมบัติมันคือขับ PWM เราอาศัยตรงนี้ไปขับเซอร์โวได้เช่นกัน ซึ่งหากจำกันได้นั้นเซอร์โวจะหมุนตามความกว้างของ Pulse ที่ได้รับมา ซึ่งเจ้า PCA9685 ก็สามารถทำเช่นนั้นได้ ทำให้เราใช้มันขับเซอร์โวได้เช่นกัน ไม่ต้องโม้มากไปดูโค้ดกันเลย
จากโค้ดนี้นะครับ เป็นหลักการทำงานของเซอร์โวเลยครับ หากยังจำกันได้เซอร์โวจะทำงานโดยการใช้ Pulse เพียงแค่เล็กน้อยเท่านั้น 1.5 - 2.5 มิลลิวินาทีเท่านั้นเอง ซึ่งการที่เราใช้งานที่ 60 Hz นั้น Pulse 1 ลูก เต็ม ๆ มันก็ตั้งประมาณ 17 ms เราจึงไม่เปิดตั้งแต่ 0 ไปถึง 4095 แต่จะเปิดแค่นิด ๆ เพียงแค่นั้นเอง
และจากโค้ดนี้ก็ไม่ใช่ว่าจะสามารถนำไปใช้งานได้ทันทีสำเร็จรูปนะครับ ต้องมีการปรับแต่งกันด้วย ต้องลองไปปรับ Frequency ที่ใช้งาน ของบางคนอาจเป็น 50 Hz (โดยเฉพาะหากต่ออยู่กับ ESC) และต้องปรับแต่งค่า Min กับ Max ด้วย หากแขนสุด 0 องศาแล้วมอเตอร์ของเซอร์โวยังหมุน(กรณีนี้อันตรายมากเนื่องจากอาจทำให้เฟืองของเซอร์โวเสีย) หรือหมุนมาหยุดแต่ยังไม่สุดที่ 0 องศา ก็ให้ลองปรับเพิ่มลดค่า Min และในด้านค่า Max ที่ 180 องศา ก็ให้ทำเช่นกันด้วยครับ ตรงนี้จำเป็นต้องทำเนื่องจากผู้เขียนก็ไม่สามารถหาค่าที่เป๊ะ ๆ ได้เพราะเซอร์โวแต่ละยี่ห้อ หรือแม้แต่ยี่ห้อเดียวกันแต่คนละรุ่นก็จะมีการทำงานตรงนี้ต่างกันอันเนื่องมาจากอุปกรณ์ต่าง ๆ ภายใน การทดเฟือง ความละเอียดของการ Decode ตำแหน่ง รวมถึงการออกแบบวงจรควบคุมภายในตัวเซอร์โวเองก็ตาม สำหรับการต่อเพื่อใช้งาน แน่นอนว่าเซอร์โวกินไฟมากกว่า LED หลายเท่าครับ VCC ที่เราต่อจาก Arduino ไม่พอทำงานแน่นอน แราต้องหาไฟ 5V จากภายนอกมาต่อเข้าที่ V+ กันด้วย แนะนำที่จ่ายกระแสได้ 2A ขึ้นไป ใครจะใช้แบตเตอรี่ก็ควรใช้ถ่าน AA จำนวน 4 ก้อน ต่อแบบอนุกรมกัน ก็จะได้ไฟ 6V พอได้อยู่ครับ

ในการควบคุมเซอร์โวหลายตัวก็ทำง่าย ๆ เหมือนกับ LED เลยครับ ก็แค่เพิ่มคำสั่ง จะใช้ Channel ไหนก็พิมพ์ลงไปแค่นั้นเอง

การใช้ PCA9685 หลายโมดูล
ตอนนี้หากเราต้องการใช้เซอร์โวเยอะมาก ๆ หล่ะ ซัก 20 ตัว (อันที่จริงผู้เขียนก็ยังไม่เคยเจอโปรเจคไหนที่มันต้องใช้เยอะขนาดนั้นนะ) โมดูล PCA9685 มันมีแค่ 16 เอง จะทำยังไง ก็ทำได้เช่นกันครับ โดยการพ่วงโมดูลไปเลย อย่าลืมบัดกรี Address ก่อนนะ ให้มันมี Address ต่างกันก่อน แล้วพ่วงกันตรง ๆ ไปเลย ทีนี้อยากให้สังเกตถ้าเราใช้โมดูลเดียวเราจะลอยขา OE ไว้ใช่มั๊ยครับ แต่การใช้หลายโมดูลเราจะต้องพ่วงมันเข้าด้วยกันด้วย ตัวแรกที่ต่อกับ Arduino ลอย ๆ ไว้ไม่เป็นไร แต่ตัวแรกโยงมาต่อกับตัวที่สองเนี่ยต้องต่อมันไว้ด้วยครับ

จากรูปตัวอย่าง เราควบคุมเซอร์โว 2 ตัว โดยใช้โมดูลตัวแรก และโมดูลตัวที่สองควบคุม LED จำนวน 1 หลอด การเขียนโค้ดก็ค่อนข้างตรงไปตรงมาเลยครับ คือควบคุมเซอร์โวที่โมดูลตัวแรก ช่อง 0 และช่อง 15 และควบคุม LED ที่โมดูลตัวที่สอง ช่องที่ 8 ก็ได้ตัวอย่างตามนี้ (ให้เซอร์โวหมุนไป > LED สว่าง 25% > เซอร์โวหมุนกลับ > LED สว่าง 100% ไปเรื่อย ๆ โปรแกรมง่าย ๆ เอาเลยครับ)
สำหรับวันนี้ก็น่าจะได้อะไรกันบ้างกับวิธีใช้ PCA9685 นะครับ โมดูลนี้มันดีีตรงที่เราสามารถขยายขาได้เหมือนกับ PCF8574 ต่างกันตรงนั่นมันแค่ HIGH กับ LOW แต่ตัวนี้มันสามารถทำ PWM ได้ด้วย แถมได้ตั้ง 16 ตัว ไม่ต้องเปลืองขาบอร์ด Arduino เก็บไว้ไปใช้งานอย่างอื่นได้อีกเยอะเลยครับ (จริง ๆ ถ้าจะใช้เซอร์โว 16 ตัวนี่ Arduino UNO ก็มีให้เราไม่พออยู่แล้วครับ มันมีแค่ 14 ขาเอง) และสุดท้ายนี้ก็คงต้องกล่าวคำว่าขอปิดซีรี่ส์มอเตอร์ไว้ตรงนี้ ตรงที่ตอนที่ 10 ก็เป็นเวลาถึงสองเดือนครึ่งที่ทำมา ข้อมูลขาดตกบกพร่องผิดพลาดตรงไหนก็ต้องขออภัยด้วยครับ แย้งได้แจ้งได้ไม่ว่ากัน อย่างที่บอกว่าผู้เขียนก็ไม่ใช่คนเก่ง การเขียนบทความก็ค้นข้อมูลจากหลายแหล่ง พยายามเรียบเรียงมาให้มันง่าย ๆ เพื่อให้เข้าใจกันก่อน พอเข้าใจแล้วก็จะได้ดัดแปลงให้มันมีระดับที่สูงขึ้นไป
และสุดท้ายนี้ สุดท้ายจริง ๆ บทความชุดนี้จบแล้ว ไม่ใช่ว่าจะหายไปไหนนะครับ อาจมีหายไปบ้างตามปกติเนื่องจากผู้เขียนไม่มีเวลาจริง ๆ หรืออาจตัน ตื้ิอ คิดหัวข้อที่จะเขียนไม่ได้ แต่ถึงไม่มีบทความเป็นชุดแบบนี้ก็จะมีบทความยิบย่อย หรือเป็นมินิโปรเจคมาฝากกันตามนัดอย่างแน่นอน ยังไงก็ฝากไว้ด้วยนะครับ สำหรับวันนี้ต้องกล่าวคำว่าสวัสดี