Стартовая страница › Форумы › Взаимодействие с устройствами › Modbus › Привязка каналов к устройствам
- В этой теме 69 ответов, 6 участников, последнее обновление 1 год, 3 месяца назад сделано
Andrey65.
-
АвторЗаписи
-
21.03.2025 в 08:18 #37407
Andrey65
УчастникДоброе время суток!
Прошу помощи. Создал устройства, каналы, линии связи, представления. Данные по модбасу идут.
https://i.ibb.co/20jZwsFb/29.png
https://i.ibb.co/2pjR4rs/30.png
https://i.ibb.co/XfKvwb1t/31.png
https://i.ibb.co/kgph21WW/32.png
https://i.ibb.co/4wyxXLCD/33.png
Вот скрины приложил, не могу привязать каналы к устройствам, что я не так делаю? Видимо в табличном представлении текущих данных поэтому тоже нет?
https://i.ibb.co/8LpCKR2V/34.png21.03.2025 в 08:33 #37408
manjey73УчастникУберите длину данных. Эта длина создает массив каналов, а не количество байт ответа.
Чтобы использовать массив каналов, надо чтобы и драйвер передавал как массив, что Modbus драйвер не делает, так как передает вам по факту в double.21.03.2025 в 09:34 #37415Andrey65
УчастникСпасибо, сразу привязались, кто бы мог подумать. А я 2 дня вокруг этого крутился. Ну вообще русским языком написано: длинна данных. Теперь еще вопрос, как прописать формулу. Мне надо вх данные в одном датчике разделить на 100 или умножить на 0.01. Короче сдвинуть запятую. И почему в устройствах и в таблице браузера показания одного датчика выглядят по разному?
https://i.ibb.co/qMKrYh60/35.png
https://i.ibb.co/bfPm7cH/36.png21.03.2025 в 09:41 #37416Andrey65
УчастникА со второго датчика передается как есть все нормально
https://i.ibb.co/7FhKkBJ/37.png21.03.2025 в 11:06 #37422
a80808УчастникВ канале в графе «Формула» напишите Cnl/100 (регистр важен!). Поставьте галочку «Использовать формулу» если сама не поставилась. Передать конфигурацию, достаточно перезагрузить только сервер
21.03.2025 в 11:35 #37427
manjey73УчастникПотому что в разных устройствах вероятно разный формат. Там где сразу, предположу, что float.
Длина данных в Канале это сколько каналов создать. Длина значения любого канала всегда 8 байт. По умолчанию формат double (можно не выбирать).
По факту в БД все значения 8 байт в Double. В остальных случаях происходят преобразования.
Если вас не устраивают, делаете и(или) используете формулы.Например для перевода времени в БД его надо привести к double при помощи ToOADate()
ну и с остальным в том же духе…21.03.2025 в 12:47 #37431
MikhailМодераторДобрый день!
Чтобы не ошибиться при создании каналов, их лучше создавать мастером, а затем донастраивать формат отображения.24.03.2025 в 06:20 #37446Andrey65
УчастникЗдравствуйте!
Сделал как указали выше с формулой, получилось, спасибо помогло, теперь в таблице отображается корректно.
https://i.ibb.co/S1XNb7n/38.png
Но как то странно, все каналы в скаде в double т.е. 8 байт-64 бита, так мне объяснили. Овен отправляет float, это 4 байта-32 бита, в формате IEEE 754, это немного другая кодировка, меньшее количество бит в мантиссе и в экспоненте. Там еще байты переставлены. Тем не менее данные выводятся правильно. Второй прибор датчик SHT20 Modbus RS485, в нем вообще под температуру 2 байта в ячейках. И тоже сейчас выводится правильно. Где то в недрах кода скады это все распознается и перекодируется для правильного вывода?
http://www.softelectro.ru/ieee754.html24.03.2025 в 07:03 #37447
manjey73УчастникДа, вы поняли совершенно верно. Все конвертируется в double ядром Scada.
Потому что БД обычная и не может иметь разные типы ячеек.25.03.2025 в 05:03 #37477Andrey65
УчастникБД это СУБД или что другое?
25.03.2025 в 06:55 #37479
manjey73УчастникДа, встроенная в scada. Ее таблицы вы видите в Администраторе по сути.
25.03.2025 в 06:56 #37480
manjey73УчастникВы можете перенастроить на Postrge вроде полностью всю систему.
27.03.2025 в 05:51 #37499Andrey65
УчастникДоброе время суток!
В предыдущем проекте передача данных шли по UDP, соответствующим образом настраивалась линия связи. Теперь пытаюсь создать другой проект с теми же датчиками но данные должны идти через сом порт и преобразователь протокола Болид С2000 Ethernet. При добавлении типа устройства выбрал Болид С2000. Появляются какие то аварийные сообщения.
С такой линией связи проект возможен? С другими скадами такая схема вполне работоспособна.
https://i.ibb.co/qLhcghcC/39.png
https://i.ibb.co/XqZ61t3/40.png
https://i.ibb.co/39jx2ZB4/41.png
https://i.ibb.co/s4sq73r/43.png-
Ответ изменён 1 год, 3 месяца назад пользователем
Andrey65.
27.03.2025 в 06:10 #37501
manjey73УчастникУстройство Болид С2000 каким то образом связаны с вашим датчиком?
Это другое.27.03.2025 в 06:11 #37502
manjey73УчастникУ вас устройство Modbus а не С2000
-
Ответ изменён 1 год, 3 месяца назад пользователем
-
АвторЗаписи
- Для ответа в этой теме необходимо авторизоваться.