Quick thoughts: DT Ints with encoders


Closed Thread
Results 1 to 20 of 20

Hybrid View

  1. #1
    Join Date
    Oct 2005
    Location
    Sweden
    Posts
    3,610


    Did you find this post helpful? Yes | No

    Default

    Yes, but don't you need to know the absolute angle between segments in order to calculate the stylus position?

    You can still use your zero button for relative measurements but shouldn't it be more like an offset from the absolute zero position?

    If you wire a third signal between the master PIC and all slaves you can use that signal capture the count at all six joints simultanously", then the master "pings" each slave for the value. Perhaps that was what you meant, just thought I'd mention it if it wasn't.

    This is a cool project!

  2. #2
    Join Date
    Dec 2005
    Location
    Salt Lake City, Ut, USA
    Posts
    108


    Did you find this post helpful? Yes | No

    Default

    Hey Henrik,

    You are thinking correctly on the absolute angle needed.
    That's where the pulse counting comes in...
    On the arm I've got designed in SolidWorks now has the following:

    500 line encoders
    2000 counts in quadrature
    10.8:1 gearing
    21600 quad counts per 360 degrees

    Upon "zero button" press, we'll get degrees "moved" like this:

    \\\\ Snip of VB Code ////
    Const DPP As Double = 1.66666666666667E-02 <<< 360 / 21600
    Dim DegreesNow As Double
    Dim CountsNow As Integer
    DegreesNow = CountsNow * DPP

    If I'm thinking correctly, that will give us the degrees "traveled" by each joint.
    If I am reading your question correctly, are you referring to the angles from "zero planes"? (dead vertical and dead horizontal)

    Let me know if my thinking is correct?

    Hard for me to keep it all straight!

    I'm will also be doing the CNC machining for the arm components as well...

    Too much for 1 guy to think about!

    Let me know what you think.

    Thanks again,
    Chris

  3. #3
    Join Date
    Oct 2005
    Location
    Sweden
    Posts
    3,610


    Did you find this post helpful? Yes | No

    Default

    Hi Chris,
    Let's take the "wrist" joint for example, or any joint for that matter, it doesn't make any difference. It and the stylus is pointing straight down and the length from the pivot point to the tip is 100mm, you press zero at this point, the counter is 0.

    Now you rotate that single joint 20° (1200 counts), the tip has moved 34.2mm "away" and 6.03mm "up", you collect that point. Now move it another 20°, this time the same amount of rotation in the joint (20°) moved the tip 30.08mm "away" and 17.36mm up.

    Now concider that you from the beginning had pressed zero at the "20° position", the counter is reset to 0. Now you rotate the joint 20° (and ends up the previous 40° position) the counter says 1200 counts which is of course correct but where in 3D-space is the tip?

    Is it 34.2mm "away" and 6.03 "up" from your "zero" like before or is it 30.08mm "away" and 17.36 "up"? Obviosuly the later is correct but how would you calculate that when you don't know that your "zero" was actually 20° from dead straight vertical - all you got was 1200 counts.

    As far as I can see it will impossible to calculate the position of the stylus without having some kind of absolute reference to start from, like all joints at 90° to each other or something. Therefor my sugestion to use the index-channel. But since you have reduction that may not be as easy as I first thought.

    Does that make sense or is it me who's missing something?

    /Henrik.
    Last edited by HenrikOlsson; - 6th January 2010 at 22:26.

  4. #4
    Join Date
    Dec 2005
    Location
    Salt Lake City, Ut, USA
    Posts
    108


    Did you find this post helpful? Yes | No

    Default

    Ahhh, ya got me on that one Henrik! You are absolutely correct. It looks like it's back to the math. I think it's going to have to be based on the Denavit Hartenberg Representation. Crazy math, I must say. I'm actually chatting on another forum with a guy from Carnegie Mellon University, National Robotics Engineering Center. He told me one of his co-workers built a six axis arm and worked out the kinematics for it too. Oh boy, I hope I can garner some info from him! In the mean time, if you want to tinker with it, or have any thoughts on it, it would be a huge help. I hope to have something very soon, as I think this project would be beneficial to so many!

    Thanks Henrik,

    Keep me posted, and I will do the same.

    Chris

Similar Threads

  1. DT Ints work around for IOCA Register?
    By kevlar129bp in forum mel PIC BASIC Pro
    Replies: 2
    Last Post: - 6th January 2010, 01:20
  2. Problem with Dt Ints Interrupts
    By Quin in forum mel PIC BASIC Pro
    Replies: 2
    Last Post: - 18th July 2008, 19:21
  3. Big characters on HD44780 4x20
    By erpalma in forum mel PIC BASIC Pro
    Replies: 23
    Last Post: - 7th January 2007, 02:21

Members who have read this thread : 0

You do not have permission to view the list of names.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts