Ready for humanoid development? Diagnosis with EC-Engineer Web on the Nvidia Jetson AGX Orin

Content

Introduction

We see in our daily business that development of humanoids is a huge trend - all over the world. And the Nvidia Jetson AGX Orin is one important part which boosts the technology in this area. This powerful AI and edge computing device is pushing the limits and brings the development to a new dimension.

As humanoids are mobile applications, wireless solutions are getting more and more interesting. While EC-Master software is running on the EtherCAT MainDevice, the EC-Engineer Web can easily remote-connected for diagnosis.

In this blog, we will have a detailed look into our EC-Engineer Web. What advantages does this application have? How can the application be set up?

Finally, we run some drives on Linux to show how motion, real-time and robotics lead into the development of humanoids.

What is EC-Engineer Web?

EC-Engineer Web is a powerful software tool for configuration and diagnosis of EtherCAT networks. This web-based application is offering similar functionality as the EC-Engineer. The application is able to create and export ENI (EtherCAT Network Information) files which are essential for the EC-Master to initialize and control the EtherCAT network. But beyond the configuration there is a huge benefit of the EC-Engineer Web: the diagnosis of the network. The network can be monitored, variables can be forced, the states of the MainDevice and the different SubDevices can be viewed, error counters can be showed and lot of more features are supported by the EC-Engineer Web. As an example, the integrated tool “Mismatch Analyzer” is able to analyze deviations between the configuration and the connected network. This feature helps to setup and install an EtherCAT network. The EC-Engineer Web is using a standard browser as user interface and can connect to any MainDevice where Windows or Linux are installed.

For our application, the architecture looks like in figure 1 below. On the MainDevice side, Linux is running on the Nvidia Jetson AGX Orin with the EC-Master. The business logic for the EC-Engineer Web consists of the standard core logic and ENI Engine same as the EC-Engineer. Beyond these functionalities, this application includes ASP.NET Core Web Application which allows the development of the dynamic web application.

Figure 1: System architecture of EC-Engineer Web

Set-up EC-Engineer Web

On the MainDevice, the EC-Engineer Web can easily be installed with different setup packages on Windows, Linux or even MacOS. After starting the shell on the Linux tegra-ubuntu computing module, we move to the correct folder and we start the application with following command (snippet 1).

./EcEngineerWeb

Snippet 1: Starting the application EcEngineerWeb

As a result, the application on the MainDevice starts and is now able to get a connection as shown in figure 2 below. The EC-Engineer Web is now ready to connect to any browser on localhost, port 5000.

Figure 2: EcEngineerWeb is ready for connection

After starting the EcMasterDemo on the MainDevice, the EC-Engineer Web is now able to connect to the system. With the user-friendly interface of the web application, all relevant data can be visualized with one of the standard internet browsers like Chrome, FireFox, Edge, Safari or similar.

To know exactly which IP-address the browser should connect, we first need to check which network interface is used by the EC-Master for the EtherCAT network connection. With the help of the command ifconfig, we can find out that ethernet adapter eth2 is used for the EtherCAT communication and we can read out the relevant IP-address (see figure 3).

Figure 3: command ifconfig lists the ethernet adapters

Now the user can have an overview of the systems as shown in figure 4. The current state of the MainDevice, information about number and status of the SubDevices and current memory usage can be monitored.

Figure 4: General information in the application EcEngineerWeb

The EC-Engineer Web also grants access to the CoE object dictionary. The tab shows all relevant data of the system (see figure 5) like Hard- and Software versions, Identification, IDs, limits and configuration settings.

Figure 5: Access to object dictionary on the EcEngineerWeb

Running EC-Motion on real-time Linux

As we also want to show some motors “moving”, we now want to dig into the world of EC-Motion Advanced. This add-on to the EC-Master is a motion control solution for drives based on the profile CiA402 according the ETG Implementation Directive ETG.6010. The example EcMasterDemoMotionAdvanced supports the operation modes Cyclic Synchronous Position (CSP) and Cyclic Synchronous Velocity (CSV).

Before we can start the application, we first need to set the different real-time settings to the Linux system. We need to configure the kernel (RT PREEMPT), we need to load the acontis real-time Ethernet driver and we need to integrate the atemsys kernel module. Please check out one of our latest blogs which shows the different steps in detail.

After configuring the real-time settings, we now want to start the application EcMasterDemoMotionAdvanced. Some words to the attached drives. We are using the DC servo-drive AcceInet BE2 from Copley Controls with two brushless step motors including encoder as shown in the figure 6 below.

Figure 6: Mechanical and electrical setup

We start the application with the command described below in snippet 2.

./EcMasterDemoMotionAdvanced -intelgbe 1 1 -f eni.xml -b 1000

Snippet 2: Starting the application EcMasterDemoMotionAdvanced

The application is using the real-time Ethernet Driver for the Intel Gigabit NICs and the ENI file describes the SubDevices with its parameters (-f eni.xml). For the test we set the cycle time to 1 ms (-b 1000).

After the start, the application scans the SubDevices and turns into operational mode (see figure 7).

Figure 7: Operational mode

As the motors are now rotating, the access to the variables in the PDO Image allows interesting insights of the different parameters. As shown in figure 8 below, we can monitor the actual motor velocity of one motor.

Figure 8: Access to the PDO on the EC-Engineer Web

Summary

We hope that we could show you how easy it is to connect remotely to the Nvidia Jetson AGX Orin or any other Linux-controller with the EC-Engineer Web. Especially in mobile applications like humanoids or other robotic applications, this wireless and flexible configuration and monitoring tool for EtherCAT devices will make development much easier.

In combination with our EC-Master and the motion library EC-Motion Advanced running on the Linux system, this is a perfect package for innovative development.

Please check out our webpage (www.acontis.com) for more interesting blogs. Also feel free to subscribe our YouTube channel (www.youtube.com/@acontistechnologies) where we offer exciting videos of EtherCAT technologies, products, news and others.