Строка ответа в Modbus RTU PHP пуста - PullRequest
0 голосов
/ 30 сентября 2019

https://github.com/toggio/PhpSerialModbus

Мы используем вышеуказанный API для чтения данных из ПЛК.

  1. Мы можем Инициализировать & Открыть порт и отправить запрос, но мы получаем NULL ответ.

  2. Наконец, и в отчаянии напрямуюпередавая следующий запрос, где мы пытаемся прочитать удерживающий регистр 4237

$modbus->sendQuery(1,3,"108D",1); 

(верно ли запрос?) Тем не менее, ответ нулевой.

Мы пришли к следующей точке останова, которая, как мы обнаружили, не выполнялась:
// Read serial port buffer (with three seconds timeout) 
$responseString='';
while( ($byte = $this->serial->ReadPort()) && ((microtime(true)-$startTime)<3.0)) 
    {
        $byte = $this->serial->ReadPort();
        $responseString=$responseString.$byte;
        sleep(3);
}

$ responseString равен NULL.

...