element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet & Tria Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • About Us
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      • Japan
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Vietnam
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Analog Devices
  • Products
  • Manufacturers
  • Analog Devices
  • More
  • Cancel

Analog Devices

  • Blog
  • Forum
  • Documents
  • Events
  • Polls
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Analog Devices to participate - click to join for free!

image

Welcome to the Analog Devices page on element14. Here you can find things such as our latest news, training videos, and product details. Additionally, you can engage with us in our forums.

RoadTests
Have a Question?
image
Recent Discussions & Questions
  • nlarson
    Have a technical question for Maxim? Ask an Expert!
    2 months ago
  • dfansler
    Cannot maintain a constant PWM - only get about 10 cycles out of my DS1050-025
    Answered 4 months ago
  • hamza nasir
    Maxim Integrated MAX17703 Dev Kit Power On Issue
    Answered over 1 year ago
  • nolannirsense
    MAX17263 SOC Changing on Power Cycle
    Not Answered over 1 year ago
  • Fabrizio70
    PROBLEM whith MAX17632C
    Answered over 1 year ago
Related Products
Every day, electronic devices are becoming smarter with greater integration. Body sensors can monitor our health. Cars can drive themselves. Networked homes can power up when needed. At Analog Devices, we’re solving engineering problems and empowering design innovation, enabling our customers to create products that shape our world. We invent highly integrated solutions that make technology seamless. Our innovative and high-performance analog and mixed-signal products and technologies make systems smaller and smarter, with enhanced security and increased energy efficiency. We channel our collective expertise to stretch the limits of technology, understand your needs, and help you get to market faster.
Webinar
Latest News
  • Blog: Exploring Automation Possibilities with the ADALM1K Learning Kit

    ak95
    ak95

    Summary:

    During my search for a low cost electronics learning module, I came accross the ADALM1K which has interesting features for the price point (approx. 70$). It incorporates a source measure unit (SMU), an oscilloscope and a function generator. On top of that the hardware and software is open-source which is a learning experience in itself to undestand how the kit works.

    My goal was first to test how the kit works overall. Once I had some confidence in its usage functions, I dived deeper into its evaluation / application software to look for automation oppurtinites with Python, where one could automate custom workflows for measurement and learning purposes.

    I was able to integrate the ADALM1K with my Raspberry Pi setup and automate its functionality using the provided libsmu/pysmu Python package from Analog. I ended up creating a small Python library (pytest-analog) around libsmu so I could write some automated tested for my projects usning the ADALM1K. 

    As an example, I created automated test cases via Python to measure the power consumption of  a DUT (ESP32 Dev board). This could be extended to create more complex test cases for your system under test using very low cost equipment such as the ADALM1K

    Hardware: 

    The ADALM1K features two analog channels that support source and measure functionality for different waveforms in voltage or current mode. To offer this functionality, it uses a number of building blocks to take the fixed supply and digital interface of USB and offer voltage and current operation.

    The main hardware sepcs are as follows:

    • Two channels supporting measure and source function simultaneously: voltage (0 to 5V) or current output (- 200 to +200mA)
    • Two fixed power supplies (2.5V and 5V) supprting up to 200 mA current draw
    • 16-bit (0.05%) basic measure accuracy with 4 digit resolution
    • Four digital signals (GPIOs 3.3V CMOS)

    image
    ADALM1K Block diagram per SMU Channel (wiki.analog.com)

    As per the above the diagram, an analog channel on the ADALM1K combines a function generator and an oscilliscope instrument on the same pin. In Rev F of the board, the analog ouput and input functions could be seperated with the two provided addiotnal split pins such that the oscillscope function is brought out along with 1 MΩ from the function generator function. Therefore, each analog channel could be configured to one of the following options:

    • Source Voltage and Measure Current (with / wihtout Split IOs)
    • Source Current and Measure Voltage (with / wihtout Split IOs)
    • High Impedance (with / wihtout Split IOs)

    If you would like to learn more about the ADALM1K hardware and its design, the following resources are good to read through:

    • ADALM1000 Design Document
    • ADALM1000 HW Overview
    • ADALM1000 Design & Integration Files

    image
    ADALM1000 Board Upside View


     

    image
    ADALM1000 Board Underside View

    Software:

    The software landscape of the ADALM1K comprises the device firmware and the host software which can run on different platforms (Winodws / Linx / OS-X).

    The ADALM1K firmware runs on an Atmel based microcontroller. The host software includes a C++ library (libsmu) containing the abstractions for streaming data to and from ADALM1K via USB. In addition, the Pixelpulse 2 and ALICE GUI-based tools are available to control the ADALM1K and make measurements with it. 

    Testing with Analog Discovery:

    In order to test the opertion of the ADALM1K via the provided GUI software Pixelpulse 2 and ALICE, I did some basic checks to test the ADALM1K analog and digital inputs/outptus via my Analog Discovery 3 (another great electronics learning tool). In these tests, I connected the two instruments to my PC and started their host softwares simultaneously to feed inputs and read outputs.

    Test 1: Checking analog outputs of the ADALM1K via the Analog Discovery scope channels: 

    As shown in the image below, I connected the ADALM1K source channels A, B to the Analog Discovery scope channels 1, 2. Then using ALICE software I configured an output voltage on channels A, B and then read measured voltages on the scope channels via the WaveForms software of Analog Discovery 3. I configured channels A, B to output 3.6, 1.2 V. On the Analog Discovery, I read approximately similar values on channels 1, 2. There is a slight 200 mV deviations which also seem to occur when I set the ADALM1K to ouput 0 V. Therfore, the ADALM1K requires some calibration before doing any real testing.

    image

    image

     Test 2: Checking GPIOs state of the ADALM1K via the Analog Discovery digital channels:

    In this test, I connected the ADALM1K GPIO pins (0-3) to the Analog Discovery Digital IOs (0-3). Using ALICE software, I have set the ADALM1K GPIOs to a defined high / low state and then checked if the same state is read on the Analog Discovery side using its Static IO instrument in the WaveForms software. I was able to confirm the GPIOs state (high for pins 0,1 and low for pins 2,3

    )image

     

    image

    Integration with Raspberry Pi: 

    My next step was to connect the ADALM1K to my Raspberry Pi and get it working using the libsmu library provided by Analog. I wanted the setup to be headless so I could simply login remotely to the Pi and then run Python scripts to run different workflows with ADALM1K (i.e. something like a remote testing station). On the hardware side, I could simply connect the ADALM1K to my Raspberry Pi 5 via USB. On the software side, I had to compile and install libsmu from source as there was no ready-to-use package for Raspbian OS platform. 
     
    You can refer to the this github repo section for building and installing libsmu on a Linux / Windows based platform. After installing libsmu, a utility executable named:"smu" should be available and you could trigger it to check if the ADALM1K board can be detected. For example: running smu -l command to list available devices as show below.
     
    image 
     
    In addition, I have installed pysmu which contains the Python bindings for libsmu to control ADALM1K via Python. To test the interaction via Python, I started an interactive Python session via Ipython and ran some commands to check if I could configure the ADALM1K and read data from it as shown below.
    You can refer to pysmu_examples to get more familiar with it.
     
    image
     

    Python Wrapper and Test Automation: 

    After integrating the ADALM1K with my Raspberry Pi setup and getting familiar with the libsmu / pysmu libraries, I decided to create a small python library (wrapper class) to ease the control of the instrument functions and also create pytest-fixtures for setting up / tear down of the instrument in an automated testing environment. The library is named pytest-analog and it also support the automation of the Analog Discovery instrument from Digilent.

    To demonstrate the usage of ADALM1K with pytest-analog in automated testing context, I created a small python test case where the ADALM1K would measure the power consumption of an ESP32 microcontroller running different sketches.

    Given the instrument source and measure capabilites, it can power the ESP32 with a given voltage and measure drawn current simultaneously.

    image

    The steps to create an automated test with the ADALM1K via pytest-analog are listed below:

    • Create an empty workspace folder (e.g pytest_analog_tmp) and navigate to it (In bash terminal):
      • mkdir pytest_analog_tmp && cd pytest_analog_tmp
    • Create a Python virtual environment to install pytest_analog and its dependencies in isolation:
      • python3 -m venv venv
      • . venv/bin/activate
      • python3 -m pip install --extra-index-url https://test.pypi.org/simple/ pytest-analog 
      • python3 -m pip install matplotlib 
    • Create an empty "pytest.ini" file to provide the ADALM1K configuration at the start of the test with the content below. 
    The first couple of lines are pytest specific to configure its output options and logging format. The last two lines are used by the fixtures in pytest-analog to configure channels A, B output voltage. Channel A is used to power the ESP32 at its 3.3V supply pin.
    [pytest]
    # pytest options
    addopts = -v --capture=tee-sys

    # Filtering Warnings
    filterwarnings =
        ignore::DeprecationWarning

    # Logging Options
    log_cli=true
    log_level=INFO
    log_format = %(asctime)s %(levelname)s %(message)s
    log_date_format = %Y-%m-%d %H:%M:%S

    # ADALM1000 Fixtures Options
    # Voltage Source
    adalm1k_ch_a_voltage = 3.30
    adalm1k_ch_b_voltage = 0.00 
    • Create a test_esp32_current_consumption.py file with the content below: 
    import numpy as np
    import pytest
    import time
    import math
    import logging
    import matplotlib.pyplot as plt
    from pytest_analog import ADALM1KWrapper, AnalogChannel
    from datetime import datetime

    def test_esp32_current_consumption(
    adalm1k_voltage_source: ADALM1KWrapper
    ) -> None:

    # 2000 samples collected at base rate 100 kHz with averaging every 1000 samples -> 20 seconds
    MEASUREMENTS_COUNT = int(2000)
    # Do some averaging over collected data
    AVERAGE_RATE = int(1e3) # average every 1 / AVERAGE_RATE, Default sampling rate of ADALM1K is 100 kHz

    samples = []
    ch_a_avg_voltage = []
    ch_a_avg_current = []

    # Read incoming samples in a blocking fashion (timeout = -1)
    for _ in range(MEASUREMENTS_COUNT):
    samples.append(adalm1k_voltage_source.read_all(AVERAGE_RATE, -1))

    # Average captured readings
    for idx in range(MEASUREMENTS_COUNT):
    # voltages in V
    ch_a_voltage = [sample[0][0] for sample in samples[idx]]
    # currents in mA
    ch_a_current = [sample[0][1] * 1000 for sample in samples[idx]]

    ch_a_avg_voltage.append(np.mean(ch_a_voltage))
    ch_a_avg_current.append(np.mean(ch_a_current))

    logging.info(f"Average current consumption: channel A: {np.mean(ch_a_avg_current):.3f} mA")
    logging.info(f"Max current consumption: channel A: {np.max(ch_a_avg_current):.3f} mA")

    # plot current profile
    t = np.arange(0, MEASUREMENTS_COUNT) / (100e3 / AVERAGE_RATE) # Default sampling rate is 100 kHz
    fig, ax = plt.subplots()
    fig.suptitle(f"ESP32 Blinky current consumption", wrap=True)
    fig.supxlabel("Time (s)")

    ax.plot(t, ch_a_avg_current, color='red')
    ax.set(ylabel= "CH_A I(mA)")
    ax.margins()
    ax.set_xlim([0, math.ceil(np.max(t))])
    ax.grid(True, which='both')
    ax.minorticks_on()

    plt.savefig(f"I_consumption_esp32_blinky_{time.strftime(datetime.now().strftime('%H%M'))}.png")
    • Run the test using pytest: pytest test_esp32_current_consumption.py  which generates the following logs in the terminal.

    image

    image
    Current consumption profile for ESP32 blinking an LED every 2 seconds

    image
    Current consumption profile for ESP32 going into deep sleep mode for 5 seconds then waking up shortly

    After the test execution, a graph is generated with the measured current consumption profile during the test. The graphs above are for two different sketches running on the ESP32. 

    The first one is a basic blinky sketch where one could certainly see an increase in current draw when the LED is on. The duration of those peaks match closely with the LED-On period as expected.

    The second sketch showcases the ESP32 deep sleep mode for extreme power saving applications, where the device is consuming a couple of miliamps during sleep mode and then waking up shortly every 5 seconds.

    IMPORTANT: The above results can be inaccurate and require verification with a professional equipment to compare how good the ADALM1K is in capturing power characterstics of a given DUT.

    • 5 Dec 2025
  • A warehouse filled with boxes and robots, showcasing efficient automation in storage and logistics.

    Blog: Finding the Right Fit for your Industrial Automation Need - AGVs or AMRs

    SarahCrowe28
    SarahCrowe28

    by Shane O'Meara

    This blog marks the second instalment in our ongoing series, delving into the fast-evolving landscape of industrial mobile robots. We initially examined how Industrial Mobile Robotics are revolutionizing the Factory of the Future Industrial Mobile Robotics - Revolutionizing the Factory of the Future Today - element14 Community

    In this edition, we take a closer look at two key technologies shaping the future of mobile automation: Automated Guided Vehicle (AGVs) and Autonomous Mobile Robot (AMRs).  While both AGVs and AMRs are designed to enhance efficiency and flexibility in industrial environments, they differ significantly in terms of navigation, adaptability and use cases.  By examining their core similarities and distinctions, we aim to help you determine which solution best aligns with your industrial automation needs.

    A mobile Automated Guided Vehicle (AGV) and an Autonomous Mobile Robot (AMR) share most of the same core fundamental attributes and will carry out similar automation tasks in an industrial application. The primary function for an AGV or an AMR is the transportation of materials from one location to another location in a factory or warehouse.

    The fundamental difference between an AGV and an AMR is in their navigation capability and ability to avoid obstacles. An AGV follows a predetermined track or route and will not deviate from this path as it travels from one location to another. If an AGV detects an obstacle blocking the path it will stop and remain in place until the obstacle is removed. An AMR also has the ability to detect an obstacle but has the intelligence to adapt its route to avoid the obstacle, calculate a new route and proceed to complete its goal without user intervention.

    image

    An AGV can use different sensing techniques to detect its route.

    • Magnetic tape stuck onto the factory floor. A corresponding sensor under the AGV detects the location of tape and adjusts its position. Additional pieces of magnetic tape can be used to code locations.
    • Inductive wire embedded in the floor. Again, a sensor detects the wire and adjusts the AGV position accordingly.
    • Visual tracking, colored tape or markers such as April Tags are placed on the ground and detected with RGB cameras to map route and determine location.
    • Laser guided by a 360° laser mounted on the AGV and several reflectors installed in the facility. The AGV measures the distance and angle to the reflectors and triangulates its position.

    The main advantage of AGVs is that they follow their predetermined route precisely and consistently hence making them ideal for high volume, repetitive tasks. Their main disadvantages are that they require infrastructural changes within the facility they intend to operate in and significant effort to setup and maintain. Tape, wire, markers or reflectors must be installed on the floor or walls and then maintained. Visual markers can be impacted by dirt or magnetic tape may become dislodged. Inductive wire is extremely robust but any adjustments have a significant impact on day to day operation as the floor must be redone. Additionally, as mentioned previously, they lack the ability to avoid obstacles so they stop operating if an obstacle is detected.

    AMRs use Simultaneous Localization and Mapping (SLAM) to navigate the factory floor. Depth sensors, commonly Lidar scanners, mounted on the AMR are used to map the factory floor. The AMR is first driven around the facility and scans are accumulated to generate a complete map which is stored on the AMR and in fleet management control software. The generated map can be enhanced with additional information such as keep out zones, speed reduction areas and docking station locations. Goals can be placed on the map as x, y coordinates or dropped pins for the AMR to navigate between. During operation the most recent scan from the Lidar scanners is compared against the stored map and the current AMR position and orientation are calculated. The AMR then uses the built in navigation system to determine the optimized route to its goal considering the stored map and any obstacles it encounters on the path.

    image

    Disadvantages of AMRs compared to AGVs is that they have a higher initial cost and are less predictable than an AGV which takes a defined time to reach its goal. The obvious advantage of AMRs is that there is no requirement for infrastructural changes to enable their operation as an AMR has the sensing capability and intelligence to localize and navigate autonomously without markers. New tasks and goals can be updated within the map or fleet management software quickly and efficiently. Facility expansions and automation upgrades can be easily accommodated with the generation of new maps or extension of existing maps.

    In the dynamic environments of the factory of the future, the ease of use, flexibility, scalability of an AMR gives it a clear advantage compared to AGVs. AMRs generally have enhanced sensing capabilities, with longer range Lidar, 3D depth sensing, radar and RGB vision technologies. These sensing modalities combined with superior compute power and artificial intelligence open up additional possibilities for advanced features and improved human robot interaction. To learn more on how ADI’s technology is enabling AMR and AGV robotic deployments, visit analog.com/mobile-robotics.

    • 7 Oct 2025
  • A robot navigating through a warehouse filled with stacked boxes

    Blog: Industrial Mobile Robotics - Revolutionizing the Factory of the Future Today

    SarahCrowe28
    SarahCrowe28

    by Anders Frederiksen & Margaret Naughton

    Welcome to the first installment in our blog series exploring the dynamic world of industrial mobile robots. As industries continue to push the boundaries of automation, mobile robots are becoming essential tools for achieving greater efficiency, flexibility, and scalability in manufacturing environments. This series aims to provide a holistic overview of the design challenges and technology innovations that are driving the evolution of industrial mobile robots – from understanding the right robotic fit for your industrial automation needs, to the exploration of critical topics such as localization, navigation, safety and motion control. Experts draw on ADI’s rich history in industrial automation as well as their comprehensive system level knowledge to explore how key enabling technologies are addressing the challenges faced on the path to more efficient and flexible manufacturing capabilities.

    The automation of tasks is becoming commonplace in all facets of our lives. Who hasn’t seen their neighbor out mowing their lawn lately but instead has seen a robotic lawnmower happily moving around the garden keeping the grass at bay. This is just one example of where automation in the form of a mobile robot is freeing humans from repetitive tasks. As much as I love not having to mow my lawn, the real impact of mobile robotics and the automation of tasks is most evident in factories and warehouses. Where constant movement of materials and assets within a manufacturing facility is required, here you see the power of what mobile robots can do.

    Autonomous Mobile Robots (AMRs) or Automated Guided Vehicles (AGVs) allow disparate parts of a production process to be connected, they can be the go-betweens for humans or other machines facilitating the handoff from one station to another.

    image

    You might wonder “why are mobile robots making more of an impact today?” – the answer is simple; firstly, they are more perceptive. Data-driven insights are making a difference in today’s automation revolution. In a true fusion of sensors, data from 3D time of flight cameras, Inertial Measurement Units (IMUs), Lidar, and many more systems are collected and processed to create a real-time awareness of the robots’ surroundings, seamlessly mapping the environment, and the robot’s location within the factory floor.

    Secondly, they are efficient. With advancement in real-time perception comes more freedom, and the ability to move around a dynamically changing environment. Warehouse and factory automation is relying on mobile robotics to improve efficiency, manage inventory, and speed up operations. In large warehouses, the management and movement of inventory is streamlined with mobile robots that can scan, locate, and move equipment and products, to ensure a 24 / 7 level of operation to meet demands for fulfilment, in the case of retail and online shopping. Another key factor is that fully automated factories can operate at lower temperatures and light conditions where humans normally would not work but robots “don’t care”.

    With predictable movement comes the added benefit of safety. Having mobile robots transferring materials not only brings efficiency but also removes risks inherently involved in certain tasks. A task performed by a forklift controlled by a human has the potential for injury to the driver, to others in the location, and can be unpredictable in its operation. A mobile robot will consistently choose the most efficient way of getting from point A to point B, it will move slowly to its required location and, in the case, where accidents happen, no human is there to be injured. Some tasks may involve hazardous materials, or interaction with dangerous equipment, these scenarios pose no risk to a mobile robot tasked with transporting that material or getting close to a large piece of moving equipment, unlike a human operator tasked with the same job.

    Thirdly, today’s robots are more flexible, they can be programmed for new tasks as the needs arise in processes. With the quest for batch-size-of-one production facilities requiring customized processes, mobile robots that can adapt are vital. The Robot Operating System (ROS) which is a powerful developer tool for driver development has enabled many to begin their robotic journeys. Designing algorithms to bring human-like behavior to a mobile robot and the tasks that it must carry out. It’s a fascinating time to be working in the field of robotics with more standardization, more collaboration, and the digital transformation happening in the industrial world – making mobile and mounted robots capable of understanding the environment, interacting, and communicating like never before.

    Intelligence at the edge, improvements in battery management, and seamlessly connected factories are all supporting the deployment of mobile robotics. While some tasks are easier than others to automate, when it comes to the world of Industrial Mobile Robotics, the tasks are more complex, the environments more challenging and the intelligence onboard the robot will be key in its seamless integration into a highly automated manufacturing environment. To learn more visit analog.com/mobile-robotics

    • 4 Sep 2025
  • Rev Up Your Motor Control with Current Sensing

    Blog: Rev Up Your Motor Control with Current Sensing

    brianc
    brianc

    We examined the power inverter, the power electronics block that sits at the heart of every motor drive, in the previous blog in this series . It is the controllable power element that enables modulation of the power to the motor in order that its speed and torque can be precisely controlled. Control of the inverter is thus critical to the whole operation of the drive. For any closed loop control system we generally need a set point (e.g. the desired operating point) and a measured variable (known as feedback) to compare it with, in order that the control loop can respond to any difference between these. In drives, the key measured variables are typically motor current, and motor position. Other variables such as DC bus voltage are helpful to the operation of the control loop. In this blog, we will examine the current feedback and the DC bus voltage measurement as these occur within the inverter stage described in the last blog, as indicated again in our architecture diagram below.  

     image

    Figure 1: Servo Drive Architecture Diagram 

    What is important in the current feedback path is that the measurement is synchronized with the PWM cycle in order that no high frequency switching current ripple is introduced into the feedback path. This requires precise timing of the current sampling in order that it is sampled at the midpoint of the waveform. At this point in the waveform, the instantaneous current is equal to the PWM cycle average, and the measurement will not include any of the PWM switching ripple current.  This is illustrated in Figure 2 in a simplified fashion – where the sampling point on the phase current waveform is shown, along with its relative alignment to the PWM high-side switching waveform, and the switching period Tsw. The PWM_SYNC pulse indicates the point at which sampling of the current must be triggered in this scenario (this can also be understood as the center-point of the digital filter in the case where sigma-delta ADC type sampling is used which is not a single-point sample, see [1])   

    image 

    Figure 2: Motor current mid-point sampling 

    Simultaneous sampling of at least two phases is also required, and usually 14-16 bit measurement resolution is sufficient, with microsecond-level latency so that the control loop can respond within the PWM cycle time (Tsw) or in half the cycle time for higher performance control loops. 

    There are a few different ways to implement the current measurement – these are shown in Figure 3, and described in the table below, along with some example part numbers to implement the scheme for a 20A application. The most accurate location to measure the motor current is in the actual motor phases, i.e the output lines of the inverter – but this usually requires galvanic isolation, due to the high voltage present at these nodes. Motor current measurements can be inferred from other locations such as inverter leg, and DC bus positive or negative rail – however these measurement locations, while potentially cheaper to implement have other disadvantages associated with them.  

     image

    Figure 3: Current feedback options 

     

     

    Description 

    Comments 

    Example Parts (20A) 

    1 

    Series shunt resistor + high common mode voltage (CMV) op-amp + simultaneous sampling ADC (SSADC) 

    Usually used in <100V applications, as high CMV op-amps are usually rated for this range.  

    CFN1206AFXR010 (Bourns) 

    AD8410 (ADI) 

    MAX11195(ADI) 

    2 

    Series shunt resistor + isolated ADC  

    Best solution for noise immunity, size and performance. Bitstream output – needs digital filter 

    CFN1206AFXR010 (Bourns) 

    ADuM7701-8 

    3 

    Isolated current sensor + opamp + SSADC

    Good solution for higher current levels where shunt resistors become too inefficient 

    HMSR 20-SMS (LEM) 

    AD8515 (ADI) 

    AD7380 (ADI)  

    4 

    Leg shunt resistor + opamp + SSADC 

    Cheapest solution as no isolation needed if controller is DC bus grounded. Less accurate than in-phase shunt 

    CFN1206AFXR010 (Bourns) 

    MAX4477(ADI) 

    MAX11195(ADI) 

     

    High fidelity, precision, current feedback is important to the overall control loop of the inverter. It has a big impact on the overall control bandwidth and torque ripple. Bandwidth translates into faster transient performance of the motor control – which can be very important in applications like pick-and-place machines. Torque ripple translates into effects such as machining quality and finish tolerance in applications like grinding, cutting and polishing.  

    While current feedback is the most important feedback variable from the inverter to the controller, DC bus voltage can also be valuable as a control feedforward variable. It is not used as a controlled quantity, but because variation in the DC bus voltage impacts the dynamics of the current control loop it can be used as a feedforward variable, which improves the dynamics of the overall current controller. The end result of this is as shown in Figure 4. 

     image

    Figure 4: Current Controller Block Diagram 

    The DC bus voltage sense signal can be derived directly from a voltage divider across the DC bus if the controller ground is at the DC bus negative, or else by using an isolated amplifier or ADC (such as the ADuM7701 mentioned previously) connected to the voltage divider output.    

    The next blog will look at another important feedback variable – position sensing – that is utilized in another part of the motor control system in conjunction with the current and voltage sensing described in this blog post.  

    References 

    [1] “Part 1: Optimized Sigma-Delta Modulated Current Measurement for Motor Control” by Jens Sorensen, Dara O’Sullivan, and Shane O’Meara, https://www.analog.com/en/resources/analog-dialogue/articles/optimized-sigma-delta-modulated-current-measurement-for-motor-control.html  

    • 7 May 2025
  • The Inverter Stage: Unlocking the Power of Power Electronics

    Blog: The Inverter Stage: Unlocking the Power of Power Electronics

    brianc
    brianc

    The inverter stage is the “muscle” of the drive – a power electronics block that provides the regulated, conditioned power directly to the motor, driving it in the manner required by the end application, providing the amperes needed for torque production, the voltage needed for speed and magnetic flux regulation, and the frequency and phase relationships required for control of the speed and torque in the most efficient manner.

    In a previous blog, we finished our consideration of the power supply functions within the variable speed drive (VSD). In this blog, we move into the heart of the drive – the inverter stage. This is highlighted in Figure 1.

      

    image

    Figure 1: Detailed Variable Speed Drive Architecture

    The inverter stage fundamentally has two sets of inputs and one set of outputs. The main power input is the DC bus (discussed in the previous blog on the input stage). The main power outputs are the three-phase lines to the motor. The main control inputs are the gate signals to each of the switching power transistors in each leg of the inverter. There are various flavors of an inverter with different numbers of phases, and different power electronics topologies (multi-level, matrix, etc) but the vast majority of inverters on the market are three-phase, two-level inverters as shown in Figure 2.

     

    image

    Figure 2: Inverter Stage Driving Three-Phase Motor

    Power Transistors

    The power transistors in each leg of the inverter are power-switching devices that turn fully on or fully off at a high frequency (usually in the range of 5-20kHz) and a controlled duty cycle or modulation index. They act as quasi-ideal switches that modulate the voltage applied at each motor phase winding and re-create a waveform with low-frequency components (typically sinusoidal) related to the motor velocity (typically in the range DC-1kHz) and instantaneous position and an averaged voltage amplitude related to the motor velocity and rated magnetic flux. This is illustrated in Figure 3. The output inverter phase-to-negative voltage is a pulse width modulated square wave switching between the DC bus voltage and zero. The inherent inductance of the motor windings will filter this signal to result in a motor current at the required low-frequency phase, frequency, and amplitude, with some undesirable switching frequency ripple present.

    image

    Figure 3: Inverter phase output voltage and current

    The power transistors and associated thermal management (heat sinks, fans) are usually amongst the most expensive components in a VSD and also tend to take up the most space, especially at higher power levels. Power losses in the transistors come from the fact that they are not ideal switches, have a small voltage drop across them when conducting current, and also have non-zero turn-on and turn-off switching times when high voltage and high current within the switch overlap for short periods resulting in switching losses.  Historically MOSFETs and IGBTs have dominated the power transistor market, but in recent years, there has been a trend to look to wider band-gap SiC and GaN-based power transistors. These can offer lower switching losses, which can allow for higher switching frequencies or more efficient inverters at the same switching frequency. The incentive for VSD designers to move to SiC and GaN is not quite as compelling as in other application spaces, where moving to higher switching frequencies allows for smaller filters. In VSDs, the filter is the motor winding, so in many applications, a higher switching frequency does not give a huge advantage.

    Gate Drivers

    Gate drivers are responsible for converting the logic level signals from the motor controller to signals that have the voltage amplitude and current drive capable of fully controlling the power transistors, and for ensuring that those drive signals are correctly referenced, as illustrated in Figure 4.

    image

    Figure 4: Switching function of a gate driver

    Other functions provided by the gate drivers can be:

    • Power transistor protection (e.g. desaturation detection in inverter/motor short-circuit conditions)
    • Managed switching of the power transistor (e.g. application of different slew rates to the gate drive signal to manage EMI in certain conditions)
    • Galvanic and safety isolation of the motor controller from the inverter stage
    • Reporting of fault conditions in the inverter and power transistors

    So gate drivers can be very complex devices with full communication interfaces (e.g. ADuM4177), or quite simple devices with only driving functionality (e.g. MAX22700). Whatever features are included in the gate driver, robustness to transients (expressed in specifications such as Common Mode Transient Immunity – CMTI) is an important feature as these devices live in a very noisy domain in the inverter, and need to be able to sit between the quiet, low voltage environment of the motor controller, and the high voltage, high current, noisy domain of the power transistors.

    Summary

    The power inverter is the heart of the VSD and manages the currents and voltages applied to the motor. Safe, robust, efficient switching of the power transistors within the power inverter is an important function of the gate drivers within a VSD. The next blog will consider some of the signals that are measured within the inverter stage to accurately control its operation.

    • 28 Mar 2025
Documentation
  • pchan
    Group Intro Widget Content
    By pchan > > over 3 years ago

  • pchan
    Main Group Widget
    By pchan > > over 3 years ago

  • Matt
    Setup
    By Matt > > over 4 years ago

  • Matt
    Featured Video
    By Matt > > over 4 years ago

  • rscasny
    Poll: Are You an Analog or Digital Design Engineer?
    By rscasny > > over 4 years ago

  • rwang
    Press Release - Maxim - 1mm² current-sense amplifier sets benchmarks for power consumption and accuracy
    By rwang > > over 4 years ago

  • rwang
    Press Release - Maxim - 76V APD current monitor significantly reduces settling time for GPON modules
    By rwang > > over 4 years ago

  • rwang
    Press Release - Maxim - SFP+ optical module controller with analog LDD interface provides full compatibility with the SFF-8472 specification
    By rwang > > over 4 years ago

  • rwang
    Press Release - Maxim - Highest linearity, SiGe downconverting mixer for LTE, WiMAX, and MMDS base stations
    By rwang > > over 4 years ago

  • rwang
    Press Release - Maxim - Fully integrated 2:1 VGA multiplexer with extended ESD protection enables higher bandwidth applications
    By rwang > > over 4 years ago

More
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube