Difference between revisions of "Advantech Robotic Suite/DeviceOn"

From ESS-WIKI
Jump to: navigation, search
 
(16 intermediate revisions by 2 users not shown)
Line 10: Line 10:
 
 
 
 
  
 +
 
  
 
= DeviceOn =
 
= DeviceOn =
Line 28: Line 29:
  
 
<span style="font-size:larger;">When your device is onboarded&nbsp;and is managed by DeviceOn, you could view, edit device basic information, remote control, and retrieve sensor data on your devices. Nine sub items under Device, Device List contain device name, upgrade status, power management and etc. Device Monitoring to give device loading at present. To remote diagnostic and debug through Remote Control. Next, all of plugin sensor data from Device Data. To grouping your device through the Device Group. For batch real-time or schedule control through Task defined. Rule Engine to set a threshold rule for your devices data in real-time.</span>
 
<span style="font-size:larger;">When your device is onboarded&nbsp;and is managed by DeviceOn, you could view, edit device basic information, remote control, and retrieve sensor data on your devices. Nine sub items under Device, Device List contain device name, upgrade status, power management and etc. Device Monitoring to give device loading at present. To remote diagnostic and debug through Remote Control. Next, all of plugin sensor data from Device Data. To grouping your device through the Device Group. For batch real-time or schedule control through Task defined. Rule Engine to set a threshold rule for your devices data in real-time.</span>
 +
 +
&nbsp;
 +
 +
&nbsp;
  
 
=== ROS2 Node Monitor ===
 
=== ROS2 Node Monitor ===
ROS2 Monitor on DeviceOn is a comprehensive package that facilitates efficient control and monitoring of your Robot Operating System 2 (ROS2) nodes. This powerful toolset includes essential components such as Node Topology, Node Structure, and Node Log, designed to streamline the management of ROS2-based robotic systems.<br>
 
  
'''Feature'''<br>
+
'''NOTE: '''The function of ROS2 Node Monitor for DeviceOn is supported only on the Intel x86_64 platform.
From "Device" > "Monitoring" label of DeviceOn, then click "ROS" label on the right.<br>
+
 
1. "ROS Node Graph" feature enables you to gain insightful visibility into the network of ROS2 nodes in your system. With this functionality, you can easily visualize and understand the connections and interactions between nodes. This enhanced understanding empowers you to optimize the performance of your robotic applications, identify bottlenecks, and troubleshoot issues efficiently.
+
&nbsp;
[[File:ROS2 Topology Log.png|1200px|none|ROS2 Topology]]
+
 
 +
ROS2 Monitor on DeviceOn is a comprehensive package that facilitates efficient control and monitoring of your Robot Operating System 2 (ROS2) nodes. This powerful toolset includes essential components such as Node Topology, Node Structure, and Node Log, designed to streamline the management of ROS2-based robotic systems.
 +
 
 +
'''Feature'''<br/> From "Device" > "Monitoring" label of DeviceOn, then click "ROS" label on the right.<br/> 1. "ROS Node Graph" feature enables you to gain insightful visibility into the network of ROS2 nodes in your system. With this functionality, you can easily visualize and understand the connections and interactions between nodes. This enhanced understanding empowers you to optimize the performance of your robotic applications, identify bottlenecks, and troubleshoot issues efficiently. [[File:ROS2 Topology Log.png|none|1200px|ROS2 Topology]]
  
2. "Node Log" component provides a detailed log of the communications occurring between nodes. This log not only allows you to monitor the flow of information within your ROS2 ecosystem but also helps in diagnosing problems and tracking the performance of specific nodes.
+
2. "Node Log" component provides a detailed log of the communications occurring between nodes. This log not only allows you to monitor the flow of information within your ROS2 ecosystem but also helps in diagnosing problems and tracking the performance of specific nodes. [[File:ROS2 Topology Log2.png|none|ROS2 Log]]
[[File:ROS2 Topology Log2.png|none|ROS2 Log]]
 
  
 
&nbsp;
 
&nbsp;
Line 46: Line 52:
 
== Container Management ==
 
== Container Management ==
  
<span style="font-size:larger;">ROS 2 Suite offers container framework for simplifies the development, deployment, and management of ROS Applications systems.</span>
+
<span style="font-size:larger;">Advantech Robotic Suite offers container framework for simplifies the development, deployment, and management of ROS Applications systems.</span>
  
 
<span style="font-size:larger;">DeviceOn Container Managemnet help ROS developer and operator&nbsp;to&nbsp;deploy, monitor, and manage each container on different devices. You can&nbsp;manage and monitor the health of containers within minutes.&nbsp;Container Management function also provide a variety of container restart strategies for you to set the restart policy. Through the dashboard, you can quickly understand the running status of the container in the managed device. In addition, for container developers.</span>
 
<span style="font-size:larger;">DeviceOn Container Managemnet help ROS developer and operator&nbsp;to&nbsp;deploy, monitor, and manage each container on different devices. You can&nbsp;manage and monitor the health of containers within minutes.&nbsp;Container Management function also provide a variety of container restart strategies for you to set the restart policy. Through the dashboard, you can quickly understand the running status of the container in the managed device. In addition, for container developers.</span>
Line 60: Line 66:
 
&nbsp;
 
&nbsp;
  
 +
&nbsp;
  
 
== Register for DeviceOn Trial Portal ==
 
== Register for DeviceOn Trial Portal ==
Line 85: Line 92:
 
&nbsp;
 
&nbsp;
  
<span style="font-size:larger;">Step 4. Logon DeviceOn with your Account & Password</span>
+
<span style="font-size:larger;">Step 4. Logon DeviceOn with your Account & Password</span> &nbsp;
&nbsp;
 
  
 
&nbsp;
 
&nbsp;
Line 161: Line 167:
 
&nbsp;
 
&nbsp;
  
 
+
&nbsp;
  
 
== <span style="font-size:larger;">ROS2 Node Deployment</span> ==
 
== <span style="font-size:larger;">ROS2 Node Deployment</span> ==
Line 260: Line 266:
 
*<span style="font-size:larger;">For the user first time to deploy helloworld-ros2-node, it will take several minutes to complete the deployment.</span>  
 
*<span style="font-size:larger;">For the user first time to deploy helloworld-ros2-node, it will take several minutes to complete the deployment.</span>  
 
*<span style="font-size:larger;">Before you start/stop container from DeviceOn Container List, please make sure the STATUS of container is updated completely.</span>  
 
*<span style="font-size:larger;">Before you start/stop container from DeviceOn Container List, please make sure the STATUS of container is updated completely.</span>  
 +
 +
&nbsp; &nbsp;
  
 
&nbsp;
 
&nbsp;
 +
 
&nbsp;
 
&nbsp;
  
 +
== <span style="font-size:larger;">ROS2 Demo App</span> ==
 +
 +
=== 3D Slam Demo ===
 +
 +
'''NOTE: '''3D/2D Slam Demo App is supported only on the Intel x86_64 and Jetson platform. &nbsp;
 +
 +
1. Demo App can be easily deployed through the app store of DeviceOn. [[File:ROS2 demo app.png|border|none|800x450px|ros2 demo app]]
  
== <span style="font-size:larger;">ROS2 Demo App</span> ==
+
2. Click 'Install', and it will be deployed to the target device. [[File:ROS2 demo app install.png|border|none|800x480px|ros2 demo app install]]
 +
 
 +
3. It can control container in containers manager. [[File:ROS2 demo container manager.png|border|none|800x450px|ROS2 demo container manager]]
  
1. Demo App can be easily deployed through the app store of DeviceOn. [[File:ROS2 demo app.png|none|ros2 demo app]]
+
4. After start container, the demo will run on target device. [[File:ROS2 3D slam demo container.png|border|none|800x450px|ROS2 3D slam demo container]] &nbsp;
&nbsp;
 
&nbsp; 2. Click 'Install', and it will be deployed to the target device. [[File:ROS2 demo app install.png|none|ros2 demo app install]]
 
&nbsp;
 
&nbsp; 3. It can control container in containers manager. [[File:ROS2 demo container manager.png|none|ROS2 demo container manager]]
 
&nbsp;
 
&nbsp; 4. After start container, the demo will run on target device. [[File:ROS2 3D slam demo container.png|none|ROS2 3D slam demo container]] &nbsp;
 
  
[[Category:Editor]]
+
'''NOTE: '''If it can't show rviz after start container, please fix the problem manually<br/>
 +
<syntaxhighlight lang="bash">
 +
cd /usr/local/Advantech/ros/container/ros-demokit/tools
 +
sudo ./Get_XAuth.sh
 +
