Не записываются данные в свойства объекта
Добавлено: Пт ноя 29, 2019 9:42 pm
Добрый день.
Занялся подключением ПР200 к Majordomo.
Навеяно ютуб-каналом Юрия Р, в частности данным видео https://www.youtube.com/watch?v=eo5J8RGIpOQ&t=708s
Подсказал с алгоритмом bool_to_int и Int_to_bool в mjdm за что ему большое спасибо.
Что было сделано:
1. Создал класс ПР200
2. Добавил свойства : входы DI1-16, выходы DO1-16, регистры для этих DI, DO.
3. Создал объект ПР200. Все входы/выходы там автоматом появились.
4. Подключил ПР200 через Modbus TCP. Использовал конвертер Elfin-EW11 Modbus RTU <-> TCP. Заработало сразу, рекомендую.
5. Данные из ПР200 получаю корректно. Это регистр с данными входов в ПР в виде целочисленного числа.
6. в модуле modbus в mdjm делаю привязку этих данных с объектом ПР200 и свойством "PR200_1.DIx - Дискретные входы из регистра"
Далее столкнулся с такой проблемой.
7. При просмотре свойств объекта ПР200 в "PR200_1.DIx - Дискретные входы из регистра" (это свойство было создано в классе ПР200, присутствует текстовое описание) полученные из ПР данные не записываются.
8. Автоматически создается еще одно свойство объекта с таким же именем "PR200_1.DIx" (без описания) и данные записываются именно туда.
9. Еще раз: в свойствах объекта два свойства с одинаковым именем!!! Одно наше, другое создается автоматически. Его удаляешь, оно опять появляется.
10. При дальнейших действиях с глобальной переменной "PR200_1.DIx" ничего не происходит, поскольку данных там нет или они не те что пришло из ПР200. И полученное слово на биты разобрать не выходит.
Занимался проблемой почти весь день, не получается побороть.
(Все убивал/создавал заново несколько раз, перезагрузка модулей, apache и т.д.)
Знающие люди, посоветуйте куда копать.
Занялся подключением ПР200 к Majordomo.
Навеяно ютуб-каналом Юрия Р, в частности данным видео https://www.youtube.com/watch?v=eo5J8RGIpOQ&t=708s
Подсказал с алгоритмом bool_to_int и Int_to_bool в mjdm за что ему большое спасибо.
Что было сделано:
1. Создал класс ПР200
2. Добавил свойства : входы DI1-16, выходы DO1-16, регистры для этих DI, DO.
3. Создал объект ПР200. Все входы/выходы там автоматом появились.
4. Подключил ПР200 через Modbus TCP. Использовал конвертер Elfin-EW11 Modbus RTU <-> TCP. Заработало сразу, рекомендую.
5. Данные из ПР200 получаю корректно. Это регистр с данными входов в ПР в виде целочисленного числа.
6. в модуле modbus в mdjm делаю привязку этих данных с объектом ПР200 и свойством "PR200_1.DIx - Дискретные входы из регистра"
Далее столкнулся с такой проблемой.
7. При просмотре свойств объекта ПР200 в "PR200_1.DIx - Дискретные входы из регистра" (это свойство было создано в классе ПР200, присутствует текстовое описание) полученные из ПР данные не записываются.
8. Автоматически создается еще одно свойство объекта с таким же именем "PR200_1.DIx" (без описания) и данные записываются именно туда.
9. Еще раз: в свойствах объекта два свойства с одинаковым именем!!! Одно наше, другое создается автоматически. Его удаляешь, оно опять появляется.
10. При дальнейших действиях с глобальной переменной "PR200_1.DIx" ничего не происходит, поскольку данных там нет или они не те что пришло из ПР200. И полученное слово на биты разобрать не выходит.
Занимался проблемой почти весь день, не получается побороть.
(Все убивал/создавал заново несколько раз, перезагрузка модулей, apache и т.д.)
Знающие люди, посоветуйте куда копать.