“ ตัวแทนฝังตัว” ในการอ้างอิงถึงอุปกรณ์ IoT Edge ที่มีกำลังไฟต่ำคืออะไร


14

คำถาม:อะไรคือการออกแบบที่ขีดเส้นใต้เบื้องหลัง“ Embedded Agent” ที่เกี่ยวข้องกับอุปกรณ์ Edge Internet of Things (IoT) ที่ใช้พลังงานต่ำ

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

ตัวแทน IOT - 1

ตัวแทน IOT

นอกจากนี้ที่นี่เป็นคำอธิบายที่กว้างมากบล็อก Thingworx

ตัวแทนคือโปรแกรมฝังตัวที่รันบนหรือใกล้กับอุปกรณ์ IoT และรายงานสถานะของสินทรัพย์หรือสภาพแวดล้อมบางอย่าง มีเอเจนต์อยู่ในแอปพลิเคชัน IoT เสมอ โดยทั่วไปแล้วเอเจนต์อ่านสถานะจากเซ็นเซอร์หรือการเชื่อมต่อท้องถิ่นกับสินทรัพย์ใช้กฎหรือตรรกะบางอย่างเกี่ยวกับความถี่ที่ผู้ส่งรวมข้อมูลแล้วส่งข้อมูลผ่านเครือข่ายการสื่อสารระยะไกลไปยังเซิร์ฟเวอร์ กระบวนการนี้สามารถทำงานในสิ่งที่ตรงกันข้ามได้เช่นกัน

เป็นข้อสันนิษฐานของฉันเอเจนต์นี้ประกอบด้วยข้อมูลการเชื่อมต่อเช่นที่อยู่ IP ชื่อเซิร์ฟเวอร์ข้อมูลประเภท SSID เพื่อช่วยในการเชื่อมต่อ ตัวแทนฝังตัวเหล่านี้มีฟังก์ชั่นอื่น ๆ นอกเหนือจากการให้การเชื่อมต่อหรือไม่

อ้างอิง:


กรุณาช่วยอ้างอิงสถาปัตยกรรม IoT (ภาพที่ 2) ได้ไหม? ขอบคุณ
BiG_TooTh

คำตอบ:


13

โดยทั่วไปตัวแทนจะเป็นซอฟต์แวร์ 'สองทิศทาง' นั่นคือมันอ่านพารามิเตอร์จากอุปกรณ์และสื่อสารเหมือนกันกับคลาวด์หรือแม้แต่เกตเวย์ บ่อยกว่านั้น OEM จะควบคุมไลบรารีเพื่อการพัฒนาซอฟต์แวร์เพื่อควบคุมพารามิเตอร์ของอุปกรณ์ ในขณะที่ OEM อาจเลือกโปรโตคอลการสื่อสารที่ได้รับความนิยม (MQTT, HTTP และอื่น ๆ ) เพื่อเผยแพร่ค่าที่อ่าน โดยทั่วไปแล้วการรวมสองสิ่งนี้เป็นพื้นที่ที่ System Integrator เข้ามา

ตัวอย่างเช่นตัวแทนอาจทำงานบนเดสก์ท็อป Windows เพื่ออ่านรอบต่อนาทีของพัดลมทุก 5 วินาที ค่านี้จะถูกสื่อสารไปยังแพลตฟอร์มคลาวด์ผ่านโปรโตคอลที่ตกลงกันไว้

โค้ดตัวอย่างจาก PAHO MQTT (งูใหญ่) เว็บไซต์ :

mqttc.connect("iot.eclipse.org")
mqttc.loop_start()

while True:
    temperature = sensor.blocking_read()
    mqttc.publish("paho/temperature", temperature)

ตัวอย่างด้านบนนั้นเป็นเอเจนต์อย่างคร่าว ๆ เนื่องจากมีส่วน 'จากอุปกรณ์' ในรูปแบบของฟังก์ชั่นsensor.blocking_read()และส่วน 'ถึงคลาวด์' ในรูปแบบของmqttc.publish()มีส่วนร่วมในรูปแบบของ

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


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

ฉันไม่เข้าใจการใช้ "สองทิศทาง" ของคุณที่นี่ ตัวแทนคือซอฟต์แวร์บนอุปกรณ์ที่ทำงานในนามของเซิร์ฟเวอร์ (ในบริบทนี้) ไม่จำเป็นต้องสื่อสารกับเซิร์ฟเวอร์ (แม้ว่าจะเป็นกรณีการใช้งานทั่วไป) ตัวอย่างเช่นอาจมีเพียงการตั้งค่าพารามิเตอร์การตั้งค่าหรือดาวน์โหลดการปรับปรุง
Gilles 'หยุดชั่วร้าย'
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.