มาเล่น GPIO บน Raspbery Pi กัน

เขียน Blog เรื่อง Raspberry Pi ไปหลายตอนเพิ่งนึกออกว่าไม่เคยเขียนเรื่อง GPIO สักที เรียกใช้ Python Module ตลอด 😛 ครั้งนี้ก็เลยมาลองใช้งาน GPIO บ้าง GPIO เป็น digital interface ที่เราสามารถกำหนดโหมดเป็น input หรือ output ได้ ทำให้เราสามารถอ่านค่าแะส่งค่าได้ แต่เป็น digital นะครับ หน้าตา GPIO เป็นแบบนี้ จำนวน GPIO pin จะไม่เท่ากัน ถ้าใครใช้ Raspberry Pi A,B ก็จะมีจำนวนน้อยหน่อย สำหรับ Raspberry Pi B+ มี GPIO ให้เลือกใช้มากขึ้น

ก่อนจะเขียนโปรแกรม เราต้องติดตั้ง python module ชื่อ rpi.gpio กันก่อน ดังนี้
sudo apt-get install python-rpi.gpio
Continue reading มาเล่น GPIO บน Raspbery Pi กัน

มาเล่น Raspberry Pi กับ DHT22 กัน

ครั้งที่แล้ว blog เรื่อง Raspberry Pi B+ ที่ซื้อมากองไว้ แต่ช่วงนี้คงได้หยิบเอามาเล่นบ่อยมากขึ้น เพราะเด็กฝึกงานที่สำนักงานฯ ทำโครงงานสหกิจศึกษาเกี่ยวกับ Raspberry Pi ก็เลยมีแรงสนใจขึ้นมาบ้าง โดยส่วนตัวแล้วไม่ค่อยชอบ Raspberry Pi นัก เพราะมันเป็น computer ขนาดเล็กมากกว่า เอาเป็นว่าหยิบมาเล่นแล้วก็ลองมาทำอะไรสนุกๆ กันดูบ้าง ผมมี DHT22 เป็น temperature + humid sensor ในตัวเดียวกัน และที่สำคัญเป็น digital sensor ใช้งานกับ Raspberry Pi ได้โดยตรง ไม่ต้องแปลงข้อมูลอะไรมากนัก เรามาลองอ่านค่าจาก DHT22 กัน
DHT22 ใช้ไฟ 3.3-5V DC มี 4 ขา เราจะใช้ ขาที่ 1,2 และ 4 โดยต่อวงจรดังภาพ

จากภาพเราจะอ่านค่า temperature จาก GPIO4 ของ Raspberry Pi และเราจะใช้ Python Module สำหรับอ่านค่าจาก DHT22 ไว้ของ Adafruit Industry ก่อนอื่น compile python module นี้กันก่อน
apt-get update
sudo apt-get install build-essential python-dev
git clone https://github.com/adafruit/Adafruit_Python_DHT.git
cd Adafruit_Python_DHT
sudo python setup.py install
จากนั้นลองทดสอบ อ่านค่าอุณหภูมิดู
cd example
sudo ./AdafruitDHT.py 22 4
เราจะได้ค่าอุณหภูมิและความชื้นมา
Temp=30.8*C Humidity=66.7%
ลองเขียน code กันดูบ้าง

จากนั้นลอง run ดูจะได้ผลลัพท์ดังนี้