Shop OBEX P1 Docs P2 Docs Learn Events
Propeller controls industrial robot (video) — Parallax Forums

Propeller controls industrial robot (video)

Graham StablerGraham Stabler Posts: 2,510
edited 2011-07-26 06:22 in Propeller 1
I've been working on doing some force control of a Kuka 6-axis robot for about three months, quite a bit of that time was taken up buying the robot, installing it. Learning Linux, getting a real time Linux working then a "real time" ethernet card working etc etc. I have a first project deadline tomorrow and I just wasn't going to make it in time.

So last week I pulled the Spinneret web server out of the bag and today it is doing basic control of the robot. Very basic but it is all that is needed.

What's going on?

Every 12ms the robot controller sends a UDP packet containing XML over ethernet to the Spinneret. The propeller does some very simple extraction of a time code from the packet (it can also get position/angle/torque data but at the moment I don't do that) and builds an XML reply containing the incremental movement is wants in the next 12ms as well as the received time stamp. This is sent back over the ethernet within 12ms. If it does not reply the robot stops.

So in the video I am just sending a correction every 12ms and then reversing the sign every x cycles. In the eventual application there will be a force sensor on the robot arm and the robot's motions will such as to reduce this force to zero. This lets you push the end of the robot around or in my case attach a hovering micro air vehicle for simulation purposes.

I will probably be returning to RT Linux but the propeller has been really excellent, so easy to use, dependable and predictable

http://youtu.be/2oAy3h8HIrE

Comments

  • Mark_TMark_T Posts: 1,981
    edited 2011-07-26 05:47
    Cool - but the use of "real-time" and "XML" in the same context makes me feel a little queasy!
  • Graham StablerGraham Stabler Posts: 2,510
    edited 2011-07-26 06:00
    Well XML is just text, in my case about 500 characters.

    As I discovered there is nothing real time about Ethernet, TCP and UDP however you can build a frame work that uses them in a real time context. I my case the Wiznet module can be relied upon to send a UDP packet when I tell it to and UDP requires no handshaking etc, the robot controller manages to do the same. The robot controller's packets act like a clock. So it is real time if time goes by at 83hz :)

    Graham
  • idbruceidbruce Posts: 6,197
    edited 2011-07-26 06:22
    @Graham Stabler - You already know my opinion, but for those that dont, thats pretty darn cool :)

    Bruce
Sign In or Register to comment.