Полная версия этой страницы:
Danfoss MCX
kosmos440o
26.8.2021, 8:58
Цитата(yozik @ 25.8.2021, 22:02)

А по поводу конвертора.
Если покупать "для дома для семьи" то лучше немного другой
вот такой Т.к. мы получим сразу
ТРИ переходника
USB-UART TTL
UART TTL -RS485
USB-RS485

ПС программа которой будут его проливать со скоростью сама разберется
Для дома для семьи я бы не рекомендовал именно китайский USB-485, хоть там и FTDI-чип хороший. Неизвестно, когда откажет, и это обычно самый нужный момент. 485-й лучше взять что-то типа Меркурий-221 (только не Овен, это пипец). А UART можно и китайский, им не так часто пользуешься, и обычно на слаботочке.
Не надо путать рабочий с "для дома" (читать как на всякий случай)
Для работы с сетями у меня хороший есть.
А такой как у вас в сообщении usb-ttl и такой как в моём сообщении, а так же "чёрный китайский свисток" в нескольких экземплярах валяется в разных местах "шоб було"
(просто у меня по работе много контроллеров с ttl которым любят пароли ставить

ну и что бы не подбирать...)
А ещё у меня преобразователи dc/dc с 5в в 5..30в валяются (от повербанка запитать чего для проверки)
и перемычечьки как у вас в сообщении тоже есть

Примерно как на фото
Cobra3434
26.8.2021, 13:52
Купил я платку от контроллера, я ее вставляю с зади и впаиваю в пустые контакты, потом обычным преобразователем прошиваю его? Или мудрить надо чего?
Нажмите для просмотра прикрепленного файла Нажмите для просмотра прикрепленного файла Нажмите для просмотра прикрепленного файла
Бл...
Это не с этого контроллера плата.
Родная плата со стороны элементов верх ногами стоит вроде бы
надо совпадение ножек проверять по назначению
Сейчас на 08 МСХ гляну
Это она в 08МСХ
Нажмите для просмотра прикрепленного файлаПо этому фото (все со стороны фото)
нижний левый угол горизонтально 3 штырьковый разьем
соеденнен (звонится тестером) с клеммником контроллера RS-485
слева направо GND D+ D-
Вертикальный разьем справа 5 штырьков
Самый нижний соеденен с CAN GND (это тот что у Вас без гнезда)
Так что ваш вариант монтажа платы вроде как правильный.
ПС 06 разобранным я 1 раз видел и давно
kosmos440o
26.8.2021, 17:56
Странно тогда плюса получается нет или его перенесли на 2-ю ногу, где управление потоком было. Ну, попробуйте.
Cobra3434
26.8.2021, 19:23
Запоял, все получилось, осталось дело за программой))
Цитата(mypr @ 18.9.2021, 22:08)

Бэкап для MCX06D можно сделать внутрисхемно программатором не без танцев с бубном и пайки конечно.
Если потребуется сделать обращайтесь tgtu@bk.ru
Вопрос на засыпку
Серийный номер контроллера вы тоже переписываете?
Проверяли?
Т.к. очень много программ (особенно созданных с помощью softblock от Энтерек)
Имеют защиту по серийному номеру.
brabus78
12.10.2021, 22:16
Товарищи! Беда какая-то с подключением к DANFOSS MCX06D (xxx112) по RS-485 MODBUS RTU. Есть несколько контроллеров - ни до одного не достучаться....
В настройках порта в меню контроллера выставлены три параметра: адрес , битность 8N1 и скорость 9600. Подключение к контроллеру выполнено по входным контактам RS-485:D- D+ GND. Согласно документации - это А B GND.
Попытки прочитать из контроллера параметры по MODBUS протоколу безуспешны. Подключался сервером с ПО " а-ля диспетчеризация" через MOXA (виртуальный COM)- безуспешно. Подключался с ноута через преобразователь USB-RS-485 , пробовал найти контроллер на интерфейсе сканерами MODBUS устройств - ничего не находит ... Короче КАПЕЦ.
Буду благодарен любой помощи....
1. Проверить что это действительно контроллер с RS-485.
(Зрительно видно палатку рядом с разъёмом RS фото есть в теме)
2. Может проводки местами попутали +/- (gnd не обязательно у меня и по двум проводам работало).
3. А в контроллере точно есть какая то программа? Или они новые и пустые.
4. Что читаете и как? Адреса регистров, запросы?
А то получается что предлагает угадать нам.
Попробуйте для начала попросить контроллер тестовым ПО.
Во вложении простая программа работает без установки.
МСХ отвечает и на 03 и на 04 запросы
brabus78
12.10.2021, 23:23
brabus78
12.10.2021, 23:43
Цитата(yozik @ 12.10.2021, 22:37)

