Управление реле по WiFi

Тема в разделе "Iskra JS, Espruino, Йодо", создана пользователем Simon, 3 янв 2020.

  1. Simon

    Simon Нерд

    Здравствуйте, товарищи. Я изучаю JavaScript недавно и у меня как и у всех новичков возникла проблема. Я
    не могу сделать так, чтобы после нажатия на кнопку в web сервере, реле включалось на несколько секунд и выключалось. Помогите пожалуйста. Не понимаю как работают задержки. Вот код:
    Код (Javascript):
    var sdCard = require('@amperka/card-reader').connect(P8);
    var relay = require('@amperka/relay').connect(P12);
    var server = require('@amperka/server').create();
    var SSID = 'Сеть';
    var PASSWORD = 'Пароль';
    server.on('/', function(req, res) {
      var content = sdCard.readFile('DoorControl.html');
      res.send(content);
    });
    server.on('/turnOn', function() {
      relay.turnOn();
    });
    server.on('/turnOff', function() {
      relay.turnOff();
    });
    var wifi = require('@amperka/wifi').setup(function(err) {
      wifi.connect(SSID, PASSWORD, function(err) {
        wifi.getIP(function(err, ip) {
          server.listen();
          print('Relay control is ready! http://'+ip+'/');
        });
      });
    });
     
     
  2. Vladimir_78

    Vladimir_78 Нерд

    Кода задержки в JS нет.
    Код (Javascript):
    server.on('/turnOn', function() {
      relay.turnOn();
      setTimeout(relay.turnOff, 5000); // выключить через 5 сек.
    });