</syntaxhighlight>

Latest revision as of 04:34, 1 April 2024

 

 

Introduction

In distributed robotic systems where robots are deployed in different locations or environments, remote central management becomes crucial. It enables remote monitoring, configuration, diagnostics, control, software update, and truoubleshoot issues, eliminating the need for physical access to each robot.  Remote control and teleoperation allow operators to manipulate robot movements and perform tasks from a distance. Remote management also facilitates collaboration by enabling experts to remotely assist and provide guidance. Advantech DeviceOn is a remote central management system for robots.

 

 

DeviceOn

DeviceOn is a remote central management system that allows user to connect their robotics to DeviceOn and remotely monitor, control, and maintain.

DeviceOn integrates information from various devices, making it convenient for users to analyze and monitor results for a large number of robotic devices.

It is essential to effectively manage, monitor, and control thousands of connected devices while ensuring uninterrupted service. Devices must work properly and securely after they have been deployed.

More information please refer to DeviceOn

 

 

Device Management

When your device is onboarded and is managed by DeviceOn, you could view, edit device basic information, remote control, and retrieve sensor data on your devices. Nine sub items under Device, Device List contain device name, upgrade status, power management and etc. Device Monitoring to give device loading at present. To remote diagnostic and debug through Remote Control. Next, all of plugin sensor data from Device Data. To grouping your device through the Device Group. For batch real-time or schedule control through Task defined. Rule Engine to set a threshold rule for your devices data in real-time.

 

 

ROS2 Node Monitor

NOTE: The function of ROS2 Node Monitor for DeviceOn is supported only on the Intel x86_64 platform.

 

ROS2 Monitor on DeviceOn is a comprehensive package that facilitates efficient control and monitoring of your Robot Operating System 2 (ROS2) nodes. This powerful toolset includes essential components such as Node Topology, Node Structure, and Node Log, designed to streamline the management of ROS2-based robotic systems.

Feature
From "Device" > "Monitoring" label of DeviceOn, then click "ROS" label on the right.
1. "ROS Node Graph" feature enables you to gain insightful visibility into the network of ROS2 nodes in your system. With this functionality, you can easily visualize and understand the connections and interactions between nodes. This enhanced understanding empowers you to optimize the performance of your robotic applications, identify bottlenecks, and troubleshoot issues efficiently.
ROS2 Topology
2. "Node Log" component provides a detailed log of the communications occurring between nodes. This log not only allows you to monitor the flow of information within your ROS2 ecosystem but also helps in diagnosing problems and tracking the performance of specific nodes.
ROS2 Log

 

 

Container Management

Advantech Robotic Suite offers container framework for simplifies the development, deployment, and management of ROS Applications systems.

DeviceOn Container Managemnet help ROS developer and operator to deploy, monitor, and manage each container on different devices. You can manage and monitor the health of containers within minutes. Container Management function also provide a variety of container restart strategies for you to set the restart policy. Through the dashboard, you can quickly understand the running status of the container in the managed device. In addition, for container developers.

Azure Container Repository allows you to build, store, and manage container images and artifacts in a private registry for all types of container deployments. Use Azure container registries with your existing container development and deployment pipelines. Azure Container Registry is supported as a public cloud solution in the DeviceOn and support Harbor  as a private cloud container repository. For more detailed information and operation steps, please refer to DeviceOn Manual - Container Management Section .

 

How to

In this section, we will instrduct you how to register a new account form DeviceOn trial portal and setup your edge device to connect to DeviceOn trial portal. After your edge device is managed in DeviceOn trial portal, you can find it is listed in the DeviceOn Device List, you can easily monitor it's status and deploy ROS2 node into it. 

 

 

Register for DeviceOn Trial Portal

 

DeviceOn Trial Portal: https://deviceon-trial.wise-paas.com/

 

Step1. Register a new account from DeviceOn Trial Protal. [ Sign up ]

Deviceon-trial 01.png

Step 2. Fill the basic information

Deviceon-trial 02.png

 

Step3. Verify account from DeviceOn Account Registration e-mail.

Deviceon-trial 05.png

 

Step 4. Logon DeviceOn with your Account & Password  

 

Setup WISE-Agent

NOTE:

(1). WISE-Agent support DeviceOn Container Management function start from version 1.4.45, to make sure your WISE-Agent's version before below steps.