1. Проверить что это действительно контроллер с RS-485.
(Зрительно видно палатку рядом с разъёмом RS фото есть в теме)
2. Может проводки местами попутали +/- (gnd не обязательно у меня и по двум проводам работало).
3. А в контроллере точно есть какая то программа? Или они новые и пустые.
4. Что читаете и как? Адреса регистров, запросы?
А то получается что предлагает угадать нам.
Попробуйте для начала попросить контроллер тестовым ПО.
Во вложении простая программа работает без установки.
МСХ отвечает и на 03 и на 04 запросы
1. Завтра повнимательней посмотрю.
2. Менял местами - не помогло.
3. В контроллерах залита программа, также прилагается документация с таблицей переменных Modbus
4. Пробую считать регистр с адресом 3001 , это уставка T зима.
Настройки для считывания:
globalmoney
globalmoney
globalmoney
globalmoney
globalmoney
В инструкциях данфосс пишут не адрес модбас, а PNU.
Адрес модбас это PNU-1
То есть не 3001 а 3000.
Пробуйте напрямую прочитать моей программой через преобразователь rs-485 usb
brabus78
13.10.2021, 0:07
Цитата(yozik @ 12.10.2021, 23:56)

В инструкциях данфосс пишут не адрес модбас, а PNU.
Адрес модбас это PNU-1
То есть не 3001 а 3000.
Пробуйте напрямую прочитать моей программой через преобразователь rs-485 usb
Значит в моем случае я читаю PNU 3002 Устаква T Лето - все равно ноль.
Попробую с утра прочитать через преобразователь, как советуете ....
brabus78
13.10.2021, 0:26
Yozik, еще хотел спросить, не подскажете, что прописать в настройках на скрине, чтобы прочитать PNU: 1901.08 Авария приточного вентилятора
globalmoney
Порядок байт "стандарт" непонятно. Возможно переставленны.
Адрес 1900.
А так все правильно.
ПС я любое устройство новое всегда программой которую выложил проверяют

А то мало ли что в инструкции написанно. И как байты переставленны.
brabus78
13.10.2021, 1:22
Цитата(yozik @ 13.10.2021, 1:05)

Порядок байт "стандарт" непонятно. Возможно переставленны.
Адрес 1900.
А так все правильно.
ПС я любое устройство новое всегда программой которую выложил проверяют

А то мало ли что в инструкции написанно. И как байты переставленны.
Там можно выбрать порядок 0-стандарт 1- мл-ст 2 ст-мл
А значение "Индекс в массиве" = 8 это правильно?
magnat2011
13.10.2021, 7:17
Добрый день.
Есть тут спецы из Украины - Киев - - что б мох подьехать на обьект на набережной, разобраться с проблемами и перезашить установленный Данфосс?
Компания поставщик - говорит что на данный момент программер уволен и помочь не может... :-(((
brabus78
13.10.2021, 12:36
Цитата(yozik @ 13.10.2021, 1:05)

Порядок байт "стандарт" непонятно. Возможно переставленны.
Адрес 1900.
А так все правильно.
ПС я любое устройство новое всегда программой которую выложил проверяют

А то мало ли что в инструкции написанно. И как байты переставленны.
Yozik! Связь с контроллером наладил. Помог Ваш второй пункт. За что большое спасибо! Путаница оказалась в контактах RS-485: -D +D. У MOXA это A и B, а у Danfoss наоборот. Но Ваша программа почему-то не вычитывает данные.
Вот … но не могу вычитать параметр PNU 1901.08 "Авария приточного вентилятора". Пишет ошибку чтения адреса. Может подскажете, что можно поменять?
globalmoney
Цитата(brabus78 @ 13.10.2021, 12:36)

Ваша программа почему-то не вычитывает данные.
Настроили что то не то, или com-port занят вашей программой
правильные настройки для чтения 1900
Нажмите для просмотра прикрепленного файлаЦитата(brabus78 @ 13.10.2021, 12:36)

Пишет ошибку чтения адреса. Может подскажете, что можно поменять?

Вас?
Ну или научитесь пользоватся Вашей программой.
Я в ней не разбираюсь.
Зато хорошо вижу что вы читаете несуществующие адреса
Нажмите для просмотра прикрепленного файлаВы пытаетесь читать 0Е 14 регистров начиная с 1900
то есть 1900, 1901, ....1914
А в МСХ скорее всего есть только 1900
вот вам и ошибка чтения адреса
тут расшифровка запросов модбас 
Ваша программа ВАМ их показывает.
brabus78
13.10.2021, 13:54
А почему все PNU в таблице переменных MODBUS идут целые числа, а алармы 1901.08 1901.09 и так далее?
Да, и можете выложить скрин программы MODBUSVIEW, где видно, что она что-либо считала из контроллера?
Потому что МСХ по модбасу передаёт только целые регистры (х03 и х04 запросы)
А аварии упакованны.
По адресу 1900 регистр аварий.
16 бит.
Запись 1900.8 означает 8 бит в регистре 1900.
То есть
0000 0001 0000 0000.
Нумерация справа на лево начиная с 0.(самый правый) заканчивая 15 (самый левый)
ПС что бы выложить скрин мне надо иметь контроллер подключенный.
Вы предлагает мне искать контроллер, подключать к ноуту, что бы убедить вас что программа рабочая?
Вы как нормальный? Может мне ещё и за вас вашу работу сделать?
brabus78
13.10.2021, 14:22
Цитата(yozik @ 13.10.2021, 14:00)

Потому что МСХ по модбасу передаёт только целые регистры (х03 и х04 запросы)
А аварии упакованны.
По адресу 1900 регистр аварий.
16 бит.
Запись 1900.8 означает 8 бит в регистре 1900.
То есть
0000 0001 0000 0000.
Нумерация справа на лево начиная с 0.(самый правый) заканчивая 15 (самый левый)
ПС что бы выложить скрин мне надо иметь контроллер подключенный.
Вы предлагает мне искать контроллер, подключать к ноуту, что бы убедить вас что программа рабочая?
Вы как нормальный? Может мне ещё и за вас вашу работу сделать?
Я не предлагаю искать контроллер… Подразумевалось, что все в доступе. Нет так нет, Вы мне итак достаточно помогли. Спасибо!
Просто хотел понять, должен ли я под цифрами +0 +1 +2 +3 +4 и тд увидеть значения или нет...
Цитата(brabus78 @ 12.10.2021, 23:23)

у вас программа ком порт не открыла. значит он занят или не доступен.
если бы открыла внизу в строке запрос была бы строчка с запросом модбас
снизу строка с ответом если контроллер отвечает.
Если ответ норамльный без ошибок, то в вверху в окошках 0 +1 +2 и тд
будут считанные значения в шеснадцетеричном формате.
brabus78
13.10.2021, 16:13
Цитата(yozik @ 13.10.2021, 14:31)

у вас программа ком порт не открыла. значит он занят или не доступен.
если бы открыла внизу в строке запрос была бы строчка с запросом модбас
снизу строка с ответом если контроллер отвечает.
Если ответ норамльный без ошибок, то в вверху в окошках 0 +1 +2 и тд
будут считанные значения в шеснадцетеричном формате.
Программа MODBUSRTU_SCAN (но она не умеет считывать параметры) находит устройство на интерфейсе, а MODBUSVIEW почему-то нет. Предполагаю, что преобразователь ей не нравится...
Программ просмотрщиков регистров полно
вот к примеруМоя мне нравится бесконечность посылок (удобно тестировать сеть на помехи и качество передачи)
С виртуальными com portами я её не пробовал.
Всегда напрямую работал
brabus78
13.10.2021, 16:35
Цитата(yozik @ 13.10.2021, 16:21)

Программ просмотрщиков регистров полно
вот к примеруМоя мне нравится бесконечность посылок (удобно тестировать сеть на помехи и качество передачи)
С виртуальными com portами я её не пробовал.
Всегда напрямую работал
Скачал, выдает ошибку. Причем пишет Ошибка устройства 129 130 131
globalmoney
Ну вы блин даёте.
1. Битовых регистров 1х в МСХ нет.
Значит их количество 0
2. 100 го адреса в регистрах 4х тоже нет.
В общем настройки неправильные
Ну и главное.
К comport может обращается только 1 программа.
Ком порт кем то занят.
вы вообще понимаете что такое Modbus и что вы читаете.
Я эту программу первый раз вижу и то понимаю что надо так
Нажмите для просмотра прикрепленного файлаПС я на нее описание нашел.
там адрес не физический.
если с 1900 не сработает надо 1901 попробовать.
вроде программа тоже с PNU работает
brabus78
13.10.2021, 16:56
Цитата(yozik @ 13.10.2021, 16:51)

Ну вы блин даёте.
1. Битовых регистров 1х в МСХ нет.
Значит их количество 0
2. 100 го адреса в регистрах 4х тоже нет.
В общем настройки неправильные
Ну и главное.
К comport может обращается только 1 программа.
Ком порт кем то занят.
вы вообще понимаете что такое Modbus и что вы читаете.
Я эту программу первый раз вижу и то понимаю что надо так
Нажмите для просмотра прикрепленного файлаСогласен, матчасть надо прокачивать!!! А вот com порт свободен, и пробовал с двух разных устройств подключаться - картина одинаковая.
Цитата(brabus78 @ 13.10.2021, 16:56)

Согласен, матчасть надо прокачивать!!! А вот com порт свободен, и пробовал с двух разных устройств подключаться - картина одинаковая.
по моему скрину настройки?
попробуйте 1901 вместо 1900
brabus78
13.10.2021, 17:13
Цитата(yozik @ 13.10.2021, 17:00)

по моему скрину настройки?
попробуйте 1901 вместо 1900
Сделал все по вашему скрину! Ничего не считал….
Но … изменил адрес с 1900 на 3001 и получил параметр 200. По адресу 3002 получил параметр 220. Походу это уставки зима и лето. Адрес 3000 не читается.
1901 читается - параметр 4096 !!! Как бы 8-ой бит вычитать….?
Цитата(brabus78 @ 13.10.2021, 17:13)

1901 читается - параметр 4096 !!! Как бы 8-ой бит вычитать….?
1. Я же написал нашёл описание на программу там не адрес регистров а PNU
Так что 1901
2. Открываете калькулятор в винде
Там меню вид. Переключает на программистский.
Слева будет точка для выбора системы счисления. Выбираете десятичную. Вводите своё число. Потом меняете систему счисления на двоичную.
Калькулятор преобразует ваше число.
А как вычитать 8 бит в вашей скаде это вы разработчикам скалы вопросы задавайте
brabus78
13.10.2021, 23:31
Цитата(yozik @ 13.10.2021, 20:38)

1. Я же написал нашёл описание на программу там не адрес регистров а PNU
Так что 1901
2. Открываете калькулятор в винде
Там меню вид. Переключает на программистский.
Слева будет точка для выбора системы счисления. Выбираете десятичную. Вводите своё число. Потом меняете систему счисления на двоичную.
Калькулятор преобразует ваше число.
А как вычитать 8 бит в вашей скаде это вы разработчикам скалы вопросы задавайте
Yozik, спрашивая как прочитать 8-ой бит 1901 PNU , я имел ввиду, возможно ли это сделать в последней рекомендуемой Вами программе.
А касаемо скады - общался с разрабами, выполнил рекомендации, но пока тупик.
brabus78
14.10.2021, 0:24
Цитата(yozik @ 13.10.2021, 20:38)

1. Я же написал нашёл описание на программу там не адрес регистров а PNU
Так что 1901
2. Открываете калькулятор в винде
Там меню вид. Переключает на программистский.
Слева будет точка для выбора системы счисления. Выбираете десятичную. Вводите своё число. Потом меняете систему счисления на двоичную.
Калькулятор преобразует ваше число.
А как вычитать 8 бит в вашей скаде это вы разработчикам скалы вопросы задавайте
DEC 4096 = BIN 0001 0000 0000 0000 12-ый бит единица
Итог - 1901.12 по таблице переменных "Авария по приточному воздуху"
brabus78
14.10.2021, 0:41
Цитата(yozik @ 13.10.2021, 16:51)

Ну вы блин даёте.
1. Битовых регистров 1х в МСХ нет.
Значит их количество 0
2. 100 го адреса в регистрах 4х тоже нет.
В общем настройки неправильные
Ну и главное.
К comport может обращается только 1 программа.
Ком порт кем то занят.
вы вообще понимаете что такое Modbus и что вы читаете.
Я эту программу первый раз вижу и то понимаю что надо так
Нажмите для просмотра прикрепленного файлаПС я на нее описание нашел.
там адрес не физический.
если с 1900 не сработает надо 1901 попробовать.
вроде программа тоже с PNU работает
На скрине в нижнем левом углу есть "Функция записи". Yozik, как правильно выполнять запись в MCX, 10h или 06h ?

вот для этого и нужно опрашивать тестовыми программами.
Переставленны младший старший.
Могут быть.
Имитируйте аварии, смотрите где появляются 1.
Цитата(brabus78 @ 14.10.2021, 0:41)

На скрине в нижнем левом углу есть "Функция записи". Yozik, как правильно выполнять запись в MCX, 10h или 06h ?
Групповая запись вряд ли будет работать (10)
По крайней мере не пробовал
А 06 должна
Добрый день.
Подскажите, как в MCXDesign/MCXShape сделать в настройках поле для ввода времени вида ЧЧ:ММ, чтобы часы и минуты менялись кнопками со стрелками и ентером?
Цитата(tsgarp @ 1.11.2021, 16:02)

Подскажите, как в MCXDesign/MCXShape сделать в настройках поле для ввода времени вида ЧЧ:ММ, чтобы часы и минуты менялись кнопками со стрелками и ентером?
Зачем?
Часы реального времени через меню настраиваются оно штатно есть всегда.
Вывести часы на экран?
Или еще чего?
Вобщем уточните хотелку
Контроллер управляет шаровым краном с моторным приводом. Чтобы кран не закисал, хочу, чтобы контроллер раз в неделю его открывал и обратно закрывал. В определенное время. День недели легко задается через enum, время поворота крана в секундах - понятно как задается. Хочу задать время, в которое он откроется и закроется. Через два параметра - один часы, а другой минуты - не круто.
Цитата(tsgarp @ 1.11.2021, 17:56)

не круто.
Выучите Си, прочитайте документацию на Си для МСХ.
Сделайте свой интерфейс (это возможно)
А если вы всего этого не знаете, то не выпендривайтесь и делайте через параметры. Не круто, зато быстро и вы знаете как.
ПС в стандартном интерфейсе есть модуль расписаний.
Я знаю Си. Как называется файлик с документацией? И ткните меня, пожалуйста, носом в модуль расписаний. Что-то я его не нашёл.
Цитата(tsgarp @ 1.11.2021, 19:03)

носом в модуль расписаний. Что-то я его не нашёл.
Нууу они его похоженедоделали еще
Он тоже на Си.
В вложении Си для МСХ (можно через свою библиотеку блоки на си свои делать)
как это делать в этом видео (на турецком, но там все понятно)Ну и файл с проектом таймеры с сайта адапкулл (ланфосс РФ неофициальный)
Не хочет загружатся.
к Данфоссам сходите в эту тему, там есть где взять документацию на си библиотеки
заодно можете вопросы им позалавать
ПС кому чего то надо
Программы для мсх всякие или документацию
Пишите мне в личные сообщения гугл почту, я диск открою.
Там много всякого разного.
Некоторые вещи уже и из общего доступа убрали.
Спасибо -).
В проекте на из timers.zip так и сделано - двумя полями - одно часы, другое минуты. И пределы поставлены.
Выходит, что средствами MCXDesign то чего я хочу сделать нельзя. Не беда.
Вот она где, документация-то в папке doc MCXDeveloper. Я ведь его даже поставил, обновил и скомпилировал тестовое приложение. И пока возился с эмулятором из папки bin проглядел документацию -).
Что ж, вопрос задан, ответ получен, вот и славно.
Цитата(tsgarp @ 1.11.2021, 20:41)

Выходит, что средствами MCXDesign то чего я хочу сделать нельзя.

почему нельзя?
Очень даже можно. Но для этого придётся полностью переписать интерфейс пользователя.
А не использовать стандартный.
МСХ вообще можно только на Си программировать.
DevPack как раз и есть бесплатный инструмент для создания программы на Си для МСХ.
Ок. Стандартными средствами нельзя -).
brabus78
3.11.2021, 15:56
Yozik!
Доброго дня! У меня вот какой вопрос...
С помощью программы ModBusLook записываю в регистр с адресом 3149 единицу или ноль без проблем, чем включаю и выключаю контроллер MCX06D соответственно.

