Chief Delphi

Chief Delphi (http://www.chiefdelphi.com/forums/index.php)
-   NI LabVIEW (http://www.chiefdelphi.com/forums/forumdisplay.php?f=182)
-   -   Jaguar Motor Control (http://www.chiefdelphi.com/forums/showthread.php?t=92102)

oceanblack 17-02-2011 16:07

Jaguar Motor Control
 
Hello ChiefDelphi! I hope everyones robots are going well.

My team is currently working on their arm and it's my first year programming so I'm in a bit of an issue.

I have a few questions about Jaguar Motor Control using Labview. We have the default sample modified and up and running and the robot is moving great. We have 4 motor controllers opened using the [DRIVE] Open 4 Motor box. However, we have a bit of slack on one chain and I was wondering if it was possible to offset the amount of information is sent to some of the motors (so like multiply it by 0.9 to make the one side move a bit slower)

How do I modify values sent to Arcade Drive for individual motors?. So far example, I have x * 0.9 sent to the left motors, and x sent to the right motors.

The other issue is we are using Jaguar motor controllers to control the movement of the arm. However, each motor controller is controlling a single motor. In labview, I noticed the open function requires 2 motors, or does it? Maybe someone can get me some help. But I'm trying to send individual values to each motor controller and I'm wondering if I have to supply 2 motors or can I just use one...

Joe Ross 17-02-2011 21:36

Re: Jaguar Motor Control
 
Quote:

Originally Posted by oceanblack (Post 1025267)
I have a few questions about Jaguar Motor Control using Labview. We have the default sample modified and up and running and the robot is moving great. We have 4 motor controllers opened using the [DRIVE] Open 4 Motor box. However, we have a bit of slack on one chain and I was wondering if it was possible to offset the amount of information is sent to some of the motors (so like multiply it by 0.9 to make the one side move a bit slower)

How do I modify values sent to Arcade Drive for individual motors?. So far example, I have x * 0.9 sent to the left motors, and x sent to the right motors.

Slack in the chain won't cause a side to travel slower, unless you have so much slack that it's skipping teeth. If that's the case, you really need to fix the mechanical problem.

Quote:

Originally Posted by oceanblack (Post 1025267)
The other issue is we are using Jaguar motor controllers to control the movement of the arm. However, each motor controller is controlling a single motor. In labview, I noticed the open function requires 2 motors, or does it? Maybe someone can get me some help. But I'm trying to send individual values to each motor controller and I'm wondering if I have to supply 2 motors or can I just use one...

For a mechanism other then a drive train, use the MotorControl VIs rather then RobotDrive.

oceanblack 18-02-2011 15:15

Re: Jaguar Motor Control
 
Quote:

Originally Posted by Joe Ross (Post 1025544)
Slack in the chain won't cause a side to travel slower, unless you have so much slack that it's skipping teeth. If that's the case, you really need to fix the mechanical problem.



For a mechanism other then a drive train, use the MotorControl VIs rather then RobotDrive.

Thanks for your response. We've tried the MotorControl via, and I've tried setting the output to different double values (0.1, 0.2, 0.8, 1) etc, but none of these affect the actual speed of the motor...

Also, there is a slack in the chain and we can't fix it mechanically because the of the layout of the gearboxes (when you flip them the chain gear is on the other side). Isn't there a way to fix this via software (IE, adjusting the value for each motor controller?)

MattCarey3625 19-02-2011 21:57

Re: Jaguar Motor Control
 
Ok, it is possible to do this but you will not be using the Arcade Drive. You need to check the values and while the value of a joystick axis is over a certain number you need to begin to take away from the motor output. So you need to read info from 2 axises; 1 for speed and the other to sense when the speed needs to be reduced so you would use "While Axis 1 > 0.2 or Axis 1 <-0.3 (Axis 2 - Axis 1)... This is rather hard to explain through text, but you need to create an algorithm for deprecation of motor speed and a float system so you dont take away speed imediatley. Good luck!

oceanblack 22-02-2011 14:47

Re: Jaguar Motor Control
 
I'm confused. Is there no way to simply adjust the values for each individual motor.

Ether 22-02-2011 17:39

Re: Jaguar Motor Control
 
Quote:

Originally Posted by oceanblack (Post 1026063)
there is a slack in the chain and we can't fix it mechanically because the of the layout of the gearboxes (when you flip them the chain gear is on the other side). Isn't there a way to fix this via software (IE, adjusting the value for each motor controller?)

I think it would help if you would define the problem a bit more clearly because it sounds like you want to fix the slack in the chain in software. That can't be what you are saying, is it?



Mark McLeod 23-02-2011 10:45

Re: Jaguar Motor Control
 
Quote:

Originally Posted by oceanblack (Post 1029323)
Is there no way to simply adjust the values for each individual motor.

The easiest way is to simply adjust the joystick commands before they enter the Tank/Arcade/Holonomic Drive.

For instance, multiple one joystick by .9 to reduce it to 90% of the power of the other joystick in Tank Drive.

If you want full control of individual motors, then you have to declare them as individual motors and setup your own drive logic, rather than using Open 2/4 Motor or Tank/Arcade/Holonomic Drive.

Clayton Yocom 23-02-2011 17:45

Re: Jaguar Motor Control
 
Quote:

Originally Posted by oceanblack (Post 1026063)
Thanks for your response. We've tried the MotorControl via, and I've tried setting the output to different double values (0.1, 0.2, 0.8, 1) etc, but none of these affect the actual speed of the motor...

If this didn't change anything no code can fix your problem. Make sure when you used MotorControl correctly, and Opened a motor in begin and closed it in finish and didn't have any conflicting PWMs with a motor in a RobotDrive open. RobotDrive is supposed to make programming a drive base easier, but is very convention over configuration. If you don't like the convention, then you'll have to go somewhere else I believe.


All times are GMT -5. The time now is 09:12.

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