moteur
intro:
Quand on utilise un moteur ce qu'on code est un controleur de moteur. On en utilise 4 différent en robotique: CANspark max, CANspark flex, Talon SRX, Talon FX.
CANspark max= moteur NEO
CANspark flex = moteur vortex
Talon FX = moteur Kraken
Talon SRX = autre moteur comme 775 pro ou SIM
pour créer l'objet du moteur:
les 2 spark ce resemble beaucoup.
exemple:
final SparkFlex lance = new SparkFlex(17 , MotorType.kBrushless);
final SparkMax accumulateur = new SparkMax(18, MotorType.kBrushless);
final signifie qu'on ne peut modifer cette ligne a d'autre endroit dans le code
SparkFlex ou SparkMax le controleur a utiliser
lance est le nom du moteur c'est toi qui décide du nom
new SparkFlex signifie que tu veux en créer un nouveau
le 17 est l'ID c'est le nombre qui identifie ton moteur
MotorType.kBrushless ou MotorType.kBrush signifie que le moteur est soit avec ou sans broche. Les moteur a la robotique sont tous brusless
les 2 Talon ce resemble beaucoup.
exemple:
final WPI_TalonSRX pince = new WPI_TalonSRX(2);
WPI_TalonSRX ou WPI_TalonFX le controleur a utiliser
pince est le nom du moteur
new WPI_TalonSRX signifie que tu veux en créer un nouveau
le 2 est l'ID
ensuite pour dire quel utiliter donner au moteur on créé une fonction.
exemple:
public void lance(double vitesse){
Lanceur.set(vitesse);
}
public signifie qu'il peut être utlisé partout dans le code
void signifie que tu retourne aucune valeur
le void pourait être renplacer par:
double= renvoit un chiffre a vergule, int= renvoit un chiffre plein, boolean renvoit soit true ou false pour des objet a seulement 2 état par exemple,Srting= renvoit un message.
lance est le nom de la fonction elle sera utilisé dans les command(voir le chapitre sur les Commande)
double vitesse est une variable qui pourra être modifier dans une commande
lanceur est le nom du moteur utiliser dans la fonction
set est ce que le moteur fait dans la fonction. Set mets la vitesse a la valeur mis dans les parentèse en %
un fonction peux servir pour différente chose mais on l'utilise principalement pour: défénir la vitesse d'un moteur( comme l'exemple), prendre la valeur d'un encodeur(voir juste en bas, ou défémir la position d'un encodeur(voir plus loin).
public double encodeur(){
return rotatione.getEncoder().getPosition();
}
public, double,encodeur et sont des mot qui on été défini plus haut
return signifie que ce qu'il y a après c'est ce que tu retourne comme valeur
rotatione.getEncoder().getPosition() est que tu prend la position de l'encodeur du moteur rotatione
pour définir la position d'un encodeur pour par exemple reset l'encodeur
public void reset(){
monte.getEncoder().setPosition(0);
}
a la place de rotatione.getEncoder().getPosition() on met monte.getEncoder().setPosition() et le 0 est la valeur de l'encodeur qu'on définit
No comments to display
No comments to display