EMBEDDED AGENT DESIGN

INTRODUCTION:

  • Few of the iOT vendors mentions to install an agent on the sensor related flagship devices.

Definition:

  • An agent is essentially an embedded program that reads parameters from the computing device of user and then communicates with the cloud services.
  • It is a proprietary sort of software that installs itself on the devices connecting to cloud services.
  • It reports the status of some asset device or environment
  • In reality  the job of the agent is to  read the status out of sensors or a  local connectivity to an asset.
  • It  applies some logic to how frequently  the sender has to assimilate the information.
  • It  then sends the information over a long-distance communications network to the server. The process can function in  reverse as well.

 

Snippet program for agent:

mqttc.connect(“iot.eclipse.org”)

mqttc.loop_start()

while True:

temperature = sensor.blocking_read()

mqttc.publish(“paho/temperature”, temperature)

Explanation:

  • Here the sensor.blocking read refers to the user’s device whatever it may be and upload it to cloud in mqttc.publish.
  • Even more advanced agents will have complex  mechanisms to handle offline storage, TLS support for communication towards cloud, respond to any updates from cloud.
  • The agent will handle power constraints too.

For example, respond to device level triggers such as:-

  1. Sleep
  2. Wake-up