Kflop robot printer help


Results 1 to 12 of 12

Thread: Kflop robot printer help

  1. #1
    Registered
    Join Date
    Oct 2016
    Posts
    7
    Downloads
    0
    Uploads
    0

    Default Kflop robot printer help

    I am very interested in building a robot printer similar to the one in this video:

    I want to use kflop, since I have one from a previous cnc router project. My only concern is not being able to set up the kinematics. I looked at the sample kinematics but none of them seem similar to what I would need. I think I know what equations I need, but I'm not sure how to write a custom kinematics file. Any help with my new hobby or a nudge in the right direction would be greatly appreciated.

    Similar Threads:


  2. #2
    Member TomKerekes's Avatar
    Join Date
    May 2006
    Location
    USA
    Posts
    4045
    Downloads
    0
    Uploads
    0

    Default Re: Kflop robot printer help

    Hi Xolhardal,

    I don't think it would be too hard to come up with a Kinematics Class for a SCARA configuration.

    You might start with the Kinematic3Rod example and put your equations into the TransformCADtoActuators function.

    The base class has a helper function to find the intersection of 2 circles:

    int CKinematics::IntersectionTwoCircles(CPT2D c0, double r0, CPT2D c1, double r1, CPT2D *q)

    I think that would provide the elbow position and from that it should be straightforward to determine the link and actuator angles.

    Does this sound reasonable?

    Are you able to install Visual Studio 2015 Community and re-build our Libraries using the BuildAllLibs.sln solution?

    Regards

    Regards
    TK http://dynomotion.com


  3. #3
    Registered
    Join Date
    Oct 2016
    Posts
    7
    Downloads
    0
    Uploads
    0

    Default Re: Kflop robot printer help

    Hello Tom,

    Thanks for the response. I might have got ahead of myself thinking I knew what I was doing. After doing more research, it looks like the equation I had was only half of the solution, the forward kinematics.

    X=L1cos(S)+L2cos(S+E)
    Y=L1sin(S)+L2sin(S+E)

    L1 is the first arm from shoulder to elbow
    L2 is elbow to wrist
    S is angle of shoulder joint
    E is angle of elbow joint

    Now I need to figure out the inverse kinematics? I am using this document for most of my information, but I don't think I can just copy and paste what I need from this code, can I?

    http://www.deltatau.com/Common/techn...Kinematics.pdf

    I have Visual Studio 2008 installed, but I can install the one you stated if I have to.



  4. #4
    Registered
    Join Date
    Oct 2016
    Posts
    7
    Downloads
    0
    Uploads
    0

    Default Re: Kflop robot printer help

    Just to follow up on the link I posted. The design I will be using does not have a rotating wrist, it will be a fixed unit. Also the up and down motion with be done at the shoulder, not the wrist.



  5. #5
    Member TomKerekes's Avatar
    Join Date
    May 2006
    Location
    USA
    Posts
    4045
    Downloads
    0
    Uploads
    0

    Default Re: Kflop robot printer help

    Hi Xolhardal,

    Yes all you should need is the Inverse Kinematics. The CKinematics Class should solve the Forward Kinematics automatically. If you intend to make use of the KMotionCNC Geocorrection Mechanism it would very hard to solve the forward Kinematics analytically.

    I would expect the equations from Delta Tau should work and port to C Code easily although I don't see how they were derived.

    You didn't like my method using the intersection of circles function that already exists? Once the positions of the links are determined the angles are easily calculated.

    Regards

    Regards
    TK http://dynomotion.com


  6. #6
    Registered
    Join Date
    Oct 2016
    Posts
    7
    Downloads
    0
    Uploads
    0

    Default Re: Kflop robot printer help

    Tom,

    It's not that I didn't like your method, I just have no idea how to use it. I have very limited experience using Kflop, and what I do have is really basic. I have no idea how to use the kinematics you mentioned, I just know that I need them for what I'm trying to do. Like I said, I thought it would be a good idea to built this printer, only because I like to tinker and like a challenge. I'm starting to think I may have bit off more than I can chew, lol.



  7. #7
    Registered
    Join Date
    Oct 2016
    Posts
    7
    Downloads
    0
    Uploads
    0

    Default Re: Kflop robot printer help

    Would this file be something I can use as is or modify to fit my needs?

    https://github.com/araisrobo/linuxcn...cs/scarakins.c



  8. #8
    Member TomKerekes's Avatar
    Join Date
    May 2006
    Location
    USA
    Posts
    4045
    Downloads
    0
    Uploads
    0

    Default Re: Kflop robot printer help

    Hi Xolhardal,

    Well let us know if you plan to pursue this. I'm sure we could help you through it but it would take time.

    That code looks nice but it is copyrighted so I wouldn't recommend using it.

    Here is a diagram of what I was thinking. The "Fixed" point is defined by how you construct your system. The "End Effector" xyz point is given. Calling the Intersection of Two Circles will give the elbow position. Once the positions of both ends of each link arm are known it is simple to find the angles by simply using ATan2(). Usually the outer angle needs to be commanded relative to the inner angle so you would subtract the absolute link arm angles.

    Kflop robot printer help-twocircles-png

    Regards

    Regards
    TK http://dynomotion.com


  9. #9
    Registered
    Join Date
    Oct 2016
    Posts
    7
    Downloads
    0
    Uploads
    0

    Default Re: Kflop robot printer help

    Tom,

    I'm still going to pursue it, since I'm retired and have nothing better to do, lol. I'm still in the process of designing the arm, and in the mean time I'm checking the C programming links on your website to hopefully help me better understand how things work.

    Thanks Again



  10. #10
    Member TomKerekes's Avatar
    Join Date
    May 2006
    Location
    USA
    Posts
    4045
    Downloads
    0
    Uploads
    0

    Default Re: Kflop robot printer help

    Hi Xolhardal,

    Lucky you. Do you mind sharing your background and skills?

    Actually the Kinematics Code resides on the PC and is written in C++ not C. But C++ is just an extension of C. Mathematical formulas are basically coded the same. The main addition in C++ is the concept of Classes and SubClasses. Classes are a means of combining functionality and data into an object. SubClasses take an exiting Class and add and/or modify its functionality. The classic example is a Class of Animals. That Class can be sub Classed into Dogs, Cats, Cows, etc... The beauty of all this is that higher level code can treat the object as type generic Animal without knowing what sub class of Animal it is. For example if Animals have the functionality to "speak" then the object can be commanded to "speak" without knowing what type of object it actually is. If it happens to be a Cow it will emit "Moooo". Hopefully you realize the tremendous advantage this provides in that high level code can operate on objects without knowing what they are and how they do things. Later if behavior of one of the sub classes is changed or a new sub class is added (ie pig) no changes to the higher level code is required.

    In your case you are adding a pig or Rather a CKinematicsScara sub Class derived from CKinematics in a very similar manner that CKinematics3Rod is derived from CKinematics. When the higher level code requests the object to convert the xyz CAD position to motor Positions by calling: TransformCADtoActuators your sub class must do the appropriate calculations.

    Actually for testing purposes you might just modify the existing CKinematics3Rod Class to work for you. Later after it is all working we can add the new Subclass files to the project and so forth so that systems of type "3Rod" and of type "Scara" will all work properly based on the configuration settings without the need to recompile code.

    Sorry if this was more than you wanted to hear. You don't really need to understand a lot of this. Mainly I thought you might like to have some background info on how things work.

    Regards

    Regards
    TK http://dynomotion.com


  11. #11
    Registered
    Join Date
    Oct 2016
    Posts
    7
    Downloads
    0
    Uploads
    0

    Default Re: Kflop robot printer help

    Tom,

    Thanks for explaining how things work. As for me, I started college thinking I was going to be a computer programmer, but after 2 years of parties, I dropped out and joined the Navy. I spent 6 years, 4 on a submarine, as a nuclear mechanic. From there I went from job to job until retiring. My parents hated buying me things for Christmas, because I was that kid that had to tear everything apart to see how it works. Sometimes I even managed to put it back together, lol. I do 95% of my own work around the house and on my vehicles. I'm a firm believer in not paying someone to do something I can learn to do myself. When I saw the scara arm video, I said I could do that. And here we are.



  12. #12
    Member TomKerekes's Avatar
    Join Date
    May 2006
    Location
    USA
    Posts
    4045
    Downloads
    0
    Uploads
    0

    Default Re: Kflop robot printer help

    Hi Xolhardal,

    Sounds like you have the perfect aptitude.

    Regards

    Regards
    TK http://dynomotion.com


Tags for this Thread

Posting Permissions

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


About CNCzone.com

    We are the largest and most active discussion forum for manufacturing industry. The site is 100% free to join and use, so join today!

Follow us on


Our Brands

Kflop robot printer help

Kflop robot printer help