|
|
|
![]() |
|
|||||||
|
||||||||
![]() |
| Thread Tools | Rate Thread | Display Modes |
|
#31
|
||||
|
||||
|
Re: Hex Kiwi Drive
Quote:
|
|
#32
|
||||
|
||||
|
Re: Hex Kiwi Drive
I might have missed someone saying this(correct me if they did), but a hexagonal robot would not be for pushing power. The design makes it easy to get out of being pinned. A perk to an omni wheel drivetrain is that if you know how to drive it well, then you can use another robot pushing you to your advantage. I know it's a different shaped chassis but team 33 in 2014 had a four omni wheel drivetrain. It wasn't omni directional unless another team applied the force to their side, and they used this to their advantage. (They won 2 districts, their district champs, and we're finalists in their division at worlds)
|
|
#33
|
||||
|
||||
|
Re: Hex Kiwi Drive
Quote:
Psuedocode: Code:
if (fieldOriented) {
cosA = cos(( target - gyroAngle ) * 3.14159 / 180 )
sinA = sin(( target - gyroAngle ) * 3.14159 / 180 )
x = (driverLX * cosA) - (driverLY * sinA)
y = (driverLX * sinA) + (driverLY * cosA)
}
flMotor = y*sind(60) + x*cosd(60) + turn
mlMotor = y + turn
blMotor = y*sind(60) - x*cosd(60) + turn
frMotor = - y*sind(60) - x*cosd(60) + turn
mrMotor = - y + turn
brMotor = - y/sind(60) + x/cosd(60) + turn
Last edited by caume : 31-05-2016 at 20:19. Reason: Clarified motor positions |
|
#34
|
||||
|
||||
|
Re: Hex Kiwi Drive
I'm not 100% sure if having six wheels woild give you an advantage over having 3 or 4. The real advantage with this design is manuvrability.
Having a hexagon robot would allow you to not get pinned easily, and also the added advantage of having a smaller turning diameter. I can attest to this advantage. In my first year of FTC we created a 4 omni wheel robot hexagon frame, and a round shell. Having this rounded shell let us cut corners that no one else could, not get pinned, and when turning we had no corners that could get caught on obstacles (i.e robots, field elements, field perminiter). Here is an attached picture: |
|
#35
|
||||
|
||||
|
Re: Hex Kiwi Drive
Quote:
If I assume the following: driverLX is the driver's field-centric move right command... then your code gives incorrect answers for the wheel speeds. See example with target=0 (front is defined as the point opposite the battery as stated above) and gyroAngle=0 (robot front is facing straight downfield). Apparently not. The code I posted gives the correct wheel speeds for robot-centric driver FWD and STR commands. To make that code give the correct wheel speeds for field-centric driver FWD and STR commands, just modify those commands as follows before calculating the wheel speeds: Code:
temp = FWD·cos(θ) + STR·sin(θ); STR = -FWD·sin(θ) + STR·cos(θ); FWD = temp; Last edited by Ether : 06-06-2016 at 15:12. |
![]() |
| Thread Tools | |
| Display Modes | Rate This Thread |
|
|