Но когда пробую отправлять ту же единицу или ноль через Скаду в регистр с адресом 3148 (у скады смещение на единицу), появляется ошибка ERROR 0B 85 01

Можете подсказать, в чем может быть причина ошибки?
Ведомое устройство приняло запрос и обрабатывает его, но это требует много времени. Этот ответ предохраняет ведущее устройство от генерации ошибки тайм-аута.
СКАДА сильно быстро ответ хочет получить
уже давал ссылку на описание МодбасТам и расшифровка ошибок (ваша 85 то есть 5 ошибка.
Блин....
Вы в скаде не тот тип переменной читаете / пишете.
У вас переменная coil битовая.
А реально она int
И да некрасиво отрезать нужное.
У вас на правой нижней картинке где ответ с ошибкой выше должна быть строка с запросом. А её то вы не показали.
Учите спецификацию протокола модбас, что бы понимать что за запросы отправляет ваша скада и какие ответы вы получаете. Вы же их видите, так расшифровывайте.
Это же я вам ссылку давал на описание запросов модбас для дятлов.
Цитата(tsgarp @ 1.11.2021, 19:03)

, носом в модуль расписаний. Что-то я его не нашёл.
я тоже не нашел, но он таки существует у Данфосса
Они мне его на картинке показали
brabus78
3.11.2021, 20:52
Цитата(yozik @ 3.11.2021, 19:42)

И да некрасиво отрезать нужное.
У вас на правой нижней картинке где ответ с ошибкой выше должна быть строка с запросом. А её то вы не показали.
Учите спецификацию протокола модбас, что бы понимать что за запросы отправляет ваша скада и какие ответы вы получаете. Вы же их видите, так расшифровывайте.
Это же я вам ссылку давал на описание запросов модбас для дятлов.
Ну как же я не показал строку с запросом? Я ее даже темно синим цветом подсветил:
CONTROL FORCE SINGLE COIL ($0C4C), CMD=1 : 0B 05 0C 4C FF 00
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.