สารบัญ:

เชื่อมต่อ RevPi Core ของคุณ + RevPi DIO กับ Ubidots: 8 ขั้นตอน
เชื่อมต่อ RevPi Core ของคุณ + RevPi DIO กับ Ubidots: 8 ขั้นตอน

วีดีโอ: เชื่อมต่อ RevPi Core ของคุณ + RevPi DIO กับ Ubidots: 8 ขั้นตอน

วีดีโอ: เชื่อมต่อ RevPi Core ของคุณ + RevPi DIO กับ Ubidots: 8 ขั้นตอน
วีดีโอ: Kunbus รุ่น Rev Pi DIO ช่วยให้การทำงานของ I/O มีเสถียรภาพสูงขึ้น 2024, กรกฎาคม
Anonim
เชื่อมต่อ RevPi Core + RevPi DIO ของคุณกับ Ubidots
เชื่อมต่อ RevPi Core + RevPi DIO ของคุณกับ Ubidots

Revolution Pi เป็นพีซีอุตสาหกรรมแบบเปิด แบบแยกส่วน และทนทาน โดยยึดตาม Raspberry Pi ที่เป็นที่ยอมรับ โดยเป็นไปตามมาตรฐาน EN61131-2 เมื่อติดตั้ง Raspberry Pi Compute Module แล้ว ฐาน RevPi Core สามารถขยายได้อย่างราบรื่นโดยใช้โมดูล I/O และเกตเวย์ fieldbus ที่เหมาะสมสำหรับการจัดการพลังงาน การตรวจสอบกระบวนการ ความสมบูรณ์ของเครื่อง และอื่นๆ

Rev Pi Core เป็นพื้นฐานสำหรับแอปพลิเคชันใดๆ และขึ้นอยู่กับข้อกำหนด I/O โมดูลส่วนขยาย เช่น RevPi DIO, RevPi AIO, RevPi Gates สามารถต่อเข้ากับโมดูลดิจิทัล แอนะล็อก หรือเกตเวย์ได้

ในบทช่วยสอนนี้ เราจะให้รายละเอียดเกี่ยวกับการผสานรวม RevPI DIO เพื่อแสดงภาพและควบคุมสัญญาณเอาต์พุตไปยังเครื่องหรือแอปพลิเคชันของคุณด้วย Ubidots โมดูล I/O ดิจิตอล RevPi DIO มาพร้อมกับอินพุตดิจิตอล 14 ช่องและเอาต์พุต 14 ช่อง, PWM (การปรับความกว้างพัลส์) และอินพุตตัวนับ สำหรับรายการฟังก์ชันโดยละเอียดสำหรับ RevPI DIO โปรดดูโบรชัวร์ผลิตภัณฑ์ Revolution Pi

ขั้นตอนที่ 1: ข้อกำหนด

  • สายอีเธอร์เน็ต
  • แหล่งจ่ายไฟ 24 V
  • RevPi Core
  • RevPi DIO
  • บัญชี Ubidots - หรือ - ใบอนุญาต STEM

ขั้นตอนที่ 2: การตั้งค่าฮาร์ดแวร์

ตามการตั้งค่าอุปกรณ์ใหม่ เราขอแนะนำให้ทำความคุ้นเคยกับคู่มือเริ่มต้นฉบับย่ออย่างเป็นทางการของ RevPi Core + RevPi DIO โดย Revolution Pi จากนั้น ให้แน่ใจว่าคุณประกอบ RevPi Core + DIO อย่างถูกต้องโดยอ้างอิงบทความด้านล่างสำหรับรายละเอียดเพิ่มเติม ตามความจำเป็น

  • เชื่อมต่อ RevPi Core ของคุณกับ Ubidots
  • การเชื่อมต่อโมดูล
  • การติดตั้งโมดูลบนราง DIN
  • การเชื่อมต่อแหล่งจ่ายไฟ
  • ไฟ LED แสดงสถานะ DIO
  • ดิจิตอลอินและเอาท์พุต
  • การกำหนดค่า RevPi DIO
  • กำลังอัปเดตเฟิร์มแวร์บนโมดูล (เจสซี)

เมื่อ RevPi Core + RevPi DIO ของคุณได้รับการกำหนดค่า ขับเคลื่อนอย่างถูกต้อง และเชื่อมต่อกับอินเทอร์เน็ตแล้ว เราก็สามารถอัปโหลดเฟิร์มแวร์ต่อไปได้

ขั้นตอนที่ 3: การตั้งค่าเฟิร์มแวร์

1. ก่อนอื่น เราต้องมีสิทธิ์เข้าถึงอินพุตและเอาต์พุตของ Revolution Pi โมดูล "python3-revpimodio" ให้การเข้าถึง IO ทั้งหมดของ Revolution Pis และสามารถตั้งโปรแกรมได้ง่ายมากด้วย Python3

ตามภาพที่ติดตั้งใน RevPi Core ของคุณอ้างอิงคู่มือนี้เพื่อทำการติดตั้งอย่างถูกต้อง หากคุณมี Jessie Image บนแกนหลักของคุณ เพียงติดตั้งโมดูลจากที่เก็บ Kunbus ที่รันคำสั่งด้านล่างใน RevPi Terminal:

อัปเดตแพ็คเกจระบบ: sudo apt-get update

ติดตั้ง: sudo apt-get install python3-revpimodio2

อัปเดตการแจกจ่าย (ทั้งหมด): sudo apt-get dist-upgrade

2. จากนั้น ติดตั้งโมดูลคำขอสำหรับ python3 โดยเรียกใช้คำสั่งด้านล่างในเทอร์มินัล RevPi Core:

sudo apt-get ติดตั้ง python3-requests

3. เมื่อแต่ละคำสั่งด้านบนเสร็จสิ้น ให้ตรวจสอบทุกอย่างถูกต้องโดยเปิด Python3 ลงในเทอร์มินัล RevPi Core ของคุณและนำเข้าโมดูลที่ติดตั้งไว้ก่อนหน้านี้ เปิด Python3 โดยเรียกใช้คำสั่งด้านล่างในเทอร์มินัล RevPi Core:

python3

เมื่อคุณเข้าถึง Python3 แล้ว ให้นำเข้าโมดูล "revpimodio2" และ "requests" ดังที่แสดงด้านล่าง:

นำเข้า revpimodio2

คำขอนำเข้า

หากได้รับและข้อความแสดงข้อผิดพลาดหลังจากนำเข้าโมดูล ให้ตรวจสอบปัญหาที่แสดงและลองอีกครั้ง

ขั้นตอนที่ 4: ตั้งค่า Pictory

ตั้งค่า Pictory
ตั้งค่า Pictory
ตั้งค่า Pictory
ตั้งค่า Pictory
ตั้งค่า Pictory
ตั้งค่า Pictory
ตั้งค่า Pictory
ตั้งค่า Pictory

PiCtory ให้คุณเชื่อมโยงโมดูล RevPi หลายโมดูล ควบคู่ไปกับ PiBridge ที่เชื่อมโยงโมดูลเข้าด้วยกัน เพื่อสร้างไฟล์การกำหนดค่า ไฟล์จะต้องแจ้งให้ RevPi Core ของคุณทราบว่าโมดูลใดจะอยู่ในตำแหน่งใดและการตั้งค่าพื้นฐานใดบ้างที่โมดูลมี เพื่อให้ได้แนวคิดที่ดีขึ้นว่ามันทำงานอย่างไร ลองดูวิดีโอนี้

1. เปิดเว็บเบราว์เซอร์ของคุณและป้อนที่อยู่ IP ของ RevPi Cores ของคุณในแถบที่อยู่ของเบราว์เซอร์ จากนั้น คุณจะเห็นหน้าต่างการเข้าสู่ระบบ เพื่อป้อนกำหนดชื่อผู้ใช้และรหัสผ่านตามที่ระบุไว้ ข้อมูลรับรองการเข้าสู่ระบบสามารถพบได้ที่ด้านข้างของ RevPi ของคุณ

  • ชื่อผู้ใช้: admin
  • รหัสผ่าน: คุณจะพบมันบนสติกเกอร์ที่ด้านข้างของ RevPi Core ของคุณ

