zapta / legacy_stepper_motor_analyzer

A DYI minimalist hardware stepper motor analyzer with graphical touch screen.
Creative Commons Zero v1.0 Universal
161 stars 31 forks source link

Would a voltage reading be possible? #3

Open pfn opened 3 years ago

pfn commented 3 years ago

It would be cool to see what realtime voltages are driven into the motors. (Better power estimations?)

Seems like the galvanic isolation would prevent this, though :(

zapta commented 3 years ago

Yes, that's correct, sampling also the coil's voltage will allow to provide additional information. I didn't use that approach to keep the design simple. Hopefully the idea of stepper analyzer will get wider attention by the community and others will come with new features and capabilities.

This concept can evolve in many directions. One of the options I considered is a small dongle, that connects in serial to the stepper, has no screen or USB connector, derives the (minimal) power from the stepper motor, and sends the data to a computer app via BLE. A dongle like that could also sample the coil voltages.

phil-barrett commented 3 years ago

Another possibility is to use an isolating I2C or SPI interface. I have used an ISO1540 to isolate the sampling side of a high voltage system. See the schematic below. It is used to sample a plasma torch height signal (100-120VDC).

That brings up the question of power. I punted on it in the project below - requiring an external isolated 9-12V power input. The sampling dongle could be battery powered (2032 coin cell probably). Though for good battery life, it would probably need a small microcontroller to manage shut down/wake up.

Perhaps better to figure out how to draw a little parasitic power from the steppers. A few mA wouldn't change things much.

Worst case is an isolated DC-DC converter.

image

zapta commented 3 years ago

The digital isolator is very interesting. A few things to address:

  1. Isolated power. An isolateddc/dc is one possible solution. E.g. AM1SS-0503SJZ. Harvesting power from the stepper is also interesting.

  2. Lack of access to stepper ground. One brute force approach is to have to independent isolated channels, one for each coil.

  3. Sampling rate. The sampling rate needs to be fast enough (currently the analyzer sample current at 100k samples/sec) and possibly in sync with the current samplings.

I wonder what kind of analysis adding the voltage sampling will allow. For example can it be used to compute the inductance or back EMF? Can it be used to detect skipped steps, similar to the stall detection done by the TMC stepper drivers? Anything else?

I would start with a quick and one of sampling of current and voltages as a proof of concept that useful data can be extracted from it.

Z.

On Sat, Apr 24, 2021 at 9:36 AM phil-barrett @.***> wrote:

Another possibility is to use an isolating I2C or SPI interface. I have used an ISO1540 to isolate the sampling side of a high voltage system. See the schematic below. It is used to sample a plasma torch height signal (100-120VDC).

That brings up the question of power. I punted on it in the project below

  • requiring an external isolated 9-12V power input. The sampling dongle could be battery powered (2032 coin cell probably). Though for good battery life, it would probably need a small microcontroller to manage shut down/wake up.

Perhaps better to figure out how to draw a little parasitic power from the steppers. A few mA wouldn't change things much.

Worst case is an isolated DC-DC converter.

[image: image] https://user-images.githubusercontent.com/16570958/115965789-a05c5500-a4df-11eb-9f5c-189b48bf8d37.png

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/zapta/simple_stepper_motor_analyzer/issues/3#issuecomment-826118756, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAQVMQIXMKQE7AB5F6S6KEDTKLXR7ANCNFSM43GSK5XQ .