Просмотр исходного кода

Read limit switch on Initialize to avoid motor movement if limit switch is already pressed (e.g. due to previous Power Off when switch was pressed)

master
Flo Smilari 4 лет назад
Родитель
Сommit
caa0668907
4 измененных файлов: 11 добавлений и 3 удалений
  1. 5
    2
      Fraestisch_SFTools.ino
  2. 4
    0
      RouterElevator.cpp
  3. 1
    0
      RouterElevator.h
  4. 1
    1
      sloeber.ino.cpp

+ 5
- 2
Fraestisch_SFTools.ino Просмотреть файл

} }


if (isPowerOn && Router_Setup.isToolChangOnPowerOn()) { if (isPowerOn && Router_Setup.isToolChangOnPowerOn()) {
Router_Elevator.readLimitSwitch();
SetActualStatus(TOOL_CHANGE); SetActualStatus(TOOL_CHANGE);
isPowerOn = false; isPowerOn = false;
} else { } else {
RotaryControler.loop(); RotaryControler.loop();
originStatus = TOOL_CHANGE; originStatus = TOOL_CHANGE;
if (intermediateState == 0) { if (intermediateState == 0) {
Router_Elevator.moveToUpperLimitSwitch();
SetActualStatus(MOVING_ELEVATOR);
if (!Router_Elevator.isLimitSwitchTriggerd()) {
Router_Elevator.moveToUpperLimitSwitch();
SetActualStatus(MOVING_ELEVATOR);
}
intermediateState = 1; intermediateState = 1;
} else if (intermediateState == 1) { } else if (intermediateState == 1) {
Router_Elevator.setZeroPosition(); Router_Elevator.setZeroPosition();

+ 4
- 0
RouterElevator.cpp Просмотреть файл

} }
} }
void RouterElevator::readLimitSwitch() {
limitSwitchState = digitalRead(LimitSwitch);
}
void RouterElevator::checkDirection() { void RouterElevator::checkDirection() {
previousDirection = Stepper.getDirectionOfMotion(); previousDirection = Stepper.getDirectionOfMotion();
} }

+ 1
- 0
RouterElevator.h Просмотреть файл

bool isWLSTriggerd(void); bool isWLSTriggerd(void);
bool isTargetPositionReached(void); bool isTargetPositionReached(void);
void limitSwitchHandler(void); void limitSwitchHandler(void);
void readLimitSwitch(void);
void checkDirection(void); void checkDirection(void);
ValueMode getMode() const; ValueMode getMode() const;
void setMode(ValueMode mode); void setMode(ValueMode mode);

+ 1
- 1
sloeber.ino.cpp Просмотреть файл

//This is a automatic generated file //This is a automatic generated file
//Please do not modify this file //Please do not modify this file
//If you touch this file your change will be overwritten during the next build //If you touch this file your change will be overwritten during the next build
//This file has been generated on 2022-03-04 21:14:46
//This file has been generated on 2022-04-15 16:36:20


#include "Arduino.h" #include "Arduino.h"
#include <Arduino.h> #include <Arduino.h>

Загрузка…
Отмена
Сохранить