Pi-LED-Control ช่วยให้คุณสามารถควบคุมแถบ LED RGB สีเดียวที่ติดอยู่กับพิน GPIO ของ Raspberry Pi ที่ใช้งาน Pi-blaster (https://github.com/sarfata/pi-blaster) ด้วยเว็บอินเตอร์เฟส
Pi-LED-Control ถูกนำมาใช้เป็น Python Webserver และ WebUI โดยใช้ jQuery และ Bootstrap มันมีหลายโปรแกรม (กำหนดเวลาและกำหนดค่า) เพื่อควบคุมแถบ LED สีเดียว
หากคุณมีแถบ LED สีเดียวคุณต้องเชื่อมต่อกับ Raspberry Pi ของคุณและตั้งค่า Pi-blaster คุณสามารถค้นหาบทช่วยสอนขั้นพื้นฐานเพื่อเชื่อมต่อแถบ LED กับ PI ของคุณภายใต้ https://github.com/s0riak/pi-led-control/blob/master/hardware/hardware.md โปรดทำตามคำแนะนำใน https://github.com/sarfata/pi-blaster
ในกรณีที่นำเข้าล้มเหลวทั้งหมดสามารถติดตั้งด้วย pip3
หากคุณไม่มีแถบ LED สีเดียวคุณสามารถใช้ https://github.com/s0riak/pi-blaster-mock เพื่อเยาะเย้ย
ในการเริ่มต้น Pi-LED-Control ดำเนินการ:
main.py [-h] [-n name] [-p port] [-c configpath] [-l logpath] [-fl {0,10,20,30,30,40,50}] [-cl {0,10,20,30,40,50}] [-atc Accesslogtoconsole]
อาร์กิวเมนต์เสริม:
-H, -HELP แสดงข้อความช่วยเหลือและออกนี้
-n ชื่อ-ชื่อชื่อโฮสต์ชื่อที่ Pi-LED-Control เสิร์ฟ
-p พอร์ต-พอร์ตพอร์ตพอร์ตที่ให้บริการ PI-LED-Control
-c configpath, -configpath configpath พา ธ ไปยังไฟล์ config ที่จะใช้
-l logpath, -logpath logpath เส้นทางไปยังโฟลเดอร์บันทึกที่จะใช้
-fl {0,10,20,30,40,50}, -Fileloglevel {0,10,20,30,40,50} ระดับบันทึกสำหรับ LogFile
-cl {0,10,20,30,40,50}, --Consoleloglevel {0,10,20,30,40,50} ระดับบันทึกสำหรับคอนโซล
-ATC AccessLogToconsole -AccessLogToconsole AccessLogToconsole ตั้งค่าเป็นจริงเพื่อพิมพ์รายการบันทึกการเข้าถึงไปยังคอนโซล
เซิร์ฟเวอร์เริ่มต้นในเครื่องและสามารถเข้าถึง UI ได้ที่ http: // localhost: 9000 หรือพอร์ตที่ระบุ
Pi-LED-Control สร้างไฟล์บันทึกสองไฟล์:
มีหลายโปรแกรมในการควบคุมแถบ LED:
รายการโปรแกรมที่มีอยู่ใน LEDUI นั้นเหมือนกัน แต่การตั้งชื่อแตกต่างกัน แต่พิมพ์ในโปรแกรม CLI
สีปัจจุบันของแถบ LED (เท่าที่รู้จักกับ Pi-LED-control) จะแสดงที่มุมบนขวา
หาก Crossbar (http://crossbar.io) พร้อมใช้งานจะใช้เพื่อผลักดันการอัปเดตสถานะจากเซิร์ฟเวอร์ไปยังไคลเอนต์ผ่าน WebSockets หากคานไม่ได้ติดตั้งไคลเอนต์จะกลับไปสำรวจ
ในการติดตั้งการใช้ Crossbar:
sudo pip3 install crossbar
สิ่งนี้อาจล้มเหลวใน PI เนื่องจาก Libffi-Dev และ LIBSSL-DEV ไม่ได้ติดตั้ง ในกรณีนี้ติดตั้งพวกเขาผ่าน APT-GET
ในการตั้งค่าเวลาของพระอาทิตย์ขึ้น (-โปรแกรม) เวลาของระบบท้องถิ่นจะใช้เวลา ดังนั้นเขตเวลาจะต้องกำหนดค่าอย่างถูกต้องเพื่อปลุกในเวลาที่คาดหวัง:
sudo dpkg-reconfigure tzdata
เพิ่มสิ่งต่อไปนี้ลงในรูท crontab ของคุณเพื่อเริ่มต้น Pi-blaster เมื่อเริ่มระบบของคุณ
@reboot/home/pi/pi-blaster-master/pi-blaster
เพิ่มสิ่งต่อไปนี้ใน Crontab ผู้ใช้ของคุณเพื่อเริ่มการควบคุม Pi-LED-LED เมื่อเริ่มระบบของคุณ
@reboot Python3 /home/pi/pi-led-control/src/main.py
ปุ่ม FLIC (https://flic.io/) สามารถรวมเข้าด้วยกันได้อย่างง่ายดายเพื่อทำตามขั้นตอนที่ https://github.com/50buttonseach/fliclib-linux-hci เพื่อตั้งค่าเซิร์ฟเวอร์สำหรับปุ่มและจับคู่
ในการตั้งค่าการรวมเริ่มต้น binary flic และ: ./flic-integrator.py
สิ่งนี้จะ toogle ระหว่างโปรแกรม "ฟีด" และ "softoff" บนปุ่มใด ๆ ลง หากต้องการเริ่มต้นทั้งสองเมื่อเริ่มต้นเพิ่มสิ่งต่อไปนี้ลงในรูท crontab ของคุณ:
@reboot /bin /sleep 5; /home/pi/fliclib-linux-hci/bin/armv6l/flicd -f /home/pi/flic.sqlite3
และ follwing กับผู้ใช้ crontab ของคุณ:
@reboot /bin /sleep 6; python3 /home/pi/pi- led-control/src/flicintegration/flicintegrator.py
การนอนหลับจำเป็นต้องรอให้ HCI เกิดขึ้นหลังจากบูตระบบ เพื่อหลีกเลี่ยงการรบกวนด้วยบริการบลูทู ธ มาตรฐานปิดการใช้งาน:
sudo update-rc.d Bluetooth ปิดการใช้งาน
หลังจากนั้นเมื่อทุกอย่าง (Flicserver, Flic-Integrator และ LEDServer) กำลังทำงานอยู่และ Flic-Buttons ถูกจับคู่กับ Flicserver (สามารถทำได้กับ Flic ที่เรียบง่ายที่จัดทำโดย Flic) คุณใช้ปุ่มดังต่อไปนี้:
Pi-LED-control กำลังทดสอบเฉพาะใน Ubuntu 15.10 และ Raspbian GNU/Linux 8 (Jessie)
Pi-LED-Control ได้รับอนุญาตภายใต้ GPL และใช้ประโยชน์จากงานต่อไปนี้:
Pi-LED-control สามารถใช้ประโยชน์จาก crossbar.io สำหรับการสื่อสารแบบสองทิศทาง 0. crossbar.io (http://crossbar.io/autobahn/) ได้รับใบอนุญาตภายใต้ใบอนุญาตสาธารณะ GNU Affero ทั่วไป v3.0