Image1

สวัสดีครับ EZ style ตอนนี้ จะไม่ค่อย EZ เท่าไหร่แล้วนะครับ โดยเราจะนำความรู้ 2 ตอนก่อนหน้านี้มายกระดับ ด้วยการส่งมันขึ้นไปบน LAN ซึ่งจะทำให้เราสามารถควบคุม BBB ผ่าน browser ของเราได้ ซึ่งนั่นก็หมายความว่า เราจะทำการเปิดปิดไฟ  LED ผ่าน web browser กัน เราไปดูวิธีทำพร้อมๆกันเลยครับ

จากคราวที่แล้วที่เราเปิดปิดไฟ LED ด้วย python บน BBB แล้วเราก็จะมาลองเปิดปิดไฟ LED ผ่าน browser แทนนะครับ โดยเราจะใช้ web.py library ของ python เปลี่ยน BBB ให้เป็น webserver เพื่อมาแฮนเดิล request ครับโดยเราจะแบ่งขั้นตอนแบบนี้นะครับ

Step 1 : ติดตั้งอุปกรณ์ที่จำเป็นในการสร้าง webserver ให้ใช้คำสั่ง

sudo apt-get update

sudo apt-get install build-essential python-dev python-setuptools python-pip python-smbus -y

pip install Adafruit_BBIO

pip install web.py

 

เหมือนเดิมนะครับ apt-get update ยังคงเป็นคำสั่งที่ใช้เรื่อยๆ ในขณะที่บรรทัดต่อมา เป็นการ install python และอุปกรณ์เสริมนะครับ ส่วน pip ข้างล่าง เป็นการติดตั้ง library ของ python ที่มีคนเขียนไว้ให้ครับ ซึ่ง Adafruit_BBIO เป็น library บน python ที่ใช้สำหรับ GPIO ของ BBB

และเรามีวิธีตรวจสอบ library ของ python ว่าติดตั้งเรียบร้อยมั้ยด้วยคำสั่งข้างล่างนี้ครับ

python

import web

import Adafruit_BBIO.GPIO

ซึ่งเมื่อลองพิมพ์ลงไปบน terminal ก็จะได้ดังรูปครับ

212

การพิมพ์ python บน terminal ถือเป็นการเริ่มการทำงานโปรแกรมแล้ว เมื่อเรา import library หาก Library นั้นๆ ไม่ได้ทำการติดตั้งไว้ terminal ก็จะฟ้อง error ออกมาให้เราครับ

Step 2: ดาวน์โหลดไฟล์ main.py เพื่อนำไป run บน BBB

python main.py 1234

การพิมพ์ python [filename] [port] เป็นการ run ไฟล์นั้นๆไปที่พอร์ตเชื่อมต่อหมายเลขนั้นครับ เมื่อ BBB พร้อมทำงาน terminal ก็จะขึ้นมาดังรูป

123

เท่านี้ BBB ของเราก็จะพร้อมรับ request จากภายในวง LAN แล้วครับโดยใน main.py ของเราเขียนไว้ให้รับ request ดังนี้

http://IPofyourBeaglebone:1234/add?name=BBBpin1&pin=P8_14

ในส่วนของ URLs ด้านบนเป็นการประกาศขา pin ที่จะเปิดปิดไฟให้โปรแกรมของเราได้ทราบขาและชื่อของมันครับ ก็จะได้ว่า ขา P8_14 ให้เป็นชื่อ BBBpin1 (ต่อไปนี้ถ้าจะเรียกใช้ pin นี้ก็คือ BBBpin1 นั้นเอง)

http://IPofyourBeaglebone:1234/sw?name=BBBpin1

ต่อมาในส่วนของการทำงานเราใช้วิธีเปิดปิดแบบ toggle นะครับ คือเมื่อเราพิมพ์ดัง URLs ข้างบนขา BBBpin1 ก็จะทำการเปิดหรือปิดให้ตรงข้ามกับที่มันเป็นอยู่ครับ และนี่ก็การเปลี่ยน BBB เป็น webserver ด้วย python แบบง่ายๆที่เรานำมาทำให้เพื่อนๆได้ดูกัน แล้วมาพบกันใหม่ในตอนหน้านะครับ :)

Leave a Reply

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