OCCRA
Go to Post How do You Chiefdelphi? :cool: - SpaceOsc [more]
Home
Go Back   Chief Delphi > Technical > Programming
CD-Events   CD-Media   CD-Spy   FRC-Spy  
portal register members calendar search Today's Posts Mark Forums Read FAQ rules

 
Closed Thread
Thread Tools Rate Thread Display Modes
  #1   Spotlight this post!  
Unread 03-02-2012, 04:16 PM
meeeeee meeeeee is offline
Registered User
FRC #2713
 
Join Date: Jan 2012
Location: united states
Posts: 2
meeeeee is an unknown quantity at this point
CANJaguar position problems

we are trying to use the position setting for out CAN jaguars, but whenever we run it, it is either unresponsive, or does not stop.

As it runs and is not moving, the jaguar flashes red.

We use the setX() function to move the motor to certain positions, but it does not seem to do what we want it to do.

if anyone can clarify what exactly position control setX() does, and how to properly use position control for a CAN jaguar that would be great

thanks
  #2   Spotlight this post!  
Unread 03-02-2012, 09:51 PM
eaglesfan51520's Avatar
eaglesfan51520 eaglesfan51520 is offline
Lead Programming Mentor
AKA: Steve
FRC #1687
Team Role: Mentor
 
Join Date: Mar 2011
Rookie Year: 2009
Location: US
Posts: 15
eaglesfan51520 is an unknown quantity at this point
Re: CANJaguar position problems

We use speed mode for our canbus but it should be similar. First, make sure you change to position mode and also set position reference. Then enable control and to set them use the Set() function. I do not know what the SetX() does.
  #3   Spotlight this post!  
Unread 03-17-2012, 07:36 PM
arthurlockman's Avatar
arthurlockman arthurlockman is offline
Team Captain
FRC #0172 (Northern Force)
Team Role: Programmer
 
Join Date: Feb 2010
Rookie Year: 2009
Location: Gorham, ME
Posts: 29
arthurlockman is an unknown quantity at this point
Send a message via AIM to arthurlockman
Re: CANJaguar position problems

I'd be happy to try to help. I do have a question though: What is your position reference? You need to have an encoder or a potentiometer on it otherwise the position control would do nothing.

The SetX() method on the CAN Jaguar sets the position in terms of rotations of the motor, from where you started.

A few things to note to get it to work:
- In order for the Position mode to work on your Jaguar, you need to set the jaguar to say how many lines the encoder has (assuming it's an encoder).
- You need to set up a PID loop on the jaguar in order for it to do anything.

As an example, here's our turret setup (using position mode). It's in C++, and from your use of SetX() I assume you're in Java. But you'll see still what it's doing.
Code:
	m_turretJaguar.ChangeControlMode(CANJaguar::kPosition);
	m_turretJaguar.ConfigMaxOutputVoltage(k_driveMaxOutputVoltage);
	m_turretJaguar.SetPID(k_turretP,k_turretI,k_turretD);
	m_turretJaguar.SetPositionReference(CANJaguar::kPosRef_QuadEncoder);
	m_turretJaguar.ConfigEncoderCodesPerRev(k_encoderPulsesPerRev);
	m_turretJaguar.ConfigNeutralMode(CANJaguar::kNeutralMode_Brake);
	m_turretJaguar.EnableControl();
Hopefully this was sorta helpful. I'd be happy to help further. We just fought for a week on our position controlled turret, so I know how to make it work.
-Arthur
__________________
--
Arthur Lockman | Developer @ Vivace
vi.vace.me
Twitter: @arthurlockman
a.rthr.me
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 04:24 AM.

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


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