จากนั้นเข้าสู่ส่วน "แอป"

2. ในการเริ่มต้นด้วยการตั้งค่า Pictory ให้กดปุ่มสีเขียวที่เรียกว่า "START"

3. จากแค็ตตาล็อกอุปกรณ์ ให้เลือกเวอร์ชันของ RevPi Core ของคุณและกำหนดให้กับบอร์ดการกำหนดค่า จากนั้นกำหนด RevPi DIO ที่ด้านขวาของ RevPi Core อย่าลืมเชื่อมต่อ RevPi Core ทางด้านขวาของ RevPi Core ของคุณโดยใช้ PiBridge

หมายเหตุสำคัญ: ตำแหน่งของโมดูลที่กำหนดในการกำหนดค่า PiCtory จะต้องเหมือนกันในโลกทางกายภาพจึงจะสามารถสร้างไฟล์การกำหนดค่าได้อย่างถูกต้อง

3. เมื่อคุณมีโมดูลที่จำเป็นที่กำหนดในบอร์ดการกำหนดค่าแล้ว ให้ตรวจสอบชื่อของพินที่เราจะใช้ด้านล่าง คุณจะพบโค้ดตัวอย่างสองโค้ดที่ให้มา โค้ดหนึ่งใช้สำหรับส่งค่าจากอินพุตการอ่านของ RevPi DIO และอีกโค้ดหนึ่งใช้สำหรับควบคุมเอาต์พุตของ RevPi DIO

อินพุตที่เราจะใช้คืออินพุต 1 ดูแผนภาพพินเอาต์ด้านบน

จากส่วนตัวแก้ไขค่า ให้ตรวจสอบว่าชื่อที่กำหนดสำหรับอินพุต 1 คือ "I_1" ตามที่แสดงในรูปภาพด้านล่างหรือไม่ หากไม่ใช่ โปรดกำหนด หากคุณข้ามขั้นตอนนี้ รหัสเฟิร์มแวร์จะพลาดการอ่านพินนี้

เอาต์พุตที่เราจะใช้คือเอาต์พุต 1 ดูแผนภาพพินเอาต์ด้านบน

จากส่วน Value Editor ให้ตรวจสอบว่าชื่อที่กำหนดให้กับเอาต์พุต 1 คือ "O_1" ตามที่แสดงในรูปภาพด้านล่าง หากไม่ใช่ โปรดกำหนด หากคุณข้ามขั้นตอนนี้ รหัสเฟิร์มแวร์จะพลาดเอาต์พุตนี้ และคุณจะไม่สามารถถ่ายทอดการควบคุมได้

ขั้นตอนที่ 5: การส่งข้อมูลไปยัง Ubidots

การส่งข้อมูลไปยังอูบิดอต
การส่งข้อมูลไปยังอูบิดอต
การส่งข้อมูลไปยังอูบิดอต
การส่งข้อมูลไปยังอูบิดอต

1. ในการเริ่มต้นเขียนเฟิร์มแวร์ของคุณ ให้สร้างสคริปต์ Python ในเทอร์มินัล RevPi Core เราจะใช้โปรแกรมแก้ไขนาโนเพื่อสร้างสคริปต์ใหม่ เมื่อต้องการทำสิ่งนี้ให้รันคำสั่งด้านล่าง:

nano ubidots_revpi.py

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

2. คัดลอกและวางโค้ดตัวอย่างด้านล่างลงในโปรแกรมแก้ไขนาโน เมื่อวางแล้ว กำหนด Ubidots Token ของคุณตามที่ระบุไว้ในสคริปต์ อ้างอิงที่นี่เพื่อขอความช่วยเหลือในการค้นหาโทเค็น Ubidots ของคุณ

ในโค้ดตัวอย่างนี้ เราจะอ่านอินพุต 1 (I_1) ของโมดูล RevPi DIO เพื่อส่งสถานะไปยังระบบคลาวด์ของ Ubidots เพื่อให้สามารถตรวจสอบและสร้างการเตือนตามค่าข้อมูลที่ได้รับ

หมายเหตุ: หากต้องการบันทึกสคริปต์ลงในโปรแกรมแก้ไขนาโน - กด Ctrl+o ยืนยันชื่อไฟล์ที่จะเขียน (ubidots_revpi_di.py) แล้วกด Enter หากต้องการปิดตัวแก้ไขนาโน ให้กด Ctrl+x

3. ตอนนี้ มาทดสอบสคริปต์กัน เรียกใช้สคริปต์ที่สร้างไว้ก่อนหน้านี้ในเทอร์มินัล RevPi:

python3 ubidots_revpi_di.py

เมื่อสคริปต์เริ่มทำงาน คุณจะเห็นการตอบกลับรหัสสถานะสำเร็จจากเซิร์ฟเวอร์ Ubidots

4. ไปที่บัญชี Ubidots ของคุณและตรวจสอบว่าได้รับข้อมูลแล้ว คุณจะเห็นอุปกรณ์ใหม่ที่สร้างขึ้นโดยอัตโนมัติในส่วนอุปกรณ์ โดยที่ชื่ออุปกรณ์เป็นที่อยู่ MAC ของ RevPi Core ของคุณ ให้อ่านสำหรับการเปลี่ยนชื่อ

ไม่ชอบที่อยู่ MAC เป็นชื่ออุปกรณ์ของคุณในการแสดงผล Ubidots ของคุณหรือไม่ ไม่ต้องกังวล! คุณสามารถเปลี่ยนชื่อเป็นชื่อที่เป็นมิตรมากขึ้นได้ แต่ป้ายกำกับอุปกรณ์จะยังคงเป็นที่อยู่ MAC เพื่อไม่ให้สับสนว่าอุปกรณ์ใดเป็นเครื่องใด อ้างอิงถึงศูนย์ช่วยเหลือของ Ubidots สำหรับข้อมูลเพิ่มเติมเกี่ยวกับฉลากอุปกรณ์และการเปลี่ยนชื่ออุปกรณ์ใน Ubidots

คลิกที่อุปกรณ์ใด ๆ ในส่วนอุปกรณ์ของคุณเพื่อดูตัวแปรที่บันทึกและส่งไปยัง Ubidots จากเฟิร์มแวร์ตัวอย่างของเรา อย่างที่คุณเห็น โค้ดตัวอย่างของเราได้จัดเตรียมตัวแปรตัวตรวจจับการเคลื่อนไหว

ขั้นตอนที่ 6: การพัฒนาแอปพลิเคชันตัวนับหน่วย

การพัฒนาแอปพลิเคชันตัวนับหน่วย
การพัฒนาแอปพลิเคชันตัวนับหน่วย
การพัฒนาแอปพลิเคชันตัวนับหน่วย
การพัฒนาแอปพลิเคชันตัวนับหน่วย
การพัฒนาแอปพลิเคชันตัวนับหน่วย
การพัฒนาแอปพลิเคชันตัวนับหน่วย
การพัฒนาแอปพลิเคชันตัวนับหน่วย
การพัฒนาแอปพลิเคชันตัวนับหน่วย

ตอนนี้สถานะอินพุตของคุณกำลังอัปเดตในบัญชี Ubidots ของคุณ มาเริ่มเล่นด้วยฟีเจอร์ Ubidots เพื่อออกแบบและปรับใช้แอปพลิเคชันของคุณ ในบทช่วยสอนนี้ เราจะปรับใช้ตัวนับหน่วยสำหรับกล่องที่เคลื่อนที่ผ่านสายอุปทาน

ขั้นแรก เราจะสร้างตัวแปรหน้าต่างกลิ้ง ซึ่งให้เราคำนวณค่าเฉลี่ย สูงสุด ต่ำสุด ผลรวม และจำนวนตัวแปรอื่นๆ ในกรณีนี้คือตัวแปรที่สร้างไว้ก่อนหน้านี้ (ตัวตรวจจับการเคลื่อนไหว) สำหรับคู่มือนี้ เราจะคำนวณผลรวมของตัวตรวจจับความเคลื่อนไหวแบบแปรผันทุกนาทีเพื่อให้ทราบว่ามีกล่องที่ตรวจพบจำนวนเท่าใดเมื่อผ่านสายจ่าย

หากต้องการสร้างตัวแปร ให้กด "เพิ่มตัวแปร" จากนั้นเลือก "หน้าต่างกลิ้ง":

ตอนนี้เลือกอุปกรณ์ที่สร้าง > ตัวตรวจจับการเคลื่อนไหว > ผลรวม > ทุก 1 นาทีเพื่อสิ้นสุดการกดบันทึก จากนั้นกำหนดชื่อที่คุณต้องการ ในกรณีนี้ เราตั้งชื่อว่า "กล่อง" ของเรา

ตอนนี้เรารู้แล้วว่าเซ็นเซอร์ของเราตรวจจับกล่องได้กี่กล่อง เราสามารถสร้างเหตุการณ์ตามตัวแปร "กล่อง" เพื่อให้ทันกับการผลิตและได้รับการแจ้งเตือนหากการผลิตลดลง

เป้าหมายการผลิตของเราคือ 10 "กล่อง" ต่อนาที เพื่อรักษาเป้าหมายนี้ RevPi จะต้องตรวจจับ 10 กล่องขั้นต่ำต่อนาที หากต้องการรับการแจ้งเตือนถึงการผลิตที่ลดลง เราจะสร้างการแจ้งเตือนเพื่อแจ้งให้เราทราบเมื่อตรวจพบน้อยกว่า 10 กล่อง

ไปที่ส่วนกิจกรรมของบัญชี Ubidots ของคุณแล้วกด "เพิ่มกิจกรรม" จากนั้นเลือกอุปกรณ์และตัวแปร และกำหนดเงื่อนไขของเหตุการณ์ ในกรณีนี้ หากกล่องตัวแปรมีค่าน้อยกว่า 10 ให้ตั้งค่าเหตุการณ์ เมื่อกำหนดค่าพารามิเตอร์ของกิจกรรมแล้ว ให้กำหนดการดำเนินการที่คุณต้องการ ฉันกำหนดค่ากิจกรรมด้วยการดำเนินการอีเมล และอย่างที่คุณเห็นด้านบน เมื่อเหตุการณ์ถูกทริกเกอร์ ฉันได้รับข้อความด้านบน

หมายเหตุสำคัญ: รหัสที่ให้ไว้ด้านบนเป็นเพียงการอ่านอินพุต 1 โดยไม่สร้างการกำหนดค่าเซ็นเซอร์ใดๆ ตามเซ็นเซอร์ที่ใช้ ให้เพิ่มการกำหนดค่าของเซ็นเซอร์ลงในโค้ดตามต้องการ

ขั้นตอนที่ 7: รับข้อมูลจาก Ubidots

การรับข้อมูลจาก Ubidots
การรับข้อมูลจาก Ubidots
รับข้อมูลจาก Ubidots
รับข้อมูลจาก Ubidots
การรับข้อมูลจาก Ubidots
การรับข้อมูลจาก Ubidots

ในแอปพลิเคชันตัวอย่างนี้ เราจะควบคุมเอาต์พุตของโมดูล RevPi DIO เพื่อให้สามารถเปิด/ปิดไฟจาก Ubidots cloud

