PDA

View Full Version : [Project] Second Amendment – Quad Mech



Upgrayd
06-30-2009, 03:03 PM
Second Amendment – Quad Mech

Hey everyone Upgrayd here. I have been a lurker for a while now and just recently got the urge to jump in and start my own project. I figured I would share my progress with you all as I go along.

Progress so far:

6/25/09

My leg part order arrives from UPS.

After much contemplation with the construction of my robot’s legs I decided the Lynxmotion SES parts were the best starting point. I have the ability to manufacture similar parts but the time/cost of doing so was not appealing.

I also went ahead and ordered the Lynxmotion SSC-32 servo controller. Serial commands are easy enough to program in visual studio so it will be a great way to get the legs moving in short order.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010001_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1439&c=member&imageuser=3316)

6/26/09

I spend the afternoon designing and machining matching linkages to the SES kit.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010003_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1440&c=member&imageuser=3316)

A few hours with the screwdriver and the 4 legs are together.

1 complete leg assembly:

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010008_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1442&c=member&imageuser=3316)

4 assembled legs:

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010005_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1441&c=member&imageuser=3316)

6/27/09

Not much going on this weekend so I get to spend the majority of the day working down in the shop!

For today the plan is to design and machine a few parts of the body support for the legs.

Here is a shot of the CAD design and one of the finished pieces:

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010010_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1456&c=member&imageuser=3316)

Pair of legs:

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010011_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1458&c=member&imageuser=3316)

All 4 legs:

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010013_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1459&c=member&imageuser=3316)

Its still early so I get to work on the outside leg supports...

Machined and installed:

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010017_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1461&c=member&imageuser=3316)

Both sides and messing around with the servo controller:

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010016_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1462&c=member&imageuser=3316)

Adrenalynn
06-30-2009, 07:48 PM
Hi There, UpGrayd - welcome to the forum!

Sorry you fell into the moderation queue [I was out all day]. Your post is visible now!

Looks like a good start!

darkback2
06-30-2009, 08:10 PM
Hey Upgrayd,

I really like your leg design. Especially how you are coupling the shoulder lift servos using the SES hinges and the flat pieces you made for the ends.

I can't wait to see how you tie it all together, and the brackets you come up with for mounting the electronics and such.

What are your plans for feet? It is a quad, so that doesn't matter too much, but it almost looks like with another DOF or two per leg that thing could stand on its hind feet.

Seriously cool.

DB

jes1510
06-30-2009, 09:00 PM
Awesome work! I'm impressed with your machine work, it's really clean. Definitely keep this thread updated. I want to see how this one turns out.

Upgrayd
06-30-2009, 09:27 PM
Adrenalynn: No need to apologize... I'm patient :happy: Thank you for the welcome and kind words.

Darkback2: The SES parts sure are great. I had my doubts when I placed the order but once i got them in hand I knew it was the right choice. Great quality, lightweight and spot on dimensions.

For feet I am on the lookout for some kind of rubber ball about 1inch in diameter. The plan is to cut them in half, drill out the center and insert a section of threaded rod for mounting.


Updates...

6/30/09

Decided to play around with some servo control today.

I cut two pieces of scrap wood and used some clamps to temp hold the two sides of the mech together.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010020_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1465&c=member&imageuser=3316)

To command the servos I am building a C# windows application in visual studio.

I was able to get each servo moving into position individually but started to run into trouble when trying to command multiple servos at the same time. Not sure where the issue is but ill keep at it.

I have also realized my initial post was a little bit sparse on information. Ill edit it sometime soon to include things like project goals, materials list and design ideas.

mannyr7
06-30-2009, 10:18 PM
I see you're using the SSC32 jumpered to VS==VL. Moving that many servos at once, will most likely reset the board. Try unjumpering and running a separate 9v supply for the logic and/or upping the current supply to the servos. Upon closer inspection, I noticed your SSC-32 with the 9V clip going into the VS1 terminals. This should be going to the center terminals.

Upgrayd
07-01-2009, 02:06 PM
I went ahead and update the first post with some project goals...
I hope to also keep a running list on all materials and parts purchased and plan to release CAD drawings of all parts I manufacture.

jes1510: Thanks! Ill try to update this thread as I work. It will help keep me motivated.

mannyr7: Yup, I am positive its a power issue. The SSC-32 must have been resetting itself. Ill grab some 9 volt batteries on the way home this afternoon to separate the logic and servo power and give it another shot.

Adrenalynn
07-01-2009, 02:46 PM
You shouldn't be running the servo power for that many servos through the regulator at all. Nor a 9v battery (which will just heat up and supply too much voltage to your servos).

You need a decent 6v battery or a good high current 6v supply to run the servos.

Adrenalynn
07-01-2009, 02:50 PM
And before you try and blow fuses - that BK Precision that you have in the background there shouldn't be running more than ~5 or so of those 645's. You really need something that'll give you ~10A or more.

Upgrayd
07-01-2009, 03:01 PM
The 9 volts are for the logic. And I said ill get a few because knowing me ill be staying up late playing around, get myself tired and end up going to bed without disconnecting. So ill need a few! :)

That BK power supply is just my little guy. Not sure why I had it out. Ill be powering it all with my 20A supply.

Adrenalynn
07-01-2009, 04:20 PM
Ok - then I'm happier. :) Right now, VS=VL means that the servos are drawing power through a <1A regulator. I thought you were just going to unjumper that and hang a 9v on VS

Zenta
07-01-2009, 05:18 PM
Hi,

Great work!
Interesting 4x4 DOF quad project. Do you have any plans for solving the 4 DOF kinematics and how to deal with the multiple solutions?

Btw, your leg design are very similar to what I did on my Felix 4x4 DOF quad ;)

Looking forward to see more of this project, keep up the good work!

-Zenta

Upgrayd
07-01-2009, 07:20 PM
Zenta: Thanks! Wow... i just went over and took another look at your Felix project. The legs are eerily similar. Great minds think alike eh? haha.

I have not taken a deep look into the kinematics of the 4 DOF leg. For the time being I am focused on getting the essential parts created and proving to myself that... "Yes, this will work!".

Updates...
7/1/2009

Speaking of proving to my self that this project will work. I got home today and sorted out my power issues, made a few quick changes to my visual studio app and got this little sucker standing!

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010021_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1470&c=3)
/proud daddy moment

mannyr7
07-01-2009, 11:56 PM
Congrats! And great work so far. I like the unusual placement of the servos. This is one I'll definitely be following.

Noodle
07-02-2009, 01:13 AM
You can always go for a canned gait (no IK) but that's a bit of a waste with a 4Dof robot. Because of course you're looking for speed, not so much fluidity or efficiency.

Obscene
07-02-2009, 01:23 AM
If you're looking for the famed rubber ball feet, I'd check out 'squash balls,' as they're made out of very good and long lasting material (nitrile rubber, I believe) and you can get a bunch of them for a very low price if you shop around.

I believe the championship size (two dot) squash balls are smaller than the tournament versions, but I'm sure the dimensions are listed on the site.

I'm using "Head" brand tournament (single dot) squash balls and they work great.

Upgrayd
07-03-2009, 06:40 PM
7/3/2009

Made some shoes for Second Amendment today...

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010023_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1489&c=member&imageuser=3316)

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010025_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1490&c=member&imageuser=3316)

The rubber is from some chair or furniture foot covers. I simply cut about an inch off the open end and sanded them smooth.

To make the aluminum disks I started with square pieces and drilled out the center holes. I then made a little jig for my metal grinder to hold the square pieces with a peg through the center hole. I was able to slowly rotate the pieces against the grinder to create the disks.

The plan for tomorrow, if i find time, is to machine four small L brackets to mount the feet onto the legs.

Upgrayd
07-05-2009, 09:43 AM
7/4/2009

Was able to find some time today to finish off SA's Feet. Just some simple little L brackets that attach to the ends of the SES servo brackets.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010029_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1505&c=newimages)
Kinda of a poor picture... sorry!

In other news after much deliberation I decided to drop one of the degrees of freedom in my legs. I did this for a few reasons.

First I was disappointed in the amount of 'slop' in each leg. I plan to address this by adding some nice plastic spacers at every non servo horn joint to insure everything is uniform. Also I am going to add a standoff between the four pairs of leg segments.

Second I was getting concerned about the height of the robot. With the extra DOF removed it reduced the height of the robot from 8 inch fully extended to just over 7 inch.

Third the calculations of foot positions were somewhat of a hassle. Calculations were returning multiple solutions. The correct solution needed to be selected from the returned results to insure robot balance and optimize time to position. Without the extra DOF all these issues are removed for the most part.

ScuD
07-05-2009, 10:33 AM
Man that thing looks solid.

Nice work!

Noodle
07-06-2009, 01:06 AM
3 DOF is easy to work with and is still fairly aesthetic and stable. It's just basic senior math.

DresnerRobotics
07-07-2009, 12:50 PM
7/4/2009

Was able to find some time today to finish off SA's Feet. Just some simple little L brackets that attach to the ends of the SES servo brackets.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010029_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1505&c=newimages)
Kinda of a poor picture... sorry!

In other news after much deliberation I decided to drop one of the degrees of freedom in my legs. I did this for a few reasons.

First I was disappointed in the amount of 'slop' in each leg. I plan to address this by adding some nice plastic spacers at every non servo horn joint to insure everything is uniform. Also I am going to add a standoff between the four pairs of leg segments.

Second I was getting concerned about the height of the robot. With the extra DOF removed it reduced the height of the robot from 8 inch fully extended to just over 7 inch.

Third the calculations of foot positions were somewhat of a hassle. Calculations were returning multiple solutions. The correct solution needed to be selected from the returned results to insure robot balance and optimize time to position. Without the extra DOF all these issues are removed for the most part.


I was about to post this exact suggestion when I read this post. I learned this lesson some years ago with an old Lynx quad I built... that 4th degree of 'shoulder rotation' just adds to the weight and limb slop, and doesn't do much in the way of helping out your walking gait. My project ended up crashing and burning once I cut it up to add a 4th DOF... ;)

Upgrayd
07-18-2009, 12:22 PM
7/18/2009

Back from my long work trip and working on the mech again! :veryhappy:

Today I have decided to work on the front and back chassis plates.

Chassis screwed together...
http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010032_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1573&c=newimages)

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010033_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1574&c=newimages)

And with the legs back on...
http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010035_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1575&c=newimages)

Upgrayd
08-01-2009, 02:59 PM
8/01/09

I have finally found some time to sit down and iron out some of the basic programming for the mech.

Here is a little webcam video of SA doing its first bit of walking across my desk.


http://www.youtube.com/watch?v=jQhGNayN0pg

So far I just have a simple forward walking routine... more to come soon! (with hopefully better video)

gdubb2
08-01-2009, 04:29 PM
Nicely done. I like the leg design.

Gary

Zenta
08-02-2009, 10:41 AM
Great to see some progress! Nice walking. FK or IK control?
The feet seem to make the bot relative stable.

-Zenta

sam
08-02-2009, 05:21 PM
Nice job on all the building and the walking!

congrats!

Upgrayd
08-03-2009, 02:42 PM
Hey guys. Thanks for all the compliments on the video!

8/2/09

Started to work on the weapon system for SA today…

I went down to the local Wal-Mart and purchased the famous Defender fully automatic “toy” gun.

After playing around with it for a while (and loosing all the little green BB’s in all corners of my lab) I decided to open it. Once I finally got it open I was actually quite surprised with the quality and tolerance of the guns internal components.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010041_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1645&c=3)

I feel that the gun housing, even with modifications that others have used, is still way to large and heavy for use on SA directly. The current plan is to use the ‘guts’ of the gun inside of a custom housing.

I have taken measurements of all the required mounts and stops inside the gun and will begin to design the parts that will need to be machined within the next few weeks. Hopefully I can publish these for other members to use in the future.

Upgrayd
08-06-2009, 05:45 PM
8/6/2009

I have been working on 'un-tethering' SA these last few days. From Trossen Robotics I have ordered the XBee Wireless Communication Starter Kit.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010043_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1652&c=newimages)
Xbee Explorer board connected to the SSC-32 on a temp mounting board.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010044_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1653&c=newimages)
Battery wire tied to bottom of temp mounting board.

Upgrayd
08-08-2009, 08:46 AM
8/7/09

I got my TRENDnet Cam in the mail today. It was amazing how stuipid simple it was to setup and get working out of the box. Great recommendation!

I have the camera stripped down and am pondering mounting and powering options.

For the time being I have decided against machining custom mounts for the defender gun's 'guts'. I have a majority of the parts designed on paper but I figure my time is better spent on other aspects of the mech that are not yet working. Don't fix whats not broke?

After seeing gdubb2's post (http://forums.trossenrobotics.com/showpost.php?p=33141&postcount=13) in the "Mech weapons? (http://forums.trossenrobotics.com/showthread.php?t=3444)" thread I gained the confidence to go ahead and strip down the defender gun farther. I also gave it a nice base coat of paint! The cheesy clear plastic look just wasn't working for me. :rolleyes:

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010046_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1656&c=3)
TRENDnet W Cam stripped down and Defender gun minimized with a base coat of pant.

gdubb2
08-08-2009, 11:56 AM
Looking good, I agree with the paint idea. that clear plastic is indeed cheesy.. Holding the barrel in the gun is a bit of a problem, but shouldn't be too difficult.

Gary

Upgrayd
08-11-2009, 09:27 PM
8/11/09

I have been a little slow with the progress the last few days... hoping to turn that around here.

Tonight I finished up my wifi camera mount.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010050_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1672&c=member&imageuser=3316)

Front view of the camera sandwich.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010051_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1673&c=member&imageuser=3316)

Side view of the camera sandwich. The antenna will be mounted elsewhere.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010052_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1674&c=member&imageuser=3316)

The power board will be double side taped to the back panel. A cable will need to be made between the headers on the power board and main camera board.

darkback2
08-11-2009, 10:08 PM
Looks really good.

I'll have to get one of those things soon.

DB

Upgrayd
08-13-2009, 07:27 PM
8/13/09

I have decided to take a second look at the feet for SA.

Tonight I have built a new set of feet that are easily swaped out with the older large and flat version.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010053_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1676&c=member&imageuser=3316)
Close up shot of new foot installed on a leg.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010054_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1677&c=member&imageuser=3316)
All legs installed and testing out walking.

After some more testing I will make a conclusion as to what style foot I prefer.

darkback2
08-13-2009, 07:36 PM
I like the idea for the new feet. Having a single point of contact will probably make pivoting on the foot easier.

Keep up the good work!

DB

Upgrayd
08-28-2009, 07:02 PM
8/28/09

I'm not dead! Just very very busy with other of life’s little obligations.

Now for some updates...

I had come to the conclusion that SA's current chassis was just going to be too small for all the stuff that I need (want) to fit inside.

I was also running into issues with the hip joints not being the same distance apart both side to side and front to back.

