T-Hex prototype process

You sure have been busy during your days “off” :wink: I like the creations you made!

Looking great jim! Can you post a picture with the body on the ground? I’m curous if the body can touch the ground with the legs curled up.

Are you also planning on adding ground contact sensors on the 4DOF tars? … hint hint … :wink:

Xan

It was fun to experiment with this. I had the 3DOF built Dec24th, but it was rebuilt several times before I was happy. The 4DOF didn’t get done till last Saturday. 8)

It’s 4.07lbs (1.85kg) without batteries or guns.

I had to move the servos to different ports when I re-built the thing from the original Hybrid design. I was hoping I could just swap the boards and go, but no go. Since I couldn’t use the existing code I went ahead and changed out one of the short “C” brackets in each femur with the longer ones. I need to edit the program to put the servos on the correct pins. One other note, Lexan can be a great robot construction material but in this case it’s too pliable. Will have to get some aluminum panels before I will commit to making videos.

Yes, I’m using 1.938" standoffs on the chassis assembly. and 0.750" standoffs to mount the electronics. By adding a little more room around the boards it will be much easier to wire up. It will ad 0.250" to the height. Not too bad really.

Yes please, that would be awesome! Do you have a version for PS2 control?

Thanks!

Thanks, yes I had a lot of fun with it. 8)

Will try to post more images later. The legs will support the body to a height of about 0.750" (19.05mm) measured at the bottom of the screw heads that connect the horizontal hip servo ball bearings. Is this ok? If you need the legs to be off the ground (like Phoenix) then now is the time to make the changes.

I have doubts that the HS-475 servos will have the umph to handle the longer femur, but I will know pretty soon.

Yes! I’m going to try and get a lot of these little things done this year. Have you had time to change your femurs on your Hybrid yet? I also changed the coxa joint to be like Zentas design. He basically joins the two ASB-04’s so they are lined to make a smaller overall package. The drawback is (looking down from the top) the horizontal hip pivot is offset a bit from the tip of the foot. This doesn’t matter if you account for it in calibration. Funny thing is I’ve never done it, and it really does look nicer.

Ok, that didn’t sound bad at all. You should have some payload capacity then. Let us know when you have measured the final total weight (everything included).

Looking forward to it then!

I’m using Xan’s v2.0 code so I don’t think PS2 control would be any trouble. My PS2 remote is broken so I’m using the DIY remote (didn’t you build one for yourself? :wink: ). I’ve done very small modifications to the phoenix_control_diy.bas file, so I think you can just replace that file with the phoenix_control_PS2.bas file. But the main code and config file are a bit different though. I’m not using the register offset since some servos are calibrated with a relative large offset values (the tibia and tars).

Looking forward to it! :slight_smile:

Maybe it is possible to get the tibia a bit smaller. I don’t know if it’s possible to fit the micro switch in there and still make it a bit smaller. Anyway, I should check out the longer C-brackets to get a better feeling on the length.

I second that…

COOL!

No, I spent most of the time in bed with the flu. :frowning: I did had some time to do some math for TA. It’s a bit more complicated as I hoped…

I’m looking over the pictures and can’t seem to figure out, what picture are you referring to?

The main idea about the separate files is that you can easy swap between control files. :slight_smile:

Can you tell me what changes you had to make Zenta?

Xan

Its about time you got the flu too… :wink:
Sounds good that you got some math time though.

I believe I only changed some division factors for avoiding the legs to get in conflict.

T-Hex values:

[code];Body Height
BodyPosY = (awPulsesIn(0)-1000)/5

  ;Walk mode			
  IF (ControlMode=WalkMode) THEN 			
    TravelLengthX = -(awPulsesIn(2)-1500)/5
    TravelLengthZ = -(awPulsesIn(1)-1500)/5
    TravelRotationY = -(awPulsesIn(3)-1500)/13
    ;Leg lift height
  	LegLiftHeight = 30 + (awPulsesIn(5)-1010)/20
  ENDIF

  ;Body move	
  IF (ControlMode=TranslateMode) THEN	
    BodyPosX = (awPulsesIn(2)-1500)/6
    BodyPosZ = (awPulsesIn(1)-1500)/6
    BodyRotY = (awPulsesIn(3)-1500)/20
  ENDIF		
	
  ;Body rotate
  IF (ControlMode=RotateMode) THEN	
    BodyRotX = (awPulsesIn(1)-1500)/13
    BodyRotY = (awPulsesIn(3)-1500)/20
    BodyRotZ = -(awPulsesIn(2)-1500)/15[/code]

Compared to Phoenix values:

[code];Body Height
BodyPosY = (awPulsesIn(0)-1000)/8

  ;Leg lift height
  LegLiftHeight = 30 + (awPulsesIn(5)-1010)/20

  ;Walk mode			
  IF (ControlMode=WalkMode) THEN 			
    TravelLengthX = -(awPulsesIn(2)-1500)/4
    TravelLengthZ = -(awPulsesIn(1)-1500)/4
    TravelRotationY = -(awPulsesIn(3)-1500)/12
  ENDIF

  ;Body move	
  IF (ControlMode=TranslateMode) THEN	
    BodyPosX = (awPulsesIn(2)-1500)/10
    BodyPosZ = (awPulsesIn(1)-1500)/8
    BodyRotY = (awPulsesIn(3)-1500)/20
  ENDIF		
	
  ;Body rotate	
  IF (ControlMode=RotateMode) THEN	
    BodyRotX = (awPulsesIn(1)-1500)/20
    BodyRotY = (awPulsesIn(3)-1500)/20
    BodyRotZ = -(awPulsesIn(2)-1500)/20[/code]

I guess you just have to experiment a little to see what division factor you need in the PS2 code.

Well I have one yes, but there are only 4 in existence that I know of, so we have to take care of the PS2 users first. :wink: You should have told me yours was broken. I would have sent another for you. :smiley:

:imp: :wink:

Yepp, sounds totally logic to me! Maybe we should define a max - max value in the config file to make it more uniform. But on the other hand. This need to be converted and takes more time… I’ll give it some thought

Xan

Another idea I’ve been thinking of is a sort of variable min-max factor. You know, when doing combinations of walking directions, rotating or a large change of direction there often happends that the legs get in conflict. What if this factor was calculated in realtime for avoiding this? Just a thought…

Oh… :cry: I didn’t think of that.
I’ll keep your offer in mind. Thanks! :smiley:

The worst situation is when combining directions. Like walking diagonal or walking forward and rotating in the same time. The travel distance is limited directly on the input but combined inputs are not limited. After the inputs are read we combine the inputs to calculate the final direction, travel-length and rotation.

Another thing is that the PS2 remote uses inputs from 0 to 256 bits, the DIY uses about 500 to 2500 from the PWM signal. Maybe we should split this up to make it universal. I’m thinking of defining a variable for the Travel inputs like a sword. Then we need to convert min/max values from the remote to the min/max value of the sword. This will keep the factor the same for a different hardware setup.

Then we need to check and limit the min/max travel values after they are combined. This min/max values need to be configured in the config file.

Should be a good thing to add! :slight_smile:

Ok, quickly back to work now :wink:

Xan

When Kurt started the DIY remote XBee project the slider and joystick values are limited to byte size and thats compatible with the PS2 format.

So hurry up and order some XBee modules Xan! :wink:

:open_mouth:
You work to much… :laughing:

LOL, It was a darn pity the free stuff day at Sparkfun made there side go down. I had everything ready for shipping but I couldn’t get trough the overloaded website. Well… I guess I have to buy them myself then. :confused:

I’ve got the same feeling… :confused:

Thinking of all the time you spend at work I believe buying them yourself shouldn’t be a financial problem… :wink:

Now the time to merge it all together… :wink:

BTW: You’re pretty close with your run to the “robot guru” title :smiley:

Yeah, I’ve noticed that… 8) :smiley:

Ok, I don’t wan’t to hijack Jim’s thread here just for adding more post counts…

The T-Hex code I used on the youtube video:

Can be downloaded in my original T-Hex thread.

Well, lets try to get this thread back on track! lol I think I’m ready to start cutting metal. :smiley: Here is the design as it is today. By enlarging the wire access rows It made the top of the chassis flat, even with the turret part. I fixed the spacing on the SES hole pattern groups, so they are 1". This will allow mounting channels to the sides. I was able to remove some extra weight by adding the negative areas in the front. The power switch holes were too close together so I reduced it to two. Feedback welcome.

The chassis is looking good!

What are the two vertical rectangular slots for?

How about plastic “bubbles” for the side and front windscreens (winshields)?

Alan KM6VV

They are for servo wires. I have specific plans for my vacuum molding machine. :smiley:

That works!

Alan KM6VV