1. เพื่อให้สามารถควบคุมผลลัพธ์จากตัวแปร Ubidots คุณต้องสร้างตัวแปรก่อน ป้อนอุปกรณ์ RevPi ของคุณและสร้างตัวแปรใหม่โดยเลือก "เพิ่มตัวแปร" แล้วกด "ค่าเริ่มต้น" แล้วตั้งชื่อมันว่า "ไฟ" เมื่ออุปกรณ์ถูกสร้างขึ้นอย่างถูกต้อง

2. ไปที่แดชบอร์ด Ubidots หลักของคุณและสร้างวิดเจ็ตควบคุม คลิกไอคอนเครื่องหมายบวก (+) สีเหลือง และทำตามตัวเลือกบนหน้าจอเพื่อปรับใช้วิดเจ็ตแดชบอร์ดใหม่ เลือก Control > Switch > RevPICore(MACAddress) > light (ตัวแปรเพิ่งสร้าง) > เสร็จสิ้น หลังจากสร้างวิดเจ็ตใหม่ของคุณ แดชบอร์ดจะโหลดซ้ำและเติมด้วยวิดเจ็ตควบคุมแสงใหม่ของคุณ

วิดเจ็ต "การควบคุม" นี้จะส่งสถานะไปยังเอาต์พุต RevPi DIO เพื่อควบคุมสถานะของไฟหรืออุปกรณ์อื่นๆ ที่เชื่อมต่อกับเอาต์พุต 1

3. สร้างสคริปต์หลามใหม่โดยใช้โปรแกรมแก้ไขนาโน เมื่อต้องการทำสิ่งนี้ให้รันคำสั่งด้านล่างในเทอร์มินัล RevPi:

นาโน ubidots_revpi_do.py

4. โปรดคัดลอกและวางโค้ดตัวอย่างนี้ลงในโปรแกรมแก้ไขนาโน เมื่อวางแล้ว กำหนด Ubidots Token ของคุณตามที่ระบุไว้ในสคริปต์ อ้างอิงที่นี่เพื่อขอความช่วยเหลือในการค้นหาโทเค็น Ubidots ของคุณ

ในโค้ดตัวอย่างนี้ เราจะควบคุมเอาต์พุตของโมดูล RevPi DIO เพื่อให้สามารถเปิด/ปิดไฟจาก Ubidots cloud

หมายเหตุ: หากต้องการบันทึกสคริปต์ลงในโปรแกรมแก้ไขนาโน - กด Ctrl+o ยืนยันชื่อไฟล์ที่จะเขียน (ubidots_revpi_di.py) แล้วกด Enter หากต้องการปิดตัวแก้ไขนาโน ให้กด Ctrl+x

5. ตอนนี้ มาทดสอบสคริปต์กัน เรียกใช้สคริปต์ที่สร้างไว้ก่อนหน้านี้ในเทอร์มินัล RevPi:

python3 ubidots_revpi_do.py

เมื่อสคริปต์เริ่มทำงาน คุณจะเห็นข้อความสถานะไฟ

6. ตอนนี้เปลี่ยนสถานะของวิดเจ็ต "การควบคุม" จากแดชบอร์ด Ubidots ของคุณและแสดงสถานะของเอาต์พุต RevPI DIO

ขั้นตอนที่ 8: ผลลัพธ์

ในเวลาเพียงไม่กี่นาที คุณได้รวม RevPi Core + RevPi DIO เข้ากับ Ubidots รับข้อมูลจากสายการจัดหาของคุณสำหรับการนับหน่วย สร้างแอปพลิเคชันเพื่อติดตามและแจ้งเตือนคุณถึงความต้องการในการผลิต และควบคุมไฟของพื้นโรงงานของคุณ - ทั้งหมด โดยใช้ RevPi Core + DIO กับ Ubidots หากต้องการเรียนรู้เพิ่มเติมหรือปรับใช้โซลูชันอุตสาหกรรมใหม่สำหรับการตรวจสอบหรือการจัดการ โปรดดูรายการโมดูลส่วนขยาย RevPi ทั้งหมด

แนะนำ: