На моем компьютере работает брокер mqtt, и я могу подключиться к нему с помощью twincat.Я переместил брокера mqtt на сервер в той же сети.
Я могу подключиться к нему с помощью Node-RED (поэтому имя хоста, хост-порт, имя пользователя и пароль должны быть правильными), но TwinCAT не подключается к нему.Это код, который я использую для подключения к моему MQTT-брокеру.
Мои переменные:
fbMqttClient : FB_IotMqttClient; // MQTT client
bSetParameter : BOOL := TRUE; // set parameters once at start up
bConnect : BOOL := TRUE; // if TRUE it will trigger MQTT client cyclically
Мой код:
// set parameters once when connecting to the mqtt broker
IF bSetParameter THEN
bSetParameter := FALSE;
fbMqttClient.sHostName := '172.16.1.51';
fbMqttClient.nHostPort := 1883;
fbMqttClient.sTopicPrefix := '';
fbMqttClient.sUserName := 'User';
fbMqttClient.sUserPassword := 'TopSecret';
fbMqttClient.ipMessageQueue := fbMessageQueue;
END_IF
// MQTT client must be triggered cyclically
fbMqttClient.Execute(bConnect);
Я ожидаю подключениямежду моим брокером и TwinCAT.Вместо этого у меня нет соединения, и я получаю эти данные от fbMqttClient:
bError = FALSE <br>
hrErrorCode = 16#00000001 <br>
eConnectionState = MQTT_ERR_NO_CONN
Я надеюсь, что кто-то может помочь мне выяснить, в чем проблема и как решить эту проблему.