Introducing a Modern Dynamic Signal Analyzer Project and Seeking Feedback - Page 1
Forum section: electronics / projects

author: 2nOrderEDO
author_rank: Regular Contributor
timestamp: April 18, 2023, 09:45:27 am
content: Hello everyone,I'm excited to announce that I'm currently working on a project to develop a Dynamic Signal Analyzer (DSA) inspired by the HP3562A or Keysight 35670. This endeavor serves a dual purpose as it is both a new product for my private company and the subject of my master's thesis. Over the next year or two, I will be deeply committed to this project, and I'm eager to share updates and generate interest. I would also love to hear your thoughts and ideas on what you'd like to see in the final product.A fellow EE friend of mine is also involved in to this project. Our vision is to create a DSA that closely resembles the HP3562A, but with enhancements and a form factor similar to the Bode100.I'm particularly fascinated by modern 3D-printers with web interfaces (for example,https://docs.mainsail.xyz/andhttps://docs.fluidd.xyz/). With web browsers capable of handling plots, 3D-graphics, reactive interfaces, file uploads and downloads, and more, it seems logical to incorporate a small computer (like the Raspberry Pi CM module) within the instrument, making it independent and accessible through the network.The current task definition for the master project is as follows:Overall goal:Develop a modern Dynamic Signal Analyzer (DSA) based on the classicHP3562A.Gross specification:Dual-channel spectrum analyzer with a range between 64 μHz to 100 kHz and with a dy-namic range >80 dBModular 2-board system: a Single Board Computer (SBC), meant to be reusable betweendifferent instruments, and the second “Instrumentation Board” which will contain the analogfront-end, ADCs and communication interfacesThe interface to the instrument will be through Ethernet (with or without PoE) or Wi-FiThe instrument control panel will be accessed over IP in a web browser to achieve followingadvantages:Design of the GUI becomes a web UI design problemWeb UIs are platform-independent, removing the need for multiple desktop app developmentModern web UI are responsive: they adapt to the device they are viewed on (tab-lets, laptops, phones, etc.)The application-level processing occurs directly in the instrument, not in an externaldeviceThe instrument can be accessed from a single computer, LAN or the internet, facilitating automation and test bench integrationInitial project milestones (to be presented in January 2024) include:Develop and present a concept of the final deviceSelect an appropriate single board computer (SBC)Develop and validate the measurement boardCreate a preliminary GUICurrent Status as of 18.04.2023:Social Media:I will be publishing updates on my website eulerprecision.com and creating a Hackaday project page for increased visibility (following days). Sharing updates from the beginning will allow me to gather feedback and maintain motivation. Though I don't anticipate donations, any support would be welcome, as I am funding the development costs myself :-)Requirements Engineering:Your expertise and suggestions are invaluable. As DSAs have been around for some time, experienced users may have insights into desirable features and specifications. By providing your input, you can help shape the final product. I have created an IEEE Project Requirement template to document requirements, which currently reflects the specifications of the HP3562A. If I notice a pattern of requests for particular features, I may incorporate them as requirements for the project.System level analysis:The instrument will be structured similarly to a 3D printer that uses Klipper and a web interface. It will consist of a main computer handling the GUI, a "motherboard" controlling the peripherals, and the required software. Based on this concept, I have conducted an initial analysis of the system as a whole (image based on 3D printer reference designs):Hardware:We have already selected and purchased 24-bit ADCs, a powerful MCU, DDS, and a Single Board Computer for evaluation. To expedite development, we have acquired evaluation boards, which we will interconnect in the coming month.Front end:For now we can start testing the ADCs and developing the software and GUI without having a front end amplifier. We will be limited to measure only signals within the ADC input range. The following steps is to reverse engineer the HP3562A analog front end:It is not as complicated as it seems. Some blocks are discrete implementations of DACs and half of the blocks are duplicated. With this simplifications, the problem reduces to reverse engineer the characteristics of the input amplifier:We want to go a little bit ahead, and improve this amplifier so that it has a configurable gain high enough that we can use the instrument directly to do Noise Spectral Density plots, so a gain between 60 db and 80 db will be needed.User interface:Frontend development is not my forte, so I will outsource this one. I already know the correct person for the job. As a paid project, we will define a work package with deliverables, and he will produce an initial implementation. Our goal is to develop a simplified, proof-of-concept GUI within the next three months.Usually, I work on this project every Tuesday full time and any extra time I can scrap over the week. You can expect and update from me every week from now on.I look forward to your feedback and suggestions as we embark on this journey to create a modern Dynamic Signal Analyzer. Your input and support are greatly appreciated!Note: I will address the issues with the images at a later time. Currently, I am in a rush.

author: moffy
author_rank: Super Contributor
timestamp: April 19, 2023, 12:05:59 pm
content: Will you be using a quadrature output DDS?

author: macaba
author_rank: Regular Contributor
timestamp: April 19, 2023, 01:17:02 pm
content: This is a topic I have a lot of interest in, I will be following this.My background is that I have built low noise precision AFE+ADC designs, and I've written software to produce accurate NSD plots from ADC data so I know a little about what would go into a DSA.You may be able to simplify the AFE considerably compared to the legacy HP products. We now have access to integrated devices that didn't exist in those days. e.g. high impedance/low noise/high CMRR input buffers (OPA140), low noise/high CMRR differential amplifiers for driving the ADC (THP210) and ADCs with excellent noise/linearity vs. speed FOM (AD4630-24). ADA4523 is a great part too, depending on your input impedance requirements.It looks like you are wanting potential end user feedback, all I can say is that your specification looks ideal to me.I like the split of AFE board and SBC (one board will last 50 years, the other board is subject to failure and volatile SBC-fashion-trends) and a Web UI seems reasonable as long as there is a text-based socket interface, that may or may not be similar to SCPI, so that automation from scripts is easy.

author: porter
author_rank: Regular Contributor
timestamp: April 19, 2023, 09:57:38 pm
content: Hi, I was wondering if you had any specific applications in mind. Way in the past, I used a HP3582a for structural testing. A shaking table, impact hammer, or snap back provided excitation to the structure.Thanks

author: Tomorokoshi
author_rank: Super Contributor
timestamp: April 20, 2023, 12:33:20 am
content: What about the Trigger and Tachometer inputs?

author: 2nOrderEDO
author_rank: Regular Contributor
timestamp: April 20, 2023, 07:49:12 pm
content: I'm happy to see that there's interest in the project even though it's just getting started!Quote from: moffy on April 19, 2023, 12:05:59 pmWe recently acquired evaluation boards for the AD9832, which doesn't offer quadrature output. The AD9832 might not be the final choice for the signal source, but should be sufficient for a functionality study and an initial prototype.From what I understand, and based on the analysis of other DSAs, the ability to generate different stimulus signals beyond sine waves (such as step, sinc, etc.) can be quite helpful in characterizing systems. Therefore, it is likely that we will have to switch to a DAC in the future.I'm interested in the reason behind your question. Do you have any special requirements that would required a quadrature output?Quote from: macaba on April 19, 2023, 01:17:02 pmI'm glad you appreciate the dual board concept—it certainly has its advantages. As for the command interface, implementing an API to interface with the instrument would be one of the objectives. My vision is to create an open-source software/firmware platform, allowing everyone to contribute to the instrument's development.We are going to have quite the learning ride with the fronted, which I'm looking forward to!Quote from: porter on April 19, 2023, 09:57:38 pmYes! We've used the HP3562A for verifying filters and characterizing amplifier noise. Mechanical/structural analysis is a significant application for signal analysis, so features like coherence analysis, vibration modes, and pole identification will be highly valuable.Quote from: Tomorokoshi on April 20, 2023, 12:33:20 amA trigger input will definitely be included. You can expect to find more or less the same number of connection options as on other DSAs. We're still considering how to handle things like tachometers, shock sensors, and piezoelectric acceleration sensors that require special amplifier inputs (charge amplifiers) or power supplies.One possibility we're exploring is providing a dedicated slot or something similar, where custom-made or pre-designed modules can be inserted to expand the DSA's functionality. This approach would enable the addition of extra hardware required for impedance analysis, connecting external accelerometers, and so on. For some simpler inputs, like tachometers, a straightforward additional connector should suffice. We want to make the instrument as versatile and adaptable as possible to meet various user needs.

author: moffy
author_rank: Super Contributor
timestamp: April 21, 2023, 12:09:29 am
content: "We recently acquired evaluation boards for the AD9832, which doesn't offer quadrature output. The AD9832 might not be the final choice for the signal source, but should be sufficient for a functionality study and an initial prototype.From what I understand, and based on the analysis of other DSAs, the ability to generate different stimulus signals beyond sine waves (such as step, sinc, etc.) can be quite helpful in characterizing systems. Therefore, it is likely that we will have to switch to a DAC in the future.I'm interested in the reason behind your question. Do you have any special requirements that would required a quadrature output?"Not really, it might be handy for communication based testing where they have the I and Q path, as well as synchronous demodulation, accurately detecting low level signals, the quadrature is needed for both phase and absolute amplitude.

author: 2nOrderEDO
author_rank: Regular Contributor
timestamp: April 26, 2023, 05:57:49 pm
content: Just a quick update of what I have done yesterday:Created task to design an adapter board to connect the DDS evalboard to the MCUCreated task to characterize best available clock source for MCU and ADCSCreated internal gitlab repo for firmware and softwareDocumented ADC comunication protocol for further referenceStarted writing MCU firmware in STM32CubeIDStarted assembly of boardsThe day before, I removed the XLR connector from the ADC boards and fitted all the SMA connectors. I also had to remove the female pin header and exchange it with a male one so that I can connect it to the MCU. Unfortunately, I realized later that I have to install all the extra pin headers in the MCU evalboard anyways since some pins I want are exposed in the ones preinstalled (will do this week).Currently we have to select the best possible 40 MHz clock source for the system. When I say best, I mean the one with the least jitter, since it impacts SNR directly. We have two options:Use the STM32 onboard 8 MHz + PLL and output the signal to the MCO pin to be distributed to the ADCsUse the 40 MHz crystal + logic gate buffer available in the AD7763 evalboardI expect the lowest jitter signal to be the one from the ADC evaluation board, since theoretically it was selected to "match" the ADC, but we will measure it before deciding.Regarding the DDS evaluation board, it would be possible to remove some testpoint loops and replace them by pin headers so that we don't have to go the adapter board way... although I like the adapter because is more "professional".Hopefully I will have some time over the weekend to continue with the firmware.

author: Kleinstein
author_rank: Super Contributor
timestamp: April 26, 2023, 07:00:29 pm
content: Ideally the stimulus and ADC would run from the same or a locked clock. In this case the clock jitter and clock drift can be quite a bit less critical than with separate clocks. One ADC may run from it's on board clock, but the other would than still need a link for the clock.The µC internal PLLs tend to be not of the greatest quality, though possibly still good enough.I see relatively little use for a quadrature clock on it's own. It would only make some sene if there is something like a vector modulation working on that.The AD9832 is more like the lowest end DDS chip around. It may help to have at least to option to fine adjust the amplitude. Coase adjust would be usually external in the output stage.Instead of a single DDS with quadrature, one may consider the option for 2 separate DDS channels, e.g. to test nonlinear DUTs, from a mixer to a 2 tone test to detect low levels of nonlinearity.

author: dobsonr741
author_rank: Frequent Contributor
timestamp: April 26, 2023, 08:07:01 pm
content: Did you consider SCPI in addition to the web interface?

author: electrolust
author_rank: Unknown
timestamp: April 30, 2023, 04:34:15 am
content: Watching with great interest!Please post your thesis.

author: 2nOrderEDO
author_rank: Regular Contributor
timestamp: May 02, 2023, 03:08:13 pm
content: Quote from: electrolust on April 30, 2023, 04:34:15 amGlad to hear! I really appreciate that people find it interesting, it sure helps!Do you mean that you want to see my Bachelor's thesis?Quote from: dobsonr741 on April 26, 2023, 08:07:01 pmSure, that is something I want to include as well.Some quick update: today I'm at uni working on the project, trying to get data out of the ADCs. I'm completely new to this uni, and I don't know where anything in the lab is, which burdens my productivity. At some point I may consider only working in my lab at home. My time is split like follows: work 80% for a client and the remaining 20% for the Masters degree has to be split between the lectures for the two courses I have this semester and the DSA project. The project will speed up once the lectures are over and I can dedicate "the 100% of that 20%" to the project.I would try to do another update later this week.

author: nenea dani
author_rank: Regular Contributor
timestamp: May 03, 2023, 09:40:52 am
content: Hello everyone, I am also following this project because I am interested in the analysis of signals starting with 20Hz. Will it appear on Kickstarter?

author: electrolust
author_rank: Unknown
timestamp: May 04, 2023, 03:37:41 am
content: Quote from: 2nOrderEDO on May 02, 2023, 03:08:13 pmOh sorry, I misunderstood. I thought this work was based on a thesis you'd already written.

author: 2nOrderEDO
author_rank: Regular Contributor
timestamp: May 04, 2023, 10:01:20 am
content: Quote from: electrolust on May 04, 2023, 03:37:41 amNo need to be sorry hehe. It is a project on the making, so you can grab a beer and popcorn and enjoy watching us struggle with the project :-)Quote from: nenea dani on May 03, 2023, 09:40:52 amWe are in the very early stages, so not in the foreseeable future. I also have a bias not to like crowdsourcing platforms/campaigns. When the time comes, it will be available in my company webpage to pre-order. I believe this method shows more commitment and is worthier of customer trust.

author: Berni
author_rank: Super Contributor
timestamp: May 04, 2023, 10:26:29 am
content: I don't see the reason for having a SBC in here.If the instrument is designed to have a local UI with a front panel, then it makes sense to run this UI on a separate linux flavored ARM computer board. But if it is only for network control then it seams like a lot of added complexity.You can have a Ethernet connection and SCPI control using just a regular MCU these days. The acquisition of the ADCs should be run using DMA and interrupts so the CPU does have a fair bit of time to do other things in the background. There are also dual core MCUs if you are worried about the CPU running out of puff for running the real time acquisition tasks.Since you are targeting a web browser, it means you can offload the bulk of the processing to the host machine. All that the MCU has to do is stream out live ADC samples over the local network to the browser via web sockets as well as serve up a static webpage that loads up your application in the browser.These STM32H7 MCUs are fast enugh to even FFT the signal live in real time without gaps, but that is proabobly not worth it as any PC or even old android phone that can open modern webpages at a usable speed will have many orders of magnitude more processing power than is required to crunch the numbers live (JIT compiled javascript is very performant). That's because modern script bloated websites found on the internet are very computationally intensive for the host device.