บทความการทดลองอื่นๆ

Internet Radio (ฟังวิทยุผ่านอินเตอร์เน็ตด้วย R PI )

 

- โดย Tumrobot

โปรเจ็ค Internet Radio เป็นโครงงานที่นำเอาตัว R PI มาประยุกต์ใช้งานโดยนำมาฟังสถานีวิทยุ ออนไลน์ โดยที่เราสามารถสั่งควบคุม การเปลี่ยนช่องสถานี การเพิ่มลดเสียง ควบคุมให้เล่น หรือหยุดเล่นได้โดยการเพิ่ม Hardware และจอแสดงผล LCD ให้สามารถควบคุมได้ทั้งผ่าน คอมพิวเตอร์ และควบคุมจากภายนอกด้วย ตัว R PI Putty

ตัว R Pi OS ที่เรานำมาทดสอบนั้นเป็น RASPBIAN นะครับ ใครใช้ OS อื่นอยู่อาจต้องลองดูครับ

   

 

รายละเอียดของ Hardware ในแต่ละส่วน

1. Raspberry Pi ทำหน้าที่เป็นตัวประมวลผลหลักที่คอยรับข้อมูล สถานี Radio Streaming มาจาก Internet โดยที่เราจะสามารถเพิ่มหรือลด สถานีเข้าไปได้อย่างไม่จำกัด เพียงแต่ว่า เราต้องทราบ Link URL ของสถานีวิทยุที่ให้บริการทางอินเตอร์เน็ต นอกจากนี้ตัว R Pi ยังทำหน้าที่รับคำสั่ง Hardware ในส่วนของ Switch ควบคุมการเปลี่ยนช่องสถานี การเพิ่มลดเสียง และการ สั่งเล่นเพลง หยุดการเล่นเพลงด้วย อีกทั้งส่งข้อมูลไปที่จอ LCD ให้แสดงชื่อสถานี และระดับความดังของเสียง

ใน Version ทดลองนี้เราทำการรับสัญญาณ Steaming จากวิทยุออนไลน์ ผ่านทางระบบ LAN ซึ่งถือว่ามีความเสถียรภาพที่น่าพอใจ โดยใน Version ต่อไปนั้น ทางเราตั้งใจที่จะทดสอบรับสัญญาณ Straming ผ่านทาง WiFi ดู

ข้อดีของตัว R Pi ก็คือเราสามารถสั่งควบคุมการเล่นหรือหยุดเล่นของวิทยุออนไลน์ ผ่านทาง การ Remote ได้จากระยะไกลก็ได้โดยที่ไม่จำเป็นต้องสั่งควบคุมผ่านทาง Hardware แต่เพียงอย่างเดียว

2. Hardward และ Switch ควบคุม เราทำการต่อ GPIO ของ R PI ได้โดยตรงเลยครับ โดย รายละเอียดการต่อ ทำได้ดังต่อไปนี้

 

Pin GPIO สำหรับ LCD

LCD_RS = 25
LCD_E = 24
LCD_D4 = 23
LCD_D5 = 17
LCD_D6 = 27
LCD_D7 = 22

Pin GPIO สำหรับปุ่มกด

NEXT = 18
PREV = 4
VOL_UP = 11
VOL_DOW = 8
PLAY = 7
STOP = 10

* หมายเหตุ ตัวปุ่มกด นั้นให้ทำการ Pull Up ด้วยค่า R 10K ด้วย

3. Tool ที่ต้องเตรียมสำหรับ ติดตั้ง Internet Radio package บน R Pi ( กดดาวน์โหลดจากชื่อโปรแกรมได้เลยครับ )

- WinSCP 5.7 สำหรับใช้วางไฟล์ ใน R Pi

- PuTTy สำหรับใช้สั่งงานแบบ Linux Command Line

- Advanced IP Scanner สำหรับใช้ตรวจสอบ IP ของ R Pi ในระบบ Network ของเรา

- Tapinradio สำหรับใช้ค้นหา URL ของสถานีวิทยุ เพื่อที่จะนำมา Add เข้าไปในวิทยุของเรา

 

การติดตั้ง package internet radio สามารถทำได้ดังต่อไปนี้