Lastly I have not been satisfied with the parts that I bent like my front and back chassis plates. I do not have a metal break and until I do I have sworn to never make any bent parts again.

So with these points in mind I went to work with AutoCAD to fully plan out the design and not just fly by the seat of my pants making parts here and there! file:///C:/Users/Ryan/AppData/Local/Temp/msohtmlclip1/01/clip_image001.gif

Getting home from work today I had some high hopes to buckle down and machine out most of the chassis but after just an hour or so I was too tired to feel comfortable running the mill so I called it quits. Tomorrow is Saturday so the plan is to at least have all the chassis parts cut out and milled to size. Sunday... who knows!

Below are just a few shots of the SA's new chassis parts.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010058_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1708&c=newimages)
Corner supports made from .5 inch angle aluminum

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010056_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1709&c=newimages)
Test fit on my drawing making sure I didn't mess up!

Upgrayd
08-29-2009, 12:16 PM
8/29/09

Got a good bit done today... Not as much as I had planned to do but it just seems like time slips away in the shop.

I was able to finish up all the chassis corner brackets as well as machine the front and rear chassis plates.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010060_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1710&c=newimages)
Finished chassis parts lined up.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010062_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1711&c=newimages)
Front and rear chassis plates with corner brackets attached. Perfect parts with perfect corners!

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010061_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1712&c=newimages)
Lined up on the drawing again. Looking sharp!

DresnerRobotics
08-29-2009, 02:07 PM
Great work so far man, can't wait to see this come together.

A lot of people talk, not many actually jump in and go for it. ;)

bigderhak
08-29-2009, 04:14 PM
Looking good! Are you using 1/16" stock?

Upgrayd
08-30-2009, 03:03 PM
8/30/09

Another productive robot day!

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010065_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1716&c=newimages)
The last of the basic chassis parts. The long parts are the left and right side plates where the legs attach. The smaller piece will eventually be the servo mount for my pan/tilt mechanism.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010066_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1717&c=newimages)
Legs attached to the assembled new chassis.

Everything is perfectly square and I am extremely happy with the results.

Next on the list is the pan/tilt assembly for the gun and camera as well as a bedpan for the chassis to mount the battery, power circuitry and electronics. For the bedpan I am going to be using some squares of aluminum flashing I found at The Home Depot. I should be able to fold a few sheets up to make and very light and rigid structure.

Tyberius - You and me both. I really have got myself motivated to get this thing together.

bigderhak - All the material i have been using is aprox 1/16" aluminum. One day at work I pulled out a huge stack of about 100 4" by 10" pieces of this stuff. I believe they were being used with an engraving machine to make warning labels or name plates. Not sure why they would throw out such great material but whatever... its mine now.

sam
08-31-2009, 07:44 PM
Not sure why they would throw out such great material but whatever... its mine now.

LOL

Your mech is getting really nice!

Continue to keep us updated.

Sam

Upgrayd
08-31-2009, 09:05 PM
8/31/09

Today I tackled a basic pan system for my weapon/cam mount.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010067_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1720&c=newimages)
Servo mount milled into the top support.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010069_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1721&c=newimages)
Basic platform mounted on the horn of the pan servo

darkback2
08-31-2009, 09:42 PM
Looks good upgrayd,

Are you going to mount a plate on the bottom for batteries and electronics?

DB

Upgrayd
09-12-2009, 07:22 PM
9/12/09

I have been working a lot with the programing side of the mech over the last week or so.
Learning lots, cleaning up what I had, and getting the IK working.

Here is a little teaser of some body tilting.

The new chassis and feet are working great. Very stable and agile.


http://www.youtube.com/watch?v=NSiiUZ2ib1o

Darkback2 - Im working on a bed pan for the bottom. Batteries will be below between the legs (Yes SA is happy to see you) and electronics on top inside the chassis on either side of the pan servo.

darkback2
09-12-2009, 07:51 PM
Looks really good.

The movements are also very smooth.

DB

Upgrayd
09-13-2009, 02:24 PM
9/13/09

Work on the software side of SA continues...

I have finished functions for three body movements (Height, Twist and Tilt).

Bellow is a screen shot of SA's control application that I have been working on.
In the shot the "Body Movin'" Module is loaded allowing control of the three body movements.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/sa_body_movin_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1759&c=newimages)

Using this app I have been able to configure and test any combination of body movements as seen in the short video below.


http://www.youtube.com/watch?v=g5fR9spHbXs

Upgrayd
09-23-2009, 03:45 PM
9/23/2009

Code, code and more code...
I have not spent any time between this post and my last working on the mechanics of SA. All my efforts have been on the software side.

Everything I know about software is self taught and over the last few months I have been absorbing as much as a can from both books and the internet, re-factoring as I learn.

What I am looking for is anyone willing to do a little code review of my current work. SA's controls are written in C# 3.0 using Microsoft Visual C# 2008 Express Edition so it would be preferable if persons interested had experience with these tools. My intent is to get some constructed feedback from someone more experienced then I. Send me a PM if you are interested.

Upgrayd
10-12-2009, 07:52 PM
10/12/09

So it turns out that IK isn't so hard once you pull your head from your rump and remember your basic trig!

SA's IK function returns joint angles for a leg to place a foot at an input X, Y and Z coordinate relative the the center of his body.

Below you can see some excel graphs I have been making with .txt file outputs from the IK function. These graphs have allowed me to visualize all possible XY foot positions for a given Z position (robot height).

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/ik_foot_at_neg_three_thumb.gif (http://forums.trossenrobotics.com/gallery/showimage.php?i=1847&c=3)

The next steps are to create a body balance function keeping the body parallel to the ground at all time and them begin work on a simple gait.

sam
10-13-2009, 10:06 AM
Looks good Upyard!

Can't wait to see it walking!

Upgrayd
10-20-2009, 01:57 PM
10/19/09

Took a break from programming to tackle the bedpan.

The original plan was to make the bedpan from folded aluminum flashing. I decided that it would be easier and produce a nicer result if I made a frame out of the same material as the rest of SA's structure.

Bedpan frame:
http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010071_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1859&c=newimages)
This frame will be skinned with aluminum flashing.

Electronics Mounted on top:
http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010073_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1860&c=newimages)

Battery velcrostrapped to the bottom:
http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010072_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1861&c=newimages)

Suicidal.Banana
10-20-2009, 02:42 PM
nice and clean, i like it

sam
10-20-2009, 07:34 PM
Very nice indeed. What are the batteries that you're using?

Adrenalynn
10-20-2009, 08:27 PM
7.2v Sub-C NiMH, 4500 mAh Tenergys, as sold here at TR. Know them _well_... ;)

Upgrayd
10-20-2009, 08:32 PM
10/20/09

Finished up the brackets needed to attach the bedpan to the chassis today.

Brackets connecting bedpan to front/rear panels:
http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010074_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1867&c=newimages)

Mock up of electronics:
http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010075_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1868&c=newimages)

Showing of the modularity of the robot:
http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010076_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1869&c=newimages)

Upgrayd
10-24-2009, 05:59 PM
10/23/09

Mounted some switches on SA's backside today.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010077_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1874&c=3)

The switches control (from left to right) Main power, Servo Power, Gun, Camera.

sthmck
10-24-2009, 07:34 PM
wow, this thing is really starting to look good keep it up.

Adam
10-26-2009, 10:05 AM
That's a sweet design.

