Étape 2: Chargement des profils sur les contrôleurs de moteurs
Le Kit de développement logiciel Pololu USB est nécessaire pour programmer ces contrôleurs. Voici un lien sur la façon de télécharger et d’utiliser ce kit de développement logiciel pour vous pouvez d’utiliser le code ci-dessous. Le SDK fonctionne pour les deux contrôleurs de moteur.
Voici le profil pour le Pololu Simple contrôleur de moteur de haute puissance 18v25:
<!--fichier de paramètres Pololu contrôleur de moteur Simple. http://www.Pololu.com/docs/0J44-->
<!--créé le : 31-08-2013 09:45:35-->
<!--device model : 18v25 Pololu Simple contrôleur de moteur de haute puissance-->
<!--appareil numéro de série : 3200-7106-3147-3331-1823-1843-->
<!--version firmware appareil : 1,04-->
< SmcSettings version = « 1 » >
SerialUsb < InputMode > < / InputMode >
< MixingMode > aucun < / MixingMode >
< DisableSafeStart > false < / DisableSafeStart >
< IgnorePotDisconnect > false < / IgnorePotDisconnect >
< IgnoreErrLineHigh > false < / IgnoreErrLineHigh >
< NeverSuspend > false < / NeverSuspend >
true < TempLimitGradual > < / TempLimitGradual >
< surchauffe Min = Max « 700 » = « 800 » / >
< LowVinShutoffTimeout > 250 < / LowVinShutoffTimeout >
< LowVinShutoffMv > 5500 < / LowVinShutoffMv >
< LowVinStartupMv > 6000 < / LowVinStartupMv >
< HighVinShutoffMv > 25000 < / HighVinShutoffMv >
Binaire de < SerialMode > < / SerialMode >
< SerialDeviceNumber > 13 < / SerialDeviceNumber >
< CommandTimeout > 0 < / CommandTimeout >
personnes handicapées < CrcMode > < / CrcMode >
< UartResponseDelay > false < / UartResponseDelay >
true < UseFixedBaudRate > < / UseFixedBaudRate >
< FixedBaudRate > 9600 < / FixedBaudRate >
<!--entrer les paramètres-->
< Rc1 >
< AlternateUse > aucun < / AlternateUse >
faux < inverti > < / inverser >
< ScalingDegree > 0 < / ScalingDegree >
< erreur Min = Max « 2000 » = « 10000 » / >
< input Min = « 4000 » Max = « 8000 » / >
< InputNeutral Min = Max « 5900 » = « 6100 » / >
< / Rc1 >
< Rc2 >
< AlternateUse > aucun < / AlternateUse >
faux < inverti > < / inverser >
< ScalingDegree > 0 < / ScalingDegree >
< erreur Min = Max « 2000 » = « 10000 » / >
< input Min = « 4000 » Max = « 8000 » / >
< InputNeutral Min = Max « 5900 » = « 6100 » / >
< / Rc2 >
< Analog1 >
< AlternateUse > aucun < / AlternateUse >
Flottant de < PinMode > < / PinMode >
faux < inverti > < / inverser >
< ScalingDegree > 0 < / ScalingDegree >
< erreur Min = « 0 » Max = « 4095 » / >
< input Min = « 40 » Max = « 4055 » / >
< InputNeutral Min = Max « 2015 » = « 2080 » / >
< / Analog1 >
< Analog2 >
< AlternateUse > aucun < / AlternateUse >
Flottant de < PinMode > < / PinMode >
faux < inverti > < / inverser >
< ScalingDegree > 0 < / ScalingDegree >
< erreur Min = « 0 » Max = « 4095 » / >
< input Min = « 40 » Max = « 4055 » / >
< InputNeutral Min = Max « 2015 » = « 2080 » / >
< / Analog2 >
<!--paramètres de moteur-->
< PwmPeriodFactor > 0 < / PwmPeriodFactor >
true < MotorInvert > < / MotorInvert >
< SpeedZeroBrakeAmount > 16 < / SpeedZeroBrakeAmount >
< SpeedUpdatePeriod > 100 < / SpeedUpdatePeriod >
< ForwardLimits >
< MaxSpeed > 3200 < / MaxSpeed >
< MaxAcceleration > 100 < / MaxAcceleration >
< MaxDeceleration > 200 < / MaxDeceleration >
< BrakeDuration > 2000 < / BrakeDuration >
< StartingSpeed > 0 < / StartingSpeed >
< / ForwardLimits >
< ReverseLimits >
< MaxSpeed > 3200 < / MaxSpeed >
< MaxAcceleration > 100 < / MaxAcceleration >
< MaxDeceleration > 200 < / MaxDeceleration >
< BrakeDuration > 2000 < / BrakeDuration >
< StartingSpeed > 0 < / StartingSpeed >
< / ReverseLimits >
<!--Paramètres avancés-->
< PulsePeriod Min = « 9 » Max = « 100 » / >
< RcTimeout > 500 < / RcTimeout >
< ConsecGoodPulses > 2 < / ConsecGoodPulses >
< VinMultiplierOffset > 0 < / VinMultiplierOffset >
< / SmcSettings >
*/
Et voici le profil du Contrôleur de moteur Pololu Jrk 12v12 USB avec vos commentaires:
INITIALISÉE 0INPUT_MODE SÉRIE
INPUT_MINIMUM 0
INPUT_MAXIMUM 4095
OUTPUT_MINIMUM 0
OUTPUT_NEUTRAL 2048
OUTPUT_MAXIMUM 4095
INPUT_INVERT 0
INPUT_SCALING_DEGREE 0
0
INPUT_ANALOG_SAMPLES_EXPONENT 5
INPUT_DISCONNECT_MINIMUM 0
INPUT_DISCONNECT_MAXIMUM 4095
INPUT_NEUTRAL_MAXIMUM 2049
INPUT_NEUTRAL_MINIMUM 2046
SERIAL_MODE UART_FIXED_BAUD_RATE
SERIAL_FIXED_BAUD_RATE 9600
SERIAL_TIMEOUT 2
SERIAL_ENABLE_CRC 0
SERIAL_NEVER_SUSPEND 0
SERIAL_DEVICE_NUMBER 11
FEEDBACK_MODE ANALOGIQUE
FEEDBACK_MINIMUM 1450
FEEDBACK_MAXIMUM 3880
FEEDBACK_INVERT 0
1
FEEDBACK_DEAD_ZONE 12
FEEDBACK_ANALOG_SAMPLES_EXPONENT 4
FEEDBACK_DISCONNECT_MINIMUM 40
FEEDBACK_DISCONNECT_MAXIMUM 3900
PROPORTIONAL_MULTIPLIER 35
PROPORTIONAL_EXPONENT 0
INTEGRAL_MULTIPLIER 0
INTEGRAL_EXPONENT 0
DERIVATIVE_MULTIPLIER 60
DERIVATIVE_EXPONENT 0
PID_PERIOD 10
PID_INTEGRAL_LIMIT 1000
PID_RESET_INTEGRAL 1
MOTOR_PWM_FREQUENCY 0
MOTOR_INVERT 1
MOTOR_MAX_DUTY_CYCLE_WHILE_FEEDBACK_OUT_OF_RANGE 600
MOTOR_MAX_ACCELERATION_FORWARD 600
MOTOR_MAX_ACCELERATION_REVERSE 600
MOTOR_MAX_DUTY_CYCLE_FORWARD 600
MOTOR_MAX_DUTY_CYCLE_REVERSE 600
MOTOR_MAX_CURRENT_FORWARD 0
MOTOR_MAX_CURRENT_REVERSE 0
MOTOR_CURRENT_CALIBRATION_FORWARD 37
MOTOR_CURRENT_CALIBRATION_REVERSE 37
MOTOR_BRAKE_DURATION_FORWARD 0
MOTOR_BRAKE_DURATION_REVERSE 0
MOTOR_COAST_WHEN_OFF 1
ERROR_ENABLE 102
98 ERROR_LATCH
*/