1. หลังจากที่ต่อสาย LAN เข้ากับ R Pi และจ่ายไฟให้กับ บอร์ดเรียบร้อยแล้ว ให้เปิดโปรแกร Advanced IP Scanner ขึ้นมาเพื่อค้นหาว่า R Pi ในระบบเน็ตเวิร์คของเราอยู่ที่ IP อะไร

   

 

2. หลังจากที่เราได้ IP ของตัว R PI ในระบบเราแล้วให้ทำการเปิดโปรแกรม WinSCP ขึ้นมาเพื่อที่จะทำการวางไฟล์ Internet Radio ลงไปในตัว R Pi ทำการ กรอก IP ของ R Pi ของเรา และ Port Number เป็น 22

Username: pi

Password: raspberry

   

 

ทำการ Save แล้วกด Save password เพื่อให้สามารถใช้งานได้ครั้งต่อไปได้อย่างสะดวก

   

 

 

กด Yes ไปเลยครับ

จากนั้นให้ทำการ Copy ไฟล์ Radio.py สามารถดาวน์โหลดได้จาก ที่นี่ เข้าไปไว้ในหน้าแรกดังรูป

   

 

จากนั้นให้เปิดโปรแกรม PuTTY และทำการ กรอก IP ของ R Pi ของเรา และ Port Number เป็น 22

   

 

หลังจากนั้นโปรแกรมก็จะแสดงประมาณนี้ เราสามารถ Log in ได้ด้วย

Username: pi

Password: raspberry

   

 

ก่อนอื่นทำการ update R pi ก่อนด้วย Command

suudo apt-get update

ทำการติดตั้ง MPC Package สำหรับ Internet Radio โดย Command

sudo apt-get install mpd mpc

   

 

ตอบ Y ถ้ามีคำถามว่า ต้องการเพิ่มไฟล์ลงบน disk

   

 

หลังจากนั้นให้ทำการติดตั้ง package alsa-utils ด้วย Command

sudo apt-get install alsa-utils

   

ทำการเพิ่ม สถานีวิทยุ และสั่งงานต่างๆ ด้วยคำสั่งดังต่อไปนี้

mpc add + URL ของช่องสถานีที่ต้องการเพิ่ม เช่น

mpc add http://203.150.224.142:8000 (เป็นการเพิ่มสถานีของช่อง Cool Fahrenheit 93 FM)

mpc add http://server1.thairadioservice.com:8294 (เป็นการเพิ่มสถานีช่อง Chiang Mai Radio 93.75)

 

mpc playlist คำสั่งดูว่ามีสถานีไหนบ้างที่เรา Add ไว้แล้ว

mpc del 1 คำสั่งลบสถานีที่ 1 ใน Playlist ของเรา

mpc play คำสั่งเล่นสถานีปัจจุบัน

mpc play 3 คำสั่งเปิดสถานีตำแหน่งที่ 3 ใน Playlist ของเรา

mpc stop คำสั่งหยุดการเล่นเพลง

mpc next คำสั่งเปิดสถานีถัดไป

mpc prev คำสั่งเปิดสถานีก่อนหน้า

 

ขั้นตอนการ สั่งให้ปุ่มกดและ LCD ทำงานสามารถสั่งได้จาก Command ต่อไปนี้

sudo python radio.py

   

แต่ตัว Python ตัวนี้จะทำงานก็ต่อเมื่อเราเปิดโปรแกรม PuTTY เอาไว้ ซึ่งถ้าหากว่าเราปิด PuTTY จะทำให้ไม่สามารถ ใช้การควบคุม ปุ่มกด ได้

 

เทคนิคการหา URL ช่องสถานีอื่นๆ เพื่อเพิ่มลงไปใน Internet Radion ของเรา

ทำการเปิดโปรแกรม Tapinradio แล้วเลือกสถานีตามแต่ละสถานที่ เช่น

   

จากนั้นเราก็ทำการจด URL ของสถานี้นั้นๆ เพื่อมา Add ลงบน วิทยุออนไลน์ ของเรา

   

เพียงเท่านี้เราก็สามารถทำ Internet Radion เอาไว้ฟังสถานีที่เราต้องการได้แล้วครับ

อ่านต่อ ตอนที่ 2