Messa in campo 4 file - 26/06/2020 Francia
Dependencies: mbed X_NUCLEO_IHM03A1_for
Fork of FORIGO_Modula_V7_3_VdcStep_maggio2020 by
Diff: main.cpp
- Revision:
- 32:cfc3d7420fa5
- Parent:
- 31:92a9e183be8e
- Child:
- 33:81b406a911b6
--- a/main.cpp Fri May 24 10:29:09 2019 +0000 +++ b/main.cpp Thu Jun 20 07:56:35 2019 +0000 @@ -1168,58 +1168,62 @@ if (tractorSpeed_MtS_timed <= 0.01f){ if (rxMsg.id==RX_Configure) { uint8_t flags = rxMsg.data[0]; - uint16_t steps = (uint32_t) rxMsg.data[2]*0x00000100; - steps = steps + ((uint32_t)rxMsg.data[1]); - TBmotorSteps =steps; - //pc.printf("pippo; %d",steps); - //stepSetting(); - cellsCountSet = rxMsg.data[3]; - if ((flags&0x01)==0x01) { - if (encoder==false) { - encoder=true; - speedFromPick=0; - DcEncoder.rise(NULL); - dcSetting(); + if ((flags&0x80)==0x80) { // comando taglianylon + tagliaNylonAttivo=true; + } else { + tagliaNylonAttivo=false; + uint16_t steps = (uint32_t) rxMsg.data[2]*0x00000100; + steps = steps + ((uint32_t)rxMsg.data[1]); + TBmotorSteps =steps; + //stepSetting(); + cellsCountSet = rxMsg.data[3]; + if ((flags&0x01)==0x01) { + if (encoder==false) { + encoder=true; + speedFromPick=0; + DcEncoder.rise(NULL); + dcSetting(); + } + } else { + if (encoder==true) { + encoder=false; + speedFromPick=1; + DcEncoder.rise(NULL); + dcSetting(); + } } - } else { - if (encoder==true) { - encoder=false; - speedFromPick=1; - DcEncoder.rise(NULL); - dcSetting(); + if ((flags&0x02)==0x02) { + tankLevelEnable=true; + } else { + tankLevelEnable=false; + } + if ((flags&0x04)==0x04) { + seedSensorEnable=true; + } else { + seedSensorEnable=false; + } + if ((flags&0x08)==0x08) { + drumSelect=true; // usare per selezione del tamburo =0 meccanico =1 PNEUMATICO + } else { + drumSelect=false; // forzato a true per Germania } - } - if ((flags&0x02)==0x02) { - tankLevelEnable=true; - } else { - tankLevelEnable=false; + if ((flags&0x10)==0x10) { + canDataCheckEnable=true; + } else { + canDataCheckEnable=false; + } + if ((flags&0x20)==0x20) { + tamburoStandard=1; + } else { + tamburoStandard=0; + } + if ((flags&0x40)==0x40) { + currentCheckEnable=true; + } else { + currentCheckEnable=false; + } + aggiornaParametri(); } - if ((flags&0x04)==0x04) { - seedSensorEnable=true; - } else { - seedSensorEnable=false; - } - if ((flags&0x08)==0x08) { - drumSelect=true; // usare per selezione del tamburo =0 meccanico =1 PNEUMATICO - } else { - drumSelect=false; // forzato a true per Germania - } - if ((flags&0x10)==0x10) { - canDataCheckEnable=true; - } else { - canDataCheckEnable=false; - } - if ((flags&0x20)==0x20) { - tamburoStandard=1; - } else { - tamburoStandard=0; - } - if ((flags&0x40)==0x40) { - currentCheckEnable=true; - } else { - currentCheckEnable=false; - } - aggiornaParametri(); } } } @@ -2117,9 +2121,8 @@ // calcola velocità trattore if(enableSpeed>=2) { if ((pulseSpeedInterval>=0.0f)) { //minIntervalPulse)&&(pulseSpeedInterval<maxInterval)){ + // todo: separare il controllo su speedfrommaster per attivarlo solo sullo slave if((quincCnt<3)||(speedFromMaster==0.0f)||(enableSimula==1)) { - //TODO: limite inferiore e superiore per non modificare la velocità selezionata - // serve un timer a 5 secondi dopo l'avviamento che fa partire il controllo tractorSpeed_MtS_timed = ((pulseDistance / pulseSpeedInterval)); // tractor speed (unit= Mt/S) from pulse time interval if (delaySpeedCheck.read()>=5.0f){ if ((tractorSpeed_MtS_timed<=(oldLocalTractorSpeed+hiLimitSpeed))&&(tractorSpeed_MtS_timed>=(oldLocalTractorSpeed-loLimitSpeed))){