Deine Qualitätsabteilung meldet sich noch mal.
Durch M_Stop(); wird während der Bewegung ein 65 µs Bremsimpuls erzeugt, der möglicherweise Deiner Mechanik schadet.
Oben Brake und unten PWM.
Besser so:
if (druckPosition > (Counter + 1) && Counter < positionM[1]) {
P = 1;
if (millis() - m_Millis >= 1000) {//Pause, um M_Hoch auslaufen zu lassen
dir = 1;
M_Runter();//Druck läßt nach
m_MillisH = millis();
} else {
M_Stop();
}
}
else if (druckPosition < (Counter - 1) && Counter > positionM[0] ) {
P = 2;
if (millis() - m_MillisH >= 1000) {//Pause, um M_Runter auslaufen zu lassen
dir = 0;
M_Hoch();//Druck steigt
m_Millis = millis();
} else {
M_Stop();
}
}
else {
m_Millis = millis();
m_MillisH = millis();
M_Stop();
P = 3;
}
Oder?
