Angle measurement for balancing robot.


Closed Thread
Results 1 to 40 of 53

Hybrid View

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


    Did you find this post helpful? Yes | No

    Default

    Hi,
    I'd say +/-45 degrees from "down" will be more than enough. The problem, again, is that it needs (I'd like it) to be an absolute value in reference to gravity.

    /Henrik Olsson.

  2. #2
    Join Date
    Jan 2007
    Location
    Muenchen, Germany
    Posts
    5


    Did you find this post helpful? Yes | No

    Wink I got my two-wheel balancer working

    Henrik,

    during the last weekend I had a breakthrough using the kalman filter code you provided here from the nuts&volts article. I got my robot balancing based on combined gyro and accelerometer approach. Up to now I also used only one axis of my 2-axis accelerometer (therefore containing also an error due to the measurement of the robots acceleration itself: this error seems to be filtered away by the kalman code). The regulation is only PD-control, not PID, but I plan to extend it to PID to get better control of absolute position. I have a demonstration video (6MB) which is too large to be uploaded here. If you send me your email address, I will mail it to you.

    All approaches based on using only the accelerometer or the gyro were not successful so far: the pure accelerometer approach has a too noisy signal to be used for this kind of control and for the pure gyro approach I was not yet able to really compensate for the drift only by software.

    Have fun, Dirk.
    Last edited by uffi; - 26th February 2007 at 17:10. Reason: removed e-mail address

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


    Did you find this post helpful? Yes | No

    Default Sweet!

    Hi Dirk,
    That's absolutely great!
    I haven't had time to work on mine for a while. I did get it to balance fairly well using the SHARP sensors though but nothing have been done to it since then.

    So based on your experience (and mine, so far) I think that we can rule out using just an acceleromter or gyro. I kind of had that feeling from the begining but was I would be glad to be proven wrong.

    Now, if we only could port that filter code to PBP. Hmmm...I wonder if there's a way to compile just the filter code and use the assembler code from within PBP.

    Thanks for the update, I appreciate it!

    /Henrik Olsson.

  4. #4
    Join Date
    Jul 2003
    Location
    Colorado Springs
    Posts
    4,959


    Did you find this post helpful? Yes | No

    Default

    Hi Henrik,

    Just wondering if you used your new PID "Code Example" on the Balancing Robot?
    <br>
    DT

  5. #5
    Join Date
    Oct 2005
    Location
    Sweden
    Posts
    3,612


    Did you find this post helpful? Yes | No

    Default

    Hi Darrel,
    Yes I did. The robot was the reason I wrote it. It a 18F2431 for each wheel running a PID compensated velocity servo at 1220Hz thanks to your interrupt routine. The main CPU runs the PID for the actual balancing at 100Hz.

    Any chance you see some way to improove it?

    /Henrik Olsson.

  6. #6
    Join Date
    Jul 2003
    Location
    Colorado Springs
    Posts
    4,959


    Did you find this post helpful? Yes | No

    Default

    >> Any chance you see some way to improove it?

    Actually, yeah, I've got a couple ideas. I'll post them in the other thread.

    But, back to the Balancing Act.
    Did you use it in place of the Kalman filter, or with it?

    Just curious.
    DT

  7. #7
    Join Date
    Oct 2005
    Location
    Sweden
    Posts
    3,612


    Did you find this post helpful? Yes | No

    Default

    Hi Darrel,
    Nope, the Kalman filter (if I ever understand/get that to work) would be used only to track the absolute angle of the robot platform. (Basicly removing the gyro drift). The error (desired angle - actual angle) is then fed to the PID-filter which in turn tells the motor-driver how fast the wheels needs to spin to keep it upright (or whatever).

    As it stands at the moment (with the SHARP sensors) it just subtract the front sensor reading from the rear sensor reading and sends that value the PID-filter.

    Thanks

    /Henrik Olsson.

  8. #8
    Join Date
    Jan 2007
    Location
    Muenchen, Germany
    Posts
    5


    Did you find this post helpful? Yes | No

    Wink link to homepage with my two-wheel balancer named ARTIST

    For those of you interested, I put here the link to my internet homepage, where you can find videos and description of my two-wheel balancing robot named ARTIST.

    http://home.arcor.de/uffmann/ARTIST.htm

    Have fun, Dirk.

  9. #9


    Did you find this post helpful? Yes | No

    Default

    don't know if this is the answer but check it out
    http://www.austriamicrosystems.com/0...ons_AS5043.htm

Similar Threads

  1. Replies: 0
    Last Post: - 2nd February 2009, 23:23
  2. PIC16F877A for application in mobile robot...
    By mcbeasleyjr in forum mel PIC BASIC Pro
    Replies: 5
    Last Post: - 30th January 2009, 14:47
  3. Need Help - Line Tracer Robot
    By pidot in forum mel PIC BASIC Pro
    Replies: 4
    Last Post: - 10th August 2007, 14:58
  4. IR for robot on 16F877A
    By Samuel in forum mel PIC BASIC Pro
    Replies: 14
    Last Post: - 9th April 2005, 20:57
  5. Line tracer robot
    By cibotsan in forum mel PIC BASIC Pro
    Replies: 6
    Last Post: - 30th January 2005, 15:36

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