DRO Project: Signal Analysis

Поделиться
HTML-код
  • Опубликовано: 20 сен 2024
  • #DRO #Arduino #LinearScale #SignalAnalysis #Saleae #LogicAnalyser
    I quick update where I look at the analog signals generated by the DRO sensor and how they translate to the digital logic levels.

Комментарии • 31

  • @julias-shed
    @julias-shed 2 года назад +1

    Interesting to see where this leads. 😀

    • @m0xya
      @m0xya  2 года назад +1

      Hi, thanks for commenting. I am still working on this project, however, it is currently on the back burner as there are a number of other projects taking up most of my time. Many thanks..

  • @carlwilson1772
    @carlwilson1772 2 года назад +1

    Bravo Sir. Fascinating. Those analogue signals almost look like the output of a resolver. Really interesting deep dive into the scale outputs. Thank you very much for subscribing to my channel.

    • @m0xya
      @m0xya  2 года назад

      Many thanks!

  • @TheKnacklersWorkshop
    @TheKnacklersWorkshop 2 года назад +1

    Hello Phil,
    Super interesting video... Looking forward to seeing more on this....
    Take care.
    Paul,,

    • @m0xya
      @m0xya  2 года назад +1

      Cheers.. There are a few elements I need to iron out. But it should be quite an interesting project..

  • @simonlaker2139
    @simonlaker2139 2 года назад +2

    Swap to a teensy 4.0 for your digital read might be a good start.
    Looking forward to the next.
    Trying to do my own project with magnetic linear incremental encoder.
    Love to see your outcome

    • @m0xya
      @m0xya  2 года назад

      Hi, yeah I intend to use something with a bit more umph to do the processing.. The Arduino's as good as they are, don't quite have the speed. I'm currently looking at designing a fast ADC circuit which outputs 4x8bit samples as a 32bit value and streams it over a serial link. All the heavy lifting can then be done away from the read heads. Finding the best sample rate is the fun bit.
      More to follow soon..

    • @simonlaker2139
      @simonlaker2139 2 года назад +1

      @@m0xya check out Jan lukes videos for inspiration.
      He's done several with different encoders using teensy.

  • @CHIPLOAD
    @CHIPLOAD 2 года назад +1

    Thanks for the update it was some good information! :)

    • @m0xya
      @m0xya  2 года назад

      Glad it was helpful!

  • @gillywild
    @gillywild 2 года назад +2

    Very interesting idea. I wonder at what point does the accuracy of the etched glass scale itself become a limiting factor? And, as Stuart said, can the Arduino’s ADC keep up with rapid movements. It isn’t particularly fast afaicr. Looking forward to further developments though :) You’ve already inspired me to build my own DRO :)

    • @m0xya
      @m0xya  2 года назад +1

      Awesome.. Many thanks.. You have some good questions there. Agree about precision and sampling rates.. Hopefully more to follow..

  • @dannywilsher4165
    @dannywilsher4165 2 года назад +1

    Very interesting, thanks for sharing!

    • @m0xya
      @m0xya  2 года назад +1

      Thanks for watching

  • @justinsundaram17
    @justinsundaram17 11 месяцев назад

    Excellent video! Do you have issue with skipping increments? Any recommendations to increase sampling rate if i want to move the scales faster? Or how i can calculate how fast i can move these without skipping

  • @devemch7851
    @devemch7851 2 года назад +1

    The problem with glass scales is that they are huge, susceptible to dirt and discrete.
    The analog signals appear as sine waves. Why?&
    In the Newell system, they pack a tube with ball bearings which act as a magnetic core. In the read head you have a 10 khz signal passing thru a coil which rides the tube. Four magnetic pickup coils pick up the various flux emissions as the reader moves. According to Newell the changes are based on phase shift.
    You think this system works the same way?

    • @m0xya
      @m0xya  2 года назад +1

      Hi, thanks for the reply. No the optical scales work in a different way. The sine wave captured is caused by the change in light level as the read head moves across the mask in the glass scale. It is a changing value over time, related to how fast the read head is moving and the rate I am sampling the values. If I kept the read head still the value would not change over time.
      The scales you're looking at use a totally different technology and as a result give a different output. Your question has put me in mind of a demonstration video. I may also discuss the other methods used.
      Many thanks..

    • @devemch7851
      @devemch7851 2 года назад +1

      @@m0xya cool! According to the Newell site, a 10 kHz sine wave is presented to the first coil. Then there are four pick up coils back to back following the driver coil. All coils are wound on a common coil tube most likely plastic. The scale tube is either stainless or plastic. Stainless would be non magnetic so only the nickel ball bearings packed in the tube would interact magnetically with the drive coil.
      Here is where things go weird. The waveforms picked up by the pick up coils would be sine waves but apparently they are phase shifted. According to Newell the phase shift varies from 0 to 360 degrees. I always thought the phase shift was limited to 180 degrees as then the second waveform overlays the first and the shift starts again at zero.
      Where is the phase shift? Is it between any signal and the drive signal or is it between the signal pickups themselves? In any event, there is a whole lot of zero crossing going on here.
      In your discussion of a linear encoder, it appears that that the quad compareter chip is producing a signal based on zero crosses from the glass scale.
      Since a comparater is analog, would it be possible that Newell is simply using the zero crosses of the sine wave the same way as amplitude or waveform shape does not seem to matter?
      Furthermore, why would it be necessary to drive the coil with a sine wave? That requires a sine wave oscillator in the read head. If you drive the coil with a square wave, you can get your phase shift zero crossings for the comparater in the same way. The use of a schotkey fly back diode should eliminate any back EMF if that is needed.
      The advantage of this scale are three fold. 1). Space. My lathe is a tool room lathe with attachments such as dial gages, steady rest, taper attachment etc. there is not a lot of space to work with. 2). This scale is sealed from oil and chips. 3). The scale is analog not discrete. I didn’t say digital but discrete. Depending on the lithography you will get to a point where resolution is capped.

  • @StripeyType
    @StripeyType 2 года назад +1

    That Mega has ADCs on board, though I guess you may not be able to sample them quickly enough...

    • @m0xya
      @m0xya  2 года назад +1

      Hi, yeah the mega is capable of sampling at 10bit on the ADCs. However, the sample rate is not high enough. My plan is to use a high speed ADC. I need to run the numbers and work out the overall requirements.

  • @JesseSchoch
    @JesseSchoch 2 года назад +1

    i believe there may be 2 problems. 1. those may not be sin/cos waves. 2. the leds and photodiodes are not matched. I have messed with heidenhain sin/cos rotary encoders and I believe they are very closely matched to produce a good signal. that's not to say you can't get some additional accuracy but arctan2 will only get you so far. I did a video on the heidenhain encoders if you are interested. Another approach is dividing up the signal into more crossing points by multiplying the signals, there is a project called anaquad which did some of this. There are also lots of papers on error correction and compensation for sin/cos encoder signals. very close to what needs to be done with wireless radios (quite the rabbit hole). Have you messed with the Z/R signals for error correction or does your DRO only have A/B signals?

    • @m0xya
      @m0xya  2 года назад

      thanks for the message. this project is a slow burner which i'm looking at when i have time. however, my main goal is to look at the signal analysis side of things and experiment with processing options. i will look at the options you have given. many thanks..

  • @terrybailey2769
    @terrybailey2769 2 года назад +1

    Interesting project. I have 5 micron scales on my vertical mill. I don't think I need any more than this (0.2 thousandths of an inch in imperial) there is more flex in my setup than that. But I am definitely going to follow your progress on this. I wonder what you are doing that requires such accuracy or is this one of those "what if" projects?

    • @m0xya
      @m0xya  2 года назад

      Hi, thanks for messaging. The project serves two reasons: first, i want to make a precision scale for the vertical axis of my surface grinder, second (and probably the most important) just to see if it can be done..

  • @joseph9915
    @joseph9915 2 года назад +1

    Wouldn't you tend to be going slow by the time you need the extra accuracy?

    • @m0xya
      @m0xya  2 года назад

      Yes, that is my assumption also..

  • @muddlersworkshop
    @muddlersworkshop 2 года назад +1

    Hi from Australia. I was looking at the screen and I think you had the digital lines the wrong way around as if you line the vertical lines on your screen with the change of digital state they line up with the top and bottom of the analog signals. I like wear this is going but I have a niggling thought that if you need the scales to move fast you are going to have a problem reading it and will have to go with a expencive A/D converter that will have to read at a fast speed. I do not think a cheap A/D converter will have any hope of reading it to the accuracy that you want unless it is only going to be moving very slow. regards and looking forward to the next video and what your thoughts are.. But keep going with it..

    • @m0xya
      @m0xya  2 года назад

      Hi, yeah all very good questions and suggestions. My first concern is removing the noise from the signal, and finding an optimal sampling frequency. This is all work in progress. So more updates to follow..

  • @darkobul1
    @darkobul1 2 года назад

    Stm32 had hardware support for encoders might be way faster then arduino.

    • @m0xya
      @m0xya  2 года назад +1

      Hi, yes, totally agree. I have not decided on hardware yet as the current worldwide stock issues make finding the most suitable devices a bit of a pain. I have a few devices in mind, and the STMs are on the list.