Seeing those switches made me visualize a humanoid bot coming along and switching it off. :(

Upgrayd
10-26-2009, 06:43 PM
Thanks for all the encouraging comments guys!



Seeing those switches made me visualize a humanoid bot coming along and switching it off. :(

Is that before or after he falls over? :tongue:

Upgrayd
11-02-2009, 02:57 PM
11/2/09

Today I have wired up all the power and switches for SA.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010079_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1909&c=3)

All the components are mounted via double sided mounting tape to a thin plastic sheet cut to the size of the bedpan.

The two pairs of wires in the upper right will connect to the Trendnet cam and defender gun.

Not pictured is the jumper cable for the Xbee board that taps into the 5v regulated headers on the SSC-32.

Overall this turned out nice. Clean and relatively compact.

nagmier
11-02-2009, 05:50 PM
Lookin' pretty sweet! The cable mgmt is great

Keep up the good work!

Upgrayd
11-07-2009, 12:16 PM
11/7/09

A week or so back I had decided to ditch using C# in favor of python for SA's controls.
Bellow are a few screen shots of the programs progress so far.

Here is the main window. The graphic being displayed is indicating the TRENDnet cam has been found and is ready for use.
http://forums.trossenrobotics.com/gallery/files/3/3/1/6/samech_camready_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1915&c=3&userid=3316)

If there is an error finding the cam the following image is displayed.
http://forums.trossenrobotics.com/gallery/files/3/3/1/6/samech_camerror_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1916&c=3&userid=3316)

When the camera is on this area displays images from the camera.
http://forums.trossenrobotics.com/gallery/files/3/3/1/6/samech_camom_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1917&c=3&userid=3316)

I have also configured a few dialog boxes that allow me to see information about the robot or peripherals.

This is the joystick info dialog. It will display a tab for each joystick detected on the computer and display any relevant information about each joystick.
http://forums.trossenrobotics.com/gallery/files/3/3/1/6/samech_joyinfo_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1918&c=3&userid=3316)

The joystick test dialog lets me test all joystick inputs. This will be expanded to support multiple joysticks as well as any buttons.
http://forums.trossenrobotics.com/gallery/files/3/3/1/6/samech_joytest_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1919&c=3&userid=3316)

The leg info dialog allows me to see the current configuration of all servos in each leg.
http://forums.trossenrobotics.com/gallery/files/3/3/1/6/samech_leginfo_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1920&c=3&userid=3316)

Upgrayd
11-09-2009, 07:19 PM
11/09/09

Work continues on SA's new python control program.

Over the weekend I picked up this Logitech USB game pad.
Using the pygame (http://www.pygame.org/) python library it was trivial to connect and gather joystick events from the game pad.

Also I have began developing a heads up display to overlay over the camera image. Below is an example of my initial HUD testing.

The text represents current values of each axis of the two analog joysticks on the game pad.
I have also added a little gun targeting helper in the center.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/samech_hud_testing_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1921&c=3)

Upgrayd
11-14-2009, 08:18 PM
11/14/09

I have taken a short video of SA walking in response to commands from the gamepad.



http://www.youtube.com/watch?v=7CHDlhjU4xw


IK function is being used to calculate leg angles to position each foot.

The walking gait demonstrated is capable to walk in any direction while facing any direction. In this video the d-pad inputs only allow for four directions (forward, backward, left, right).

The robot is carrying its full payload minus turret platform, camera, gun and targeting plates.

darkback2
11-14-2009, 09:35 PM
That is really cool. I especially like, and am going to incorporate your switch bay. I have to say...I need to add a safety switch for both the gun on squidword, and the rockets...(sorry tybs)

Also, I love the smooth manner in which SA walks. Really impressive work!

DB

Upgrayd
11-14-2009, 10:17 PM
Also...

I got quite a few questions concerning the meaning of the text in the screen shot showing the test HUD overlay. I decided to take a simple video showcasing it.



http://www.youtube.com/watch?v=3NxbYTNju5o


The plan for the HUD is to display important status information of the mech.
Some ideas I have are to turn the cross hairs red when firing, display the turret position in relation to the body, display step size and speed as line gauges, ect.

rebel
11-15-2009, 12:51 PM
Nice work on quad :)

Upgrayd
11-15-2009, 06:53 PM
11/15/09

I have uploaded a new video showing off SA being controlled by the dual analog joysticks. In this video you can see how the joystick input allows the mech to walk in any direction while changing both walking speed and step size. Also at the beginning of the video you can see the start of a new pan/tilt turret idea that I have been tossing around.



http://www.youtube.com/watch?v=gEcwCBxskWY

Upgrayd
11-17-2009, 08:43 PM
11/17/09

Tonight I remade my previous camera mount parts in aluminum. The back panel now matches the lynxmotion SES brackets to easily mount to the pan and tilt turret assembly.


http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010080_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1942&c=newimages)

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010081_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1943&c=newimages)

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010082_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1944&c=newimages)

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010084_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1945&c=newimages)

Upgrayd
11-21-2009, 01:00 PM
11/21/09

Today I fought the laws of physics and the laws won.

I went ahead and hooked up SA's cam to battery power. I checked and double checked correct polarity then went ahead and soldered the power lines to the cameras I/O board. When it was done I plugged in the battery, flipped the main power switch then flicked on the camera switch... The camera did not turn on. Instead it made some poping noises and started to smell. I had somehow managed to reverse the polarity of the input power and burned up the voltage regulator on the board.

The regulator in question is a UTC (UNISONIC TECHNOLOGIES CO., LTD) LD1117/A (http://www.utc-ic.com/spec/LD1117_A.pdf).
specs for the regulator are 1.8V 1A output T0-263 Package.

Currently looking for a replacement regulator... or I may just have to wait for the trendnet TV-IP110W cam to be on sale again from Amazon.

Adrenalynn
11-21-2009, 03:21 PM
You could greenwire in a TO252 part pretty easily, no? http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=497-3453-1-ND

Current code A means it's a 1A, so the one I linked to is set to match.

The 252 is a little narrower part than the 263, so it should fit inbetween the pads making greenwiring a snap.

Upgrayd
11-21-2009, 03:31 PM
You could greenwire in a TO252 part pretty easily, no? http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=497-3453-1-ND

Current code A means it's a 1A, so the one I linked to is set to match.

The 252 is a little narrower part than the 263, so it should fit inbetween the pads making greenwiring a snap.

You are so awesome.

Adrenalynn
11-21-2009, 04:19 PM
[blush]

Since you posted that you're wanting to replace it yourself, I'm making the assumption that you're comfortable with a large-ish SMD part and greenwiring isn't a challenge.

You might also find once you replace the part that you've have other blown components. Diodes and caps come to mind. Have you tried lifting the leg on the part and then injecting a regulated 1.8v onto the output side/pad for voltage into into the circuit? You might try that first and confirm working before you get too far down the rat hole. Shipping from digikey is expensive - get everything you need in one order - that reg is only ~ a dollar.

Upgrayd
11-21-2009, 06:44 PM
I have done just that. Lifted up the output side and tried applying 1.8v. No dice.

While probing around I noticed that supply voltage is applied directly to some of the header pins on the I/O board. Something else on the I/O board or one of the other boards must be damaged as well...

Adrenalynn
11-21-2009, 07:41 PM
Yeah, without a schematic it'll be tough. I'm moving soon, but as long as my scope's unpacked, if you need any expected outputs let me know. I have a good storage scope.

Upgrayd
11-22-2009, 10:21 AM
11/22/09

Scratched off two improvements from the list I have planned for SA today...

First was to address servo wire management. SA was looking rather messy with servo wires from the legs coming up and over the top of the chassis so I decide the best solution was to add some wire routing slots in the center of the side chassis rails.

Side chassis rails with wire slots:
http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010086_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1953&c=newimages)

Second has been something I have been working on for a while now. SA's leg configuration worked well and with the IK solution produced a nice smooth and balanced gait.

Off to the side of SA's control program I have been working on an application to analyze and visualize results from IK solutions. I found that SA's leg configuration produced many less true results than a simple change in joint orientation could produce.

SA's new leg configuration:
http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010088_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1954&c=newimages)

With this new leg configuration SA will be able to take larger more controlled steps with better center of gravity management.

Adam
11-22-2009, 09:00 PM
Off to the side of SA's control program I have been working on an application to analyze and visualize results from IK solutions. I found that SA's leg configuration produced many less true results than a simple change in joint orientation could produce.

With this new leg configuration SA will be able to take larger more controlled steps with better center of gravity management.

I see what you did, but I don't understand what you mean by : "SA's leg configuration produced many less true results than a simple change in joint orientation could produce."

Upgrayd
11-22-2009, 10:20 PM
Yeah... that was both worded poorly and lacked context. It made sense in my head. Honest!

Basically my IK function accepts a three dimensional point in space relative to the center of the robot. Then, using the dimensions of the body, dimensions of the leg and mechanical rotation limits of each joint the function will either return the joint angles to position a foot at the input 3D point (True IK value) or return nothing (False IK value).

So using this IK function in conjunction with a script that inputs a wide range of x, y and z values into the IK function I am able to get a count on all the possible foot positions (True IK positions) for each foot.

SA's previous leg configuration produced less possible foot positions then this new leg configuration.

Hope that helps.

Adam
11-23-2009, 11:59 AM
That does help. That's actually very cool- really nice optimization.

darkback2
11-23-2009, 12:13 PM
For wire management,

There is a plastic stuff that you can put over the servo wires, It seams to help keep them from getting pinched in the different joints on a robot. I know zenta uses a lot of it, and it seams like it might help.

Anyone have a link to what I am talking about?

DB

Adrenalynn
11-23-2009, 12:56 PM
Wire Loom, like I use about a mile of on Landshark? HarborFreight is a cheap source. But you can find it everywhere on the web if you search for wire loom.

Adam
11-23-2009, 01:30 PM
I'm using stuff called "mesh sleeving". I like it a lot. Try McMaster-Carr.

Upgrayd
11-25-2009, 11:56 PM
11/25/09

In a previous update I alluded to an app that I have been working on to visualize IK solutions.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/ikvis_804974_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=2008&c=newimages)

Here you can see a screen shot of the app as it stands today.
On the far left hand side are all the options to set body dimensions and mechanical joint limitations. Next To those controls on the right are the IK solution options. And lastly on the right is the representation of the IK solutions.

In this picture you can see that I have set the Z adjust to -70 (mm). This means the application is calculating and returning all possible foot positions for each leg where the ends are the foot are 70 mm lower then the center of the body. It is displaying these positions as red circles on the XY graph.

You can also see that the leg length field is set to 50. When this field is set to something other then NaN it will attempt to search the returned IK solutions for foot positions where the length from the coxa base too the foot equals the input from the leg length field. These positions are then highlighted as yellow circles.

The X and Y fields act similar to the leg length field. They will highlight foot positions where the foot is X or Y distance from the base of the coxa.

Even in this rudimentary state the app has proven to be a very valuable source of information. It has allowed me to find both a leg configuration and optimal leg height for walking allowing SA to take larger and more controlled steps. Will post more as I continue to work on this.

lnxfergy
11-26-2009, 12:55 AM
Very nice -- this sort of analysis of IK/gaits is what will really drive the speed of your robot. I've been using pretty much a similar approach for Issy (which is really what set him apart from Roz and Jeff at CNRG -- everybody had the same IK, but I was able to optimize run height and stride) -- but mine hasn't had a GUI until very recently.

A few questions if you don't mind -- my stuff was all non-graphical, and I was just starting to go graphical, I know you mentioned switching to wxPython -- is that all using the drawing canvas in wx, if so, how well does it run? (I'm currently experimenting with PyLab/Numpy/Matplotlib but that's a lot of extra dependencies...).

-Fergs

Upgrayd
11-27-2009, 12:19 PM
11/27/09

IKVisualizer is coming along nicely. I have cleaned up the interface quite a bit. Below is a short video showing off the calculation and drawing speed of the app. Its just me changing the Z axis and refreshing the drawing a few times.



http://www.youtube.com/watch?v=X8JwnDS_ceI


Inxfergy - All the drawing is done in the OnPaint method of a wxPanel object. No other dependencies required.

Upgrayd
11-28-2009, 07:54 PM
11/28/09

Got the itch to work in the shop today...

I did not have anything to build specifically for SA but I do have a stack of part ideas for future robots and SA 2.0. One of my goals in future projects are to use 100% self made and designed parts. Also I want to strive to make my parts as minimal as possible for both weight and aesthetics concerns.

Below is a dual servo mounting bracket that I have been wanting to prototype. The idea was to test my ability to machine a part with very thin walls and to practice filing square inside corners. I would say that the experiment was a success.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010092_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=2020&c=newimages)

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010093_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=2021&c=newimages)

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010094_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=2022&c=newimages)

Upgrayd
01-06-2010, 07:17 PM
1/6/10

Took a break over the holidays to spend time with my family and caught a nasty cold as well. But now I am back in action ready to finish this project up.

Started simple today. Went ahead and tackled the gun mount for my chopped up defender. Just a simple flat surface to clamp the gun too off the side of the turret:

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010099_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=2071&c=newimages)

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010098_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=2072&c=newimages)

I will probably be using a pair of large hose clamps to secure the gun firmly later on.

Upgrayd
01-09-2010, 03:22 PM
1/9/10

SA got completely torn town today and all aluminum parts were media blasted with glass beads.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010103_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=2078&c=3)

Adrenalynn
01-09-2010, 03:27 PM
Sweet! Did you do the media-blasting yourself, or send it out?

Upgrayd
01-09-2010, 04:55 PM
I did it myself. I have access to a relatives blasting cabinet.

Adrenalynn
01-10-2010, 02:16 AM
They look great. Very clean and regular.

DresnerRobotics
01-12-2010, 12:55 PM
I'll be honest, even though I'm a servo snob these days and scoff at anything outside of Dynamixels... I'm really looking forward to seeing this mech at Robogames this year. Excellent engineering all around, very solid design.

Upgrayd
01-17-2010, 10:12 AM
1/18/09

Started the painting process yesterday. Gave every piece a coat of primmer and let them cure over night. This morning i hand sanded down any rough spots in preparation for a second coat of primer. Unfortunately it is much to cold to spray again today (darn weathermen lying about temperatures).

Below is a picture of the parts as they are this morning.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010104_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=2085&c=3)

Upgrayd
01-21-2010, 04:31 PM
1/21/10

Below is a picture of SA partially assembled with his new paint and the cable sleeves.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010106_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=2111&c=newimages)

On this picture you can see two different shades of red on the parts. The camera seems to have exaggerated the differences in color but in fact two cans of the same brand paint produced a slightly different color. In person it is far less noticeable.

Suicidal.Banana
01-22-2010, 09:03 AM
looking nice, also like the cable sleeves, looks like quality

DresnerRobotics
01-22-2010, 01:17 PM
Big +Rep from me for all your awesome work and documentation here!

mannyr7
01-24-2010, 02:26 PM
How 'bout some video?

rebel
02-08-2010, 02:33 PM
I would like to see this thing moving, cools really cool

:p

Upgrayd
02-08-2010, 05:54 PM
Been lazy with keeping this updated lately...

Here is a short video of the SA as he is today. For the most part he is competition ready. Just waiting on target plates, transponder, and building a proper mount for the gun to be complete.



http://www.youtube.com/watch?v=2iYdlzwMbuQ

gdubb2
02-08-2010, 06:32 PM
Looking good..

gary

4mem8
02-08-2010, 09:39 PM
This is awesome work Upgrayd. love your talent in the programming side of things,as well as engineering side.

Upgrayd
02-10-2010, 10:30 AM
2/10/10

So it turns out the defender gun has a heck of a lot of momentum in the horizontal plane when firing. Much more so then I had originally anticipated.

While testing I had simply clamped it to the little turret platform with a hose clamp and after two or thee shots it had wiggled itself loose and started spraying little green bb's all over the place. Obviously some new mounting had to be considered!

Last night I drafted up some plans for a wrap around gun mount that included some some screws into the casing of the mount to keep her in place. I also included some mounting holes for one of SA's target plates.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010112_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=2184&c=newimages)

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010111_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=2185&c=newimages)

I plan to chop this down on the band-saw to a minimalistic piece especially around the target plate mounts in order to save weight.

A similar style mount will be created for the other side of the turret to mount a second target plate, transponder, and 9v battery to power the transponder. Also I will be recreating SA's front and rear chassis plates to include mounting for targeting plates as well.

I am still playing around with hopper ideas. The first of which can be seen in the video I posted the other day. I am having an internal argument with my self with form over function as well as how many rounds I would like SA to be packn'.

Upgrayd
02-11-2010, 11:45 AM
2/11/10

Completed SA's right side target/transponder mount to complement his new left side target/gun mount made yesterday. Also had to remake (for a 3rd time now!) the bracket that mates the camera and two target mounts to the turret.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010113_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=2193&c=3&userid=3316)

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010114_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=2194&c=3&userid=3316)

gdubb2
02-11-2010, 12:00 PM
Looking great.. It's going to be a pleasure doing battle with SA...

Gary

Upgrayd
02-14-2010, 10:54 PM
2/14/10

Overthe last few days I have completely reworked SA's gait sequence routines. He now walks using a ripple gait and in addition it is now possible for him to turn while walking.

Below is a video showing off some of SA's new moves.



http://www.youtube.com/watch?v=N5OwQ-qKQr8

Upgrayd
02-16-2010, 09:29 AM
2/16/10

Lightened and cleaned up my target/transponder/gun/cam bar mount. It should be ready for paint this weekend if weather and temperature allows.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010116_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=2205&c=newimages)

Upgrayd
02-16-2010, 04:31 PM
2/16/10 - Part two!

So when you chop down the defender gun as much as I did you loose all the internal support for the barrel. This afternoon I machined a piece that secures the barrel to the gun.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010117_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=2207&c=newimages)

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010118_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=2208&c=newimages)

Nice snug fit all around and mounted with 4 off the small self tapping screws that come with Hitec servos.

Upgrayd
02-17-2010, 04:19 PM
2/17/10

I have made my control program available to download (http://sites.google.com/site/upgraydlabs/SAMech.py) for anyone who wishes to take a look.

Upgrayd
02-21-2010, 03:47 PM
2/21/10

Hardware:
I now have access to a small metal break so I have been drawing up some plans to remake some of SA's parts.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/front_and_rear_chassis_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=2232&c=newimages)

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/turret_pan_mount_design_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=2233&c=newimages)

These parts are the front/rear chassis and the turret pan servo mount respectively. Making these parts will remove the need for all the corner pieces SA currently has and also reduce the amount of hardware required to tie it all together. This will account for a bit of weight savings and an overall streamlined assembly process.

Electronics:
Last night I was experiencing some issues with communication between my XBee modules when the camera was on and transmitting. Thanks to the folks in the trossen robotics IRC channel we were able to troubleshoot the problem.

Xbee modules come configured in a broadcast mode with no automatic resending of lost packets. Setting a few configuration parameters with the X-CTU application cleared up my issues.

Anyone who hasn't done so refer to Inxfergy's tutorial (http://forums.trossenrobotics.com/tutorials/how-to-diy-128/xbee-basics-3259/) on this subject.

Software:
On the software side of things I have been working hard to refine and simplify the controls. I am now also able to position the turret and fire the gun at any point during a walking sequence.

Upgrayd
02-22-2010, 12:19 PM
2/22/10

Today I machined one of the part remakes I had planned yesterday. Will tackle the others tomorrow or maybe even later today.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010127_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=2235&c=newimages)
The flat part rough filed.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010128_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=2236&c=newimages)
The bent and cleaned up part.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010129_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=2237&c=newimages)
The parts replaced.

gdubb2
02-22-2010, 01:33 PM
Overachiever....Parts look great.. Good job.

Gary

Upgrayd
02-22-2010, 08:12 PM
2/22/10 - Late Shift

Went the extra mile tonight and machined up the front and rear chassis replacement parts.

These will free up Three corner brackets and six sets of machine screws, washers and nuts each.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010130_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=2239&c=3)


http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010131_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=2240&c=3)
SA skeleton trying on his new parts.

Upgrayd
02-24-2010, 10:00 PM
2/24/10

I have been reworking the GUI for SAMech.py.

Originally I was using wxpython to create the interface but it was proving difficult to capture images from the camera and draw them onto a UI element quickly and reliably. I had been struggling with this for quite some time.

Today I gave Pygame a shot and it proved to be 100 times easier and straight forward to handle the displaying of camera images.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/picture_2_thumb.png (http://forums.trossenrobotics.com/gallery/showimage.php?i=2245&c=3)

Tomorrow I will be sighting in SA's gun so I can properly overlay some cross-hairs onto of the camera image. I also plan to add some HUD information such as turret pan/tilt position, gun status and any program warnings or errors.

If all goes well I will be competition ready by this weekend and ready to show off at the Bot Brawl March 6th.

jes1510
02-24-2010, 11:16 PM
I'd be interested to see that pygame code if you don't mind posting it. I've used pygame quite a bit but never with a web cam.

Upgrayd
02-25-2010, 08:06 AM
I have been using Google Sites as a ghetto version control repository.
You can always download my latest code here (http://sites.google.com/site/upgraydlabs/SAMech.py).

rebel
02-25-2010, 10:05 AM
Thansk for the downloads, lots of good info :)

sthmck
02-25-2010, 12:44 PM
What version of python and pygame are you using? The latest ones?

Upgrayd
02-25-2010, 01:37 PM
I am using Python 2.6 and the pygame release for python 2.6 on OSX.

Upgrayd
02-25-2010, 07:04 PM
2/25/10

I was doing some testing today with driving SA by camera image and decided it would be fun to take a video with a little commentary (rambling) by me.



http://www.youtube.com/watch?v=kD8vdqB0WBU


Some of the issues I experienced in the video (dropped packets, and camera freezing) I 'think' can be explained by low battery. Later on I had run a test on my desk. I lowered the camera's fps to 10 and also lowered its video quality setting to 'loweset'. With a fresh battery where the camera and robot ran for over 30 min without any camera freezing.

I will continue to perform some tests under varying conditions.

Upgrayd
02-27-2010, 06:25 PM
2/27/10

Doing some gun accuracy testing today and got the gun sighted in with respect to the camera image.

I set SA up 5 feet from the target and shot a few rounds of 10 bbs. Below is a picture of the results. The squares are roughly where I was aiming. Its fairly accurate!

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010133_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=2256&c=3)

Upgrayd
02-28-2010, 10:00 PM
2/28/10

Added some fine turret control to aid in targeting. Took a short video to demonstrate the difference between fine and coarse control.



http://www.youtube.com/watch?v=MeOOBvBdfB0

Upgrayd
03-05-2010, 09:28 AM
2/5/2010

Finished up SA's box. Should keep him nice and safe in transport.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010134_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=2260&c=3)

Upgrayd
03-07-2010, 10:34 AM
3/7/10

Yesterday SA and I attended the CIRC bot brawl event in Peoria Illinois.

The event:
The event was for competitions sponsored by the CIRC group. They had light weight combat robots (1-3 lb I believe), line following, sumo and other typical robot competitions. Between CIRC events Mech Warefare demos were held to gain interest and awareness.

Myself, Inxfergy, Tyberius, and Robot Dude from Lynxmotion were all in attendance with our mechs but only SA and Issy were fully functional and ran some mock matches. Tyberius's brat based mech was experiencing some issues and the Robot Dude's brat mech did not demo for unknown reasons to me.

What I need to improve:
SA's turret is a mess and leaves the circuits for the camera and transponder exposed. It also has a limited downward range of motion making it impossible to hit any low mounted targets on other mechs when they are too close. (Issy likes to hump!) I plan to remake the turret completely for RoboGames and give it a little more style to make it more 'mech like'.

There is lots of interference from the defender gun! So much so that when firing my target plates were responding as hits from all the interference. Careful wiring of the target plates and gun will resolve this.

Ammo capacity must be huge with the defender. You eat up tons of ammo quickly.

Also the target panels are butt ugly! I plan to dress mine up with either some Upgrayd Labs or para military logos behind the lexan protection.

DresnerRobotics
03-07-2010, 10:56 AM
Also the target panels are butt ugly! I plan to dress mine up with either some Upgrayd Labs or para military logos behind the lexan protection.


I kinda like em, but yeah, you can easily paint the lexan. I might even send them out sans lexan shield mounted so you can paint them easily.

Upgrayd
03-18-2010, 11:32 PM
3/18/10

Have not posted anything in a while so I will give a little update on what I have been doing.

I took a bit of a break from working on SA but now I am back at it to work on the issues encountered at the CIRC Bot Brawl.

I will be remaking the turret in its entirety over the next week. It will feature a greater range in motion and better protect the cam and transponder circuit boards.

On the side I have been experimenting with AVR microcontrollers with the end goal of having a custom robot controller I can use in SA and any future projects (will not be ready for RoboGames). Below is a picture of two breakout boards I have made based around the ATmega644p controller. This is same mico used in the Arbotix and Sanguino used for the rep rap project.

I have decided to forgo the Arduino environment and develop in C. So far I have been able to program a simple LED blinking program onto the chip as a test. I am going to be experimenting with communication to the ssc-32, AX-12 bus, and Xbee modules in the next few days.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010140_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=2276&c=3)

Upgrayd
03-23-2010, 06:12 PM
Video of me playing around with an amble gait in an effort to maximize SA's speed for competition. The ripple gait is nice and smooth (great for demos) but just too slow for a winning mech imho.



http://www.youtube.com/watch?v=S9HbzrKMqp8


This was shot in my basement on a very rough concrete floor. As you can see SA drags when doing forward and backwards walking. That does not happen on my smooth workbench and bathroom tile.

Upgrayd
03-23-2010, 08:33 PM
There is some question if the gait featured in the newest video I posed is correct. It appears that the left side legs are not moving correctly. I can swap the issue to the other side of the robot by swapping the pair of legs that moves forward first.

Bellow is a table outlining the foot movement sequence used in my amble gait.




Step | Leg 0 | Leg 1 | Leg 2 | Leg 3
-------------------------------------
0 | U+F | B | U+F | B
-------------------------------------
1 | D | B | D | B
-------------------------------------
2 | B | U+F | B | U+F
-------------------------------------
3 | B | D | B | D
-------------------------------------

F = Forward Full Step Length
B = Backward 1/2 Step Length
U = Foot Up
D = Foot Down

Leg 0 = Front Left
Leg 1 = Front Right
Leg 2 = Rear Right
Leg 3 = Rear Left

Upgrayd
03-24-2010, 09:43 AM
I did some testing and measuring late into the night and determined that the gait is working exactly as it is being told.

I went ahead and made a few changes that seem to have smooth up the gait. First the step length was reduced by 15mm. Secondly I increased the servo speed proportionately the the reduction in step length so that the overall gait sequence completes in the same amount of time.

With these changes I did some walk speed measurements. SA was able to reliably walk 9ft in 25 seconds. (.36 feet per second, 4.32 inch per second, .109 m per second, 10.97 cm per second - Pick the one you like!)

So... unless there is a more optimized walk sequence or better neutral position that I should be using I think it is fine for now.

darkback2
03-24-2010, 10:54 AM
I watched your video last night, and I think you have the walking thing down. I figure at this point you will be able to give issy a run for its money, and run circles around squidword. Good thing I'm fighting hardcore!

Seriously sweet work.

DB

rebel
03-24-2010, 11:11 AM
Nice work, any specs for your custom controller boards yet? :p

Adam
03-24-2010, 11:41 AM
Are the legs on one side traveling more than the legs on the other side when moving in a straight line, or am I seeing things?

Upgrayd
03-24-2010, 12:02 PM
They are moving the same amount on each side.

legs 0 and 2 (Front Left and Rear Right) move forward and up first while legs 1 and 3 (Front Right and Rear Left) move back.

So...

For the first half of the walking sequence the right two legs always move towards each other while the left two legs always move away from each other.
Then in the second half of the walking sequence all legs are returning to their neutral position.

The long step length I was using in that video exaggerated the difference and was causing excessive drag from SA not being able to balance on two diagonal feet that were so far apart.

Upgrayd
03-24-2010, 07:38 PM
Found and corrected the issue in SA's amble gait. It had to do with factoring in both the foot's current position with the foot's neutral position to calculate the required foot movement. Ill probably do a blog post soonish that will explain the issue and solution later on.

Below is a video of some practice maneuvering around an obstacle.



http://www.youtube.com/watch?v=ijxoc_Ym5C4


Darkback - Thanks!

Rebel - I have done some work with getting an interrupt driven USART communication program running but have put the controller work on hold while I make sure SA is ready for RoboGames.

Upgrayd
03-25-2010, 09:04 PM
Just wanted to share some pseudo code that I used to construct SA's amble gait for anyone interested.

Leg class:


// Leg class defines many leg parameters. The ones important to the gait include:
leg.neutralX, Y and Z // Values to define the neutral positions of the leg's foot
leg.posX, Y and Z // Values to keep track of the current leg's foot position
leg.gaitX, Y and Z // Values to store results from gaitsequence()
Giat class:


// gait class defines all the parameters important to the gait.
gait.sequence // Array defining the order the legs are lifted in
gait.stepsingait // Number of steps in the gait sequence
gait.pushsteps // Number of times each leg pushes (moves the body forward) in the sequence
gait.stepcounter // Counter to keep track the current step in the gait sequence
GaitSequence()


// Calculated elsewhere:
// TLenX and Y - Travel Length or stride in the X and Y direction
// TRotX and Y - Travel Rotation X and Y components
// legliftheight - probably needs no explanation

For each leg:

if the leg should be lifted and moved forward:

// Add the difference between the leg's foot neutral and position values to the travel length and rotation component for both X and Y
leg[i].gaitX = (leg[i].neutralX - leg[i].posX) + TLenX + TRotX
leg[i].gaitY = (leg[i].neutralY - leg[i].posY) + TLenY + TRotY

// Update the leg's foot Z value by legliftheight
leg[i].gaitZ = legliftheight

else if the leg should be lowered:

// No change in the leg's foot X and Y positions.
leg[i].gaitX = 0
leg[i].gaitY = 0

// Update the leg's foot Z value by legliftheight
leg[i].gaitZ = -legliftheight

else if the leg should be moved backward:

// Subtract the travel length and rotation component from difference between the leg's foot neutral and position values the for both X and Y
leg[i].gaitX = (leg[i].neutralX - leg[i].posX) - (TLenX/gait.pushsteps + TRotX/gait.pushsteps)
leg[i].gaitY = (leg[i].neutralY - leg[i].posY) - (TLenY/gait.pushsteps + TRotY/gait.pushsteps)

// No change in the leg's foot Z Value.
leg[i].gaitZ = 0

If a leg was lowered:
increment gait.stepcounter

if gait.StepCounter == gait.stepsingait:
Reset gait.stepcounter
Main Program Loop:


forever:

ReadInputs() // Read Controller inputs. Determine walking parameters, Turret movement, gun status, ect
GaitSequence() // Determine each leg's next foot position with results from ReadInputs()

for each leg:
IK(leg[i]) // Calculate IK solution for each leg with results from GaitSequence()

UpdateTurret() // Determine turret position based on results from ReadInputs()
UpdateGun() // Determine Gun status based on results from ReadInputs()
DriveServos() // Send servo commands to the ssc-32 with results from IK(), UpdateTurret() and UpdateGun()
Delay() // Delay equal to the time it takes all servos to move into position.

Upgrayd
03-28-2010, 02:51 PM
Doing a mock up using Google SketchUp of parts I will be making this week for the turret.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/turret_sketchup_mockup_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=2290&c=3)

The only real difference from the previous turret is the mounting of the pan and tilt servos. On this version the turret is attached to the pan serv, with the tilt servo mounted down inside SA's Body.

This design along with the servo mounting positions will allow me to aim down allowing SA to hit any mech trying to get frisky with him.

Some thin material will make a protective cover for the turret covering the cam and transponder circuits.

Upgrayd
04-01-2010, 01:32 PM
Finished up all the new turret parts and put them together for a test fit.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010145_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=2292&c=newimages)

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010146_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=2293&c=newimages)

Just need to media blast and paint all the new parts this weekend.

Upgrayd
04-03-2010, 07:41 PM
Finished the paint on all the new parts today. Lookn' sharp!

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010148_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=2296&c=3)

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010151_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=2297&c=3)

Again the camera seems to capture some color differences between the parts. The color is very uniform in person.

DresnerRobotics
04-03-2010, 09:52 PM
What server do you play on? :P

Upgrayd
04-04-2010, 07:16 AM
What server do you play on? :P

Thankfully I don't play anymore. Replaced game time with robot time!

DresnerRobotics
04-04-2010, 11:30 AM
Thankfully I don't play anymore. Replaced game time with robot time!

Same here actually, feels much more productive lol.

elaughlin
04-11-2010, 01:22 PM
Upgrayd - I would just like to say your Mech is really looking nice. Not only does it look like you have everything coming together and finishing up, but you document your progress really well. I liked reading through this post because it gave so many steps that you went through.

I have just purchased my first robot set, the Comprehensive Bioloid, so I can start learning about putting together and making it work. I will try to complete a nice thread the same way you did with many updates, photos, videos. Please keep an eye out for my posts, as I would love help and critiques from experienced robot ruilders like yourself, Tyberius, Inxfergy, Adrennelyn.

Keep up the good work with Second Amendment.

Upgrayd
04-12-2010, 07:28 PM
SA is just about wrapped up and ready to go for robo games!

Between now and my last post I found a glaring issue with my turret that I should have caught much earlier. I had the position of the tilt and pan reversed (tilt below pan) not allowing the turret to move around properly. That is fixed now with the re-re-re-remaking of one part. I also took the opportunity to minimize the size of the turret as much as possible.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010153_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=2307&c=3)

Target panel covers are painted, targets mounted, transponder mounted, target panel wires routed carefully to avoid electrical noise, wiring cleaned up and sleeved, ect.

Upgrayd
04-28-2010, 07:36 PM
So Robogames 2010 is over and Second Amendment brought home the gold in the Mech Warfare event. Winning the event was the result of a lot of hard work, planning, strategy, and mostly luck to be perfectly honest.

This probably marks the end of this thread as SA will be retired and parted in preparation for the build of his successor.

Major improvements in my next mech will include:


switch to ax-12/18 servos
solid shaft for turret pan w/ bearings (had lots of issues with turret shaking)
omni directional design (whatever direction the turret is facing will be considered forward)

Other projects I will be working on:


custom robo controller similar to the arbotix
custom remote control to replace the cheesy usb gamepad I was using for SA
defender and tank gun modifications
experimentation with some biped concepts

jes1510
04-28-2010, 10:10 PM
Congrats on the win man! SA looks to be a solid machine and it's well deserved!

DresnerRobotics
04-29-2010, 02:15 PM
Really have to hand it to Ryan here; he came prepared and he came to win. Absolutely amazing piloting skills, just wait till we get some video uploaded of him playing. He was using cover beautifully and keeping distance between his targets quite well. He easily outmaneuvered Giger and even got behind me where I couldn't keep him in my FOV.

Hats off, seriously. If there was a 'best piloting' award it'd have gone to him without a doubt.

webgeek
05-22-2010, 06:15 PM
Huge congrats on the win!

Stobs
05-22-2010, 07:55 PM
So Robogames 2010 is over and Second Amendment brought home the gold in the Mech Warfare event. Winning the event was the result of a lot of hard work, planning, strategy, and mostly luck to be perfectly honest.

This probably marks the end of this thread as SA will be retired and parted in preparation for the build of his successor.

Major improvements in my next mech will include:


switch to ax-12/18 servos
solid shaft for turret pan w/ bearings (had lots of issues with turret shaking)
omni directional design (whatever direction the turret is facing will be considered forward)

Other projects I will be working on:


custom robo controller similar to the arbotix
custom remote control to replace the cheesy usb gamepad I was using for SA
defender and tank gun modifications
experimentation with some biped concepts



Big congrats on the win Upgrayd! Hope the upgrades go well, keep us posted! :)

Upgrayd
05-24-2010, 05:33 PM
Thanks for the complements guys!

I have upgraded to ax-12 dynamixel servos for my new mech but have decided to not allow SA to retire just yet.

SA is a very capable robot and with a few upgrades I think he can continue to be a force in the arena.

First up is remaking SA's chassis to be smaller, simpler and lighter...
I have made some channel brackets that bolt to the back of SA's coxa servo mount that will allow the legs to be mounted to a more traditional style 'sandwich' chassis.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010175_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=2934&c=3)

I will also be redoing SA's turret. It will be identical in design as what I am designing for my new mech.

SA's legs, electronics, power and camera will all remain the same.

Upgrayd
05-26-2010, 08:12 PM
Realizing I had made some mistakes with the previous brackets that attach the old legs to the new chassis I had to remake them...

I took the opportunity to also revise the design a bit. The brackets are now a bit smaller and will allow for a greater range of freedom in the coxa joint of the legs. The greater range of freedom will be more apparent when the legs are attached to the new chassis.

Also with this revision I have omitted the center cutout from the bracket. After doing the math the time it takes to machine the cutout is just not worth the few grams of weight they save.

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010176_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=2944&c=newimages&cutoffdate=1)

http://forums.trossenrobotics.com/gallery/files/3/3/1/6/p1010177_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=2945&c=newimages&cutoffdate=1)