Industry 4.0 brings hope for edge intelligence over long distances, and 10BASE-T1L Ethernet's power over data line (PoDL) function, high data transmission rate, and compatibility with Ethernet protocols also pave the way for future development. This article describes how to integrate the new 10BASE-T1L Ethernet physical layer standard in automation and industrial scenarios to connect controllers and user interfaces with endpoints such as multiple sensors and actuators, all using standard Ethernet interfaces for bidirectional communication.
Introduction
10BASE-T1L is a physical layer standard for industrial connectivity. It uses standard twisted pair cables with data rates up to 10 Mbps and power transmission distances up to 1000 meters. Low latency and PoDL capabilities help enable remote control of devices such as sensors or actuators. This article shows how to implement a remote host system that can synchronously control two or more stepper motors, demonstrating the ability to communicate over long distances in real time.
System Overview
Figure 1 is a schematic diagram of the system-level application. On the host side, the ADIN1100 and ADIN1200 Ethernet PHYs manage the conversion between standard links and 10BASE-T1L links, while on the remote side, the controller interfaces with the link via the ADIN1110 Ethernet MAC-PHY, requiring only an SPI peripheral to exchange data and commands. Accurate synchronized motion control is achieved using the ADI Trinamic™ TMC5160 stepper motor controller and driver, which generate a six-point ramp for positioning without requiring any calculations on the controller. The selection of these components also reduces the requirements for the peripherals, computational power, and code size of the microcontroller, enabling the use of a wider range of commercial products. In addition, the entire remote subsystem can be powered directly from the data line without exceeding the predetermined power consumption limit; therefore, only the media converter board needs to provide a local power supply.
Figure 1. System overview.
System Hardware
The system consists of four different boards:
The EVAL-ADIN1100 board features the ADIN1200 10BASE-T/100BASE-T PHY, which, in conjunction with the ADIN1100 10BASE-T1L PHY, can convert messages from one physical standard to another. It can be configured for different operating modes. This project uses standard mode 15 (media converter). The EVAL-ADIN1100 board also integrates a microcontroller to perform the basic configuration required for media conversion and to read diagnostic information. However, it cannot interact with the messages sent and received; the board is completely transparent to the communication.
The EVAL-ADIN1110 is the heart of the remote device controller. The ADIN1110 10BASE-T1L MAC-PHY receives data over the 10BASE-T1L link and transmits the data to the onboard Cortex®-M4 microcontroller via the SPI interface for processing. The board also provides Arduino Uno-compatible headers that can be used to install expansion boards to add more functionality.
The TMC5160 expansion board is a development board customized based on the Arduino expansion board form factor. A single expansion board supports up to two TMC5160 SilentStepStick boards, and multiple expansion boards can be stacked together to increase the maximum number of controllable motors. All drivers share the same SPI clock and data signals, but the chip select lines remain independent. This configuration supports two communication modes: If the chip select lines are asserted individually, the microcontroller can communicate with a single controller - for example to configure motion parameters. Conversely, if multiple chip select lines are asserted at the same time, all selected drivers receive the same command at the same time. The latter mode is mainly used for motion synchronization. The board also provides some additional input capacitors for the StepStick to reduce the current peak when the motor starts and make the current curve smoother during normal operation. It allows the entire system with up to two NEMA17 motors to be powered using PoDL (the maximum transmitted power at 24 V is 12 W under the default settings). The board also supports the use of screw terminals to simplify the connection to the stepper motor, making the phase outputs of the controller easier to access.
Two EVAL-ADIN11X0EBZ boards are used to add PoDL functionality to the system, one for the media converter and one for the EVAL-ADIN1110EBZ. The board is a plug-in module that fits onto the MDI prototyping header of the evaluation board and can be configured to provide and receive power over the data line.
Figure 2. Assembled EVAL-ADIN1110, EVAL-ADIN11X0EBZ, and TMC5160 expansion board.
software
Software code is available for download: Remote Motion Control Using 10Base-T1L Ethernet - Code.
In order to keep the code lightweight and effectively reduce communication overhead, no standard communication protocol is implemented above the data link layer. All messages are exchanged through the payload field of the Ethernet frame in a predefined fixed format. The data is organized into 46-byte data segments, and a data segment consists of a 2-byte fixed header and a 44-byte data field. The header includes: an 8-bit device type field to determine how to process the received data; and an 8-bit device ID field. If there are multiple devices of the same type, a single physical device can be selected by ID.
Figure 3. Communication protocol format.
The host interface is written in Python to ensure compatibility with Windows and Linux hosts. Ethernet communications are managed through the Scapy module, which allows the creation, sending, receiving and manipulation of packets at each layer of the stack, including the Ethernet data link. Each device defined in the protocol has a corresponding class, which includes properties for storing the data to be exchanged and a set of methods that can be used to modify these properties without having to edit the variables directly. For example, to change the direction of movement in the velocity mode of the motion controller, the defined methods "setDirectionCW()" and "setDirectionCCW()" can be used instead of manually assigning 0 or 1 to the direction flag. Each class also includes a "packSegment()" method that packs and returns the data segment corresponding to the controlled device in the form of a byte array according to the predefined format of the device under consideration.
The firmware is written in C using the ChibiOS environment, which includes tools such as a real-time operating system (RTOS), a hardware abstraction layer (HAL), peripheral drivers, etc., making the code easily portable between similar microcontrollers. The project is based on three custom modules:
ADIN1110.c is the driver to support the exchange of data and commands with the ADIN1110 through the SPI interface. It includes low-level communication functions for reading and writing data from the device registers, and high-level functions for sending and receiving Ethernet frames. It also includes functions for establishing communication between 10BASE-T1L transceivers. The pin that notifies whether a new frame has appeared is read at the interrupt to minimize latency.
TMC5160.c implements all the functions needed to control the TMC5160 motion controller, configured to run in full-featured motion controller mode. It implements both constant speed and position control modes, allowing smooth and accurate positioning using a six-point ramp. Communication with multiple motion controllers is achieved via a single SPI bus and multiple independent chip select lines. It also provides a set of functions and type definitions to simplify motion synchronization.
Devices.c is the interface between the data received from the T1L link and the physical devices connected to the controller. It includes structures similar to those defined in the host interface and has functions to update the structures each time a new frame with valid data is received. This module is also used to determine which operation is performed each time the structure is updated, for example, which physical motion controller is associated with a command received at a specific device address.
Figure 4. Firmware flow chart.
System Highlights and Validation
This project aims to demonstrate how to integrate the new 10BASE-T1L Ethernet physical layer standard in automation and industrial scenarios to connect controllers and user interfaces with endpoints such as multiple sensors and actuators. This application targets remote real-time control of multiple stepper motors, which are widely used in industry for low-power automation tasks, but can also be used for lightweight robots and CNC machines, such as desktop 3D printers, desktop milling machines, and other types of Cartesian plotters. In addition, it can be expanded for other types of actuators and remote control devices. Compared with existing interfaces with similar uses, its main advantages include:
Wiring is simple, requiring only a single twisted pair of wires. With support for power over the data line, low-power devices such as sensors can be powered directly from this connection, further reducing the amount of wiring and connectors required, and reducing overall system complexity, cost, and weight.
Using the PoDL standard for power transmission, devices connected to the network are powered by a DC voltage superimposed on the data line. This coupling can be achieved using only passive components, and the voltage at the receiving end can be filtered and directly powered to the device or DC-DC converter without rectification. As long as the components used for this type of coupling are properly sized, a highly efficient system can be achieved. In this project, using standard components installed on the evaluation board, the overall efficiency is about 93% (with a 24 V supply and a total load current of 200 mA). However, this result still has a lot of room for improvement, in fact, most of the losses are caused by the resistive voltage drop of the passive components in the power path.
Previous article:TMC4671 drives stepper motor tmc4671 configuration code and TMC4671 analog encoder settings
Next article:The structure and working principle of switched reluctance motor
- Popular Resources
- Popular amplifiers
- Huawei's Strategic Department Director Gai Gang: The cumulative installed base of open source Euler operating system exceeds 10 million sets
- Analysis of the application of several common contact parts in high-voltage connectors of new energy vehicles
- Wiring harness durability test and contact voltage drop test method
- Sn-doped CuO nanostructure-based ethanol gas sensor for real-time drunk driving detection in vehicles
- Design considerations for automotive battery wiring harness
- Do you know all the various motors commonly used in automotive electronics?
- What are the functions of the Internet of Vehicles? What are the uses and benefits of the Internet of Vehicles?
- Power Inverter - A critical safety system for electric vehicles
- Analysis of the information security mechanism of AUTOSAR, the automotive embedded software framework
Professor at Beihang University, dedicated to promoting microcontrollers and embedded systems for over 20 years.
- LED chemical incompatibility test to see which chemicals LEDs can be used with
- Application of ARM9 hardware coprocessor on WinCE embedded motherboard
- What are the key points for selecting rotor flowmeter?
- LM317 high power charger circuit
- A brief analysis of Embest's application and development of embedded medical devices
- Single-phase RC protection circuit
- stm32 PVD programmable voltage monitor
- Introduction and measurement of edge trigger and level trigger of 51 single chip microcomputer
- Improved design of Linux system software shell protection technology
- What to do if the ABB robot protection device stops
- Huawei's Strategic Department Director Gai Gang: The cumulative installed base of open source Euler operating system exceeds 10 million sets
- Download from the Internet--ARM Getting Started Notes
- Learn ARM development(22)
- Learn ARM development(21)
- Learn ARM development(20)
- Learn ARM development(19)
- Learn ARM development(14)
- Learn ARM development(15)
- Analysis of the application of several common contact parts in high-voltage connectors of new energy vehicles
- Wiring harness durability test and contact voltage drop test method
- 【Smart network desk lamp】9. Maix bit driver serial port
- [N32L43X Review] 3. Debugging tools JlinkRTT&Shell
- From getting started with Linux to doubting your life?
- How to accelerate the discharge of capacitors
- How to choose between mobile phone and tablet
- During electrical inspection, Warning Unconnected Power Object On Net GND appears
- How to understand the parameters of the second bus chip PB620?
- Trinocular Stereo Vision Epipolar Line Correction and Its FPGA Implementation
- TE Award-winning Event | How to effectively respond to current challenges in the field of test and measurement
- Transfer - Dig deep into the magic of the smallest resistance and most versatile 0 ohm resistor to save your design