Ответы в темах
-
АвторЗаписи
-
alsergeevich
УчастникПосмотрел, другие программы этот порт не используют. Дело в том, что всё работало и потом просто отвалилось и никак не могу запустить теперь всё это дело. TCPView показывает, что процесс запускается с портом 10000 и тут же закрывается.
alsergeevich
УчастникС ОРС от Инсат рапидскада, что-то очень тяжко заводится, у меня так и не получилось, с другими работает, а с этим конкретно не хочет.
alsergeevich
УчастникТеперь вообще всё отвалилось, хотел продемонстрировать и сделать скрины, но не могу зайти в веб форму, пишет сервер не доступен, хотя всё работало, но само сабой отвалилось. В окне сервера показывает, что он раблтает, иконка крутится, но коммуникатор его не видит и веб форма утверждает, что он не доступен, перезапуски, перезагрузки никак не помогают. Уже и антивирус на всякий отключил, но всё также не работает.
alsergeevich
УчастникДа, переключил. По разному пробовал, но всё равно выскакивает окошко с полем для ввода значения. После всех изменений перезагружал сервер, коммуникатор, перезаходил на веб страницу. Всё равно, нажимаю на команду в таблице или кнопку в графике, вылазит окошко с полем для ввода значения и выбором типа команды.
alsergeevich
УчастникНе работает, всё равно запрашивает, значение. Отличается только тем, что введя 00FF другие значения больше не принимает.
alsergeevich
УчастникВообще самое нормальное будет сделать как отдельный компонент в графическом редакторе, кнопку, в свойствах которой задавать, команду и настройку этой команды, а также задание команды при нажатии и при отжатии. Столько проблем и вопросов уйдёт сразу. Да и упростится создание схем.
alsergeevich
УчастникА подскажите, если у меня бинарная команда и значение в 16-ричном виде в формулу как это значение ввести ? Создать функцию или просто написать значение, например 00FF ?
alsergeevich
УчастникВсё понял с формулами, спасибо. С отправляемыми значениями разобрался, ноль впереди забывал добавить. Всё работает, спасибо за помощь.
Вот ссылка на рабочий шаблон для МДВВ:шаблон МДВВ
Команды с 1 по 8 управляют выходами с 1 по 8, тип команды бинарная 16-ричные данные.
Команда 9 управляет выходами по маске, тип команды бинарная 16-ричные данные.
Ещё раз всем спасибо за помощь.alsergeevich
УчастникДобавил в шаблон строку
<Cmd tableType=»HoldingRegisters» multiple=»true» address=»0″ elemCnt=»1″ cmdNum=»2″ name=»on_out_1″ />
Теперь могу управлять отдельно выходом 1, но вот незадача, максимум число, которое, могу отправить 00ff, а это 255 и соответственно выход 1 работает в режиме шим т.е клацает, как мне отправить десятичную 1000 или в шеснадцатиричном виде 3Е8 ? Просто на изменение первых двух цифр никакой реакции т.е на число 03Е8 никакой реакции.alsergeevich
УчастникЗаработало, наконец-то. Сам не знаю почему, но заработало.
Зашёл в шаблон и поменял адрес на 50 регистра для команды.
Теперь отправляются такие данные 10 10 00 32 00 01 02 00 02 E3 D3
Расшифровка:
10 Slave address 0x10 (16)
10 Function code 0x10 (16) — Write Multiple Registers
00 32 Starting address 0x0033 (51)
00 01 Quantity 0x0001 (1)
02 Byte count 0x02 (2)
00 02 Registers value 0x0002 (2)
E3 D3 CRC 0xE3D3 (58323)Думаю ошибка пошла из этой строки:
00 32 Starting address 0x0033 (51)
а конкретно отсюда Starting address 0x0033 (51) я думал, что он пишет в 51 адрес т.е не правильно смотрел, смотреть надо было на это значение 00 32 это и есть Starting address, а не 0x0033 (51), что и сбило меня с толку.
Короче разобрался, фух.
Но вопрос куда вставлять код на С# для функции актуален.alsergeevich
УчастникПо шагам:
1.Зайти в каналы управления.
2.Поставить галочку Использовать формулу.
3.В графе Формула написать iRevers(1) или нет ?
Так ?
Куда вставить тело самой функции, никак не соображу, в доках по формулам пять строк написано, что записываются ввиде математических выражений. А куда код на С# вставлять ?
Скрин Так ?alsergeevich
УчастникС формулами вопрос, а куда вставлять тело функции ? Где она создаётся ?
alsergeevich
УчастникОтправляю бинарную команду со значением 0011
Отправляются такие данные:
10 10 00 31 00 01 02 00 11 A2 2D10 Slave address 0x10 (16)
10 Function code 0x10 (16) — Write Multiple Registers
00 31 Starting address 0x0032 (50)
00 01 Quantity 0x0001 (1)
02 Byte count 0x02 (2)
00 11 Registers value 0x0011 (17)
A2 2D CRC 0xA22D (41517)Но опять пишет:
Отправка (11): 10 10 00 31 00 01 02 00 11 A2 2D
Приём (5/5): 10 90 02 9D C4
Ошибка устройства: [02] ILLEGAL DATA ADDRESS!Отправляю номер команды 1 как в шаблоне, значение 0х0011.
Команда на запись 0х10 как в доках, запись в регистры, всё верно.
Адрес регистра 50, маска выходов, как в доках.
Почему выскакивает эта Ошибка устройства: [02] ILLEGAL DATA ADDRESS!, какой адрес не верный или данные по адресу ?alsergeevich
Участник2017-02-15 17:41:43 Команда КП 61 «mymodbustest», тип: KpModbus, адрес: 16
Команда «on_out»
Отправка (11): 10 10 00 31 00 01 02 00 00 62 21
Приём (5/5): 10 90 02 9D C4
Ошибка устройства: [02] ILLEGAL DATA ADDRESS!
Теперь с адресом, что-то не так ? -
АвторЗаписи