วันนี้ผมจะมาพูดถึงการลง Operating System ของ Raspberry Pi กันนะครับ สองครั้งก่อนที่เขียนเรื่องการใช้งาน Raspberry Pi นั้น เป็นเรื่องเกี่ยวกับการใช้ Raspberry Pi เป็น Media Center (OPenELEC) ครับ ยังไม่ได้ใช้ประโยชน์ในลักษณะที่ทำงานแบบ Computer Desktop
คราวนี้เราจะมาลง OS ของมันกัน ซึ่งคงจะทราบกันมาแล้วว่า OS ของ RPi นั้นมีพื้นฐานมาจาก Linux นะครับ ใครมีเคยใช้มาก่อนก็จะเริ่มต้นได้ง่ายกว่าคนที่เคยใช้แต่ Windows ครับ แต่ไม่เป็นไรครับ ผมจะพยายามเขียนโดยเริ่มต้นจากศูนย์เลย
มาดูเวอร์ชั่นของ OS ที่ใช้กับ RPi กันก่อน มันมีหลายเวอร์ชั้่นครับ แล้วแต่ว่าซื้อ RPi จากผู้ผลิตไหน เช่น RS, Elecment4 หรือ ผู้ผลิตอื่นๆ (ที่ให้ราคาถูกแบบ Amazing) เอาเป็นว่าบทความนี้เขียนจาก Hardware ที่ร้าน Arduitronics.com ขายละกันนะครับ ของเราเป็นของแท้จาก Element14 ผลิตโดยตีตรา Made In UK บนตัวบอร์ด และใช้ Chip มาตรฐานของ Samsung เป็น RAM ซึ่งแตกต่างจากรุ่นที่ราคาต่ำกว่านะครับ บางที Software อาจจะใช้งานร่วมกันไม่ได้ วิธีลง OS ก็อาจจะต่างกันไป ต้องไปถามผู้ขายเอาเองนะครับ
ตัว OS ที่เราจะลงก็ Download ได้จาก http://www.raspberrypi.org/downloads โดยเราจะใช้ OS ที่เรียกว่า NOOBS ครับ ย่อมาจาก New Out of Box Software ซึ่งเป็นตัวที่ Element14 แนะนำให้ใช้นะครับ
อันดับแรกเราต้องมาเตรียม SD Card ที่ต้องใช้ลง OS กันก่อน ขั้นต่ำก็ควรจะมีอย่างน้อย 4 GB นะครับ โดยจะใช้ Class 4 หรือ Class 10 ก็ได้ (แล้วแต่จะลงทุนกัน) Class 10 ก็จะสามารถส่งข้อมูลได้เร็วกว่าพอสมควร แต่ราคาก็จะสูงกว่านิดหน่อยครับ ผมไปดูข้อมูลในเว็บต่างประเทศ เห็นบางคนก็แนะนำให้ใช้แต่ Class 4 นะ เขาบอกว่าถ้าสูงกว่ารุ่นนี้จะมีปัญหาเรื่องเสถียรภาพการทำงานของ RPi แต่ผมลอง Class 10 แล้วก็ไม่มีปัญหาใดๆ อารมณ์ก็คงจะเหมือนเรา Overclock คอมพิวเตอร์ละครับ ต้องรับความเสี่ยงกันเอาหน่อย แต่เท่าที่ผมลอง So far so good ครับ
ทีนี้เมื่อพร้อมแล้วก็มาจัดการกับ SD Card กันเลย (ขั้นตอนต่อไปนี้จะเหมือนกันการ Format เพื่อลง OPenELEC นะครับ ผมเลยลอกของเก่ามาให้ดู)
เริ่มต้นจากการเสียบทุกอย่างเข้าไปแบบในรูป ยกเว้น SD Card ที่เราต้องเอาไปลงโปรแกรมกันก่อนครับ สิงที่ต้องระวังคือ เสียบอุปกรณ์เยอะแบบนี้ ต้องใช้ USB Hub แบบที่มี Supply แยกนะครับ USB Port ของ RPi ขับได้ตัวสองตัวเท่านั้น แล้วอาการจะออกก็คือมัน Hang บ้าง หรือ Reboot ตัวเองบ้าง
เสียบสารพัดอุปกรณ์แล้วก็มาถึงขั้นต่อไปครับ ไป Download กันเลยครับ แต่จะมีขัั้นตอนเยอะนิดนะครับ
1. ต้อง Format SD Card แล้วจัดการเรื่อง memory ภายในให้ OS สามารถมองเห็นได้ตามขนาดจริงของ SD Card นะครับ แนะนำให้ใช้ SD Formatter ตามนี้จัดการครับ *** ระวัง ตอน Format อย่าเลือก Drive ผิดเด็ดขาดนะครับ จะหาซากเดิมไม่เจอเอา ***
หมายเหตุ ผมลองใช้คลิ๊กขวาแล้ว Format SD card ที่ให้มากับ Windows ปรากฎว่าใช้ไม่ได้นะครับ แผ่น SD จะมองเห็นไม่ครบ ต้องใช้โปรแกรม SD Formatter ที่แนะนำนะครับ
2. ทีนี้ไปที่ http://www.raspberrypi.org/downloads เพื่อ download NOOBS นะครับ อาจจะใหญ่หน่อย ประมาณ 1.3 GB (ที่บ้านผมโหลด 5 ชม.เอง ) ก็ลองไปหาที่ๆ net ไว้ แล้วโหลดดูนะครับ หรือ ไม่งั้นก็ซื้อสำเร็จรูปไปเลยครับ ผมจะลงโปรแกรมไว้ให้เลย ตามนี้ครับ
3. จากนั้นก็ Unzip และเอาไปเก็บไว้ซักที่ จากนั้นก็เข้าไปใน Folder นี้ครับ จัดการ Copy ไฟล์ทั้งหมดมาลงไปใน SD Card ครับ (เอาแต่ไฟล์ข้างในนะครับ Folder นอกสุดไม่เอา)
4. เสร็จแล้วก็เอา SD card ไปเสียบเข้ากับ RPi แล้วเสียบสาย Power ครับ รอซักพัก LED บนตัว RPi จะเริ่มกระพริบ หน้าจอจะเริ่มขึ้นตามภาพด้านล่าง
จากนั้นก็จะเห็นเมนูตามนี้ครับ
ก็ให้เลือกไปที่ Raspbian ตัวแรกเพื่อลง OS ของ RPi ครับ กดไปตามที่ขึ้นมาให้เลือก จากนั้น รอครับ ถ้าซื้อ SD card แบบ Class 4 ก็ไปหาอะไรกินกันก่อนซักมื้อได้ครับ ถ้า Class 10 ก็กาแฟซักแก้ว
เสร็จแล้วจะเจอกับหน้านี้ครับ
5. พอหยุดเราจะเห็น Prompt ของ Linux ขึ้นแบบนี้ครับ
pi@raspberrypi ~$
เป็นอันว่าพร้อมที่จะรับคำสั่งของเราต่อครับ พร้อมแล้วก็พิมพ์ "Startx" (ไม่ต้องมีเครื่องหมายคำพูด) ครับ ระบบก็จะเข้าสู่ raspbian ของจริง ซึ่งเป็น Style คล้ายๆ windows แทนที่จะเป็น text mode ครับ
6. ถึงขั้นนี้เรายังเข้าสู่ Internet ยังไม่ได้ครับ เพราะเรายังไม่ได้ Set up ระบบ Internet ในบทความนี้ผมใช้การเข้า Internet ผ่าน Wifi dongle แบบรูปด้านบนนะครับ รุ่นนี้จะมีระยะการรับได้ไกลกว่า หรือ จะใช้อีกรุ่นก็ได้ครับ ประหยัดพื้นที่ดี วิธีติดตั้งก็ไม่มีอะไร เสียบแล้วใช้ได้เลย แค่เข้าไปเลือก network และกรอก Password ใน Wifi Config ตามรูปครับ
ถ้าเข้า internet ได้ก็จะมี IP Address ขึ้นมาให้เห็นครับ
7. คราวนี้เราต้องมา update software กันหน่อยครับ ไปที่ LXTerminal ตามภาพด้านบนครับ
ก็จะเข้ามาในหน้าต่างรับคำสั่ง และเครื่องหมาย promt ครับ
ให้พิมพ์ "sudo apt-get update"
รอซักพักแล้วตามด้วย "sudo apt-get install"
จากนั้นก็ให้กลับไปทำข้อ 6 ใหม่อีกซักรอบครับ เพราะบางครั้งการ update ต้องทำต่อกันหลายช่วง จาก 1 แล้วต้องไปครั้งที่ 2 ข้ามไปอาจจะ update ไม่สมบูรณ์ ทำให้ต้อง update ซัก 2 ครั้งครับ
8. มาถึงจุดนี้เราก็จะสามารถใช้งาน Raspbian บน RPi กันได้แล้วครับ จะเข้าไปลอง Surf internet หรือ จะลองเปิดโปรแกรม Python ดูก็ได้ครับ (ในครั้งต่อๆไป เราจะมาคุยกันต่อในเรื่องของการต่อเชื่อม RPi กับอุปกรณ์ภายนอกผ่าน GPIO หรือ กล้องกันครับ)
มาถึงตรงนี้ถ้าใครจะใช้งาน RPi แบบแยกอิสระ หมายถึงต่อจอ keyboard mouse และ Wifi dongle และใช้งานเลย ก็เรียบร้อยพร้อมที่จะทำงานกันแล้วครับ
การติดต่อกับ RPi ผ่าน Remote Desktop Connection
แต่ถ้าใครต้องการพัฒนาให้ RPi ติดต่อกับ Hardware ภายนอก ส่วนที่ผมจะสาธิตต่อไปนี้ก็จะมีประโยชน์มากครับ เพราะจะลดจำนวน USB Port แถมสามารถติดตั้งในที่ๆ ห่างออกไปซึ่งสามารถต่อเข้ากับระบบอินเทอร์เน็ตได้ ลองคิดถึงสถานการณ์แบบนี้ครับ สมมุติเราต้องการติดตั้งระบบวัดข้อมูลผ่าน sensor และส่งข้อมูลขึ้นบน Server (หรือแม้กระทั่งจะทำตัว RPi เองให้เป็น Server) เพื่อต้องการดูข้อมูลที่วัดผ่าน Web Browser
หรือในกรณีที่ต้องการติดตั้งกล้องตรวจการณ์บนหุ่นยนต์ หรือ MultiRotor ลักษณะนี้
เราสามารถจัดการระบบ เขียนโปรแกรม หรือ เก็บข้อมูลใน RPi ได้โดยผ่าน Remote Desktop Connection ที่มากับระบบปฏิบัติการ Windows ครับ
มาดูขั้นตอนหลักๆ กันก่อนครับ
โดยปกติการติดต่อกับ RPi ด้วย Remote Desktop นั้น จำเป็นต้องให้ RPi และ Notebook/PC ที่ต้องการติดต่อกันนั้นอยู่บน Network วงเดียวกัน (หมายถึงต่อกันด้วย Router เดียวกัน) จากนั้น Remote Desktop Connection บน Windows PC (ซึงทำหน้าที่เป็น Server) ก็จะเรียก RPi (ซึ่งทำหน้าที่เป็น Client) การเรียกนั้นก็จะระบุโดย IP Address ของ RPi
แต่ก่อนที่จะทำแบบนี้ได้ก็มีขั้นตอนที่สำคัญอยู่ 2 ขั้นครับ
1. การแก้ไขให้ RPi มี Static IP Address แทนที่จะเป็น DHCP ซึ่งเป็น Default ของระบบปฏิบัติการ Raspbian RPi ครับ
2. จากนั้น เราจะลงโปรแกรม XRDP ซึ่งใช้เป็น Protocol ติดต่อและจัดการส่ง/รับข้อมูลภาพ เสียงบน RPi เวลาที่ Remote Desktop Connection จาก Windows เรียกมาครับ
เอาละครับ มาเริ่มที่ขั้นตอนที่ 1 กัน
1. อันดับแรกให้เข้าไปที่ LXTerminal ก่อนครับ แล้วพิมพ์คำสั่ง
cat /etc/network/interfaces
จะเห็นว่ามีบรรทัดนึงแจ้งขึ้นว่า
iface eth0 inet dhcp
ซึ่งหมายถึง RPi กำลังใช้ DHCP ในการกำหนดค่า IP Address อยู่ ดังนั้นในแต่ละครั้งที่ Reboot ก็จะมี IP Address ที่แตกต่างกันไป ทำให้เราไม่สามารถเรียก RPi ด้วย Remote Desktop Connection ครับ เพราะเราจะไม่รู้ IP Address ของ RPi
ตรงนี้แก้ไขโดยขั้นตอนที่ว่านี้ครับ คือจับให้เป็น Static IP ไปเลย ทุกครั้งที่เข้ามาจะได้มี IP Address เดิมครับ
2. ก่อนที่จะเข้าไปกำหนดค่าให้ RPi เราต้องหาข้อมูลระบบของเราก่อนครับ ซึ่งข้อมูลที่ต้องหาประกอบด้วย
- IP Address (ที่ว่างอยู่)
- Broadcast (ค่า IP Address สูงสุดที่ Assign ได้)
- Mask (Subnet Mask Address)
- Gateway Address
- Destination Address
3. ข้อมูลเหล่านี้หาได้จากการสั่งด้วย... (จดใส่กระดาษไว้หน่อยนะครับ เดี๋ยวเราต้องใช้)
ifconfig
และ
netstat -nr
ซึ่งจะได้
อีกนิดครับ ก่อนจะใช้งาน Remote Desktop เราต้องปรับให้ RPi เข้า Raspbian เลย โดยที่เราไม่ต้องสั่ง startx อีก โดยการเข้าไปแก้ที่่ Config ของ RPi ดังนี้ครับ
เข้าไปที่หน้า LXTerminal แล้วพิมพ์
sudo raspi-config
จากนั้นเลือก Desktop Log in as User 'pi' at the graphical desktop ตามภาพด้านล่างครับ
Reboot อีกที ด้วยคำสั่ง
sudo reboot
คราวนี้มาลงโปรแกรมที่ใช้ใน RPi กันอีกนิดครับ
sudo apt-get install xrdp
เสร็จแล้ว reboot ซะหน่อย sudo reboot
5. คราวนี้เราไปที่ Windows กันครับ ผมลองกับ Windows 8 นะครับ ไม่แน่ใจเหมือนกันว่าของคนอื่นจะมี Remote Desktop ให้มาด้วยกับ Windows รึเปล่า ถ้ามีก็ง่ายละครับ ถ้าไม่มีก็ไป download มาได้ครับ ของฟรี จาก Microsoft
6. จากนั้นก็กรอกเลข IP Address แล้วอาจจะปรับตั้งได้อีกหน่อย ขึ้นกับความต้องการขอแต่ละคน และความเร็วของ Internet ครับ
ถ้าเข้าไปได้ ทุกอย่างถูกต้องก็จะเจอหน้านี้นะครับ
มาถึงตรงนี้ให้กรอก
Username : pi
และ Password : raspberry
ซึ่งเป็นค่า Default นะครับ ในกรณีที่ผู้ใช้ไม่ได้เข้าไปแก้ Username / Password
สุดท้าย ให้ลองตรวจสอบความถูกต้องด้วยการสั่ง ping เรียก Gateway ดูนะครับ
ping 192.168.1.1 -c 10
โดย -c10 คือให้ ping ไป 10 ครั้ง
ถ้าตอบกลับมาแบบด้านล่างก็เป็นอันว่าใช้ได้ครับ พร้อมทำงานด้วย RDC
เรียบร้อยครับ คราวนี้เราก็สามารถติดต่อกับ RPi ได้ แค่เสียบ USB Power กับ Wifi Dongle เท่านั้น สะดวกมากๆ ครับ ส่วนตัวแล้วผมชอบวิธีนี้มากๆ เพราะไม่มีสายรกรุงรังของ Keyboard กับ mouse แถมด้วยไม่ต้องมาใช้ USB Hub ที่ต้องจ่ายไฟแยกอีก
ถึงตรงนี้ถ้าทำแล้วไม่ได้อย่างที่ผมเขียน ให้ลองตรวจสอบการทำงานของ wifi dongle นะครับ ลองไปที่ไอคอน Wifi Config ดู แล้วตรวจซะหน่อยว่าเรา Set network ได้เรียบร้อย และยังอยู่ดีรึเปล่า
ฝากไว้อีกนิดครับ การซื้อ Raspberry Pi มาใช้ ผมแนะนำให้ซื้อกับผู้ขายที่ได้ลองใช้งานจริงแล้ว และให้คำปรึกษาได้จะดีกว่านะครับ เพราะมันมีขั้นตอนการติดตั้งเยอะอยู่พอสมควร สินค้าคนละรุ่นก็ต้องการวิธีลงโปรแกรมที่ต่างกัน ถึงแม้จะต่างกันไม่มาก แต่ก็ทำให้ลงไม่ได้เลยครับ อย่าซื้อของที่ราคาถูกเท่านั้นนะครับ (แนะนำในฐานะที่เคยมีประสบการณ์มาบ้าง)
สำหรับสินค้าที่ขายใน Arduitronics.com เราทดสอบแล้ว และเขียนวิธีการทำงานให้ดูเป็นบทความอย่างที่อ่านอยู่นี้ครับ
ลิงค์ที่น่าสนใจ
https://www.modmypi.com/blog/remotely-accessing-the-raspberry-pi-via-rdp-gui-mode
http://razzpisampler.oreilly.com/
http://learn.adafruit.com/setting-up-a-raspberry-pi-with-noobs/boot-your-pi
http://www.themagpi.com/
วันนี้พอแค่นี้ครับ ถ้ามีข้อสงสัย เสนอแนะ หรือ คำถามก็ยินดีนะครับ
โดย Mountain A
หน้านี้เป็นสารบัญของบทความที่ปรากฏในเว็บของ Arduitronics.com นะครับ จะขอแบ่งออกเป็นหัวข้อตามกลุ่มของสินค้าในร้านดังต่อไปนี้
หน้าที่เข้าชม | 15,417,779 ครั้ง |
ผู้ชมทั้งหมด | 5,920,859 ครั้ง |
เปิดร้าน | 21 พ.ค. 2556 |
ร้านค้าอัพเดท | 3 ต.ค. 2568 |