• Welcome to Computer Association of SIUE - Forums.
 

Important Info about PID Programming Assignment

Started by Jerry, 2002-10-11T17:44:53-05:00 (Friday)

Previous topic - Next topic

Jerry


After quite a bit of creative thinking by quite a few people, we determined that the wall following PID controller requires a good bit more calculation than just taking a measurement off of the side PSD.

Soooo, the assignment has been changed a to make it more doable. The new assignment is in the class folder.

"Make a Little Bird House in Your Soul" - TMBG...

Guest

Is anyone having trouble FTPing into the CS classes area?  Every time I try I get a few directories in and then it hangs up.  Occasionaly I will make it to the lectures directory but then it times out while trying to download one of the files.  Really unfortunate considering the change in the PID assignment...

Jerry

I didn't know this was a problem. I'll try to fix something up from my website later today.
"Make a Little Bird House in Your Soul" - TMBG...

Ryan Lintker

I've been having diffuculty ftp'ing csfs2 as well lately.  It just doesn't work as conistently as it used to, so I'm back to using good ol' zip disks for my most used files.
"You can't always get what you want,
 but if you try sometime, you just might find,
you get what you need" - The Rolling Stones

Guest

How big of a circle is the robot supposed to do?  How many times around?

I've been having some trouble with the circle.  Sometimes it will do a decent circle but with each time around its center point drifts a fair bit.  Other times it seems like there is a wide arc before it gets into a circular pattern.

What will the actual test be on demo day?

thanks

-patrick

Jerry


The PID controller should try to keep a 2:1 ratio of the encoder ticks. So both wheels will be going straight, one will just be turning at a speed roughly twice as fast as the other (going either clockwise or counter clockwise, that's your choice). This will create a circle without having to specify the radius.

The testing will be the same, run with P, PI, and PID.
 
"Make a Little Bird House in Your Soul" - TMBG...

Ryan Lintker

It appears that csfs2 is pretty sick these days.  Apparently some wonderful folks got in and set up an IRC server to help pass out illegal software to the world.  (They put a pretty interesting selection on there.)  Plans are in the works to completely repair the problem over Thanksgiving break.  I guess we will have to make do until then.

While I miss using IE for browsing csfs2 for my personal folder, the classes area, and senior project folders, I have had a little better luck when I use an ftp client like smartFtp.  It doesn't seem to hang up as easily and I can usually get the files that I want.
"You can't always get what you want,
 but if you try sometime, you just might find,
you get what you need" - The Rolling Stones

Stiffler

Please forgive my language I will use. God damn assholes know how to really f*ck up a School computer. I thought that students did not have permission to set up software on a Departmental server. I remember Greg talking to Phil about this, but I didn't know CSFS2 was that badly screwed. CSFS2 has connection and file transfer logging turned on, right? I know that it can be enabled, so then they could see what usernames upped those files.

Since Verizon took over as the provider of out lines to the ISP, we no longer have a firewall to the ouside world. At times like these, you appreciate firewalls, but when you have a firewall, you hate it because you can't access your computer from home.

I'm glad I had our Senior Project page put up on Solar. The Admins have done an excellent job of securing it. Plus, it's Solaris, so it's already secure. Isn't CSFS2 a Win2K Advance Server?

Jon
Retired webmaster of CAOS.

Ryan Lintker

It wasn't necessarily a student that did this.  The IRC usernames and IP addresses have been logged, however this information seems to be of little use in tracking these folks.  Students need not be overly worrisome about their files.  The server is backed up regularly.  Csfs2 is a Windows server, but I am not sure what it is running exactly.
"You can't always get what you want,
 but if you try sometime, you just might find,
you get what you need" - The Rolling Stones

Stiffler

I'm not worried. I just hate the inconvenience these ppl cause. It's hard for students to get their work done if servers keep going down, or just really slow and unaccessable. Luckily, The web dropbox is on CSFS3, so that won't be slow.

Jon
Retired webmaster of CAOS.

Ryan Lintker

I agree with that.  I was having a blast trying to download senior project material this weekend over my modem back at home.  It was impossible to get hardly anything down completely.  It throws a big wrench into the study works, ruins the spirit of the student, and causes extra stress on already overstressed people.
"You can't always get what you want,
 but if you try sometime, you just might find,
you get what you need" - The Rolling Stones

Gary Mayer

For those who couldn't figure it out, even after reading the incorrect and incomplete function library  , here's some info on using the quad decoders.

1) Initialize the quads just like a motor:
   quad_left_handle_name = QUADInit(QUAD_LEFT);
   quad_right_handle_name = QUADInit(QUAD_RIGHT);

note that, contrary to the library manual, the quad function uses all CAPS for the word quad vice just a capital Q.  Also, the sematics are QUAD_LEFT and QUAD_RIGHT.

2) Similar to the motors, the quad initialization can be checked for error with
   if (!quad_right_handle || !quad_left_handle)
        {...}

3) Reset the quad values using the handles:
   QUADReset(quad_right_handle|quad_left_handle );
Again, not that the quad part of the function name is ALL CAPS.

4)  Read the values with QUADRead(handle);
Note that read takes only one handle.  Note this function returns a number of counts.  There are about 530 counts per revolution of the axle.  Also, there is QUADODORead which gets a reading in meters.

5) Finally, don't forget, again just like the motors,
    QUADRelease(quad_left_handle|quad_right_handle);

-- Malekith

-- Malekith

The higher, the fewer, Doctor. The higher it goes, the fewer.

Kade P. Cole

Jerry,

When we print out the info on the screen. Do you want us to print the actual P,I,D values or the P,I,D values multiplied by the constants. And the Error value. Is that the difference between the two encoder values or the value of P*P_con+I*I_con+D*D_con. Please help.

Kade
Kade
--------------------------------------
Most people HAVE to use a PC.
I GET to use a MAC with OS X!

Jerry

The Error should be the difference between the two encoders.

The P,I,D the actual values (before they are multiplied by a constant).
"Make a Little Bird House in Your Soul" - TMBG...