NEWS
Вопросы по написанию скриптов
-
Поделитесь кто то скриптом управления шаговым двигателем или ссылкой на форуме где почитать.
Планирую с MegaESP через драйвер ULN2003.
Спасибо. `
Или посмотрите в сторону прошивки wifi-iot, там шаговый реализован, а с iob можно через mqtt связать. -
А причем тут скрипт? `
Через скрипт нереально?Просто хотелось какой то унификации, и не выделять одно устройство только для двигателя.
Я конечно не программист, но как то не вижу принципиальной разницы ноги будет дергать прошивка, или внешняя прога.
Поправьте если ошибаюсь =)
-
А причем тут скрипт? `
Через скрипт нереально?Просто хотелось какой то унификации, и не выделять одно устройство только для двигателя.
Я конечно не программист, но как то не вижу принципиальной разницы ноги будет дергать прошивка, или внешняя прога.
Поправьте если ошибаюсь =) ` а задержки?
-
а задержки? `
1-2 секунды или больше?Мне же не робота строить, а клапаны, шторы открыть/закрыть.
-
а задержки? `
1-2 секунды или больше?Мне же не робота строить, а клапаны, шторы открыть/закрыть. `
Ага, давай прикинем грубо:Угол одного шага возмем 1.8. Т.е. для одного полного оборота надо 360/1.8 = 200 импульсов.
Если у тебя задержка между импульсами 1-2 сек т.е. 1-0,5 Гц. Дальше продолжать?
Если хочется управлять ШД надо начать с теории.
-
В Log упало сообщение "Спасайся кто может' …......
Нужно включить лампочку по этому сообщению. Как?
Может переменная у loga есть на которую можно оформить подписку? `
надо просто сообщение это не в лог кидать а в переменную -
Не ясно я объяснил

Пример
mysensors.02016-12-09 19:23:06.993 info mysensors.0 Log :TSP:MSG:SEND 0-0-1-1 s=3,c=1,t=2,pt=0,l=1,sg=0,ft=0,st=fail:0
если st=fail звоним в колокола.
в случае st=ok все ок.
Как то так. т.е нужно анализировать служебный Log.
-
Не ясно я объяснил

Пример
mysensors.02016-12-09 19:23:06.993 info mysensors.0 Log :TSP:MSG:SEND 0-0-1-1 s=3,c=1,t=2,pt=0,l=1,sg=0,ft=0,st=fail:0
если st=fail звоним в колокола.
в случае st=ok все ок.
Как то так. т.е нужно анализировать служебный Log. `
что такое st? -
st в логе это предположительно статус передачи команды устройству.
но это не так важно, другой пример
mysensors.0 2016-12-09 19:57:12.613 info disconnected
как организовать реакцию на это сообщение
или на вот такое
megad.0 2016-12-09 19:54:58.765 warn Got error by request to 192.168.2.14: connect EHOSTUNREACH 192.168.2.14:80
-
st в логе это предположительно статус передачи команды устройству.
но это не так важно, другой пример
mysensors.0 2016-12-09 19:57:12.613 info disconnected
как организовать реакцию на это сообщение
или на вот такое
megad.0 2016-12-09 19:54:58.765 warn Got error by request to 192.168.2.14: connect EHOSTUNREACH 192.168.2.14:80 `
ну в таком случае тебе скорее всего надо парсить файл логов используя скрипт и модуль fs -
Спасибо.
Вообщем дело темное :( `
Да темного нету ничего, главное начать и можно разобраться https://nodejs.org/api/fs.html -
Установлен драйвер MySQL.
Данные пишутся во внешнюю БД.
Скрипт
! ` > var mysql = require('mysql');
var connection = mysql.createConnection({
host: '192.168.1.110',
user: 'iobroker',
password: 'iobroker',
database: 'iobroker',
//socketPath: '/var/run/mysqld/mysqld.sock'
});
//создаем подключение к базе
connection.connect(function(err) {
if (err) {
log('error connecting: ' + err.stack);
return;
}
log('connected as id ' + connection.threadId);
}); `
Выдает ошибку:
! javascript.0 script.js.My.sql: Cannot find module '/opt/iobroker/node_modules/iobroker.javascript/node_modules/mysql' at script.js.My.sql:1:13
! javascript.0 script.js.My.sql: TypeError: Cannot read property 'createConnection' of undefined at script.js.My.sql:3:23 -
Установлен драйвер MySQL.
Данные пишутся во внешнюю БД.
Скрипт
! ` > var mysql = require('mysql');
var connection = mysql.createConnection({
host: '192.168.1.110',
user: 'iobroker',
password: 'iobroker',
database: 'iobroker',
//socketPath: '/var/run/mysqld/mysqld.sock'
});
//создаем подключение к базе
connection.connect(function(err) {
if (err) {
log('error connecting: ' + err.stack);
return;
}
log('connected as id ' + connection.threadId);
}); `
Выдает ошибку:
! javascript.0 script.js.My.sql: Cannot find module '/opt/iobroker/node_modules/iobroker.javascript/node_modules/mysql' at script.js.My.sql:1:13
! javascript.0 script.js.My.sql: TypeError: Cannot read property 'createConnection' of undefined at script.js.My.sql:3:23 ` втнастройках js добавь пакет mysql -
Установлен драйвер MySQL.
Данные пишутся во внешнюю БД.
Скрипт
! ` > var mysql = require('mysql');
var connection = mysql.createConnection({
host: '192.168.1.110',
user: 'iobroker',
password: 'iobroker',
database: 'iobroker',
//socketPath: '/var/run/mysqld/mysqld.sock'
});
//создаем подключение к базе
connection.connect(function(err) {
if (err) {
log('error connecting: ' + err.stack);
return;
}
log('connected as id ' + connection.threadId);
}); `
Выдает ошибку:
! javascript.0 script.js.My.sql: Cannot find module '/opt/iobroker/node_modules/iobroker.javascript/node_modules/mysql' at script.js.My.sql:1:13
! javascript.0 script.js.My.sql: TypeError: Cannot read property 'createConnection' of undefined at script.js.My.sql:3:23 `
Во-первых не установлен модуль mysql для js. В настройках драйвера javascript укажите mysql, драйвер сам установит модуль.Во-вторых, проще установить драйвер history, у него в настройках указать параметры доступа к базе, после чего можно запросы выполнить через sendto ('history.0', "select…") ;.
-
Повторю вопрос, так как не могу найти решение:
Есть ли возможность подписаться на открытие(загрузку) web-страницы, созданной в vis?
Другими словами как при открытии определённой страницы (/vis/index.html#mypage) принудительно запустить определённую функцию, созданную в "Скриптах" админки ( на стороне сервера)?
-
Повторю вопрос, так как не могу найти решение:
Есть ли возможность подписаться на открытие(загрузку) web-страницы, созданной в vis?
Другими словами как при открытии определённой страницы (/vis/index.html#mypage) принудительно запустить определённую функцию, созданную в "Скриптах" админки ( на стороне сервера)? `
А jquery не сработает? .ready -
Повторю вопрос, так как не могу найти решение:
Есть ли возможность подписаться на открытие(загрузку) web-страницы, созданной в vis?
Другими словами как при открытии определённой страницы (/vis/index.html#mypage) принудительно запустить определённую функцию, созданную в "Скриптах" админки ( на стороне сервера)? `
При открытии станицы устанавливается 2 состоянияvis.0.control.data на имя страницы и
vis.0.control.command на changedView
Описание здесь: https://github.com/ioBroker/ioBroker.vi … -interface
-
Повторю вопрос, так как не могу найти решение:
Есть ли возможность подписаться на открытие(загрузку) web-страницы, созданной в vis?
Другими словами как при открытии определённой страницы (/vis/index.html#mypage) принудительно запустить определённую функцию, созданную в "Скриптах" админки ( на стороне сервера)?
А jquery не сработает? .ready
А что внутри то писать?
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden