EXIT
New member
Всем доброго времени суток.
Я хочу сделать контроллер для точечной сварки, собственно задумка такая, Nodemcu v3 будет управлять оптосимистором MOC3061, по нажатию кнопки MOC открывается на заданное переменным резистором время.
Я программист так себе, пробовал писать самостоятельно, но что то не втыкаю совсем как работает сам код, сейчас сделал скетчь в ARDUBlock, все ровно не работает.
Пока не подключаю отптопару а поставил обычный светодиод на 3V через резистор на 250 Ом, собственно ничего не работает как надо, диод светится после нескольких нажатий на кнопку и не гаснет.
Код представил ниже, это тот что я собрал в ArduBlock.
Схему с распиновкой прикрепил, светодиод это условно оптопара.
Мощностью оптопары я не буду управлять, мне нужно что бы она открывалась максимально.
Пожалуйста подскажите мне где я ошибаюсь.
long Time = 0;
long SW = 0;
long TR = 0;
void time() {
Time = analogRead(A0);
Time = map(Time, 0, 1023, 0, 10);
}
void setup() {
pinMode(5, INPUT_PULLUP);
}
void loop() {
if (digitalRead(5) == 0) {
SW = 1;
TR = Time;
}
if (SW == 1) {
TR = TR - 1;
pinMode(13, OUTPUT);
digitalWrite(13, 1);
if (TR == 0) {
TR = 0;
SW = 0;
}
if (SW == 0) {
pinMode(13, OUTPUT);
digitalWrite(13, 0);
}
}
}
Я хочу сделать контроллер для точечной сварки, собственно задумка такая, Nodemcu v3 будет управлять оптосимистором MOC3061, по нажатию кнопки MOC открывается на заданное переменным резистором время.
Я программист так себе, пробовал писать самостоятельно, но что то не втыкаю совсем как работает сам код, сейчас сделал скетчь в ARDUBlock, все ровно не работает.
Пока не подключаю отптопару а поставил обычный светодиод на 3V через резистор на 250 Ом, собственно ничего не работает как надо, диод светится после нескольких нажатий на кнопку и не гаснет.
Код представил ниже, это тот что я собрал в ArduBlock.
Схему с распиновкой прикрепил, светодиод это условно оптопара.
Мощностью оптопары я не буду управлять, мне нужно что бы она открывалась максимально.
Пожалуйста подскажите мне где я ошибаюсь.
long Time = 0;
long SW = 0;
long TR = 0;
void time() {
Time = analogRead(A0);
Time = map(Time, 0, 1023, 0, 10);
}
void setup() {
pinMode(5, INPUT_PULLUP);
}
void loop() {
if (digitalRead(5) == 0) {
SW = 1;
TR = Time;
}
if (SW == 1) {
TR = TR - 1;
pinMode(13, OUTPUT);
digitalWrite(13, 1);
if (TR == 0) {
TR = 0;
SW = 0;
}
if (SW == 0) {
pinMode(13, OUTPUT);
digitalWrite(13, 0);
}
}
}
Вложения
-
61.6 KB Просмотры: 12