Messa in campo 4 file - 26/06/2020 Francia
Dependencies: mbed X_NUCLEO_IHM03A1_for
Fork of FORIGO_Modula_V7_3_VdcStep_maggio2020 by
parameters.hpp@45:162116db828a, 2020-07-20 (annotated)
- Committer:
- nerit
- Date:
- Mon Jul 20 09:06:29 2020 +0000
- Revision:
- 45:162116db828a
- Parent:
- 39:6814c75dfa5c
versione di prova per verifica accelerazione tamburo
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
nerit | 3:a469bbd294b5 | 1 | // define constants |
nerit | 3:a469bbd294b5 | 2 | const double Pi = 3.141592654f; |
nerit | 13:d1030d4e51a8 | 3 | // l'encoder del DC produce 51 impulsi ogni 2 giri sull'albero lento |
nerit | 13:d1030d4e51a8 | 4 | const double dcPulseTurn = 25.5f; |
nerit | 3:a469bbd294b5 | 5 | |
nerit | 3:a469bbd294b5 | 6 | // define logic UI variables which NEED TO BE SET FROM UI |
nerit | 3:a469bbd294b5 | 7 | // *** speed wheel |
nerit | 3:a469bbd294b5 | 8 | double speedWheelDiameter = 0.300f; // variable for tractor speed calculation (need to be set from UI) ( Unit= meters ) |
nerit | 3:a469bbd294b5 | 9 | double speedWheelPulse = 18.0f; // variable which define the number of pulse each turn of tractor speed wheel (need to be set from UI) |
nerit | 3:a469bbd294b5 | 10 | // *** seeding wheel |
nerit | 3:a469bbd294b5 | 11 | double seedWheelDiameter = 0.75f; // seed wheel diameter setting |
nerit | 17:9629eb019892 | 12 | //double seedWheelMotorSteps = 3200.0f; // seed wheel motor steps without reduction (defined from driver) |
nerit | 3:a469bbd294b5 | 13 | double seedWheelRPM=0.0f; // number of turn per minute of seed wheel |
nerit | 3:a469bbd294b5 | 14 | double seedWhellFrequency=0.0f; // seed wheel frequency which is function of tractor speed |
nerit | 3:a469bbd294b5 | 15 | double seedWheelPeriod=0.0f; // seed wheel pulse period |
nerit | 3:a469bbd294b5 | 16 | |
nerit | 3:a469bbd294b5 | 17 | double deepOfSeed=0.00f; // deep of seeding |
nerit | 3:a469bbd294b5 | 18 | double oldSeedWheelPeriod=0.0f; |
nerit | 8:310f9e4eac7b | 19 | double pickNumber = 8.0f; // numero di becchi installati sulla ruota di semina |
nerit | 5:2a3a64b52f54 | 20 | double cellsNumber = 15.0f; // numero di celle del tamburo |
nerit | 3:a469bbd294b5 | 21 | |
nerit | 30:32e770e91998 | 22 | double TBmotorSteps = 3200.0f; // TB wheel motor steps without reduction (defined from driver) |
nerit | 3:a469bbd294b5 | 23 | //double TBreductionRatio = 1.65625f; // TB mechanical reduction ratio |
nerit | 3:a469bbd294b5 | 24 | #if defined(Zucca) |
nerit | 3:a469bbd294b5 | 25 | double TBreductionRatio = 3.00f; // TB mechanical reduction ratio |
nerit | 3:a469bbd294b5 | 26 | #else |
nerit | 34:eb04f4f41dfd | 27 | double TBreductionRatio = 2.064516; |
nerit | 34:eb04f4f41dfd | 28 | //double TBreductionRatio = 1.65625f; // TB mechanical reduction ratio |
nerit | 3:a469bbd294b5 | 29 | #endif |
nerit | 3:a469bbd294b5 | 30 | double SDreductionRatio =2.5714f; // seed wheel machanical reduction ratio |
nerit | 3:a469bbd294b5 | 31 | double TBdeltaStep = 0.0f; // steps of advance for manage tb motor respect sd motor |
nerit | 3:a469bbd294b5 | 32 | double K_WheelRPM =0.0f; |
nerit | 3:a469bbd294b5 | 33 | double K_WhellFrequency=0.0f; |
nerit | 3:a469bbd294b5 | 34 | double K_TBfrequency = 0.0f; |
nerit | 3:a469bbd294b5 | 35 | double K_percentuale = 0.0f; |
nerit | 3:a469bbd294b5 | 36 | double timeIntraPick = 0.0f; |
nerit | 3:a469bbd294b5 | 37 | double teoryTimeIntraPick = 0.0f; |
nerit | 3:a469bbd294b5 | 38 | double intraPickDistance = 0.0f; |
nerit | 3:a469bbd294b5 | 39 | |
nerit | 38:79af1c65dd6f | 40 | #if defined(runner) |
nerit | 38:79af1c65dd6f | 41 | uint16_t periodoSD = 1000; |
nerit | 38:79af1c65dd6f | 42 | double dcStopDuty = 0.0f; |
nerit | 38:79af1c65dd6f | 43 | double dcMinDuty = 0.0f; // definisce il duty cycle minimo alla partenza (corrisponde alla tensione minima di rotazione) |
nerit | 38:79af1c65dd6f | 44 | double dcMaxDuty = 1.0f; // definisce il duty cycle al massimo della velocità |
nerit | 38:79af1c65dd6f | 45 | //double dcMinSpeed = 0.65f; |
nerit | 38:79af1c65dd6f | 46 | //double dcMaxSpeed = 1.00f; |
nerit | 38:79af1c65dd6f | 47 | //double dcStarting = 0.30f; |
nerit | 38:79af1c65dd6f | 48 | double fixedStepGiroSD = 9000.0f; // numero di suddivisioni angolo giro della ruota di semina |
nerit | 38:79af1c65dd6f | 49 | double minWorkSpeed=0.19f;//0.138888f; //metri al secondo pari a 0,5Kmh |
nerit | 38:79af1c65dd6f | 50 | double maxWorkSpeed=1.277777f; //metri al secondo pari a 4.6Kmh |
nerit | 38:79af1c65dd6f | 51 | //double tabComan[22]={0.25,0.255,0.260,0.265,0.27,0.28,0.3107,0.314,0.34,0.3655,0.391,0.4165,0.4335,0.459,0.51,0.5525,0.595}; |
nerit | 38:79af1c65dd6f | 52 | //double tabSpeed[22]={0.10,0.14,0.19,0.22,0.25,0.28,0.33,0.36,0.41,0.45,0.49,0.55,0.59,0.62,0.75,0.80,0.82}; |
nerit | 38:79af1c65dd6f | 53 | double tabComan[22]={0.12,0.8696,0.8696,0.8696,0.8696,0.8696,0.8696,0.8696,0.8696,0.8696,0.8696,0.8696,0.8696,0.8696,0.8696,0.8696,0.8696}; |
nerit | 38:79af1c65dd6f | 54 | double tabSpeed[22]={0.16,1.587,1.587,1.587,1.587,1.587,1.587,1.587,1.587,1.587,1.587,1.587,1.587,1.587,1.587,1.587,1.587}; |
nerit | 38:79af1c65dd6f | 55 | int tabeling=3; |
nerit | 3:a469bbd294b5 | 56 | |
nerit | 38:79af1c65dd6f | 57 | //double minPosSpeed=0.20f; // metri/secondo (0,20 = 0,72KmH) |
nerit | 38:79af1c65dd6f | 58 | double minSeedSpeed=0.10f; // attiva il LowSpeed mt/s (0,28 = 1,0KmH) |
nerit | 38:79af1c65dd6f | 59 | double speedForCorrection=0.16f; |
nerit | 38:79af1c65dd6f | 60 | int cicliAspettaStart = 2; |
nerit | 38:79af1c65dd6f | 61 | double avvioGradi=5.0f; |
nerit | 38:79af1c65dd6f | 62 | double angoloFase = 3.0f; |
nerit | 38:79af1c65dd6f | 63 | #endif |
nerit | 38:79af1c65dd6f | 64 | |
nerit | 38:79af1c65dd6f | 65 | #if defined(oldStepperDriver) |
nerit | 38:79af1c65dd6f | 66 | uint16_t periodoSD = 1000; |
nerit | 38:79af1c65dd6f | 67 | double dcStopDuty = 0.0f; |
nerit | 38:79af1c65dd6f | 68 | double dcMinDuty = 0.0f; // definisce il duty cycle minimo alla partenza (corrisponde alla tensione minima di rotazione) |
nerit | 38:79af1c65dd6f | 69 | double dcMaxDuty = 1.0f; // definisce il duty cycle al massimo della velocità |
nerit | 38:79af1c65dd6f | 70 | double dcMinSpeed = 0.65f; |
nerit | 38:79af1c65dd6f | 71 | double dcMaxSpeed = 1.00f; |
nerit | 38:79af1c65dd6f | 72 | double dcStarting = 0.30f; |
nerit | 38:79af1c65dd6f | 73 | double fixedStepGiroSD = 9000.0f; // numero di suddivisioni angolo giro della ruota di semina |
nerit | 38:79af1c65dd6f | 74 | double minWorkSpeed=0.14;//pari 1kmh //0.138888f; //metri al secondo pari a 0,5Kmh |
nerit | 38:79af1c65dd6f | 75 | double maxWorkSpeed=1.277777f; //metri al secondo pari a 4.6Kmh |
nerit | 39:6814c75dfa5c | 76 | //double tabComan[22]={0.25,0.255,0.260,0.265,0.27,0.28,0.3107,0.314,0.34,0.3655,0.391,0.4165,0.4335,0.459,0.51,0.5525,0.595}; |
nerit | 39:6814c75dfa5c | 77 | //double tabSpeed[22]={0.10,0.14,0.19,0.22,0.25,0.28,0.33,0.36,0.41,0.45,0.49,0.55,0.59,0.62,0.75,0.80,0.82}; |
nerit | 39:6814c75dfa5c | 78 | double tabComan[22]={0.12,0.8696,0.8696,0.8696,0.8696,0.8696,0.8696,0.8696,0.8696,0.8696,0.8696,0.8696,0.8696,0.8696,0.8696,0.8696,0.8696}; |
nerit | 39:6814c75dfa5c | 79 | double tabSpeed[22]={0.16,1.587,1.587,1.587,1.587,1.587,1.587,1.587,1.587,1.587,1.587,1.587,1.587,1.587,1.587,1.587,1.587}; |
nerit | 39:6814c75dfa5c | 80 | int tabeling=3; |
nerit | 38:79af1c65dd6f | 81 | |
nerit | 38:79af1c65dd6f | 82 | //double minPosSpeed=0.20f; // metri/secondo (0,20 = 0,72KmH) |
nerit | 38:79af1c65dd6f | 83 | double minSeedSpeed=0.22f; // attiva il LowSpeed mt/s (0,28 = 1,0KmH) |
nerit | 38:79af1c65dd6f | 84 | double speedForCorrection=0.25f; |
nerit | 38:79af1c65dd6f | 85 | int cicliAspettaStart = 2; |
nerit | 38:79af1c65dd6f | 86 | double avvioGradi=4.0f; |
nerit | 38:79af1c65dd6f | 87 | double angoloFase = 2.0f; |
nerit | 38:79af1c65dd6f | 88 | #endif |