![]() |
|
|
#11 |
|
Senior Member
|
Обновлён. Версия 0.1.5276.20347.
Убрал зависимость от jQuery. Пришлось переделать shell-скрипт, отвечающий за разбор параметров. Размер архива уменьшился почти в 4 раза. Теперь скрипт запроса должен выглядеть вот так: Код:
modbus.OnFailure = function( handle, error ) {
document.getElementById( 'console' ).value += '\nОшибка: ' + error;
}
modbus.OnSuccess = function( handle ) {
document.getElementById( 'console' ).value += '\nRegister( ' + handle + ', 0 ): ' + modbus.Register( handle, 0 );
}
modbus.Serial = {
Name: '/dev/ttyATH0',
BaudRate: EnModbusBaudRate.mbBaudRate9600,
DataBits: EnModbusDataBits.mbDataBits8Bits,
Parity: EnModbusParity.mbParityNone,
StopBits: EnModbusStopBits.mbStopBitsOne,
Timeout: 100
};
// ReadHoldingRegisters( handle, slaveid, address, quantity, updaterate )
// Starting Address: 0x0000 to 0xFFFF.
// Quantity of Inputs: 1 to 125 (0x7D).
modbus.ReadHoldingRegisters( 1, 0, 0, 1, 1000 );
modbus.ReadHoldingRegisters( 2, 0, 1, 1, 950 );
modbus.ReadHoldingRegisters( 3, 0, 2, 1, 750 );
modbus.DelayBetweenPoll = 200;
modbus.UpdateEnable(1);
modbus.UpdateEnable(2);
modbus.UpdateEnable(3);
setTimeout(
function() {
modbus.UpdateDisable(1);
modbus.UpdateDisable(2);
modbus.UpdateDisable(3);
}, 5000 );
Код:
ajax: function( request ) {
var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function() {
if ( this.readyState == 4 && this.status == 200 ) {
request.success( xhr.responseText );
}
};
xhr.open( request.type, request.url, request.async );
xhr.send( JSON.stringify( request.data ) );
},
jQuery я убрал, но добавил json.cgi - это парсер JSON формата. Он позволяет делать разбор принимаемых данных, которые я передаю всегда в json-формате. Довольно удобно и места он занимает не много ~4 Кб. Сейчас я в коде везде использую синхронные запросы, т.к. пока не знаю как решить проблему параллельного запуска скриптов в случае асинхронных post запросов. Минусом является то, что страничка слегка "подтормаживает" при отображении принимаемых данных.
__________________
Россия навсегда! |
|
|
|
| Метки |
| modbus, modbus-rtu, скрипт, модуль |
| Здесь присутствуют: 1 (пользователей: 0 , гостей: 1) | |
|
|