Messa in campo 4 file - 26/06/2020 Francia

Dependencies:   mbed X_NUCLEO_IHM03A1_for

Fork of FORIGO_Modula_V7_3_VdcStep_maggio2020 by Francesco Pistone

Committer:
nerit
Date:
Mon Jul 20 09:06:29 2020 +0000
Revision:
45:162116db828a
Parent:
31:92a9e183be8e
versione di prova per verifica accelerazione tamburo

Who changed what in which revision?

UserRevisionLine numberNew contents of line
nerit 3:a469bbd294b5 1 /* Variables -----------------------------------------------------------------*/
nerit 3:a469bbd294b5 2
nerit 3:a469bbd294b5 3 /* Initialization parameters of the motor connected to the expansion board. */
nerit 3:a469bbd294b5 4 /* Voltage mode. */
nerit 3:a469bbd294b5 5 powerstep01_init_u_t init =
nerit 3:a469bbd294b5 6 {
nerit 3:a469bbd294b5 7 /* common parameters */
nerit 17:9629eb019892 8 .cm.cp.cmVmSelection = POWERSTEP01_CM_VM_CURRENT, // enum powerstep01_CmVm_t
nerit 17:9629eb019892 9 //.cm.cp.cmVmSelection = POWERSTEP01_CM_VM_VOLTAGE, // enum powerstep01_CmVm_t
nerit 31:92a9e183be8e 10 500, // Acceleration rate in step/s2, range 14.55 to 59590 steps/s^2 582
nerit 31:92a9e183be8e 11 500, // Deceleration rate in step/s2, range 14.55 to 59590 steps/s^2 582
nerit 28:0534c86365ec 12 122.00, // Maximum speed in step/s, range 15.25 to 15610 steps/s 488 92.45 180.45
nerit 3:a469bbd294b5 13 1.0, // Minimum speed in step/s, range 0 to 976.3 steps/s
nerit 3:a469bbd294b5 14 POWERSTEP01_LSPD_OPT_ON, // Low speed optimization bit, enum powerstep01_LspdOpt_t
nerit 3:a469bbd294b5 15 15624.00, // Full step speed in step/s, range 7.63 to 15625 steps/s 244.16
nerit 3:a469bbd294b5 16 POWERSTEP01_BOOST_MODE_OFF, // Boost of the amplitude square wave, enum powerstep01_BoostMode_t
nerit 17:9629eb019892 17 968.75, // Overcurrent threshold settings via enum powerstep01_OcdTh_t 281.25
nerit 3:a469bbd294b5 18 STEP_MODE_1_8, // Step mode settings via enum motorStepMode_t
nerit 3:a469bbd294b5 19 POWERSTEP01_SYNC_SEL_DISABLED, // Synch. Mode settings via enum powerstep01_SyncSel_t
nerit 3:a469bbd294b5 20 (POWERSTEP01_ALARM_EN_OVERCURRENT|
nerit 3:a469bbd294b5 21 POWERSTEP01_ALARM_EN_THERMAL_SHUTDOWN|
nerit 3:a469bbd294b5 22 POWERSTEP01_ALARM_EN_THERMAL_WARNING|
nerit 3:a469bbd294b5 23 POWERSTEP01_ALARM_EN_UVLO|
nerit 3:a469bbd294b5 24 POWERSTEP01_ALARM_EN_STALL_DETECTION|
nerit 3:a469bbd294b5 25 POWERSTEP01_ALARM_EN_SW_TURN_ON|
nerit 3:a469bbd294b5 26 POWERSTEP01_ALARM_EN_WRONG_NPERF_CMD), // Alarm settings via bitmap enum powerstep01_AlarmEn_t
nerit 3:a469bbd294b5 27 POWERSTEP01_IGATE_64mA, // Gate sink/source current via enum powerstep01_Igate_t 64
nerit 3:a469bbd294b5 28 POWERSTEP01_TBOOST_0ns, // Duration of the overboost phase during gate turn-off via enum powerstep01_Tboost_t
nerit 3:a469bbd294b5 29 POWERSTEP01_TCC_500ns, // Controlled current time via enum powerstep01_Tcc_t 500
nerit 3:a469bbd294b5 30 POWERSTEP01_WD_EN_DISABLE, // External clock watchdog, enum powerstep01_WdEn_t
nerit 3:a469bbd294b5 31 POWERSTEP01_TBLANK_375ns, // Duration of the blanking time via enum powerstep01_TBlank_t 375
nerit 3:a469bbd294b5 32 POWERSTEP01_TDT_125ns, // Duration of the dead time via enum powerstep01_Tdt_t 125
nerit 18:7c978f69cc51 33 #if defined(provaStepper)
nerit 18:7c978f69cc51 34 93.60, // KVAL Hold torque in mV, range from 0.0mV to 0.996 mV
nerit 18:7c978f69cc51 35 233.00, // KVAL RUN torque in mV, range from 0.0mV to 0.996 mV
nerit 18:7c978f69cc51 36 233.00, // KVAL ACC torque in mV, range from 0.0mV to 0.996 mV
nerit 18:7c978f69cc51 37 233.00, // KVAL DEC torque in mV, range from 0.0mV to 0.996 mV
nerit 18:7c978f69cc51 38 #else
nerit 18:7c978f69cc51 39 93.60, // KVAL Hold torque in mV, range from 0.0mV to 0.996 mV
nerit 18:7c978f69cc51 40 273.00, // KVAL RUN torque in mV, range from 0.0mV to 0.996 mV
nerit 18:7c978f69cc51 41 273.00, // KVAL ACC torque in mV, range from 0.0mV to 0.996 mV
nerit 18:7c978f69cc51 42 273.00, // KVAL DEC torque in mV, range from 0.0mV to 0.996 mV
nerit 18:7c978f69cc51 43 #endif
nerit 17:9629eb019892 44 POWERSTEP01_TOFF_FAST_28us, //Maximum fast decay time , enum powerstep01_ToffFast_t 8
nerit 17:9629eb019892 45 POWERSTEP01_FAST_STEP_28us, //Maximum fall step time , enum powerstep01_FastStep_t 12
nerit 3:a469bbd294b5 46 3.0, // Minimum on-time in us, range 0.5us to 64us 3.0
nerit 3:a469bbd294b5 47 20.5, // Minimum off-time in us, range 0.5us to 64us 21.0
nerit 3:a469bbd294b5 48 POWERSTEP01_CONFIG_INT_16MHZ_OSCOUT_2MHZ, // Clock setting , enum powerstep01_ConfigOscMgmt_t
nerit 3:a469bbd294b5 49 POWERSTEP01_CONFIG_SW_HARD_STOP, // External switch hard stop interrupt mode, enum powerstep01_ConfigSwMode_t
nerit 3:a469bbd294b5 50 POWERSTEP01_CONFIG_TQ_REG_TVAL_USED, // External torque regulation enabling , enum powerstep01_ConfigEnTqReg_t
nerit 3:a469bbd294b5 51 POWERSTEP01_CONFIG_VS_COMP_ENABLE, // Motor Supply Voltage Compensation enabling , enum powerstep01_ConfigEnVscomp_t
nerit 6:e8c18f0f399a 52 POWERSTEP01_CONFIG_OC_SD_DISABLE, // Over current shutwdown enabling, enum powerstep01_ConfigOcSd_t
nerit 3:a469bbd294b5 53 POWERSTEP01_CONFIG_UVLOVAL_LOW, // UVLO Threshold via powerstep01_ConfigUvLoVal_t
nerit 3:a469bbd294b5 54 POWERSTEP01_CONFIG_VCCVAL_7_5V, // VCC Val, enum powerstep01_ConfigVccVal_t
nerit 18:7c978f69cc51 55 POWERSTEP01_CONFIG_TSW_124us, // Switching period, enum powerstep01_ConfigTsw_t 048
nerit 3:a469bbd294b5 56 POWERSTEP01_CONFIG_PRED_ENABLE // Predictive current enabling , enum powerstep01_ConfigPredEn_t
nerit 3:a469bbd294b5 57 };
nerit 3:a469bbd294b5 58 /* Motor Control Component. */
nerit 3:a469bbd294b5 59 PowerStep01 *motor;