MCP23017 การควบคุม GPIO ผ่านอีเทอร์เน็ต: 5 ขั้นตอน
MCP23017 การควบคุม GPIO ผ่านอีเทอร์เน็ต: 5 ขั้นตอน
Anonim
MCP23017 การควบคุม GPIO ผ่านอีเธอร์เน็ต
MCP23017 การควบคุม GPIO ผ่านอีเธอร์เน็ต
MCP23017 การควบคุม GPIO ผ่านอีเธอร์เน็ต
MCP23017 การควบคุม GPIO ผ่านอีเธอร์เน็ต

ควบคุม MCP23017 IO-extender ผ่านอีเธอร์เน็ตโดยใช้ Sensor Bridge และ MCP23017 แยกบอร์ด คำสั่งที่ส่งโดยสคริปต์ Python, URL ของเบราว์เซอร์ หรือระบบใดๆ ที่สามารถสื่อสารผ่าน HTTP สามารถรวมเข้ากับ Home Assistant สำหรับระบบอัตโนมัติภายในบ้านได้

สายไฟเชื่อมต่อกับขั้วต่อแคลมป์ Phoenix Connector สถานะ GPIO จะแสดงด้วยไฟ LED ที่อยู่สามารถเลือกได้ตั้งแต่ 0x20 ถึง 0x27 GPIO BoB สามารถติดตั้งบนราง DIN ได้ Sensor Bridge มีครีบยึด

เสบียง

การออกแบบ Kallio - สะพานเซ็นเซอร์ดิจิตอล (Ethernet ถึง I2C):https://kalliodesigns.com/product/532003/

Kallio Designs MCP23017 แยกบอร์ด (I2C GPIO BoB):https://kalliodesigns.com/product/532013/

8 - 26 V, 2 W แหล่งจ่ายไฟ

สายอีเทอร์เน็ต

ขั้นตอนที่ 1: การเชื่อมต่อกับ Ethernet กับ I2C Sensor Bridge

การเชื่อมต่อกับ Ethernet กับ I2C Sensor Bridge
การเชื่อมต่อกับ Ethernet กับ I2C Sensor Bridge
การเชื่อมต่อกับ Ethernet กับ I2C Sensor Bridge
การเชื่อมต่อกับ Ethernet กับ I2C Sensor Bridge

เชื่อมต่อพิน 3 และ 4 กับพิน SCL และ SDA บน MCP23017 แยกบอร์ดสำหรับบัส I2C

เชื่อมต่อพิน 5 และ 6 ถึง +5 V และพิน GND บนบอร์ดแยก MCP23017 นี้จะให้พลังงานสำหรับหน่วย

ขั้นตอนที่ 2: เชื่อมต่ออีเธอร์เน็ตและจ่ายไฟให้

เชื่อมต่ออีเทอร์เน็ตและจ่ายไฟให้
เชื่อมต่ออีเทอร์เน็ตและจ่ายไฟให้

หากคุณมีการจ่ายไฟผ่านอีเทอร์เน็ต (PoE) ให้ต่อสายอีเทอร์เน็ต คุณยังสามารถใช้หัวฉีด ทั้งสองยูนิตควรเปิดเครื่อง อินเทอร์เฟซ PoE มาตรฐานสามารถจ่ายไฟให้ทั้งสองยูนิตได้

หากคุณไม่มี PoE ให้เชื่อมต่อสายอีเทอร์เน็ตและแหล่งจ่ายไฟ 8-26 V, 2 W เข้ากับพิน 1 (GND) และ 2 (แรงดันบวก)

คุณควรเห็นไฟ LED แสดงสถานะสีเขียวติดสว่าง เช่นเดียวกับไฟ LED พอร์ตอีเธอร์เน็ตที่แสดงการรับส่งข้อมูล

ขั้นตอนที่ 3: การตั้งค่า

ตรวจสอบให้แน่ใจว่าพีซีหรืออุปกรณ์ควบคุมอื่นๆ ของคุณอยู่ในเครือข่าย LAN เดียวกันกับ Sensor Bridge

ใช้สวิตช์จุ่มบนบอร์ดแยกเพื่อตั้งค่าที่อยู่ I2C (ฐานสิบหกเริ่มต้น 0x20 ซึ่งแปลเป็นทศนิยม 32)

ขั้นตอนที่ 4:

ภาพ
ภาพ
ภาพ
ภาพ

คำสั่งต่างๆ ได้อธิบายไว้ในคู่มือผู้ใช้ Sensor Bridge ตัวเลือกง่ายๆ คือการใช้คำสั่งในตัวเพื่อหลีกเลี่ยงการตั้งค่ารีจิสเตอร์หลายรายการสำหรับฟังก์ชัน

การเรียกดู "192.168.1.195/MCP27OA41" จะทำให้พิน A4 สูง คุณจะเห็น LED A4 ติดสว่างที่ LED ด้านขวามือ การเรียกดู "192.168.1.195/MCP27IA4" จะอ่านพินเดียวกันและแสดงสถานะบนเบราว์เซอร์ ไฟ LED จะสว่างขึ้นด้วยหากตั้งพินไว้สูงจากภายนอก

ขั้นตอนที่ 5: การเขียนสคริปต์ด้วย Python หรือภาษาอื่นๆ

การเขียนสคริปต์ด้วย Python หรือภาษาอื่นๆ
การเขียนสคริปต์ด้วย Python หรือภาษาอื่นๆ

ในการสร้างตรรกะเพิ่มเติมให้กับโครงการ คุณสามารถใช้ Python urllib เพื่อส่งคำสั่ง วิธีอ่านสถานะพิน A4:

นำเข้า urllib.requestprint(urllib.request.urlopen("https://192.168.1.190/MCP27IA4").read())input("กด Enter เพื่อออก")

หรือคุณสามารถใช้ curl เพื่อใช้อินเทอร์เฟซ I2C ได้โดยตรง ในการตั้งค่าพินทั้งหมดในพอร์ต A เป็นเอาต์พุต:

ม้วนงอ 192.168.1.195/I2CSTA027curl 192.168.1.195/I2CW00curl 192.168.1.195/I2CW00curl 192.168.1.195/I2CSENDS

คำสั่งเดียวกันสามารถส่งจากอินเทอร์เฟซใดก็ได้ที่มีผลลัพธ์เหมือนกัน ซึ่งเหมาะกับโครงการของคุณมากที่สุด

แนะนำ: