Go to Post The worst that happens is we try our best and lose. And there's no shame in that. - pfreivald [more]
Home
Go Back   Chief Delphi > Technical > Technical Discussion
CD-Media   CD-Spy  
portal register members calendar search Today's Posts Mark Forums Read FAQ rules

 
Closed Thread
 
Thread Tools Rating: Thread Rating: 3 votes, 5.00 average. Display Modes
  #1   Spotlight this post!  
Unread 11-08-2014, 23:07
cbale2000's Avatar
cbale2000 cbale2000 is offline
Registered User
AKA: Chris Bale
FRC #0703 (Phoenix)
Team Role: Leadership
 
Join Date: Apr 2006
Rookie Year: 2004
Location: Saginaw, MI
Posts: 919
cbale2000 has a reputation beyond reputecbale2000 has a reputation beyond reputecbale2000 has a reputation beyond reputecbale2000 has a reputation beyond reputecbale2000 has a reputation beyond reputecbale2000 has a reputation beyond reputecbale2000 has a reputation beyond reputecbale2000 has a reputation beyond reputecbale2000 has a reputation beyond reputecbale2000 has a reputation beyond reputecbale2000 has a reputation beyond repute
Re: Drivetrain Idea - "Box Drive"

I actually thought of making a drive system like this, but doing it with traction wheels and have one set actuate up and down to change directions, a bit like some of the octocanum and similar drives do, but with the entire drive module (the benefit being you'd have a sort of omnidirectional drive system with traction wheels).

Eventually I concluded that the system would weigh too much, use to many motors, and be too complex to be practical. That said, it would be cool to see someone make it work.
  #2   Spotlight this post!  
Unread 11-08-2014, 23:09
nathannfm's Avatar
nathannfm nathannfm is offline
Registered User
AKA: Nathan
FRC #3940
Team Role: Mentor
 
Join Date: Jun 2010
Rookie Year: 2005
Location: Kokomo, IN
Posts: 329
nathannfm has a brilliant futurenathannfm has a brilliant futurenathannfm has a brilliant futurenathannfm has a brilliant futurenathannfm has a brilliant futurenathannfm has a brilliant futurenathannfm has a brilliant futurenathannfm has a brilliant futurenathannfm has a brilliant futurenathannfm has a brilliant futurenathannfm has a brilliant future
Re: Drivetrain Idea - "Box Drive"

Quote:
Originally Posted by cbale2000 View Post
I actually thought of making a drive system like this, but doing it with traction wheels and have one set actuate up and down to change directions, a bit like some of the octocanum and similar drives do, but with the entire drive module (the benefit being you'd have a sort of omnidirectional drive system with traction wheels).

Eventually I concluded that the system would weigh too much, use to many motors, and be too complex to be practical. That said, it would be cool to see someone make it work.
Lobster Drive
__________________

[2016-20??]: Mentor: FRC Team 3940"CyberTooth"
[2013-2016]: Mentor: FRC Team 365 "MOE"
[2012-2013]: Mentor: FRC Team 3929 "Atomic Dragons"
[2011-2012]: Mentor: FRC Team 365 "MOE"
[2008-2011]: Student: FRC Team 365 "MOE"
[2007-2008]: Student: FTC Team 365 "MOE"
[2005-2007]: Student: FLL Team "The MOEstangs"
  #3   Spotlight this post!  
Unread 11-08-2014, 23:21
Chris is me's Avatar
Chris is me Chris is me is offline
no bag, vex only, final destination
AKA: Pinecone
FRC #0228 (GUS Robotics); FRC #2170 (Titanium Tomahawks)
Team Role: Mentor
 
Join Date: Dec 2008
Rookie Year: 2006
Location: Glastonbury, CT
Posts: 7,580
Chris is me has a reputation beyond reputeChris is me has a reputation beyond reputeChris is me has a reputation beyond reputeChris is me has a reputation beyond reputeChris is me has a reputation beyond reputeChris is me has a reputation beyond reputeChris is me has a reputation beyond reputeChris is me has a reputation beyond reputeChris is me has a reputation beyond reputeChris is me has a reputation beyond reputeChris is me has a reputation beyond repute
Send a message via AIM to Chris is me
Re: Drivetrain Idea - "Box Drive"

The reason H drive has more forward traction than mecanum or omni is because more of the robot's weight is supported on the wheels pointing forwards than the wheels pointing sideways. In this configuration having more sideways wheels cancels out that effect.

With some specific exceptions, simply increasing the number of wheels on the ground does not significantly increase traction. So this drive is going to perform exactly as well as a holonomic 4 omni drive in terms of traction or manuverability.

In addition, once you put more than 4 wheels on the ground you run into problems with maintaining wheels contact. Unless your frame is perfectly rigid with every wheel at exactly the same height (and a perfectly rigid drive doesn't exist) you'll have some wheels supporting far more weight than others, this disproportionately influencing the direction of travel.
__________________
Mentor / Drive Coach: 228 (2016-?)
...2016 Waterbury SFs (with 3314, 3719), RIDE #2 Seed / Winners (with 1058, 6153), Carver QFs (with 503, 359, 4607)
Mentor / Consultant Person: 2170 (2017-?)
---
College Mentor: 2791 (2010-2015)
...2015 TVR Motorola Quality, FLR GM Industrial Design
...2014 FLR Motorola Quality / SFs (with 341, 4930)
...2013 BAE Motorola Quality, WPI Regional #1 Seed / Delphi Excellence in Engineering / Finalists (with 20, 3182)
...2012 BAE Imagery / Finalists (with 1519, 885), CT Xerox Creativity / SFs (with 2168, 118)
Student: 1714 (2009) - 2009 Minnesota 10,000 Lakes Regional Winners (with 2826, 2470)
2791 Build Season Photo Gallery - Look here for mechanism photos My Robotics Blog (Updated April 11 2014)
  #4   Spotlight this post!  
Unread 11-08-2014, 23:41
EricH's Avatar
EricH EricH is offline
New year, new team
FRC #1197 (Torbots)
Team Role: Engineer
 
Join Date: Jan 2005
Rookie Year: 2003
Location: SoCal
Posts: 19,609
EricH has a reputation beyond reputeEricH has a reputation beyond reputeEricH has a reputation beyond reputeEricH has a reputation beyond reputeEricH has a reputation beyond reputeEricH has a reputation beyond reputeEricH has a reputation beyond reputeEricH has a reputation beyond reputeEricH has a reputation beyond reputeEricH has a reputation beyond reputeEricH has a reputation beyond repute
Re: Drivetrain Idea - "Box Drive"

See if you can locate any tech specs for the only "linkage drive" ever used in FRC--"Twitch" was the robot name.

4 omni wheels mounted in swerve module-type devices, rotated 90 degrees by a single pneumatic cylinder. It was used in 2008 for making turns at the ends of the field.

That might be worth trying out in the offseason; the "swerve modules" could be just large pieces of C-channel or box tubing (or, if you have any around, the 2010 KitBot risers with some extra well-placed holes).
__________________
Past teams:
2003-2007: FRC0330 BeachBots
2008: FRC1135 Shmoebotics
2012: FRC4046 Schroedinger's Dragons

"Rockets are tricky..."--Elon Musk

  #5   Spotlight this post!  
Unread 12-08-2014, 03:54
asid61's Avatar
asid61 asid61 is offline
Registered User
AKA: Anand Rajamani
FRC #0115 (MVRT)
Team Role: Mechanical
 
Join Date: Jan 2014
Rookie Year: 2013
Location: Cupertino, CA
Posts: 2,202
asid61 has a reputation beyond reputeasid61 has a reputation beyond reputeasid61 has a reputation beyond reputeasid61 has a reputation beyond reputeasid61 has a reputation beyond reputeasid61 has a reputation beyond reputeasid61 has a reputation beyond reputeasid61 has a reputation beyond reputeasid61 has a reputation beyond reputeasid61 has a reputation beyond reputeasid61 has a reputation beyond repute
Re: Drivetrain Idea - "Box Drive"

Quote:
Originally Posted by EricH View Post
See if you can locate any tech specs for the only "linkage drive" ever used in FRC--"Twitch" was the robot name.

4 omni wheels mounted in swerve module-type devices, rotated 90 degrees by a single pneumatic cylinder. It was used in 2008 for making turns at the ends of the field.

That might be worth trying out in the offseason; the "swerve modules" could be just large pieces of C-channel or box tubing (or, if you have any around, the 2010 KitBot risers with some extra well-placed holes).
Twitch drives are pretty cool if you can pull it off. You don't need to use omni wheels though; regular traction wheels will do fine.

About the OP:
Cool idea. How would you make sure all 8 wheels are touching the ground though? This would save a lot of space depending on motor configurations. Using a shifter to shift between wheels on each corner bevel gears would net you the ability to tank, slide, and drift. Weight would be a big issue though with the extra 4 wheels and shifters.
  #6   Spotlight this post!  
Unread 12-08-2014, 01:46
SoftwareBug2.0's Avatar
SoftwareBug2.0 SoftwareBug2.0 is offline
Registered User
AKA: Eric
FRC #1425 (Error Code Xero)
Team Role: Mentor
 
Join Date: Aug 2004
Rookie Year: 2004
Location: Tigard, Oregon
Posts: 485
SoftwareBug2.0 has a brilliant futureSoftwareBug2.0 has a brilliant futureSoftwareBug2.0 has a brilliant futureSoftwareBug2.0 has a brilliant futureSoftwareBug2.0 has a brilliant futureSoftwareBug2.0 has a brilliant futureSoftwareBug2.0 has a brilliant futureSoftwareBug2.0 has a brilliant futureSoftwareBug2.0 has a brilliant futureSoftwareBug2.0 has a brilliant futureSoftwareBug2.0 has a brilliant future
Lightbulb Re: Drivetrain Idea - "Box Drive"

Quote:
Originally Posted by Chris is me View Post
In addition, once you put more than 4 wheels on the ground you run into problems with maintaining wheels contact. Unless your frame is perfectly rigid with every wheel at exactly the same height (and a perfectly rigid drive doesn't exist) you'll have some wheels supporting far more weight than others, this disproportionately influencing the direction of travel.
I think the number you're looking for is 3.
  #7   Spotlight this post!  
Unread 12-08-2014, 05:50
pimathbrainiac's Avatar
pimathbrainiac pimathbrainiac is offline
Today, Regionals. Tomorrow, Worlds.
AKA: Philip N
FRC #1127 (Lotus Robotics)
Team Role: Programmer
 
Join Date: Jan 2013
Rookie Year: 2013
Location: Milton HS
Posts: 49
pimathbrainiac can only hope to improve
Re: Drivetrain Idea - "Box Drive"

Quote:
Originally Posted by cjl2625 View Post
I have an idea for the code if you rearranged the layout to something like this:

You could do regular 4 wheel swerve calculations, and then end up with an (x, y) vector for back left, back right, front left, and front right. For each of those corners, take the x value and send it to the horizontal wheel, and take the y value and send it to the vertical wheel.
Might be better ways of doing it, but that's my idea.

Edit: I'm starting to realize that all 8 wheels might not be independent. In that case, my idea probably won't work.
Actually that's probably a better idea than my current one, even with each wheel not being controlled independently, because both of the wheels on each side would end up being the same speed no matter what, because the robot can only move in a straight line and rotate. It's an interesting idea, and the layout makes more sense than my current idea.

Quote:
Originally Posted by Chris is me View Post
The reason H drive has more forward traction than mecanum or omni is because more of the robot's weight is supported on the wheels pointing forwards than the wheels pointing sideways. In this configuration having more sideways wheels cancels out that effect.

With some specific exceptions, simply increasing the number of wheels on the ground does not significantly increase traction. So this drive is going to perform exactly as well as a holonomic 4 omni drive in terms of traction or manuverability.

In addition, once you put more than 4 wheels on the ground you run into problems with maintaining wheels contact. Unless your frame is perfectly rigid with every wheel at exactly the same height (and a perfectly rigid drive doesn't exist) you'll have some wheels supporting far more weight than others, this disproportionately influencing the direction of travel.
From the sides or the front, where most robots would end up pushing, the robot would be able to push back without any problems, because of the direction of the wheels themselves, with a reconfiguration to cjl2625's idea. Also my team made a west coast drive without the dropped center (robot was wider than it was long) work last year. I don't think the maintaining contact thing will be an issue. As for the weight issue, I see what you're saying. That could be an issue.

As for something I've seen in a few posts in this thead: This would probably use four motors to avoid the weight issue with 8 motors. We'd have to check in offseason testing, though, since we don't have much to do to prepare for our offseason competition.

Anyways, if I can't convince my team anyway, we'd probably end up testing a butterfly drive or the like.
  #8   Spotlight this post!  
Unread 12-08-2014, 21:08
cbale2000's Avatar
cbale2000 cbale2000 is offline
Registered User
AKA: Chris Bale
FRC #0703 (Phoenix)
Team Role: Leadership
 
Join Date: Apr 2006
Rookie Year: 2004
Location: Saginaw, MI
Posts: 919
cbale2000 has a reputation beyond reputecbale2000 has a reputation beyond reputecbale2000 has a reputation beyond reputecbale2000 has a reputation beyond reputecbale2000 has a reputation beyond reputecbale2000 has a reputation beyond reputecbale2000 has a reputation beyond reputecbale2000 has a reputation beyond reputecbale2000 has a reputation beyond reputecbale2000 has a reputation beyond reputecbale2000 has a reputation beyond repute
Re: Drivetrain Idea - "Box Drive"

Quote:
Originally Posted by nathannfm View Post
Impressive, probably the most practical way to do that too.

Thanks for that link, it made my day.
  #9   Spotlight this post!  
Unread 12-08-2014, 21:57
pimathbrainiac's Avatar
pimathbrainiac pimathbrainiac is offline
Today, Regionals. Tomorrow, Worlds.
AKA: Philip N
FRC #1127 (Lotus Robotics)
Team Role: Programmer
 
Join Date: Jan 2013
Rookie Year: 2013
Location: Milton HS
Posts: 49
pimathbrainiac can only hope to improve
Re: Drivetrain Idea - "Box Drive"

So if figured out the math/code for this using cjl2625's version of the drivetrain.

Here's a segment (Java, btw):
Code:
    final double DISTANCE_X = 1.0;
    final double DISTANCE_Y = 1.0;
    private double leftY;
    private double rightY;
    private double frontX;
    private double backX;
    //rotation is cw
    private double rotationX;
    private double rotationY;
    private double pi = 3.1415926;
    private double curr_gyro_angle_degrees = 0.0;
    private double curr_gyro_angle_radians = 0.0;
    private double temp;
    
    public void TakeJoystickInputsAndDrive(Joystick left, Joystick right)
    {
        calculatedDrive(-0.5 * left.getY(), 0.5 * left.getX(), 0.5 * right.getX());
    }
    
    void calculatedDrive(double y, double x, double rotation)
    {
        //Field-centric adjustments. Comment out for robot-centric.
        curr_gyro_angle_degrees = gyro1.getAngle();
        curr_gyro_angle_radians = curr_gyro_angle_degrees * pi/180; 
        temp = y * Math.cos(curr_gyro_angle_radians) - x * Math.sin(curr_gyro_angle_radians);
        x = y * Math.sin(curr_gyro_angle_radians) + x * Math.cos(curr_gyro_angle_radians);
        y = temp;
        
        rotationX = rotation * DISTANCE_X;
        rotationY = rotation * DISTANCE_Y;
        leftY = y - rotationY;
        rightY = y + rotationY;
        frontX = x - rotationX;
        backX = x + rotationX;
        drive(leftY, rightY, frontX, backX);
    }
    
    void drive(double y1, double y2, double x1, double x2)
    {
        //left, right
        robotDrive2Y.drive(y1, y2);
        //front, back
        robotDrive2X.drive(x1, x2);
    }
This code runs in a command called "DriveWithJoysticks," which is the default command for drivetrain.

Any problems with the code/math that you can see at the moment? I want to make sure this is sound before I pitch this to my team.
  #10   Spotlight this post!  
Unread 12-08-2014, 02:09
Max Boord Max Boord is offline
Registered User
FRC #0179 (The Children of The Swamp), FRC #1592 (Bionic Tigers)
Team Role: Tactician
 
Join Date: Jun 2013
Rookie Year: 2002
Location: Florida
Posts: 234
Max Boord has a brilliant futureMax Boord has a brilliant futureMax Boord has a brilliant futureMax Boord has a brilliant futureMax Boord has a brilliant futureMax Boord has a brilliant futureMax Boord has a brilliant futureMax Boord has a brilliant futureMax Boord has a brilliant futureMax Boord has a brilliant futureMax Boord has a brilliant future
Re: Drivetrain Idea - "Box Drive"

Quote:
Originally Posted by cbale2000 View Post
That said, it would be cool to see someone make it work.
180 combined that with an airplane propeller in 2009.
__________________
Past teams:
1523 (2011-2014)
1065 (2014-2016)
3932 & 4592 (2016)
  #11   Spotlight this post!  
Unread 13-08-2014, 10:26
Brandon Zalinsky's Avatar
Brandon Zalinsky Brandon Zalinsky is offline
Roaming GeorgiaFIRST MC
AKA: The Mecanum Man
FRC #1058 (PVC Pirates)
Team Role: Alumni
 
Join Date: Jan 2011
Rookie Year: 2008
Location: Clemson, SC
Posts: 456
Brandon Zalinsky has a brilliant futureBrandon Zalinsky has a brilliant futureBrandon Zalinsky has a brilliant futureBrandon Zalinsky has a brilliant futureBrandon Zalinsky has a brilliant futureBrandon Zalinsky has a brilliant futureBrandon Zalinsky has a brilliant futureBrandon Zalinsky has a brilliant futureBrandon Zalinsky has a brilliant futureBrandon Zalinsky has a brilliant futureBrandon Zalinsky has a brilliant future
Re: Drivetrain Idea - "Box Drive"

Quote:
Originally Posted by cbale2000 View Post
I actually thought of making a drive system like this, but doing it with traction wheels and have one set actuate up and down to change directions, a bit like some of the octocanum and similar drives do, but with the entire drive module (the benefit being you'd have a sort of omnidirectional drive system with traction wheels).
Check out 3958 in 2012. They used that exact design, which was successful for them.
__________________
This is our Robot. There are many like it, but this one is ours.
Measure twice, cut once, curse, buy more, and cut again.

2014- Excellence in Engineering (UNH), District Chairman's Award (NU), #8 Quarterfinalist (NECMP), Winner (Mainely Spirit)
2013- Semifinalists (Battlecry@WPI) Winner (Mainely Spirit)
2012- Regional Chairman's (GSR), Finalists as the #11 Alliance Captain (Battlecry@WPI)
2011-Xerox Creativity Award (GSR), Semifinalists (GSR) Innovation in Control (Virginia)
2010-Champion (GSR), Undefeated (Chesapeake), Coopertition Award (Chesapeake), Quarterfinalists (Galileo) 8th AC (IRI)
2008-Undefeated (GSR), Xerox Creativity Award (GSR)
  #12   Spotlight this post!  
Unread 13-08-2014, 14:20
pimathbrainiac's Avatar
pimathbrainiac pimathbrainiac is offline
Today, Regionals. Tomorrow, Worlds.
AKA: Philip N
FRC #1127 (Lotus Robotics)
Team Role: Programmer
 
Join Date: Jan 2013
Rookie Year: 2013
Location: Milton HS
Posts: 49
pimathbrainiac can only hope to improve
Re: Drivetrain Idea - "Box Drive"

That design uses pneumatic wheels, not traction wheels, though. Traction wheels might not actuate properly.

Also that design doesn't do diagonals or moving while rotating, which are key to be able to do for a field-centric system. I don't know of a non omni/mecanum/swerve/h drive that can do this, though.

That said, that drivetrain looks effective for Rebound Rumble, so it served its purpose well, and might serve another purpose later. It just won't serve my purpose currently.
  #13   Spotlight this post!  
Unread 13-08-2014, 20:18
pimathbrainiac's Avatar
pimathbrainiac pimathbrainiac is offline
Today, Regionals. Tomorrow, Worlds.
AKA: Philip N
FRC #1127 (Lotus Robotics)
Team Role: Programmer
 
Join Date: Jan 2013
Rookie Year: 2013
Location: Milton HS
Posts: 49
pimathbrainiac can only hope to improve
Re: Drivetrain Idea - "Box Drive"

I redid the Drivetrain code to normalize the motor values. How is the code? (Just ctrl-A ctrl-V'd it)

Code:
// RobotBuilder Version: 1.0
//
// This file was generated by RobotBuilder. It contains sections of
// code that are automatically generated and assigned by robotbuilder.
// These sections will be updated in the future when you export to
// Java from RobotBuilder. Do not put any code or make any change in
// the blocks indicating autogenerated code or it will be lost on an
// update. Deleting the comments indicating the section will prevent
// it from being updated in the future.
package org.usfirst.frc1127.DevBot2014_2015.subsystems;
import org.usfirst.frc1127.DevBot2014_2015.RobotMap;
import org.usfirst.frc1127.DevBot2014_2015.commands.*;
import edu.wpi.first.wpilibj.*;
import edu.wpi.first.wpilibj.command.Subsystem;
/**
 *
 */
public class Drivetrain extends Subsystem
{
    //constants
    final double DISTANCE_X = 1.0;
    final double DISTANCE_Y = 1.0;
    
    //only needed for field-centric
    final double PI = 3.1415926;
    
    //wheel velocity values | positive x values are right | positive y values are forwards
    private double[] motorValues = {0.0, 0.0, 0.0, 0.0};
    
    //rotation is cw
    private double rotationX;
    private double rotationY;
    
    //field-centric stuff
    private double curr_gyro_angle_degrees = 0.0;
    private double curr_gyro_angle_radians = 0.0;
    private double cos;
    private double sin;
    private double temp;
    
    //for the for loop
    private int i;
    double maxValue = 1.0;
    
    // BEGIN AUTOGENERATED CODE, SOURCE=ROBOTBUILDER ID=DECLARATIONS
    CANJaguar cANJaguar1 = RobotMap.drivetrainCANJaguar1;
    CANJaguar cANJaguar2 = RobotMap.drivetrainCANJaguar2;
    RobotDrive robotDrive2X = RobotMap.drivetrainRobotDrive2X;
    CANJaguar cANJaguar3 = RobotMap.drivetrainCANJaguar3;
    CANJaguar cANJaguar4 = RobotMap.drivetrainCANJaguar4;
    RobotDrive robotDrive2Y = RobotMap.drivetrainRobotDrive2Y;
    Gyro gyro1 = RobotMap.drivetrainGyro1;
    // END AUTOGENERATED CODE, SOURCE=ROBOTBUILDER ID=DECLARATIONS
    
    // Put methods for controlling this subsystem
    // here. Call these from Commands.
    public void initDefaultCommand()
    {
        // BEGIN AUTOGENERATED CODE, SOURCE=ROBOTBUILDER ID=DEFAULT_COMMAND
        setDefaultCommand(new DriveWithJoysticks());
    // END AUTOGENERATED CODE, SOURCE=ROBOTBUILDER ID=DEFAULT_COMMAND
	
        // Set the default command for a subsystem here.
        //setDefaultCommand(new MySpecialCommand());
    }
    
    public void TakeJoystickInputsAndDrive(Joystick left, Joystick right)
    {
        calculatedDrive(left.getY(), left.getX(), right.getX());
    }
    
    void calculatedDrive(double y, double x, double rotation)
    {
        //Field-centric adjustments. Comment out for robot-centric.
        curr_gyro_angle_degrees = gyro1.getAngle();
        curr_gyro_angle_radians = curr_gyro_angle_degrees * (PI / 180);
        cos = Math.cos(curr_gyro_angle_radians);
        sin = Math.sin(curr_gyro_angle_radians);
        temp = y * cos - x * sin;
        x = y * sin + x * cos;
        y = temp;
        
        //This code is needed for both robot-centric and field-centric
        rotationX = rotation * DISTANCE_X;
        rotationY = rotation * DISTANCE_Y;
        motorValues[0] = y - rotationY;
        motorValues[1] = y + rotationY;
        motorValues[2] = x - rotationX;
        motorValues[3] = x + rotationX;
        
        maxValue = 1.0;
        for(i = 0; i < 4; i++)
        {
            if(motorValues[i] > maxValue)
                maxValue = motorValues[i];
        }
        
        if(maxValue > 1.0)
            for(i = 0; i < 4; i++)
                motorValues[i] = motorValues[i] / maxValue;
        
        drive(motorValues[0], motorValues[1], motorValues[2], motorValues[3]);
    }
    
    void drive(double y1, double y2, double x1, double x2)
    {
        //left, right
        robotDrive2Y.drive(y1, y2);
        //front, back
        robotDrive2X.drive(x1, x2);
    }
    
    public void stop()
    {
        robotDrive2Y.drive(0, 0);
        robotDrive2X.drive(0, 0);
    }
}
Closed Thread


Thread Tools
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump


All times are GMT -5. The time now is 07:43.

The Chief Delphi Forums are sponsored by Innovation First International, Inc.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi