Просмотр полной версии : Возможно ли передать по порту строку больше чем в 16 символов?
Sergeyi7
01.02.2021, 13:02
Здравствуйте. Мне нужно передать по порту 2 списка из трёхзначных точек для построения графика на пк. Всего точек на один список будет 144. Изначально сделал три строки с точками в общей сумме которых будет 144 и передать их по порту на пк. Передать хотел по созданным переменным в конфигурации плк, но увидел что в таком случае строка будем не на 255 символов а на 16. Единственный способ который мне пришёл в голову это сделать 36 регистров на список и их уже передать. Можно ли передать точки каким нибудь более элегантным и продуманным способом?
Sergeyi7
01.02.2021, 14:52
А можете пожалуйста объяснить как это можно сделать и как лучше? Я так думаю что это делается с помощью библиотеки modbus?
Sergeyi7
01.02.2021, 15:20
Хорошо, большое спасибо за наводку!)
Sergeyi7
01.02.2021, 17:47
А если контроллер всё таки выступает в роли мастера? Какой ещё вариант есть? модбас.либ самый приемлемый будет?
63/73 не умеет работать мастером без библиотеки. Особенность.
Sergeyi7
01.02.2021, 19:31
Да я знаю. У меня плк как мастер смотрит у другого устройства дискретный регистр. Но не знаю как передать с плк-мастера на пк строки, и как то нужно чистить строки на плк. Была идея по команде с пк но на мастер так не получится.
Не совсем понятно, что ТС подразумевает под "трёхзначных точек"...Если у Вас значения числовые, то причем тут строки? "Толкайте" значения точек в Buffer, правильно расставив байты, и засылайте всё это дело Slave'у - MB_WR_REGS, из библиотеки ModBus.lib, Вам в помощь. Здесь (https://owen.ru/forum/showthread.php?t=33400&highlight=Spawn) есть информация, как правильнее организовать обмен.
Powered by vBulletin® Version 4.2.3 Copyright © 2026 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot