ควบคุม Relay ด้วย Raspberry PI Zero + Qt4 : ตอนที่ 1 ติดตั้ง Environment

ห่างหายจากการเขียน Blog มาหลายปี ทิ้งเว็บร้างมานานก็เลยอยากจะปัดฝุ่นซะหน่อย ด้วยการนำเอา RPI Zero W มาลง Qt4 (Qt5 กินทรัพยากรเยอะเกินไปสำหรับ RPI Zero) เพื่อที่จะเอาไปควบคุมอุปกรณ์ Relay ตามแต่ผู้อ่านจะเอาไปประยุกต์ใช้ในแต่ละงาน ซึ่งในบทแรกนี้จะกล่าวถึงการติดตั้งระบบปฏิบัติการและ Qt เพื่อใช้ในการพัฒนา ตามด้วยการพัฒนาโปรแกรมใน Qt และสุดท้ายนำไปแสดงผลบนจอ touch screen ขนาด 3.5″ resolution 480×320 เพื่อใช้งานต่อไป

ขั้นตอนแรกจากการเตรียมอุปกรณ์เพื่อที่จะลงระบบปฏิบัติการ Raspbian และลง Qt4 เพื่อใช้ในการพัฒนาโปรแกรม โดยจะมีรายการอุปกรณ์ตามรูปด้านล่างดังนี้ (หากคอมพิวเตอร์ไม่มี card reader ก็เตรียมไว้ด้วยนะครับ ตกหล่นจอ HDMI ไปหากใช้ PC/TV ที่มี HDMI ก็สามารถใช้ได้เหมือนกัน)

ขั้นตอนการเตรียมระบบปฏิบัติการ Raspbian

ก่อนที่จะประกอบอุปกรณ์ เรามาเตรียม SD Card กันก่อนด้วยการ Download โปรแกรม Raspberry PI Imager จากเว็บไซต์ https://www.raspberrypi.org/software/ เพื่อใช้ในการเขียน Image ของ Raspbian ลง SD Card ซึ่งเมื่อติดตั้งเสร็จเรียบร้อยแล้ว ให้เรียกใช้โปรแกรมใน start menu ตามภาพด้านล่าง (ขั้นตอนนี้ถ้าใครเล่น Raspberry PI บ่อยๆ อาจจะเข้าใจวิธีทำแล้ว สามารถข้ามขั้นตอนนี้ได้เลย)

หลังจากคลิกเลือกโปรแกรมจะแสดงหน้าต่างของโปรแกรมดังรูปด้านล่าง

กดเลือก CHOOSE OS เพื่อเลือกระบบปฏิบัติการให้กับ RPI ซึ่งในที่นี้ RPI Zero เป็น Processor 32 bits (เทียบเท่า RPI1 ให้เลือกเป็น Raspberry Pi OS (32-bit) ) ตามรูปด้านล่าง

เมื่อคลิกตัวเลือกดังกล่าวจะแสดงการเลือกที่หน้าโปรแกรม

จากนั้นให้นำ SD Card ใส่ Card Reader หรือ ถ้าหากคอมมีอยู่แล้วก็สามารถใส่เข้าไปเพื่อเขียน Image ได้เลยจากนั้นเลือก CHOOSE SD CARD และเลือก SD Card ตัวที่จะใช้งาน

หลังจากเลือก SD Card แล้วจะกลับมาหน้าหลัก และแสดงผลการเลือกตามรูปด้านล่าง จากนั้นให้กด Write เพื่อทำการเขียนข้อมูลลง SD Card

จากนั้นระบบจะถาม confirm การเขียนทับข้อมูลที่มีอยู่ ให้เลือก Yes และรอจนขั้นตอนเขียนเสร็จ

หลังจากเขียน SD Card เสร็จเรียบร้อยแล้วจะแสดงข้อความบอกให้สามารถถอด SD Card ออกได้ ตามรูปด้านล่าง

จากนั้นให้ประกอบ RPI Zero, ข้อต่อแปลง HDMI, ข้อต่อ USB ต่อกับ keyboad + mouse wireless และ adapter กับ สาย usb เพื่อจ่ายไฟให้กับ RPI Zero และนำ SD Card ที่ลงระบบปฏิบัติการแล้ว ตามรูปด้านล่าง

เมื่อประกอบเสร็จเรียบร้อยแล้ว ทำการต่อ HDMI เข้ากับจอและจ่ายไฟให้กับ RPI ระบบจะทำการ boot เข้าสู่ระบบปฏิบัติการ Raspbian และจะขึ้นหน้าจอตั้งค่าระบบตามรูปด้านล่าง

จากนั้นกด Next เพื่อเข้าสู่หน้าจอตั้งค่าประเทศ ภาษา และเขตเวลา ตามรูปด้านล่าง

เมื่อตั้งค่าประเทศ ภาษา และเขตเวลาแล้วจะเข้าสู่หน้าจอเปลี่ยนรหัสผ่าน ถ้าหากไม่เปลี่ยนรหัสผ่านใหม่สามารถกด Next ต่อไปได้เลย

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

จากนั้นจะเข้าสู่หน้าจอตั้งค่า WiFi ซึ่งการตั้งค่าหากมีรหัสผ่านก็ใส่รหัสผ่านตามการเชื่อมต่อ WiFi ทั่วไป หรือสามารถข้ามขั้นตอนนี้ได้ด้วยการกด Skip

เมื่อเชื่อมต่อ WiFi เสร็จจะเข้าสู่หน้าจอการอัพเดทซอฟแวร์ตามรูปด้านล่าง ซึ่งสามารถข้ามขั้นตอนนี้ได้ด้วยการกด Skip

และถ้าหากอัพเดทเสร็จเรียบร้อยแล้วจะแสดงข้อความตามรูปด้านล่าง

เมื่ออัพเดทเสร็จเรียบร้อยจะเข้าสู่หน้าจอแจ้งการติดตั้งสำเร็จ จากนั้นให้ทำการ Restart เพื่อสู่การติดตั้ง Qt ลำดับถัดไป

ถึงจุดนี้ถือว่าการติดตั้ง Raspberry Pi OS (Raspbian) เสร็จเรียบร้อยแล้ว (อาจจะน้ำเยอะไปนิดนึง ถือว่าอธิบายสเต็ปให้คนที่ยังไม่เคยเล่นนะครับ)

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

หลังจากที่ติดตั้ง Raspbian เสร็จเรียบร้อยแล้วให้เปิดหน้าจอ Terminal เพื่อเตรียมการติดตั้ง Qt4 โดยการพิมพ์คำสั่งตามรูปด้านล่าง

sudo apt -y install qt4-default qt4-dev-tools libqt4-declarative libqt4-dev libqt4-dev-bin qtcreator

เมื่อเสร็จเรียบร้อยแล้วจะกลับไปที่ shell command prompt เพื่อรอรับคำสั่งถัดไป ตามรูปด้านล่าง

จากนั้นลองรัน Qt Creator ด้วยคำสั่ง qtcreator ที่ shell command prompt ตามรูปด้านล่าง

ถ้าขั้นตอนการติดตั้งทุกอย่างถูกต้องจะแสดงหน้าต่างของ Qt Creator ขึ้นมาตามรูปด้านล่าง

จนถึงขั้นตอนนี้แล้วถือว่าการติดตั้ง Qt4 เสร็จสมบูรณ์แล้ว และถือว่าเสร็จสิ้นการเตรียม Environment สำหรับการ develop ใน Raspberry Pi Zero ขั้นตอนทั้งหมดนี้อาจจะดูน้ำเยอะไปนิดนึง เอาไว้บทต่อไปจะลองเอา Qt มาลองเขียน Application ง่ายๆ กัน จะพยายามปรับปรุงเนื้อหาให้กระชับกว่านี้ จากที่เขียนมาทั้งหมดข้างต้น หากใครมีข้อติชมหรืออยากให้แก้ไขหรือเพิ่มเติมอะไรก็สามารถ comment กันได้เลยนะครับ บทความนี้ก็ขอจบแต่เพียงเท่านี้ ไว้พบกันใหม่บทความหน้าครับ

Leave a Comment

Your email address will not be published. Required fields are marked *