(2). For ARM base platforms, WISE-Agent is provide by project, please contact PM (Nathan.Wang@advantech.com.tw) to get support for this function.

 

Step1. Login DeviceOn Trial Portal.

Step2. Click on Add device icon, you can find Credential URL and IoT Key are list in this page. you will be prompt to input these two strings in the following WISE-Agent setup steps.

Deviceon-trial 04.png

 

Step3. Launch WISE Agent setup program.

cd /usr/local/AgentService
sudo ./setup.sh

 

Step4. Copy Credential URL from DeviceOn Trial portal and paste it to the WISE Agent setup program while it is prompt to input.

Step5. Copy IoT Key from DeviceOn Trial portal and paste it to the WISE Agent setup program while it is prompt to input.

Ros2-wise-agent-installation-01.png

Step6. Finish the setup with default settings, then WISE-Agent Service will restart to connect to DeviceOn trial portal.

(You can refer to Edge Installation & Onboarding to get more detail description about install WISE-Agent and setup WISE-Agent for connecting to DeviceOn.)

 

Step7. From "Device List" table of DeviceOn trial portal, click on device name or device details to get device information.

RTENOTITLE

 

You could get the device detail information such as, device IP, version, MAC, Memory, BIOS, operation system in this page.

RTENOTITLE

 

 

 

Container Registry

Helloworld ROS2 node is a sample ROS2 node container for this demonstration, it is already pre-upload to the DeviceOn Container Registry. You can find it is located in the "Demo Registry" of DeviceOn Registry List.

 

RTENOTITLE

 

Click on the registry name "Demo Registry", you can see how many containers in the container registry are available for you to deploy.

ROS2 Suite RegistryDetail.png

 

 

 

ROS2 Node Deployment

Below steps will introduce you to deploy a ROS2 container to your edge device. 

Step1. From left side bar, open "My Devices" page from "Container" function and then:

  • Choose your device group.
  • Choose your device from your device group.
  • Click on Containers icon to see container list in this device.

ROS2 ContainerManage 2.png

 

Step2. Click "Add" icon to go into add container page.

ROS2 ContainerManage 3.png

 

Step3. In the "Add Container" page, select parameters like below and then click "Confirm" to start deploy helloworld-ros2-node to your device.

  • Mode: Device Mode
  • Container Name: <Give a container name by yourdelf>.
  • Auto Start: On
  • Source Image: Registries
  • Registry: Demo Registry
  • Image: helloworld-ros2-node-<platform-architecture>

 

Platform Architecture Container Type
Intel x86_64 helloworld-ros2-node-x86_64
ARM helloworld-ros2-node-aarch64

 

RTENOTITLE

 

After the operation completed, you can see the container is deployed into your device and status of helloworld-ros2-node is running.

ROS2 ContainerManage 6.png

 

Step5. Now, helloworld-ros2-node is running and publishing "Hello World: <count>" message continuously, To subscribe the data that helloworld-ros2-node published, open a terminal from your device and execute below command:

 

Helloworld-ros2-node-message.png

 

1. Setup ROS2 environmant variables:

$ source /opt/ros/${ROS_DISTRO}/setup.bash

 

2. Subscribe the topic of helloworld node:

$ ros2 topic echo /topic

Result:

data: 'Hello World: 2663'
---
data: 'Hello World: 2664'
---
data: 'Hello World: 2665'
---
data: 'Hello World: 2666'
---
data: 'Hello World: 2667'
---
data: 'Hello World: 2668'
---
data: 'Hello World: 2669'
---

 

NOTE:

  • For the user first time to deploy helloworld-ros2-node, it will take several minutes to complete the deployment.
  • Before you start/stop container from DeviceOn Container List, please make sure the STATUS of container is updated completely.

   

 

 

ROS2 Demo App

3D Slam Demo

NOTE: 3D/2D Slam Demo App is supported only on the Intel x86_64 and Jetson platform.  

1. Demo App can be easily deployed through the app store of DeviceOn.
ros2 demo app
2. Click 'Install', and it will be deployed to the target device.
ros2 demo app install
3. It can control container in containers manager.
ROS2 demo container manager
4. After start container, the demo will run on target device.
ROS2 3D slam demo container
 

NOTE: If it can't show rviz after start container, please fix the problem manually

cd /usr/local/Advantech/ros/container/ros-demokit/tools
sudo ./Get_XAuth.sh